목록BlockChain/이론 (5)
만족
아직 블록체인에 대해 오래 공부하지는 않았기 때문에 틀린 내용이 있을 수 있으니 오해설을 발견하게 된다면 댓글을 통해 알려주시면 감사하겠습니다. https://bitcoin.org/files/bitcoin-paper/bitcoin_ko.pdf 이 포스트에서는 위 문서(비트코인 백서)를 해설할 것이다. 비트코인의 목적은 무엇인가? 기존의 인터넷 기반 상거래(쇼핑몰에서 물건 사기 등)에서 재화를 거래하기 위해서는 판매자와 구매자가 직접 재화를 거래하지 않고 금융기관과 같은 중개 기관을 통해 거래한다. 그러나 이런 중개 기관의 개입은 분쟁 등의 이유로 거래의 취소가 발생할 수 있기 때문에 서로 완전히 믿고 거래를 진행할 수 없다. 비트코인은 위 문제를 해결하기 위해 탄생한 1) 중앙통제를 받지 않고, 2) 거..
이전 포스트에서 계속되는 내용이다. 아래 영상을 참고하여 작성되었다. https://www.youtube.com/watch?v=kWQ84S13-hw&t=33s&ab_channel=SimplyExplained 이전 코드의 문제점 이전 포스트에서 언급했듯이, 지갑의 주인이 아닌 사람이 마음대로 트랜잭션을 생성해서 남의 코인을 전부 자기 지갑으로 가져올 수 있다는 문제가 있었다. 따라서 fromAddr, 즉 보내는 사람이 자신일 경우만 트랜잭션이 유효하도록 조치를 취해야 한다. Key Pair 여기에서 공개키-개인키 개념을 사용할 것이다. 먼저 개인키는 자신만 가지고 있어야 하며(외부에 노출되어서는 안됨) 공개키는 개인키에서 파생된 키로, 외부에 공개되는 데이터이다. 어떤 알고리즘 f에 의해 f(개인키)= 공..
이전 포스트에서 계속되는 내용이다. 아래 링크를 참조하여 작성된 포스트이다. https://www.youtube.com/watch?v=kWQ84S13-hw&ab_channel=SimplyExplained 트랜잭션 트랜잭션은 말 그대로 거래 내역을 의미한다. 코인을 생각해보면, 코인을 보내는 사람+ 코인을 받는 사람+ 전송되는 코인의 양 이라는 데이터가 트랜잭션이 된다. //Transaction은 보내는 지갑주소, 받을 지갑주소, 보낸 코인의 양을 포함하는 객체이다 const Transaction = function (fromAddr, toAddr, amount) { this.fromAddr = fromAddr; this.toAddr = toAddr; this.amount = amount; }; 따라서 우..
이전 포스트에서 계속되는 내용이다. https://satisfactoryplace.tistory.com/285 [Blockchain] js로 이해하는 블록체인의 기본 구조 https://www.youtube.com/watch?v=zVqczFZr124&list=LL&index=4&ab_channel=SimplyExplained 위 영상을 참고하여 작성된 포스트임을 먼저 밝힌다. 블록체인이란? 여러 개의 블록이 체인처럼 엮여있는 형상을 가지.. satisfactoryplace.tistory.com 또한 이 포스트는 아래 영상을 참고하여 만들어졌다. https://www.youtube.com/watch?v=HneatE69814&ab_channel=SimplyExplained POW (Proof of Work)..
https://www.youtube.com/watch?v=zVqczFZr124&list=LL&index=4&ab_channel=SimplyExplained 위 영상을 참고하여 작성된 포스트임을 먼저 밝힌다. 블록체인이란? 여러 개의 블록이 체인처럼 엮여있는 형상을 가지고 있으며, 분산 네트워크를 통해 이 연결된 블록들이 훼손되지 않는다는 것을 보장하는 개념이다. 여기서 블록은 우리가 원하는 데이터들을 포함할 수 있으며, 이전 블록의 해시도 함께 포함함으로써 이전 블록과의 관계를 가질 수 있다. 이런 관계를 보고 "블록끼리 서로 체인으로 연결된것 같다"라고 해서 블록체인이라고 명명한다. 블록에 저장되는 정보 블록의 번호(index) 현재 블록의 해시값 (해시함수에 블록번호+이전해시값+기타데이터 정보를 넣고..