의견.png

블록해시

해시넷
lyo731 (토론 | 기여)님의 2019년 7월 23일 (화) 14:42 판 (새 문서: '''블록해시'''(Blockhash)는 비안 양(Bian Yang), 판 구Fan Gu, 시아무 니우Shiamu Niu가 설명한 지각 이미지 해시 알고리즘의 변형을 구현...)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)
이동: 둘러보기, 검색

블록해시(Blockhash)는 비안 양(Bian Yang), 판 구Fan Gu, 시아무 니우Shiamu Niu가 설명한 지각 이미지 해시 알고리즘의 변형을 구현하는 라이브러리다.

개요

블록의 이름 정보를 담은 블록 해시는 SHA256 방식으로 변환된 정보이다. 버전(version), 타임(time), 머클루트(Merkle Root), 타겟(target), 넌스(Nonce), 이전의 블록 해시(Previousblockhash) 즉, 헤더부에 속하는 6가지를 이용해 구성된다. 블록해시는 256비트 해시를 생성하고, 그 해시는 이미지에 큰 변화없이, 원 상태로 고유하게 조정할 수 있도록 설계되어 있다. 두 해시 사이의 해밍 거리는 두 이미지가 얼마나 다른지를 나타내며, 한 자리 값은 일반적으로 크기가 서로 다르더라도 이미지가 동일하다는 것을 나타낸다.

개발 목적

Elog.io 도구를 개발하는 과정에서 기존에 있는 pHash, imgSeek 라이브러리보다 자바 스크립트에서 구현하기 쉽게 이미지를 지각적으로 비교할 수 있는 방법이 필요해서 개발 되었다.

특징

  • 이미지의 경우 알고리즘은 1 %의 경우 두 개의 서로 다른 이미지에 대해 동일한 차단 해시 값을 생성한다.
  • 사진의 경우 알고리즘이 실제적으로 고유한 블록 해시를 생성하지만 아이콘, 클립 아트,지도 및 기타 이미지의 경우 알고리즘의 고유한 블록화가 적다. 이미지에서 동일한 색상의 더 큰 영역 (배경 또는 테두리)은 더 자주 충돌한다.[1]

블록해싱 알고리즘

  1. 블록 헤더부 중 버전, 타임, 타켓, 넌스는 little-endian형식으로 이전의 블록 해시, 머클루트는 reverse order로 변환한 뒤 합산한다.
  2. 합산한 정보들을 다이제스트로 메시지 암호화를 한다.
  3. 변형한 정보를 SHA-256 방식으로 암호화한다.
  4. 메시지 암호화와, SHA-256 암호화를 다시 한 번 반복한다.
  5. 결과값을 뒤집는다.[2][3]


각주

  1. 〈[http:blockhash.io Blockhash]〉, 《BlockHash》
  2. loum,〈비트코인에서 블록해시 구하는 방법〉, 《브런치》, 2017-11-01
  3. yahweh87,〈블록해시에 관한 정의〉, 《steemit》, 2018

참고자료

같이 보기


  의견.png 이 블록해시 문서는 블록체인 기술에 관한 토막글입니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 이 문서의 내용을 채워주세요.