나의 발자취

블록체인 펼쳐보기(김석원) 본문

Book

블록체인 펼쳐보기(김석원)

달모드 2020. 9. 14. 21:27

 

 

1. 선정 이유

블록체인에 대해 제일 기본적인 개념들을 설명하고, 책이 얇아서. + 학회 권장 도서라서

 

2. 목차, 읽기 전 느낌

얇아서 읽기 쉬울 것 같았고, 저자의 소개가 상세히 되어있는데 신뢰도가 높았다.

 

3. 인상 깊은 구절

목차

1. 블록체인에 대한 호기심

2. 해시함수를 이용한 작업 증명

3. 블록의 구성과 체인

해시함수를 역으로 이용한 것이다. 비트 코인은 헤더에 들어가는 해시값을 좀 더 효과적으로 이용하기 위해 '머클 루트'라는 값 이용

머클 루트:머클 트리라는 이진트리 구조의 루트 값. 블록의 본문에 어떤 거래가 들어있는지 확인하기 쉽게 구성되어있음.

블록의 구조 {블록 내용=바뀌는 값 , nonce=바뀌는 값에 맞춰 찾아내야 하는 값}

 

4. 채굴-블록  만들기

코인베이스 거래-채굴 보상금으로 비트코인을 받는 것이고 이것도 일종의 거래이다.

코인베이스거래는 받는사람만 존재하므로, 독특한 거래다. 그래서 마치 채굴같다 하여 채굴에 비유한다.

채굴난이도 조절하는 방법은 타깃을  내리거나 올린다. 타깃을 내리면 어려워지고 올리면 쉬워진다. nBits=32bit

 

5.블록체인의 충돌을 해소하는 긴 블록체인 선호 정책
비트코인에서는 채굴보상금을 채굴된 브록 위에 100개의 브록이 쌓인 후에야 쓸 수 잏게 돼 있다
경쟁에 의해 제일 많은 노드가 인정하여 전체의 절반이 넘는 노드가 자신의 블록체인에 채택한 블록
블록이 분기되면 그 블록을 채택한 노드는 지지층을 넓히기 의해 자발적으로 열심히 전파한다. 자신의 이익을 극대화하는 방향이기 때문
더 긴쪽으오 지지를 바꾸지 않으면 손해.어차피 그 노드가 지지하는 블록이 더이상 퍼지지 않음. 개인의 이기심과 전체 시스템의 안정을 위해 가는 방향이 일치
시간이 지나면 자연히 한 블록체인으로 수렴
피투피 노드의 자율적 판단르로 승자를 가리는 방식은 총 노드수가 적을땐 동작이 불안정하여 체계가 자리잡기도 전에 무너질수 있다는 약점이 있다. 또한 일부 노드가 짜고 나머지 노드를 속이기 쉬움 하지만 많아지면 신뢰도 높아지고 안정성도 높아짐
분산 데이터베이스 시스템. 비행기 티켓 예약시스템 예시. 분산하면 백업. 오버부킹 방지. 충돌 방지
블록체인은 모든 노드가 각자 원장을 가지고 있고 이것이 하루(100블록이 쌓이는 시간) 안에 모두 같은 같을 갖도록 동작한다.
선거가 불록체인으로 된다면? 컴퓨터 프로그램 자원봉사자-간단해서 자청하는 사람 많을것. 비밀성 보장-암호화 방법 사용 가능. 선거비용 줄임.
블록체인은 여러개로 분기하더라도 시간이 지나면 하나의 체인으로 통합된다.

6.거래의 기록
거래 시 비대칭키 암호화를 이용하는데, 복잡하고 어렵지만 비트코인의 거래를 이해하는데 필수적인 개념이고 현대 암호화 기술의 중요한 요소다. 대칭키 암호화보다  더욱 복잡하여 보안성이 우수하다.

 

7.비트코인 주소를 이용한 소유권 증명

비트코인: 가장 많이 이용하는 방식: 공개키를 다시 해시해 길이를 줄인 공개키 해시 방식의 비트코인 주소

RSA보다 더 안전한 타원곡선암호(ECC;Elliptic Curve Cryptography)방식 사용. 공개키는 두개의 256비트값으로 정의되어있음. 공개키 구조는 앞 접두부 8bit, 공개키 절반 256bit, 256bit 이렇게 구성. 

그러나 공개키 주소 기반 거래는 키의 길이가 길고 오류 보정 기능이 없어 사용 불편. 지금은 거의 사용 안하고 채굴보상금을 지급하는 코인베이스거래에서만 공개키 방식 사용중

*공개키 해시주소

거래기록의 대부분 공간은 주소가 차지하므로 이 길이를 줄이면 블록의 효율성 높아짐. 

공개키 해시: 520비트 공개키를 두개의 해시함수를 거쳐 160비트로 줄인 값. SHA256->RIPEMD-160->공개키해시(160비트)->베이스58인코딩->비트코인 주소

 

8.거래 시나리오

*이중거래

"거래가 완료돼 물건이 넘어가는 시점은 거래 당사자끼리 정하라". 

1.비트코인 지불 2.거래전파 확인 3.거래가 블록체인에 포함됨 4.충분한 깊이에 도달(다른 블록이 쌓임)

이 단계 중 하나 선택 가능한데 거래 규모가 클수록 셋째와 넷째 방법 사용가능

 

9.비트코인의 진화와 위협 요소

*영원히 증가하는 기록

점점 더 많은 저장공간 사용

*집단 채굴의 위협

집단채굴을 하려면 full node를 갖고있어야한다. 계산을 나눠서 해야한다. 계산만 전문적으로 하는 노드를 모아 집단채굴하는 서버를 pool server라고 한다. 그런데 이렇게 집단채굴이 확산되면 full node가 줄어들고 채굴노드만 늘어난다. 해시능력 상승에 비해 블록체인을 갖고있는 노드의 수는 그대로. 그래서 비트코인의 신뢰도가 떨어짐.

*사용자 편의기능 부족

*블록크기

비트코인의 개당 블록크기가 최대 1mb.하나의 거래가 약 500byte 차지. 하나의 블록에 보통 2000개 남짓 거래기록 들어간다. 2000개의 거래가 평균 10분에 한번씩 장부에 기록.  반면 비자카드는 하루에 2억건 정도를 처리. 

*양자컴퓨팅

해시값의 역함수를 쉽게 알아낼 수 있기 때문. 허나 양자컴퓨팅은 영하 270정도는 되어야 가능하다한다. 현대 기술로는 우주공간에서 이용할 방법을 고려중. 

 

10.블록체인 응용

해킹사고, 불법거래 자금세탁에 사용된다고 비난받게되어 가치 폭락. 하지만 기술에 대한 관심은 증가.

*금융

블록체인의 분산원장 기반의 거래 방식에 관심을 가지는 금융. 

청산(clearing): 사람이 끼어들어야한다. 공인을 해주어야하기 때문. 그치만 분산원장 기술은 기록의 변경을 빠르고 믿을 수 있는 방식으로 할 수 있기 때문에 이런 절차를 간소화. 서비스 품질 높이고 새로운 금융 서비스 가능

예)R3 컨소시엄(jp모건,골드만삭스 등)-코다corda라는 금융서비스 위한 분산원장 플랫폼 개발.

이 회사의 최고기술임원 리차드 브라운: 블록체인 기술 특징을 다섯가지로 제시.
(비트코인 원리를 기존 금융체계에 그대로 적용하기 어려운 이유 지적, 변경 혹은 개선할 방향 규명. 이렇게 걸러진 r3의 블록체인은 어쩔수없이 고유특성을 많이 배제.)

1.합의방법-모든참가자 2.유효성-모든참여자가 변동내용 유효성을 알고 검증 3.고유성-어긋나도 하나의 고유 결과로 귀결 4.수정불가 5.인증

r3에서->>1.합의방법-모든참가자 아니라 거래당사자끼리. 2.유효성- 사용자가 유효성을 검증하는 방식 추가가능 3.고유성-서로 어긋난 정보에 대한 해소 방식을 사용자가 정의 가능

*투표

비밀투표에서는 블록체인이 약점. 모든 기록 공개, 공유된다는 점->주소가 암호화됐다 해도 안전하다 보기 어려움

*인공지능

IoT에서 각각생성하는 데이터 끊임없이 나옴. 여기에 분산원장이 이 데이터를 저장, 관리할 수 있는 방안. + 인공지능 => 데이터분석, 지능적 판단 가능

4.핵심 메세지

Comments