비트코인의 보안체계
Alice(A)
Bob(B)
Message(M)
Eve(E)
해시함수
정의: 임의의 길이의 데이터를 고정된
길이의 해시 값으로 변환하는 함수
특성: 결정적, 계산 쉬움
사용 이유: 검색 용이함
X
H()
H(X)
X
H(X)
X
H()
H(X)
Y
H()
H(Y)
=
=
H(X)
H(X+1)
SHA256(1) =
6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b
SHA256(2) =
d4735e3a265e16eee03f59718b9b5d03019c07d8b6c51f90da3a666eec13ab35
해시함수의 구성
예시: SHA-256
X
H(X)
해시 값의 길이(n)에 2^n만큼 증가함
예) 2^256 = 1.15*10^77
H(X)
H(Y)
=
해시함수의 보안성
충돌 가능성?
비둘기집의 원리:
충돌은 있다 !!?!!
해시함수의 보안성
충돌 가능성 계산
2^130 + 1
해시함수의 보안성
비트코인에서의 해시함수 사용
1. 거래ID(transaction id or txid)
2. 블록해더해시(blockheader hash)
해시체인의 불가변성
비트코인에서 해시함수 사용
3. 머클트리
비트코인에서의 해시함수 사용
다음 강의
4. 공개키, 개인키, 디지털 사인
(Public key, Private key, Digital Signing)
5. 작업 증명(Proof of Work)
Contact:
hacameon91@gmail.com