변경불가성 편집하기
최신판 | 당신의 편집 | ||
34번째 줄: | 34번째 줄: | ||
h.update({{글자색|b'Hello Wdrl'|#ff0000}}) | h.update({{글자색|b'Hello Wdrl'|#ff0000}}) | ||
h.hexdigest{{글자색|'''()'''|#008000}} | h.hexdigest{{글자색|'''()'''|#008000}} | ||
− | : {{글자색|'''out[19] : '''|#ff0000}} '12fec465dd4455c48aff8977a7cd8cc97539ad4cd7c37f13cf71ba8bee9a98' | + | : {{글자색|'''out[19] : '''|#ff0000}} '12fec465dd4455c48aff8977a7cd8cc97539ad4cd7c37f13cf71ba8bee9a98' |
: hash lilbrary의 sha256을 사용하여 해시 결과값을 비교한느 것을 파이썬으로 구현해본 것이다. 'Hello World'를 해시 하였을 때의 결과값으로 'a591a6d40bf420...'이 나오고 'Hello Wdrl'fmf 를 해시 하였을 때의 결과값으로는 '12fec4c65dd...'이 나온다. input 값 자체는 d만 빠진 상태로 매우 비슷한 두 값을 넣었지만 결과값은 전혀 다르게 나오게 된다. 출력값으로는 입력값을 추적할 수 없다. 이렇게 추적 불가능한 한 블록의 해시값이 다음 블록의 해시값을 계산하기 위한 input 값 중 하나이다. 그렇기 때문에 특정 블록에서 위조가 이루어지려고 한다면 해시값을 이용해서 변경상황을 파악할 수 있고 추적할 수 있게 된다. | : hash lilbrary의 sha256을 사용하여 해시 결과값을 비교한느 것을 파이썬으로 구현해본 것이다. 'Hello World'를 해시 하였을 때의 결과값으로 'a591a6d40bf420...'이 나오고 'Hello Wdrl'fmf 를 해시 하였을 때의 결과값으로는 '12fec4c65dd...'이 나온다. input 값 자체는 d만 빠진 상태로 매우 비슷한 두 값을 넣었지만 결과값은 전혀 다르게 나오게 된다. 출력값으로는 입력값을 추적할 수 없다. 이렇게 추적 불가능한 한 블록의 해시값이 다음 블록의 해시값을 계산하기 위한 input 값 중 하나이다. 그렇기 때문에 특정 블록에서 위조가 이루어지려고 한다면 해시값을 이용해서 변경상황을 파악할 수 있고 추적할 수 있게 된다. |