JWE
まとめ
JSON Web Encryption
暗号化したデータを、複合に必要なメタデータと合わせてJSON形式でパッケージするデータ表現形式
JSONデータをコンテンツ(Ciphertext)を暗号化するための形式
JWEはコンテンツ(Ciphertext)を暗号化するための形式
JWSはコンテンツに署名をするための形式
疑問点
複合に必要なキー(Encrypted Key)をただBase64urlでエンコードしただけでは盗聴されたときにデータを見られるんじゃない?
Encrypted Keyは公開鍵形式とかで暗号化されているので、秘密鍵を持っている人しか鍵を戻せない。
つまり、よくあるハイブリット暗号化形式ってことだよね
hiroki.iconとなると、ここら辺の形式もPKIの上に成り立つ技術群って感じになるな。ほんとPKI様様だ
定義
code:定義
BASE64URL(UTF8(JWE Protected Header)) || '.' ||
BASE64URL(JWE Encrypted Key) || '.' ||
BASE64URL(JWE Initialization Vector) || '.' ||
BASE64URL(JWE Ciphertext) || '.' ||
BASE64URL(JWE Authentication Tag)
以下のを.で区切った文字列
Protected Header
暗号化に使用するアルゴリズム
Encrypted Key
暗号化に使用した共通鍵
Initialization Vector
平文の暗号化に使われる初期化ベクトル
Ciphertext
暗号化したデータ本体
Authentication Tag
暗号文と追加認証データの整合性を保証する認証タグ