PythonでOpenSSLを使用すると、https通信やメッセージダイジェストの作成などの暗号関連機能が利用できます。しかし、PythonやOpenSSLのバージョンによっては、特定の機能が利用できない場合があります。そのため、PythonとOpenSSLのバージョンを適切に管理することが重要です。
PythonとOpenSSLのバージョン確認
まずは現在のPythonとOpenSSLのバージョンを確認しましょう。Pythonのバージョンは次のコマンドで確認できます。
python3 --version
次に、Pythonが使用しているOpenSSLのバージョンを確認します。これはPythonのssl
モジュールを使用して確認できます。
python3 -c 'import ssl; print (ssl.OPENSSL_VERSION)'
OpenSSLのアップデート
OpenSSLのバージョンをアップデートするには、まず最新の安定版のOpenSSLをダウンロードし、それをコンパイルしてインストールします。以下にその手順を示します。
wget https://www.openssl.org/source/openssl-1.1.0h.tar.gz
tar xzvf openssl-1.1.0h.tar.gz
cd openssl-1.1.0h
./config -Wl,--enable-new-dtags,-rpath,'$(LIBRPATH)'
PythonとOpenSSLのリンク
Pythonが新しいバージョンのOpenSSLを使用するようにするには、Pythonを再コンパイルする必要があります。その際、Pythonのビルドオプションで新しいOpenSSLのパスを指定します。
以上がPythonとOpenSSLのアップデート方法になります。これらの手順を踏むことで、Pythonの暗号関連機能を最新の状態に保つことができます。