본문 바로가기

비트코인

비트코인 기초 원리 알아보기

비트코인에 대해서는 다들 2017년 불장때 한 번쯤 들어보셨을거 같은데요.

저도 2017년에 처음으로 비트코인에 대해 들어봤지만
그때는 거의 별 생각 없이 넘어갔던것 같습니다.
한 편으로는 저정도 등락폭이면 그냥 도박인거 아닌가 하고 가볍게 생각만 하고 가볍게 잊어버렸죠.

그러다 작년 큰 하락 후 계속됐던 상승을 보면서
제대로 관심을 가지기 시작했고

조금씩 공부하고 여러 사람들의 의견을 접하면서
생각이 많이 바뀌었습니다.

이렇다 저렇다 편견을 가지고

제대로 알아보지 않았던 것을
정말 후회하고 있달까요.

그래서 이제는 좀 제대로 공부하고자 하는 마음을 가지고 하나씩 차근차근 알아나갈 생각입니다.

그래서 생각한 것이 공부하면서
복습의 개념으로 블로그에 포스팅을 하는 것이었습니다.

오늘은 그 첫번째 포스팅으로

먼저 가볍게 비트코인의 기본 개념들을 알아볼까 합니다.

 

비트코인 체굴에 대해서도 아마 다들 접해보셨을거라 생각합니다.

체굴장의 전기료가 어마어마하게 나왔다는 둥 하는 정도라도요.

 

바로 이 비트코인 체굴을 하기 위해선
해시코드를 풀어야 합니다.
체굴자들이 컴퓨터를 하도 돌려서 전기세 폭탄을 맞는다는 바로 그 과정이죠.

그렇게 체굴을 해서 비트코인 블록이 생성되면
비트코인 블록에는 트랜잭션들이 담기게 됩니다.

일반적으로 트랜잭션이라 하면 금융거래 등을 지칭하는데 비트코인에서 트랜잭션은 거래내역 기록.

즉, 어찌보면 영수증과 비슷한 개념입니다.

비트코인 하나당 1MB로
약 0.3kb의 트랜잭션들을 최대 2000~3000개 담을 수 있다고 합니다.

(이 부분은 비트코인 관련 사이트에서 확인할 수 있습니다.)



비트코인에 데이터를 기록하는 방식은
작업증명방식해시퍼즐방식인데
이는 굉장히 많은 연산을 필요로 합니다.
이런 부분은 자원관점에서는
좀 비효율적이라 볼 수 있겠죠.

비토코인에서 이용하는 해시함수는
SHA-256 으로
입력값을 256비트로 변경해 주는 함수 입니다.
어떤 입력값이든 16진수의 64자리값(해시값)으로 변환해 줍니다.

이때 해시값은 2의 256승개의 값이 나올 수 있는데
2의 130승개 까지만 변환해도 해시충돌이 일어날 확율이 99.8% 라고 합니다.
해시충돌이란 서로 다른 입력값이 같은 해시값으로 변환되는 것을 말합니다.

이렇듯 해시충돌이 일어난다는 것은
보안체계가 무너진다는 것인데
사실 해시충돌은 존재할 수 밖에 없습니다.
입력값은 무제한 이지만
해시값은 제한적이기 때문이죠.

그렇다면 앞으로 해시충돌이 일어날 때까지 얼마나 남은 것일까?
한마디로 비트코인의 보안체계가 무너지는 지점이 올까?
하는 부분이 문제가 될텐데요

2의 256승개의 해시값이 나오기 까지는 0.2806*10^12년이 걸릴것이라고 하는데

이는 어마어마하게 긴 시간입니다.

계산하면 약 우주나이의(약 150억년) 20배 정도의 시간이라고 하네요.

그러니까 보안체계가 완벽한 것은 아니지만

현재로선 완벽에 가까운 것이 아닌가 하는 생각이 드네요.

 

오늘은 비트코인의 개념과 보안체계에 대해 알아봤습니다.