정직한 행동을 강요하다


9

정당을 어떻게 정직하게 만들 수 있습니까 (프로토콜 규칙 준수)?

나는 약속, 증거 등과 같은 메커니즘을 보았지만 전체 문제를 해결하지 못하는 것 같습니다. 프로토콜 디자인의 구조와 그러한 메커니즘이 일을해야한다고 생각합니다. 어느 누구도 그것에 대한 좋은 분류가 있습니까?
편집
보안 프로토콜을 설계 할 때 당사자가 정직하게 행동하도록 강요하면이 시행에는 고유 한 성과가 있지만 설계가 훨씬 쉬워집니다. 보안 프로토콜을 설계 할 때 디자이너는 현실적으로 보이지 않는 것을 가정합니다. 예를 들어 최악의 경우 모든 당사자를 정직하게 생각하거나 사용자 데이터를 유지하는 서버를 정직하게 가정합니다. 그러나 더 엄격한 모델의 프로토콜 디자인을 볼 때 그러한 가정을 거의 보지 못합니다 (적어도 그것을 보지 못했습니다-대부분 프로토콜을 연구합니다)Canetti의 UC 프레임 워크는 아직 완전히 공식화되지 않았다고 생각합니다. 나는 당신이 파티를 정직하게 만들 수있는 방법에 대한 좋은 분류가 있습니까, 아니면 입력 프로토콜을 정직한 당사자로 변환 할 수있는 컴파일러가 있는지 궁금합니다.
이제 나는 이것이 왜 관련이없는 것처럼 보이지만 왜 그 일을하지 않는다고 생각하는지 설명하려고합니다. 이상적인 / 실제 패러다임의 혜택을받는 UC 프레임 워크에서 프로토콜을 설계 할 때 이상적인 모델의 모든 통신 링크가 인증되므로 실제 모델에서는 해당되지 않습니다. 따라서 프로토콜 설계자는 PKI 가정 또는 CRS (Common Reference String)를 통해이 채널을 구현하기위한 대체 방법을 찾고 있습니다. 그러나 인증 프로토콜을 설계 할 때 인증 된 채널이 잘못되었다고 가정합니다. UC 프레임 워크에서 인증 프로토콜을 설계한다고 가정하면 공격자가 상대방의 신원을 위조하는 공격이 있지만 이상적인 모델에서 인증 된 링크의 가정으로 인해이 프레임 워크에서는이 공격이 가정되지 않습니다! 당신은 참조 할 수 있습니다그룹 키 교환 프로토콜에 대한 내부자 공격 모델링 . 그의 주요 작업에서 Canetti 는 키 교환 및 보안 채널의 보편적으로 구성 가능한 개념 은 단순히 인증 프로토콜의 보안을 보장하기에 충분한 SK-Security라는 이전의 보안 개념을 언급합니다. 그는 어떻게 든이 맥락에서 UC 정의가 너무 제한적이며 비 정보 오라클이라고 불리는 편안한 변형을 제공한다고 (어떻게 기술적 인 문제라고 진술함으로써) 고백합니다 (나를 혼란스럽게 했으므로이 보안 모델을 보지 못했습니다 , 나는이 보안 패턴을 다른 보안 패턴과 일치시킬 수 없으며 아마도 지식이 부족합니다 : D).

[부수적으로, 시뮬레이터 시간에 관계없이 모든 Sk 보안 프로토콜을 UC 보안 프로토콜로 변환 할 수 있습니다. 예를 들어 메시지의 서명을 제거하고 시뮬레이터가 전체 상호 작용을 더미 방식으로 시뮬레이션하도록 할 수 있습니다. 증명할 수있는 보편적으로 작성 가능한 기여 그룹 키 교환 을 참조하십시오 ! 이제 이것이 polynomially 많은 당사자와의 그룹 키 교환 프로토콜이라고 가정하십시오. 시뮬레이터의 효율성은 무엇입니까? 이것이이 포럼에서 다른 질문 의 근원입니다 .]

어쨌든, 평범한 모델에 대한 헌신이 부족하기 때문에 (UC를 통해), 나는 이완의 필요성을 우회함으로써 프로토콜을 안전하게 만드는 다른 수단을 찾았습니다. 이 아이디어는 제 생각에는 매우 기본적이며 표준 모델에서 카 네티의 최신 커밋 계획을 연구했습니다 . 표준 가정의 일반 모델에서 적응성 경도 및 컴포저 블 보안 .
BTW, 나는 모르는 이유 때문에 누군가가 UC 프로토콜을 통해 동시 프로토콜에서 하나를 사용할 때마다 다른 사람들이 프로토콜을 비효율적이라고 언급했기 때문에 제로 지식 증명을 찾지 않습니다. 시뮬레이터의 되감기 때문에).


2
wisdom.weizmann.ac.il/~oded/gmw2.html을 살펴 보십시오 . 이 백서에서 부정직 한 당사자는 이전 단계에서 프로토콜을 따 랐음을 증명함으로써 (제로 지식으로) 정직하게 행동해야합니다.
MS Dousti

4
"정직한 행동을 강요하는 것"은 현대의 암호화 (정보를 숨기는 것 이상)에 대한 가능한 정의라고 생각합니다. 이 경우 암호화의 모든 하위 영역을 해당 질문에 대한 접근 방식으로 간주 할 수 있습니다.
Marc

나는 Marc와 같은 것을 쓰려고했다. (통상적으로 암호화 프로토콜로 간주되지는 않지만 대화식 증명 또는 NP의 정의조차도 증명 자에 대해“정직한 행동을 강요하는”것으로 볼 수 있습니다.) 질문은 실제로 광범위하며, 다양한 상황에서 정직한 행동을 강요 할 수있는 모든 방법이 없습니다.
이토 쓰요시

1
"단순히 모든 문제를 해결하지 못하는 것 같습니다."라는 말의 의미는 무엇입니까? 좀 더 구체적으로 말씀해 주시겠습니까?
Alon Rosen

@Sadeq : 마지막 단락을보십시오! @Marc & Tsuyoshi lto : 편집 섹션을 참조하십시오. 도움이 될 수 있습니다.
Yasser Sobhdel

답변:


6

아아, 당신은 사람들이 프로토콜이 말한대로 행동하도록 강요 할 수 없습니다.

프로토콜을 따르려는 의도가있는 사람들조차 때때로 실수를합니다.

적어도 3 가지 접근 방식이있는 것 같습니다.

  • 암호 이론 : "좋은"에이전트는 항상 프로토콜을 따르는 것으로 가정하고 "악의적 인"에이전트는 프로토콜을 파괴하려고합니다. 악의적 인 에이전트는 아무것도 얻지 못하는 반면 우수한 에이전트는 필요한 것을 얻도록 암호화 프로토콜을 설계하십시오.
  • 게임 이론 : 모든 요원이 자신의 개인적인 관심사 만 찾는다고 가정합니다. 메커니즘 설계를 사용하여 모든 사람에게 총 이익을 극대화하십시오.
  • 분산 내결함성 네트워크 : 모든 에이전트가 가끔 실수를한다고 가정하고 일부 '봇 에이전트는 악의적으로 제작 된 많은 메시지를 뿜어냅니다. 봇 노드가 고정 될 때까지 감지하고 격리합니다. 오류 감지 및 수정 (EDAC)을 사용하여 가끔 실수를 수정합니다. 라우팅 테이블에 초기 잘못된 정보가 저장되어 있더라도 유용한 상태로 설정되는 수렴 프로토콜 을 사용 하십시오.

매커니즘 디자인 게임 이론에서, 자신의 개인적인 관심사만을 위해 이기적으로 바라 보는 사람들이 디자이너가 원하는 것을하게하는 상황 (예 : 경매 규칙 설정)을 설계하는 것을 "메커니즘 디자인"이라고합니다. . 특히, 구현 이론을 사용하여 , 상황이 "공통의 비극"또는 "포로의 딜레마"와 같이 잘못 설계된 상황을 피하면서 최종 결과가 모든 사람에게 총 이익을 극대화하도록 상황을 설계 할 수 있습니다. 장기적인 관심.

가장 강력한 프로세스 중 일부는 인센티브 호환 가능 하도록 설계되었습니다 .

게임 이론은 일반적으로 모든 관련 에이전트가 "합리적"이라는 간단한 가정을합니다. 게임 이론에서 "합리적"이란 에이전트가 다른 결과보다 일부 결과를 선호하고, 자신이 이용할 수있는 정보를 제공 할 때 자신이 원하는 결과를 얻을 수있는 방식으로 자신의 행동을 기꺼이 변경할 수 있음을 의미합니다. 좁은 이기심), 그는 다른 합리적 요원들이 그와 같은 행동 선택으로 인해 발생할 수있는 모든 가능한 결과 중에서 가장 선호되는 결과를 얻기 위해 유사하게 행동 할 것임을 깨달을만큼 똑똑하다.

디자이너는 모든 사람들이 자신의 좁은 자기 이익에 따라 행동한다는 단순한 가정을 일시적으로 만들 수 있습니다. 이러한 가정은 구현 이론을 사용하여 상황을보다 쉽게 ​​설계 할 수 있도록합니다. 그러나 디자인이 완료된 후 사람들이 자신의 좁은 이기심에 따라 행동하는지 ( " Homo Economicus ") 또는 이타적이고 모든 사람에게 총 순익을 극대화하고자하는지 여부는 중요하지 않습니다 . 적절하게 설계된 상황에서 두 종류의 사람들 모두 정확히 같은 선택을하고 최종 결과는 모든 사람에게 총 이익을 극대화합니다.

수렴 프로토콜

라우팅 프로토콜을 설계 할 때 네트워크의 각 노드는 해당 노드에서 도달 할 수있는 다른 노드에 대한 정보를 전달하는 메시지를 이웃에게 보냅니다.

아아, 때때로이 메시지는 오류가 있습니다. 더 나쁜 것은 때때로 노드가 잘못 구성되어 오해의 소지가 있거나 악의적으로 제작 된 많은 메시지를 분출하는 것입니다.

비록 우리는 인간이 메시지가 잘못되었다는 것을 알고 있지만, 제대로 작동하는 노드가 모든 메시지를 신뢰하고 라우팅 테이블에 정보를 저장하고 해당 정보가 완전히 사실이라고 판단하는 것처럼 결정하도록 일반적으로 프로토콜을 설계합니다.

일부 사람이 불량 노드를 끄거나 네트워크에서 연결을 끊으면 일반적으로 좋은 정보를 신속하게 전달하여 손상된 정보를 플러시하고 유용한 상태로 빠르게 수렴하도록 프로토콜을 설계합니다.

결합 된 접근법

알고리즘 메커니즘 설계 는 내결함성 네트워크 접근 방식과 게임 이론 메커니즘 접근 방식을 결합하려고 시도하는 것 같습니다.

@Yoichi Hirai와 Aaron은 게임 이론과 암호화를 결합하려는 흥미로운 시도를 지적 해 주셔서 감사합니다.


4

Joe Halpern이 그 주제에 대해 설명하고 있습니다. http://games2009.dimi.uniud.it/Halpern.pdf

이것은 당사자들이 프로토콜을 따르도록 인센티브를 제공하는 것입니다. 이러한 메커니즘에는 당사자의 합리성이 필요하며 논쟁은 게임 이론에 근거합니다.


1
다음은 슬라이드와 함께 진행되는 관련 문서입니다. theory.stanford.edu/~vteague/STOC04.pdf- 이 방법은 사람들이 프로토콜을 따르도록 강제하지는 않지만 원하는 개인에게 인센티브를주기 위해 프로토콜을 설계하려고합니다. 그렇게하기 위해. 물론, 그렇게하려면, 프로토콜을 따르는 사람들이 정확히 무엇을하고 싶은지에 대한 가정을해야합니다.
Aaron Roth

가능하다면이 상황에서 '합리적'이 무엇을 의미하는지 설명 할 수 있습니까? 예를 들어, 기본 글로벌 공리 세트를 고수한다는 의미입니까? 또는 관련 당사자가 동일한 기본 원칙을 공유한다는 의미입니까? 개인이 종종 근본적으로 다른 동기를 가지므로 '인센티브'를 매우 다른 방식으로 취급 할 것으로 예상 될 수 있기 때문에 이전의 설명은 실제 시나리오에서 터무니없는 것으로 생각됩니다.
s8soj3o289

@blackkettle : 합리적 플레이어가 유틸리티 기능을 극대화합니다 (예상). 당신이 지적한 이유 때문에, 유틸리티가 만족시켜야 할 올바른 공리를 생각해내는 것은 항상 힘든 일입니다. 그러나 우리는 항상 최소한의 공리를 시도합니다. 좋은의 미시 경제학 책은이 문제에 대해 자세히 갈 것
Sasho 니콜 로프에게

@blackkettle : Halpern 논문에 대해 : (비밀 공유) 프로토콜의 당사자는 비밀을 모르는 것보다 비밀을 아는 것을 선호하고 다른 당사자보다 비밀을 아는 사람이 적은 것을 선호합니다. 또한 그가 사용하는 평형의 개념은 지배되지 않은 전략에 대한 내쉬 평형이다 (즉, 다른 전략이 항상 좋은 경우 전략을 수행하지 않을 것임). 다른 플레이어가 전략을 바꾸지 않고 현재의 전략이 다른 것보다 더 나쁘게도 그녀는 그것을 바꾸지 않을 것입니다).
Sasho Nikolov
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.