머클경로 편집하기

이동: 둘러보기, 검색

경고: 로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다. 로그인하거나 계정을 생성하면 편집자가 아이디(ID)으로 기록되고, 다른 장점도 있습니다.

편집을 되돌릴 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 저장해주세요.
최신판 당신의 편집
2번째 줄: 2번째 줄:
  
 
==개요==
 
==개요==
머클경로는 [[풀노드]]로부터 정보를 받아 [[해시함수]]에 대입 시켜 사용자가 해시 값의 상대값을 알아가면서 계속 해시를 진행해 나갈 수 있게 하는 것이다.
+
머클경로는 [[풀노드]]로부터 정보를 받아 [[해시함수]]에 대입시켜 사용자가 해시 값의 상대값을 알아가면서 계속 해시를 진행해 나갈 수 있게 하는 것이다.
  
 
==머클트리==
 
==머클트리==
45번째 줄: 45번째 줄:
 
                                             BEGIN(vMerkleTree[j+i2]), END(vMerkleTree[j+i2])));
 
                                             BEGIN(vMerkleTree[j+i2]), END(vMerkleTree[j+i2])));
 
             }
 
             }
             // j는 각 트리레벨에 맞춰 삽입해야 할 첫 번째 위치를 가리킨다.
+
             // j는 각 트리레벨에 맞춰 삽입해야할 첫번째 위치를 가리킨다.
 
             j += nSize;
 
             j += nSize;
 
         }
 
         }
60번째 줄: 60번째 줄:
  
 
;머클트리의 증명
 
;머클트리의 증명
위변조 검사를 할 때 필요한 노드를 추출하는 코드이다. 모든 트랜잭션을 검증할 필요는 없으며, 필요한 트랜잭션 해시들만 선별한다.
+
위변조 검사를 할 때 필요한 노드를 추출하는 코드이다. 모든 트랜잭션들을 검증할 필요는 없으며, 필요한 트랜잭션 해시들만 선별한다.
  
 
  // nIndex로 위변조 여부를 검사할 특정 트랜잭션을 선택하고 머클 트리내의 트랜잭션 해시값과 연관된  
 
  // nIndex로 위변조 여부를 검사할 특정 트랜잭션을 선택하고 머클 트리내의 트랜잭션 해시값과 연관된  
80번째 줄: 80번째 줄:
 
  }
 
  }
  
아래는 위변조를 검사하는 코드이다. 해시할 때의 규칙은 짝수에 해당하는 인덱스를 가진 해시는 다음에 해시될 때 좌측에 위치해야 한다는 것이고 홀수에 해당하는 인덱스를 가진 해시는 우측에 위치해야 한다는 것이다. 즉, [[SHA256]](짝수인덱스를 가진 트랜잭션 해시, 홀수인덱스를 가진 트랜잭션 해시) 이렇게 구성된다는 뜻이다. 해시될 때의 순서에 따라 결괏값은 완전 달라지기 때문에 순서 규칙을 지켜주는 것은 중요하다.
+
아래는 위변조를 검사하는 코드이다. 해시할 때의 규칙은 짝수에 해당하는 인덱스를 가진 해시는 다음에 해시될 때 좌측에 위치해야 한다는 것이고 홀수에 해당하는 인덱스를 가진 해시는 우측에 위치해야 한다는 것이다. 즉, [[SHA256]](짝수인덱스를 가진 트랜잭션 해시, 홀수인덱스를 가진 트랜잭션 해시) 이렇게 구성된다는 뜻이다. 해시될 때의 순서에 따라 결과값은 완전 달라지기 때문에 순서 규칙을 지켜주는 것은 중요하다.
  
 
  static uint256 CheckMerkleBranch(uint256 hash, const vector<uint256>& vMerkleBranch, int nIndex)
 
  static uint256 CheckMerkleBranch(uint256 hash, const vector<uint256>& vMerkleBranch, int nIndex)

해시넷에서의 모든 기여는 다른 기여자가 편집, 수정, 삭제할 수 있다는 점을 유의해 주세요. 만약 여기에 동의하지 않는다면, 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다 (자세한 사항은 해시넷:저작권 문서를 보세요). 저작권이 있는 내용을 허가 없이 저장하지 마세요!

취소 | 편집 도움말 (새 창에서 열림)