BIP32 편집하기
최신판 | 당신의 편집 | ||
74번째 줄: | 74번째 줄: | ||
==키트리== | ==키트리== | ||
− | 다음 단계는 여러 개의 CKD 구성을 계단식으로 배열하여 나무를 만드는 | + | 다음 단계는 여러 개의 CKD 구성을 계단식으로 배열하여 나무를 만드는 것입니다. 우리는 하나의 루트, 마스터 확장 키로 시작합니다. i의 여러 값에 대해 CKDpriv (m, i)를 평가하면 레벨 1 파생 노드 수를 얻을 수 있습니다. 이들 각각은 다시 확장 키이므로 CKDpriv도 해당 키에 적용 할 수 있습니다. |
− | 표기법을 줄이기 위해 우리는 CKDpriv (CKDpriv (CKDpriv (m, 3 H ), 2), 5)를 m / 3 H / 2 / 5로 | + | 표기법을 줄이기 위해 우리는 CKDpriv (CKDpriv (CKDpriv (m, 3 H ), 2), 5)를 m / 3 H / 2 / 5로 씁니다 . 공개 키와 마찬가지로 CKDpub (CKDpub (CKDpub (M, 3), 2), 5)를 M / 3 / 2 / 5로 씁니다. 결과적으로 다음과 같은 ID가 생성됩니다. |
*(m / a) / b / c = N (m) / a / b / c = M / a / b / c = N (m / 기음. | *(m / a) / b / c = N (m) / a / b / c = M / a / b / c = N (m / 기음. | ||
*N (m / aH / b / c) = N (m / aH / b) / c = N (m / aH ) / b / c. | *N (m / aH / b / c) = N (m / aH / b) / c = N (m / aH ) / b / c. | ||
− | 그러나 N (m / a H )은 N (m) / a H 로 다시 쓸 수 없습니다 . 왜냐하면 후자가 불가능하기 | + | 그러나 N (m / a H )은 N (m) / a H 로 다시 쓸 수 없습니다 . 왜냐하면 후자가 불가능하기 때문입니다. |
− | 트리의 각 리프 노드는 실제 키에 해당하는 반면 내부 노드는 키의 컬렉션에 | + | 트리의 각 리프 노드는 실제 키에 해당하는 반면 내부 노드는 키의 컬렉션에 해당합니다. 잎 노드의 체인 코드는 무시되며 내장 된 개인 키나 공개 키만 관련됩니다. 이 구성으로 인해 확장 개인 키를 알고 있으면 모든 자손 개인 키와 공개 키를 재구성 할 수 있고 확장 공개 키를 알고 있으면 모든 하위 키가 아닌 공개 키를 재구성 할 수 있습니다. |
− | |||
==키 식별자== | ==키 식별자== | ||
확장 된 키는 체인 코드를 무시하고 직렬화 된 ECDSA 공개 키 K의 Hash160 (SHA256 이후의 RIPEMD160)으로 식별 할 수 있다. 이것은 전통적인 Bitcoin 주소에서 사용되는 데이터와 정확하게 일치한다. | 확장 된 키는 체인 코드를 무시하고 직렬화 된 ECDSA 공개 키 K의 Hash160 (SHA256 이후의 RIPEMD160)으로 식별 할 수 있다. 이것은 전통적인 Bitcoin 주소에서 사용되는 데이터와 정확하게 일치한다. |