Nonce란 무엇인가?
Nonce는 암호학적 시도를 고유하게 만드는 한 번 사용되는 숫자입니다. 비트코인 스타일 채굴에서, 블록 해시가 규칙에 맞도록 채굴자들이 조정하는 버려질 값입니다. 잠금 다이얼을 클릭될 때까지 반복해서 돌리는 것과 같이 생각하면 됩니다.
Nonce는 언제나 무작위가 아닙니다. 정확히는, 그 시도에 대해 고유해야 한다는 것뿐이므로 채굴자들은 종종 순서대로 값을 시도하지, 무작위 생성기로부터 값을 선택하지는 않습니다.
Nonce의 작동 방식
다음은 채굴에 대한 빠른 요약 플레이 by 플레이 입니다. 키보드 앞의 채굴자를 상상해 보세요, 커피를 손에 들고 머신 속도로 값을 시도합니다.
- Step 1: 채굴자는 트랜잭션을 모으고 블록 헤더를 준비합니다.
- Step 2: 그들은 Nonce 값을 시도하고, 헤더를 해시한 뒤, 결과가 네트워크의 난이도에 의해 설정된 목표를 충족하는지 확인합니다.
- Step 3: 실패하면 값을 바꿔 다시 시도합니다. 반복합니다. 많이요.
- Step 4: 결국 작동하면 채굴자는 블록을 방송하고, 모두가 같은 헤더에 포함된 블록 데이터를 해싱해 검증할 수 있습니다.
- Step 5: 다음 블록, 새로운 탐색. 같은 게임, 새로운 라운드.
예, 그것이 전부입니다.
Nonce가 중요한 이유
그렇다면 당신에게 어떤 이익이 있을까요?
- 혜택: 증명된 작업(proof of work)을 누구나 검증할 수 있게 만들어 주어 블록 생성을 정직하게 유지합니다.
- 관점: 어카운트 기반 체인에서 트랜잭션 카운터라고도 불리는 nonce는 재생 공격과 이상한 재배열 트릭을 방지하는 데 도움을 줍니다.
- 관련성: 블록 탐색기, 월렛 UI, 채굴 대시보드, 개발 도구에서 보게 될 것입니다.
블록 탐색기를 읽고 있나요? 블록의 채굴 nonce인지 계정의 트랜잭션 카운터인지 확인해 보십시오. 같은 단어이지만 다른 용도입니다.
Nonce의 주요 특징
주요 포인트는 다음과 같습니다:
- 고유성: 특정 암호학적 시도에 한 번만 사용되어, 같은 위치에서 다시 사용되지 않습니다.
- 조정 가능: 채굴에서 유효한 해시를 찾기 위해 채굴자가 돌리는 조정 손잡이입니다.
- 검증 가능: 누구나 해시를 재계산해 주장을 확인할 수 있으며, 신뢰가 필요 없습니다.
- 제한적: 비트코인은 32비트 필드를 제공하므로, 채굴자들은 실행 중에 다른 필드도 변화시킵니다.
Variations
동일한 이름이라도 알아둘 만한 여러 변형:
- Mining: 작업 증명을 위한 해 검색에서 블록 헤더 안의 값.
- Extra: 코인베이스 트랜잭션에 tucked-in된 추가 nonce로 탐색 공간을 넓힙니다.
- Account: 이더리움 같은 체인에서 중복을 방지하고 순서를 강제하는 트랜잭션 카운터.
- Signature: ECDSA 서명의 비밀 랜덤 값으로, 반복되면 키가 누출될 수 있습니다.
비밀번호가 아닙니다. 블록이나 트랜잭션과 함께 게시되며, 그 임무는 계산을 고유하고 검증 가능하게 만드는 것입니다.
예시
채굴자는 해시가 0으로 시작하는 긴 0의 시퀀스를 만들 때까지 헤더의 값을 수십억 번 반복한 뒤 블록을 전송합니다.
재미있는 사실
Nonce는 Middle English에서의 명사구로, 특정 시기나 occasion을 뜻하는 표현에서 유래되었습니다. 암호학자들은 GPU와 memecoins가 등장하기 훨씬 전에 이를 한 번 숫자에 대해 적용했습니다.
Wrap-Up
한 줄로 요약하면: 그것이 바로 proof of work와 많은 암호 화폐 속임수를 실제로 작동하게 만드는 한 번 사용되는 숫자이며, 중개자 없이도 가능합니다.