-
[blockchain] difficulty, target값, blockhash블록체인 2022. 9. 20. 23:16반응형
https://en.bitcoin.it/wiki/Difficulty
difficulty = difficulty_1_target / current_target
difficulty_1 은 임의로 정해진 값이 있음(the highest target) 타겟과 난이도(difficulty) 는 반비례관계 난이도가 높을수록 타겟값은 낮아짐 가장 처음의 난이도를 의미하는 difiiculty_1 이라 하고 값은 0x1d00ffff 이다.
difficulty 를 사용하여 target 값을 구할수 있다.
difficulty 를 쪼개서 index_1 = 16진수 앞2자리 index_2 = 16진수 뒤4자리 로 가정할때
index_2 * 2 ** (8*(index_1 -3)) = target 식으로 타겟값을 구할수 있다.
difficulty_1_target
= 0x00ffff * 2 ** ( 8*(0x1d -3)) = 0x00000000FFFF0000000000000000000000000000000000000000000000000000
= 2.695953529101131e+67
hash값 : 00000000000000000003c99d356fbc64d0d4a42e4607df0617231f84146417a0
#754947 블락의 난이도를 통해서 타겟값을 구해보고 실제로 해쉬값이 타겟값보다 작은지 확인해보자
맨위 식을 사용 하면 difficulty = difficulty_1_target / current_target
current_target = 2.695953529101131e+67 / 32045359565303.15
= 8.4129296e+53
= 0x8c894009ca62180000000000000000000000000000000
이제 자리수(64자리) 맞추고 hash값과 비교해보자hash = 0x 0000 0000 0000 0000 0003 c99d 356f bc64 d0d4 a42e 4607 df06 1723 1f84 1464 17a0target = 0x 0000 0000 0000 0000 0008 c894 009c a621 8000 0000 0000 0000 0000 0000 0000 0000hash < target === true
'블록체인' 카테고리의 다른 글
[blockchain] 토큰과 프로젝트에 대한고민 그리고 erc20 (0) 2022.09.28 [blockchain] 암호화(2) (1) 2022.09.23 [blockchain] 암호화(1) (1) 2022.09.21 [blockchain] 정의, 특징, 구조 (0) 2022.09.17 [blockchain]하드포크, 스마트 컨트랙트, dapp (0) 2022.08.27