비트코인을 이해하기 위한 개념서를 작성해보겠습니다.
틀린 부분이 있으면 어느 누구든 지적해주시면 수정하겠습니다.
이 글은 전문가에게 설명하기 위한 것이 아니라 초보자들에게 "비트코인이 안전한 이유"에 대해 설명하는 것이므로 핵심 개념은 들어가되 최대한 개념화 시킨 것입니다.
------------------------------------------------------------------------------------------
암호화함수에 대해 알아보겠습니다.
암호화함수는 크게 양방향함수와 단방향함수가 있습니다.
- 양방향함수 ex) AES 함수
- "12345"를 AES 암호화하면 "abcde" 가 나옴.
- "abcde"를 복호화하면 원래 값 "12345"가 나옴.
- 그러므로 "abcde"를 다른사람에게 알려주고 "나 원래 뭐였게?" 라고 물어보면 "너 12345잖아"라고 알아 맞출 수 있습니다.
- 왜? 복호화가 가능하니까.
- 단방향함수 ex) sha256 함수
- "12345"를 sha256 암호화하면 "vwxyz"가 나옴
- "vwxyz"를 복호화할 수가 없음. 원래값이 뭐였는지를 알 수가 없음.
- 그러므로 "vwxyz"를 다른 사람에게 알려주고 "나 원래 뭐였게?"라고 물어보면 "글쎄?" 하고 아무도 알아맞출 수 없음.
- "너 원래 12345"잖아 라고 찍어서 맞출 확률 (비트코인에서)
- 16의 64승 나누기 64 = (16^64)/64 = (2^4)^64/2^6 = 2^250 =(2^10)^25 ~= 1000^25 = 10^75
- =1000000000000000000000000000000000000000000000000000000000000000000000000000분의 1의 확률로 "너 원래 12345잖아" 라고 맞출 수 있음.
- 원래 뭐였는지 맞출 확률이 거의 불가능함.
- 로또 11회 연속 당첨되는 것과 비슷한 확률.