위스퍼 프로토콜 편집하기
편집을 되돌릴 수 있습니다.
이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 저장해주세요.
최신판 | 당신의 편집 | ||
28번째 줄: | 28번째 줄: | ||
== 구성요소 == | == 구성요소 == | ||
=== 봉투(Envelope) === | === 봉투(Envelope) === | ||
− | 데이터그램(Datagram)의 | + | 데이터그램(Datagram)의 패킷과 같은 역할을 한다. 구성요소로는 만료, 메시지지속시간, 주제, 데이터, 논스로 구성되어 있다. |
* 만료(expiry)는 4바이트로 유닉스 타임(UNIX Time)으로 만료시간을 설정한다. | * 만료(expiry)는 4바이트로 유닉스 타임(UNIX Time)으로 만료시간을 설정한다. | ||
* 메시지지속시간(Time to Live)는 4바이트로 초 단위의 메시지지속시간을 설정한다 | * 메시지지속시간(Time to Live)는 4바이트로 초 단위의 메시지지속시간을 설정한다 | ||
− | * 주제(topic) 4바이트로 임의 데이터로 배열이 될 수 있으며 | + | * 주제(topic) 4바이트로 임의 데이터로 배열이 될 수 있으며 인덱스와 같은 개념이다. 블룸필터(Bloom filter)를 이용하여 공간의 효율성을 높이며 자료구조로 압축되어 잔달된다. |
* 데이터(data)는 암호화된 메시지(Payload)를 포함하며 포함 임의 사이즈는 Byte array이다. | * 데이터(data)는 암호화된 메시지(Payload)를 포함하며 포함 임의 사이즈는 Byte array이다. | ||
* 논스(Nonce) 8바이트로 임의 데이터 및 네트워크 과부화 방지를 위한 작업 증명(PoW) 계산에 활용된다. | * 논스(Nonce) 8바이트로 임의 데이터 및 네트워크 과부화 방지를 위한 작업 증명(PoW) 계산에 활용된다. | ||
46번째 줄: | 46번째 줄: | ||
=== 작업 증명(Proof of work)을 통한 디도스(DDoS) 방지 === | === 작업 증명(Proof of work)을 통한 디도스(DDoS) 방지 === | ||
− | 봉투(Envelope)에 대한 | + | 봉투(Envelope)에 대한 작업증명을 통해 스팸 메시지 및 네트워크 과부화를 방지하며, 메시지 크기와 메시지지속시간(Time to Live)가 높으면 더 많은 작업이 필요하다. 또한 작업 증명은 자체적으로 설정 가능하며 메시지를 전달 받은 노드는 작업 증명 값이 너무 낮으면 메시지를 거부할 수 있다. 대용량의 메시지(Size)나 긴 메시지지속시간은 네트워크에서 패널티를 받게 된다. |
== PSS와의 차이점 == | == PSS와의 차이점 == |