비트코인의 창세 블록은 파낸 것이 아닌가?
1719 단어 비트코인 기술 연구
호기심의 부추김 아래 귀로 들은 것을 거짓으로 보고 눈으로 본 것을 사실로 여기는 융통성이 없는 관념을 품고 있다.비트코인의 원본 코드를 봤는데 창세 블록이 정말 코드에 쓰여 있는 것을 발견했다.
코드 경로:https://github.com/bitcoin/bitcoin/blob/master/src/chainparams.cpp
중점 코드 세션;
static CBlock CreateGenesisBlock(uint32_t nTime, uint32_t nNonce, uint32_t nBits, int32_t nVersion, const CAmount& genesisReward)
{
const char* pszTimestamp = "The Times 03/Jan/2009 Chancellor on brink of second bailout for banks";
const CScript genesisOutputScript = CScript() << ParseHex("04678afdb0fe5548271967f1a67130b7105cd6a828e03909a67962e0ea1f61deb649f6bc3f4cef38c4f35504e51ec112de5c384df7ba0b8d578a4c702b6bf11d5f") << OP_CHECKSIG;
return CreateGenesisBlock(pszTimestamp, genesisOutputScript, nTime, nNonce, nBits, nVersion, genesisReward);
}
왜 이것이 확실히 창세 블록의 내용이라는 것을 알았을까. 왜냐하면 창세 블록의coinbase에 유명한 tag가 있는데 바로 위의 타임스 신문 첫 번째 내용이기 때문이다.
The Times 03/Jan/2009 Chancellor on brink of second bailout for banks
그러나 이것은 부족하다. 이것은 코인베이스 거래를 구성하는 내용일 뿐이다. 광산을 파는 것은 사실nonce라는 파라미터를 확정해야 한다. 즉, 이nonce 값을 코드에 써서 죽여야 이 블록이'파낸'것이 아니라'쓴'것이다.계속해서 이 파일에서CreateGenesisBlock 함수의 인용을 찾습니다.그래서 아래의 코드를 발견했다
genesis = CreateGenesisBlock(1231006505, 2083236893, 0x1d00ffff, 1, 50 * COIN);
consensus.hashGenesisBlock = genesis.GetHash();
assert(consensus.hashGenesisBlock == uint256S("0x000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f"));
assert(genesis.hashMerkleRoot == uint256S("0x4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b"));
이로써 창세 블록이 확실히 코드에 쓰여 있는 것이지 파낸 것이 아니라는 것을 확신하게 되었다.
(전문 완성)
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
비트코인의 창세 블록은 파낸 것이 아닌가?비트코인의 창세 블록은 파낸 것이 아니라 코드에 쓰여 죽은 것이라고 한다. 호기심의 부추김 아래 귀로 들은 것을 거짓으로 보고 눈으로 본 것을 사실로 여기는 융통성이 없는 관념을 품고 있다.비트코인의 원본 코드를 봤...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.