본문 바로가기

블록체인3

블록체인- 소프트 포크, 하드 포크 블록을 생성하다 보면 '충돌'이 발생하는 경우가 있다. A-B-C-D-E 이렇게 줄줄이 열차로 이어진 노드가 있다. 그런데 A와 E가 거의 동시에 블록을 생성하고 블록에 각자 내용을 기록해서 피어에 전송한다. 그러면 B는 A가 생성한 블록을 기록하고, D는 E가 생성한 노드를 기록할 것이다.(네트워크 상황 동일, 오류 없음 가정) 그리고 문제는 C다. C는 B가 전송한 블록체인과 D가 전송한 블록체인을 동시에 전달받는다. 이때 누구의 블록체인을 따를 것인가? 먼저, C는 둘 중 무거운 블록체 안을 따른다. '무겁다'라는 것은 블록이 더 길게 이어진 것, 더 많은 블록이 이어진 것을 따른다는 것이다. 한편, 이런 경우가 있다. A와 B가 있는데, A는 프로그램을 업데이트해서 과거에는 없던 새로운 규칙을 적.. 2019. 10. 18.
블록체인-브로드캐스팅 브로드캐스팅 탈 중앙화 시스템에서 거래는 '브로드 캐스팅'을 통해 이루어진다. 중앙화 시스템(우리가 사용하는 은행을 예로들면)에서는 나의 거래 데이터를 중앙 서버에 전송한다. 이에 반해 탈 중앙화 시스템에서는 나의 거래 데이터를 나와 연결된 모든 노드(피어)에게 전송한다. 이렇게 탈 중앙화 시스템에서는 시스템에 참여하는 모든 노드가 서로 데이터를 전송한다. 이론상 모든 노드가 순서는 다르지만 모두 같은 데이터를 가지고 있어야 한다. 하지만 현실에서는 네트워크의 상황이나 네트워크 오류, 피어의 관계 등에 따라(데이터 전달 속도가 다르므로) 특정 시점에 모든 노드가 가지고 있는 데이터는 서로 상의할 수 있다. 이때, 데이터를 가지고 있다고 해당 데이터가 무조건 '기록'되는 것은 아니다. 먼저, '기록'이라는.. 2019. 10. 18.
블록체인- 탈 중앙화 시스템 네트워크를 공부하다가 블록체인을 건드린 김에 내가 공부한 개념 좀 정리해볼까 한다. 탈 중앙화 시스템 특정한 역할을 맡은 노드(중앙 서버)가 없이, 모든 노드가 같은 작업을 반복하고, 저장을 반복한다. 이를 통해 얻고자 하는 효과는 한 번 저장된 결과를 누군가 바꾸기 어렵게 하기 위함이다. 최초에 블록체인은 2008년, 암호학 커뮤니티(?)에서 9장의 논문으로 등장했다고 한다. 제목은 대략 이러했다. "제 3자의 개입 없이, 거래 당사자들끼리 금융 거래를 가능하게 하는 시스템" 즉, 신뢰가 없는 사이에도 제 3자의 개입 없이 거래를 성립시킨다는 것이다. 다시 말해, 은행 없이 서로 돈을 송금하고 받는 다는 것이다. (요즘 공유 시스템에서 중계로 인해 수익을 창출하는 기업들이 있는데, 블록체인을 이러한 공.. 2019. 10. 18.