ビットコミットメント
コミットメント方式中で行われるメッセージのやり取りは二つの段階に分かれる。 コミット・フェーズでは、コミットされる値が選ばれコミットメントが作られる。 公開フェーズではコミットされた値が公開され検証される。
コミットメント方式では、二つの暗号学的な安全性が定義される。
秘匿性(hiding propertyまたはconcealing property): 受信者がコミットフェーズ終了時にコミットされた値の情報を知り得ないことを保証する。コミットメントの値がコミットされた値と完全に独立であるとき(すなわち、受信者が無限の能力を持っていたとしてもコミットされた値がわからない)完全秘匿といい、現実的な計算能力ではコミットされた値の識別ができない場合には計算量秘匿という。
拘束性(binding property) : 送信者が公開フェーズ時にコミットした値と違う値に公開できないことを保証する。送信者が無限の能力を持っていたとしても違う値に公開できない(受信者を欺けない)とき、完全拘束といい、現実的な計算能力を持つ送信者にはそれができない場合には計算量拘束という。
"ビット・コミットメント"方式はコミットされる値が1ビットであるコミットメント方式のことを言う。複数ビットをコミットするコミットメント方式を特に"ストリング・コミットメント"方式と呼ぶこともある。