PyJWTを利用したES256形式のJWTの生成方法についてメモする。 事前準備 署名用公開鍵・秘密鍵の生成 こちらを参考にOpenSSLを利用して生成する。 PyJWTインストール import jwt ##### JWT 生成 #### # 1. OpenSSLで生成した署名用秘密鍵の読み込み with open('./es256.key.pkcs8') as f_private: private_key = f_private.read() # Sign in With Apple用クライアントシークレット例を参考にヘッダー、ペイロードを定義 # 以降のデコード処理でこけるため、expを未来日に変更する。 header = { 'alg': 'ES256', 'kid': 'ABC123DEFG' } payload = { 'iss': 'DEF123GHIJ', 'iat': 1