【ふくごう】
復号 とは?
最終更新:
💡 暗号文を、鍵と方式を使って平文へ戻す
暗号文を、暗号方式と鍵を使って元のデータである平文へ戻す操作。暗号化との関係、Base64やハッシュとの違い、正しい鍵でも失敗する場合を解説します。
📌 このページのポイント
復号は、暗号化の逆?
鍵さえあれば、必ず戻せる?
方式や設定、必要な情報、データが合っていることも必要だ。例えばAES-GCMではIVや認証タグなども使う。鍵が合っていても、データが壊れたり改変されたりすれば復号に失敗する場合がある。
暗号化と復号で、同じ鍵を使う?
暗号があれば、絶対に読まれない?
Base64を元に戻すのも、復号?
もっと詳しく知りたい人へ
ハッシュ値も、鍵があれば元へ戻せる?
暗号学的ハッシュは、元データを復号して取り出す方式ではありません。候補のデータを同じ方法でハッシュ化して照合することはできますが、それを元データの復号と呼ぶわけではありません。入力の候補が少ない場合の推測と、復号を区別します。
認証付きの復号が失敗したら、確認を無視して読んでよい?
失敗を無視して元データとして扱いません。Web CryptoのAES-GCMでは、認証に失敗するとOperationErrorを返します。鍵・IV・追加認証データ・タグなど、方式が要求する情報が一致するかを確認し、検証を省略する方法へ替えないようにします。
📖 おまけ:英語の意味
「Decryption」 = 暗号文を平文へ変換すること
💬 このページでは「復号」と表記します。「復号化」と書かれているだけで、その資料の内容が誤りだとは判定しません。名前より、暗号文・方式・鍵・必要な情報の関係を確認します。