잠금 스크립트 편집하기
최신판 | 당신의 편집 | ||
7번째 줄: | 7번째 줄: | ||
# 해제 스크립트 : 잠금 스크립트가 출력값에 걸어둔 조건을 해결해 출력값이 소비될 수 있도록 하는 스크립트 | # 해제 스크립트 : 잠금 스크립트가 출력값에 걸어둔 조건을 해결해 출력값이 소비될 수 있도록 하는 스크립트 | ||
− | [[블록체인]]상에서 기록되어 있는 모든 [[UTXO]]들은 그것을 소비하기 위한 조건이 있는데, 그 조건들을 스크립트로 구현한 것이 잠금 스크립트이다. 스크립트퍼브키라고도 불리는 잠금 스크립트는 UTXO를 소비하기 위한 요건을 명시하고 있으며, 공개키 또는 비트코인 주소를 포함한다. 그 이유는 UTXO가 특정 지갑에서 소유하고 있는 비트코인 덩어리기 때문에 이 소비 요건에 비트코인 주소와 공개키도 포함하기 때문이다. 따라서 해당 지갑주소를 포함하는 이 잠금 스크립트를 풀 수 있는 조건을 달성하면 해당 지갑주소에서 UTXO를 소비할 수 있게 된다.<ref name="끙"> | + | [[블록체인]]상에서 기록되어 있는 모든 [[UTXO]]들은 그것을 소비하기 위한 조건이 있는데, 그 조건들을 스크립트로 구현한 것이 잠금 스크립트이다. 스크립트퍼브키라고도 불리는 잠금 스크립트는 UTXO를 소비하기 위한 요건을 명시하고 있으며, 공개키 또는 비트코인 주소를 포함한다. 그 이유는 UTXO가 특정 지갑에서 소유하고 있는 비트코인 덩어리기 때문에 이 소비 요건에 비트코인 주소와 공개키도 포함하기 때문이다. 따라서 해당 지갑주소를 포함하는 이 잠금 스크립트를 풀 수 있는 조건을 달성하면 해당 지갑주소에서 UTXO를 소비할 수 있게 된다.<ref name="끙"></ref> |
잠금 스크립트와 [[해제 스크립트]](scriptSig)는 언뜻 비슷해보이지만 이 둘은 열쇠와 자물쇠의 관계이다. 잠금 스크립트는 자물쇠의 역할을 하며, [[트랜잭션]]을 검증하기 올바른지 검증하라는 키이다. 반면 해제 스크립트는 열쇠의 역할을 하며, 트랜잭션을 발생시킨 주체의 서명과 공개키를 합쳐 잠금 스크립트를 풀기 위해 작동한다. [[피투피]] [[네트워크]]에서 해당 트랜잭션을 받은 [[노드]]는 이 잠금 스크립트에 해제 스크립트를 대조해서 일치하는지 확인하고 true라고 판명되면 올바른 트랜잭션이라 간주해 이웃노드로 전달한다.<ref name="황">niipoong, 〈[https://steemit.com/kr/@niipoong/scriptsig-scriptpubkey 비트코인 스크립트와 디지털 서명, 검증 (scriptSig, scriptPubKey )]〉, 《스팀잇》</ref> | 잠금 스크립트와 [[해제 스크립트]](scriptSig)는 언뜻 비슷해보이지만 이 둘은 열쇠와 자물쇠의 관계이다. 잠금 스크립트는 자물쇠의 역할을 하며, [[트랜잭션]]을 검증하기 올바른지 검증하라는 키이다. 반면 해제 스크립트는 열쇠의 역할을 하며, 트랜잭션을 발생시킨 주체의 서명과 공개키를 합쳐 잠금 스크립트를 풀기 위해 작동한다. [[피투피]] [[네트워크]]에서 해당 트랜잭션을 받은 [[노드]]는 이 잠금 스크립트에 해제 스크립트를 대조해서 일치하는지 확인하고 true라고 판명되면 올바른 트랜잭션이라 간주해 이웃노드로 전달한다.<ref name="황">niipoong, 〈[https://steemit.com/kr/@niipoong/scriptsig-scriptpubkey 비트코인 스크립트와 디지털 서명, 검증 (scriptSig, scriptPubKey )]〉, 《스팀잇》</ref> |