검수요청.png검수요청.png

해시락

해시넷
ajm97 (토론 | 기여)님의 2019년 7월 8일 (월) 15:43 판 (활용)
이동: 둘러보기, 검색

해시락(HashLock)은 특정한 해시값이 제공됐을 때만 계약 내용대로 토큰이 전송되는 기술이다.

개요

특정 데이터가 공개될 때까지 생산물의 소비를 제한하는 것이며. 해시락을 공개하게 되면 동일한 키를 사용하여 보안된 다른 해시락도 열 수 있는 특성을 가지고 있다. 이는 동일한 해시락으로 인코버되고 동시에 다중 출력을 사용할 수 있게 해준다는 것이다. 또한 과거에 해시락은 독립적으로 사용되어 왔으나 현재는 해시타임락과 같은 시스템의 일부로 가장 일반적으로 사용되고 있다..

특징

해시락을 생성하는데 사용된 데이터(사전이미지 - pre-images)를 나타냄으로써 해시락은 모든 사람이 사전 이미지를 가지며 해시락에 의해 막힌 금액을 원하는대로 할 수 있기 때문에 보안을 위해 사용할 수 없도록 렌더링한다. 이러한 이유로, 해시락에 의해 보호되는 출력물 역시 서명에 의해 보호되어 정확한 사전 이미지와 적절한 서명이 모두 자금을 지출하도록 해야 한다. 그러나 해시락은 여러 출력물을 모두 동일한 해시락으로 암호화할 수 있는 매우 유용한 특성을 갖고 있다. 미리 이미지를 가지고 있는 사람이 모인 자금를 쓰기 위해 이를 드러낼 경우, 동일한 해시락으로 암호화된 출력물을 가지고 있는 다른 모든 사람들은 블록체인상의 첫 번째 사람의 거래로부터 그들이 필요로 하는 사전 이미지(pre-images)를 얻을 수 있다.

  • 해시락 생성에 필요한 스크립트의 해시함수는 원래 비트코인 0.1 릴리즈의 일부였다. 2010년 12월, 비트코인의 옵 코드(opcode)에 몇 가지 문제가 발견된 후, 가빈 안드르센(Gavin Andresen)은 IsStandard() 함수를 도입하여 이러한 해시함수와 기타 거의 사용되지 않는 옵 코드(opcode)를 이용한 거래의 불이행으로 릴레이(Relay)와 마이닝(Mining)을 방지하였다. 옵 코드(opcode)가 더 많은 감사를 수신하여 몇 년 동안 문제 없이 테스트넷에서 사용할 수 있게 된 후, 비트코인 코어 0.10.0(2015년 2월)은 P2SH 거래에 대한 대부분의 IsStandard() 제한을 제거하여, 기본저긍로 중계되고 채굴되는 거래에서 해시락의 사용을 다시 하용하였다.

활용

  • 해시타임락 : 해시락은 라이트닝 네트워크(Lightning Network) 및 아토믹 스왑에서 사용된다.
  • 온 체인 베팅(On-chain betting) : 어떤 사람(오라클이라 가정)은 여러 개의 사전 이미지(pre-images)와 그에 상응하는 해시를 생성한다. 사용자는 서명 및 해시락의 조합에 의해 보호되는 출력을 생성한 다음, 필요한 모든 서명을 서로에게 제공한다. 그 다음 오라클은 하나의 사전 이미지를 공개하고 나머지 이미지를 삭제한다. 사용자들은 이미 가지고 있는 서명들과 함께 해당 사전 이미지를 삽입하고 상금을 받는 사용자. 단, 이 계획은 끝까지 오라클이 정직해야 한다. 하지만 피터 토드(peter Todd)는 이 온 체인 베팅방법을 단순한 서명을 사용하는 것보다 효율이 떨어진다고 한 적 있다.

각주

참고자료

임시

같이보기


  검수요청.png검수요청.png 이 해시락 문서는 블록체인 기술에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.