Pythonでは、HMACとSHA256を使ってメッセージを暗号化し、その結果をBase64形式でエンコードすることができます。これは、REST通信などでよく使用されます。
以下に、PythonでHMACとSHA256を使ったBase64エンコーディングの基本的なコードを示します。
import hashlib
import hmac
import base64
SECRET_KEY = "abcdefghijklnmopqrstuvwxyz0123456789" # 任意のシークレットキー
message = "Hello World!!!!!" # 任意のメッセージ
hmac_message = hmac.new(key=bytes(SECRET_KEY, 'UTF-8'), msg=message.encode('utf-8'), digestmod=hashlib.sha256).digest()
hmac_message_base64 = base64.b64encode(hmac_message).decode()
このコードでは、まずhmac.new
関数を使ってメッセージをHMACで暗号化しています。その際、digestmod
引数にhashlib.sha256
を指定することで、SHA256形式で暗号化しています。そして、base64.b64encode
関数を使って、暗号化したメッセージをBase64形式にエンコードしています。
なお、暗号化形式を変えたい場合は、hmac.new
の引数digestmod
を変更すればよいです。
以上が、PythonでHMACとSHA256を使ったBase64エンコーディングの基本的な方法です。これを応用すれば、様々な情報を安全に送信することが可能になります。