ETC/블록체인

2. 블록체인 원리 가장 중요한 개념만 쉽게 설명

개발자킹콩 2021. 4. 28. 17:46

블록체인 원리 가장 중요한 개념만 쉽게 설명

 

https://www.youtube.com/watch?v=ybJW3LF7pkU

 

이전 글에서 간단한 블록체인의 원리는 이해 했을 것이다.

 

우리는 거래내역을 갖고있는 블록을 갖고있고, 이 블록들은 체인처럼 강력하게 엮여있다.

 

 

 


 

 

 

 

여기서 체인을 거는데 있어서 가장 중요한 개념은 문서 압축이다.

 

 

이때 문서에서 점 하나만 달라져도 압축된 문자열은 완전히 바뀌게된다.

 

 

 

문서를 문자열로 바꾸는 것은 가능하지만, 문자열을 문서로 바꾸는 것은 불가능하다.

 

현재 비밀번호를 관리하는 것이 이러한 해시함수에 해당한다.

블록체인에서 강력한 체인을 형성하기 위해 이러한 기술을 사용한다.

블록이 갖고 있는 데이터를 해시함수를 통해 되돌릴수 없게 만들고 이를 다른 블록에서 저장하는 구조이다.

 

 

 

 


 

 

 

 

원리

 

 

네트워크가 처음생기고 거래 1이 발생했다.

이러한 거래내역을 문자열로 바꾸어 [xa01]이라는 결과가 나왔다.

 

 

 


 

 

 

첫번째 거래에 대한 문자열을 두번째 거래가 이루어 질때 넣어준다.

거래들은 이제 앞에서 거래한 내용을 해시함수로 변환한 문자열을 갖고 있는 것이다.

물론 첫거래는 당연히 이러한 문자열을 안 갖고있다.

 

 


 

 

 

 

여기서 두번째 거래는 거래1의 문서를 압축한 문자열과 거래2 고유의 거래내역, 잔액에 대한 데이터 모두를 압축하여 문자열로 반환한다.

 

 

 

 

이렇게 강력한 체인이 완성된다.

 

 

 

 


 

 

 

 

왜 강력한 체인이라 표현했을까??

 

 

블록체인은 사람들이 모두 데이터를 갖고있다.

그런데 데이터를 소유하고 있는 단위는 블록이고, 이 블록에는 생각보다 많은 데이터를 갖고있지는 않다.

거래내역과 잔액등 다양한 데이터가 진짜인지 가짜인지에 대한 판별만 가능하게 하면 되는 것이다.

 

 

 

 

 

해커가 5만원을 9만원으로 바꾸려 시도하면 해시함수로 변환된 문자열은 당연히 완전히 바뀌게 된다.

그럼 블록으로 엮여있는 다른 블록들은 이가 적절한 데이터 인지를 확인하게 되고 틀리다면 데이터를 파기한다.

 

거래2의 데이터는 거래3이 갖고있는 거래2의 문서 압축결과와 대조하여 진실임을 판단할 수 있다.

 

 


 

 

 

그렇다면 해커가 거래2의 “거래1의 문서 압축결과를”의 데이터를 자신이 변경한 데이터에 대한 해시 값을 삽입하게 되면 어떻게 될까?

 

 

 

 

그 다음 엮여있는 데이터를 또 해킹 해야한다.

거래3의 경우는 거래2에 해당하는 데이터거래1에 해당하는 데이터를 해시 값의 데이터 를 함께 해시함수에 넣어 문자열을 받기 때문이다.

 

 


 

 

나의 생각

 

여기서 51%의 어택이 불가능 하다고 생각할 수 있겠네

블록체인은 일정시간이 지나면 데이터를 업데이트 하게 된다.

사용자의 수만큼 블록이 존재하고, 해커는 51%의 블록을 해킹해야하는 것이다.

중요한 것은 업데이트 되는 일정시간 안에 해결해야 하는 것이다.

해킹을 해보지는 않았지만, 지금까지의 지식으로는 이는 완전 불가능에 가깝다고 생각한다.

 

 

 

 

 

 

 

'ETC > 블록체인' 카테고리의 다른 글

1. 블록체인 5분 만에 이해하기  (0) 2021.04.28