본문 바로가기

이론/보안

[컴퓨터보안] 비트코인 및 블록체인

인트로
1) 암호화폐 창시자, SatoShi Nakamoto
2) 분산 네트워크 환경 기반
3) 거래 (transaction)
4) timestamp server
5) 블록 체인의 구조

암호화폐 (BitCoin)
1) 암호화폐 창시자, SatoShi Nakamoto
"Bitcoin: A Peer-to-Peer Electronic Cash System" 이라는 9쪽짜리 논문을 올렸고, 월가에서 이 논문을 읽어보았다고 한다.
일본인이라고 추정되지만, 이름외에 확실한 근거가 없다.
논문 → https://bitcoin.org/bitcoin.pdf
블록체인 기술을 창시했고, 비트코인 네트워크 및 Bitcoin Core을 창시했다 .

2) 분산 네트워크 환경 기반
제 3의 신뢰기관인 은행을 사용하지않고, P2P 네트워크를 기반으로 화폐의 안전성을 보장한다. 중앙 기관, 신뢰 기관 등이 필요가 없어서 수수료가 없다. 우리가 은행에 내는 수수료는 내통장에서 받는 사람의 통장까지 자금이 흘렀다는 증명을 하는 것이다. 화폐의 이중 사용 방지를 위해 P2P(Peer to Peer) 기반 개념을 처음으로 도입한 전자화폐이다 . BitCoin 프로그램을 설치한 사용자는 누구나 사용 가능하다.

3) 거래 (transaction)
거래는 일종의 돈에 대한 정보이다.
[거래 예시]
A가 B에게 비트코인을 이체했다.
→ A는 거래내역과 B의 공개키로 Hash한 후 A의 개인키로 전자서명을 생성한다.
Hash(A는 거래내역 + B의 공개키) 하여 A의 개인키와 서명을 생성하고, 그 블럭에 B의 개인키와 함께 서명을 생성하고, C의 개인키와 함께 서명을 생성하는 등의 과정을 반복한다.

거래 내역의 위조가 불가능하다.
A가 아닌 사용자는 서명 생성이 불가능 하다.
이 Hash 값을 P2P 서버에 BroadCasting(브로드 캐스팅)한다.

[transaction 흐름 구조도]  


4) Timestamp Server
10분 단위로 P2P(Peer to Peer)에 broadcasting된,
모든 거래내역(거래내역 A,거래내역 B,거래내역 C, 거래내역 D, 거래내역 E...)을 모아서 하나의 블럭(block)을 생성한다.
현재까지 생성된 모든 block들에 대한 chained-timestamp를 생성한다. (이전 거래내역에 대한 증명서를 모두 포함한다)

5) 블록체인(Block-Chain) 의 구조
timestamp = Hash(이전 블락의 해쉬값 + 현재 블락의 내용)
이전 모든 거래 정보가 chained-hash값으로 저장되고, 모든 사용자에게 공유된다.  (P2P네트워크이기때문에 모든 사용자에게 공유 된다.)
이전 모든 거래 내역에 대한 증명을 포함하고 있기 때문에, 거래 내역에 대해 위조 불가하다(변경이 불가하다). 누구나 timestamp를 생성하되, 위변조가 쉽지 않다. 이중 지불 방지 기능을 제공한다.

비트코인 및 작업증명에 대한글
https://life-with-coding.tistory.com/23

[컴퓨터보안] 비트코인 및 작업증명, Timestamp Server

인트로 1) Timestamp Server 2) 작업증명, Nonce의 의미 - 작업증명, Nonce, 채굴자가 얻는 Incentive 3) 머클 트리 - 머클트리의 구조도 4) 비트코인의 안전성 1) Timestamp Server 10분 단위로 P2P(Peer to Peer..

life-with-coding.tistory.com

블록체인에 기반한 암호화폐 거래과정에 대한 글
https://life-with-coding.tistory.com/24?category=799521

[컴퓨터보안] 블록체인에 기반한 암호 화폐 거래과정

인트로 1) 블록체인이란 ? 2) 블록체인 특징 3) 블록체인 기반 거래과정 1) 블록체인이란? 블록(데이터)들이 P2P 네트워크에서 체인 형태로 저장되어 있는 분산 컴퓨팅 기술 기반의 데이터 위변조 방지 기술이다...

life-with-coding.tistory.com