Commitment Scheme

commitment scheme은 암호학적인 방법을 이용하여 다른 사람에게 값을 공개하지 않고서도 어떤 값을 약속하고 나중에 약속했던 값을 공개하는 방법입니다. 한 번 선택한 값을 나중에 임의로 바꿀 수 없게 하는 특징을 binding이라고 하는데, commitment scheme은 binding을 제공해야 합니다.

일례로 sha256 같은 해시 함수를 이용하면 간단한 commitment scheme을 만들 수 있습니다. 어떤 값 x를 선택한 후에 c = sha256(x) 값만 먼저 공개하고, 나중에 x 값을 밝히면 다른 사람들은 sha256(x) = c인지를 검증하여 x가 실제로 commit했던 값인지 검증할 수 있습니다. 그리고 해시 함수의 특징 때문에 sha256(x’) = c인 x’를 쉽게 찾을 수 없어 binding 속성이 보장됩니다.

비트코인의 micro payment channel, secure multi-party lottery 등 블록체인의 여러 기법이 commitment scheme에 기초하고 있으므로 관심 있는 분들은 아래 강의 노트 참고하시기 바랍니다.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s