주어진 해시가 블록, 블록 높이 또는 트랜잭션을 나타내는 지 확인할 수 있기를 원합니다.Bitcoin 블록 및 트랜잭션 정규식
저는 블록이^[0-9] + $와 같다는 것을 알고 있습니다.^0 $는 그것이 기원 블록이기 때문에 유효합니다. 나는 블록 (64)의 길이 base58에 보통 내가 지금은 정규식으로 결국 트랜잭션이 64
의 길이 base58에 알고있는 0 로 시작 알고
- 블록 신장^(0 | [1-9] [0-9] *) $
- 블록 해시^0 + [BASE58 {63} $
- 트랜잭션 해시^[BASE58 {64} $
그러나 일부 거래가 나타났습니다. 0으로 시작하는 블록 만있는 Bitcoin 프로토콜의 일부가 아닌 것 같아요. 어려움이 1 인 regtest 로컬 (가짜) 네트워크를 실행하고 모든 블록이 0으로 시작하지 않습니다.
블록 해시를 트랜잭션 해시와 구별하기 위해 정규식을 사용하는 신뢰할 수있는 방법이 있습니까?
bitcoin에 대해서는 모르겠지만 블록 해쉬 정규 표현식에서'+'를 제거해야합니다. 그렇지 않으면 처음부터 둘 이상의 0을 허용하고 나중에 63 개의 base58 문자를 가질 수 있습니다. –
Bitcoin의 어려움은 앞에 오는 0이있는 해시를 찾아서 블록을 채우도록하므로 의도적입니다. 하지만이 정규식은 제가 노출 한 문제를 일으 킵니다. – shkschneider
블록이 트랜잭션과 구별되는 각 개별 해시의 패턴이 아니라면 순서 여야합니다. 어떻게 그들을 시각적으로 구별합니까? – wp78de