共有シークレット

ウィキペディアから、無料の百科事典

暗号理論において、共有シークレット(きょうゆうシークレット、共有秘密、Shared secret)とは、セキュア通信において正規の通信当事者のみが知っている一片のデータであり、暗証番号・パスワード・パスフレーズ・桁数の大きな数字・ランダムなバイト列などといった形態をとり得る。

共有シークレットは、通信当事者間で事前に共有されるか(この場合のそれは事前共有鍵(英語版)とも呼ばれる)、ディフィー・ヘルマン鍵共有などの公開鍵暗号やケルベロス認証などの共通鍵暗号といった鍵共有プロトコル(英語版)を用いてセッション開始時に作成される。

用法

通常は共通鍵暗号における鍵 (暗号)を指すが、他にもさまざまな用法が存在する。

  • 認証技術

チャレンジレスポンス認証(英語版)などで、署名鍵のように用いる。

MAC鍵や暗号鍵を生成する際の引数として使われる。共有シークレットそのものを使わないことで、弱鍵への対策やネゴシエーション時の通信量削減につながる。

一意のセッション鍵を生成する際、初期化ベクトルと組み合わせて合成する手法がよく取られる[注釈 1]。

複数の認証方式が定義されているが、事前に共有した秘密(パスワードやトークン)を提示することで認証している点は共通である[1]。

脚注

注釈

  1. ↑ 例として、derived unique key per transaction(英語版)などが挙げられる。

出典

  1. ↑ “API認証とは?認証が必要な理由や主要な認証方式を解説”. 伊藤忠テクノソリューションズ株式会社. 2024年11月3日閲覧。

参考文献

関連項目