공사중

블록체인이란 #1

종금 2017. 12. 2. 12:46
반응형

요즘 IT업계의 가장 떠오르는 세가지를 꼽으라면 AI, IOT, 그리고 블록체인을 꼽을 것이다.


특히 블록체인은 새로운 인터넷 기술로 각광까지 받는 신기술로 전망 되기 까지한다.


그럼 블록체인이란 무엇일까?


말그대로 블록(block) 체인(chain)으로 각 블록들을 체인 엮듯이 엮어 데이터를 보관하는 방식이다.


위 기술은 특히 금융거래 같은 곳에 대표적으로 사용할 수 있는데 특히 미래 금융거래에서 핵심 기술로 보고 있다.


도대체 왜 블록체인이 미래 금융의 핵심 기술인가


바로 위변조가 쉽지 않다는 점이 블록체인을 매력적으로 보이게 해준다.


왜 위변조가 쉽지 않은지는 기존의 거래방식과 비교해보면 알 수 있다.


기존의 전자 상거래의 거래 방식의 경우 중앙의 집중화 되어 중앙에서 거래자의 신원을 확인하여 거래를 진행하는 방식이다.


간단한 예시로 우리는 게임내 전자상거래를 하기위해 캐쉬를 충전한다.


캐쉬를 충전하기 위해서는 캐쉬를 발행하는 중앙기관(게임회사)의 승인을 받아 가격을 치루고 캐쉬를 받는다.


캐쉬를 통해 우리는 게임내에 필요한 것을 이후에 살 수 있는데 현재 금융 거래 방식 또한 중앙기관에서 신용에 대한 보증과 거래 허가를 내주면 전자상거래가 이루어지는 방식이다.


하지만 위의 방식은 해커가 중앙기관을 공격하면 거래의 내용을 위,변조를 통해 이중지불 거래취소 등을 할 수 있다.


 




그런 취약점을 보완하는 방법으로 나온 기술이 블록체인이다.


블록체인에는 중앙기관이 존재하지 않는다. 중앙기관 대신 신용 보증을 위해 사용자들이 연합한다. 


거래를 하고 싶은 사람은 거래를 원할때 블록하나에 거래에 대한 정보(데이터)를 적어두고 주변 네트워크 사람들에게 거래 장부를 공유한다. 


그러면 참여자들은 거래내용에 대해 위,변조가 되어 있는지 확인하고 이상이 없으면 신용에 대해 보증하고 블록의 형태로 저장되어 쌓인다.


위의 블록은 이후의 거래때마다 쌓이는 형태로 저장되어 거래내역이 쌓인다.


이때 거래내역이 쌓이는 것이 중요한 포인트이다. 블록에는 여러 거래 데이터 목록이 적히는데 위 블록은 10분마다 갱신되어 쌓인다. 


거래과정

1. 새로운 거래 내역이 모든 노드에 알려진다.

2. 각 노드들은 새로운 거래 내역을 블록에 취합한다.

3. 각 노드들은 그 블록에 대한 작업증명을 찾는 과정을 수행한다.

4. 어떤 노드가 작업증명을 성공적으로 이전에 쓰이지 않고 경우에만 승인한다.

5. 노드들은 그 블록이 모든 거래가 이전에 쓰이지 않고 유효한 경우에만 수행한다.

6. 노드들은 자신이 승인한 블록의 해시를 이전 해시로 사용하여 다음 블록을 생성하는 과정을 통해 그 블록이 승인 되었다는 의사를 나타낸다. 



만약 해커가 75번 블록의 거래 내용을 위변조하고 싶은 상황인데 시간이 흘러서 100번 블록이 쌓인 상태라면 75번 블록을 변경하기 위해서 76~100번의 블록에 대한 정보를 조작해야 75번의 정보를 들어가서 위변조를 할 수 있다. 


즉 시간이 지나면 지날 수록 해킹하기 어려워 진다


 



그렇다면 정보를 저장할 블록은 어떻게 구하는 것일까


이때 사용하는 것은 타임스탬프 서버이다. 타임스탬프 서버는 시간 내역이 기록된 항목들의 블록 해시를 취합하고, 발행하는 역할을 한다.


이때 해시 값을 생성자는 사용자로서 블록거래를 하고 싶은 사람이다. 이들은 블록하나의 해시를 생성하면 주변 사용자들에게 해시 생성이 올바로 되었는지 검사를 받고 검사가 통과 되면 블록에 10분간의 거래 내역들이  


블록의 첫번째 거래는 최초의 블록 생성자에게 기회를 준다. 사용자가 새로운 해시 값을 구하고나면 서버는 새로운 돈의 형태(비트코인에서는 (10^-6)비트)를 제공하는 보상을 준다.



이후 다시 수정해야겠다.



반응형

'공사중' 카테고리의 다른 글

OS 공유  (0) 2020.09.29