ADVERTISEMENT

[아하] 이중지불 공격 위험성을 낮추는 방법은?

Join:D

입력

업데이트

이중지불

[출처: Flickr]

[aha! 블록체인]Q> 블록체인상에서 거래할 때 이중지불공격의 위험성을 낮출수 있는 방법은 어떤 것이 있는지 궁금합니다. 검증을 많이 하면 좋겠지만 시간이 많이 소요돼서 그다지 효율적이지 않은데요. 더 좋은 방법이 있을까요?

"비트코인은 UTXO(Unspent Transaction Output) 즉, 미사용 트랜젝션 출력이라는 일종의 비트코인의 잔고 정보를 가지고 있습니다.

비트코인 트랜젝션에서 전송이 이루어지고 나면 남아 있는 잔고를 UTXO로 남기게 되는데요. 어떤 지갑 주소의 잔고를 계산하려고 하면 그 동안의 모든 거래 내역을 검토할 것이 아니라 UTXO만을 확인해 내역을 표시해 주기만 하면 됩니다.

만약에 UTXO가 없다면 해당 지갑 주소의 모든 입출금 거래 내역을 매번 계산해야 하겠지만 UTXO의 존재로 인해 각 거래가 이루어질 때마다 남은 비트코인이 얼마인지, UTXO 값만 확인해 보여주면 되는 것입니다.

또한 이중지불과 관련해서도 공격이 들어왔을 때 해당 지갑 주소의 UTXO를 검사하여 이전에 이미 같은 지불 요청에 대해 거래가 완료된 내역이 있다면 UTXO 잔고가 없거나 부족함에도 이중으로 지불을 요구한 것이므로 해당 트랜젝션을 블록에 포함시키지 않는 방식으로 취소시킬 수 있습니다."

*이 글은 블록체인 지식 커머스 플랫폼 ‘아하(Aha)’ 블록체인 분야 Q&A 가운데 'A하하'님의 질문과 'erc20'님의 답변을 재구성한 것입니다.

원문: https://www.a-ha.io/questions/45bc080391e222d0a63fca4a8d78c132

ADVERTISEMENT
ADVERTISEMENT