안녕하세요.
오늘은 어제의 설명에 이어 블록체인을 보다 깊게 설명드리려 왔습니다. 어제는 가볍게 설명드렸고 오늘은 조금 더 깊게 설명드리려 합니다. 최대한 쉽게 설명드리려 할텐데 말재주가 없어 어떨 지 모르겠네요. 혹시나 제 설명에서 이해하기 어려우신 부분이 있다면 댓글 달아주세요. 다시 설명드리겠습니다~
** 이 글을 읽기 전에 어제 제가 쓴 글을 읽고 와주세요**
https://rkzhfn.tistory.com/137
지난 글에서 제가 체인이라 부르는 이유에 대해 설명드렸죠? 네, 블록들이 연결될 수 있기 때문이라고 말씀드렸죠. 정확히 말씀드리면 연결이 자동으로 이루어지기 때문에 블록체인이라는 이름이 붙죠.
자, 이번에 설명드릴 것은 실체도 없는 컴퓨터 속의 블록이 연결된다는 게 무슨 말인지 설명 드릴겁니다. 왜 연결되었다고 하는 지, 그 점을 설명드릴 겁니다.
각각의 블록들에는 비밀번호가 걸려있다고 말씀 드린 것 기억하시나요? 이 비밀번호는 이전 블록들이 가지고 있는 정보에 따라 바뀝니다. 이전 블록의 정보가 다음 블록에 영향을 미치는 것이죠. 방금 만들어진 이 블록의 비밀번호는, 전에 만들어진 블록이 가지고 있는 정보에 따라 바뀝니다. 그래서 블록들은 모두 뗄레야 뗄 수 없는 상관관계가 있죠. 그래서 연결되었다고 부르는, 즉 체인이라고 불리는 것이죠.
자, 무슨 말인지 조금 풀어서 설명드릴게요.
1번 블록에는 "가"라는 글자가 적혀 있고 암호가 걸려있습니다. 2번 블록에는 "나"라고 적혀 있고, 3번 블록에는 "다"라고 적혀 있습니다. 1번 블록과 2번블록 그리고 3번 블록은 모두 서로 다른 암호가 걸려 있죠. 그런데 1번 블록에 적혀 있는 "가"를 "고"라고 바꾸면 어떻게 될까요? 1번 블록의 정보가 바뀌었기 때문에 2번 블록의 비밀번호가 바뀌어 버립니다. 또한 2번 블록의 비밀번호가 바뀌었기에, 3번 블록의 비밀번호도 바뀌어 버렸습니다. (1번 블록의 비밀번호도 바뀌었지만, 체인이랑은 관계가 없으니 자세히 쓰지 않겠습니다.)
1번 블록의 정보만 살짝 바꾸었더니 2번 블록과 3번 블록의 비밀번호가 바뀌어 버렸네요!? 그리고 연달아 4번,5번,6번....뒤에 있는 모든 블록들의 비밀번호도 전부 바뀌어버리죠. 이래서 블록들이 서로 연결되어 있는 "체인"이라는 이름을 가지게 되었습니다.
이제 체인이라는 말은 이해했습니다. 체인이라는 이름이 붙은 이유도 알았구요. 그런데 이게 어쨋다는 말일까요? 이게 그렇게나 중요하고 대단한 기술일까요? 아직 무엇이 대단한 것인지 쉽게 감이 잡히시지 않을겁니다. 이게 왜 대단한 기술인지 이해하셨다면 존경합니다. ㅎㅎ 그럼 이전의 암호기술과 비교해서 왜 대단한지 설명드릴게요.
블록체인이란 개념이 나오기 전에는 각각의 블록들이 독립적으로 존재하면서 보안면에서 취약했습니다. 하나의 블록들을 개별적으로 해킹하면 쉽게 정보 수정이 가능했죠. 하지만 블록체인이 생기면서 하나의 정보를 수정하려면 여러개의 블록들이 영향을 받기에 다른 블록들도 같이 해킹해야 하는 문제점이 발생했습니다. 보안적인 측면에서 아주 혁신적인 도약이죠.
이번에도 예를 들어 설명드려볼게요. 1번 블록에 "가", 2번 블록에 "나", 3번 블록에 "다"라고 적혀있습니다. 나쁜 도둑이 2번 블록에 적힌 "나"라는 정보를 "노"라고 바꾸고 싶어 합니다. 예전의 독립적인 블록에서는 2번 블록 하나만 해킹해서 "나"를 지우고 "노"라고 적으면 끝이 났습니다. 그런데 블록체인에서는 2번 블록의 "나"를 "노"로 바꾸는 순간, 3번, 4번, 5번... 뒤에 오는 모든 블록들의 비밀번호가 바뀌면서 오류가 발생합니다. 2번 블록의 정보를 바꾸고 오류가 나지 않게 하려면 3번,4번,5번... 뒤에 오는 블록들 모두 새로운 비밀번호를 찾아야 하죠.
지금까지는 블록체인이라는 이름에 집중하여, 블록 및 체인에 대해 설명드렸습니다. 블록이 무엇인지, 체인이 무슨 의미인지를 설명드렸죠. 블록체인에는 몇 가지 중요한 특징이 더 있습니다. 만약 위에 설명까지가 끝이라면 블록체인도 해킹이 가능합니다. 시간이 많이 걸릴 뿐, 해킹 자체가 불가능하지는 않죠.
블록체인의 특성 상, 블록의 내용은 그 블록의 뒤에 있는 블록들의 비밀번호에만 영향을 끼칩니다. 10번 블록의 정보를 바꾸었다고 해서 9번 블록의 비밀번호를 바꿀 필요는 없는 것이죠. 그래서 가장 마지막으로 만들어진 블록의 정보를 바꾸면 비교적 해킹이 쉽습니다. 뒤에 블록이 없으면 새로운 비밀번호를 찾을 필요가 없기 때문이죠. 다행인 점은 이 블록이 10분마다 새로 만들어진다는 것입니다. 즉 마지막 블록은 10분이 지나는 순간 마지막 블록이 아니게 되는 것이죠. 이는 해킹을 마음 먹은 사람이 해킹에 10분 이상 걸리는 순간, 처음부터 해야 하는 것이죠.
10분은 비트코인의 블록 생성 주기이며, 다른 코인의 블록체인들은 전부 제각각입니다.
비트코인의 암호화 기술은 블록체인이 끝이 아닙니다. 블록체인은 비트코인의 해킹이나 복제를 막는 여러가지 기술 중 하나에 불과하죠. SHA-256 암호화기술, 탈중앙집권의 정보 분산, 과반수 동의의 POW 그리고 채굴을 통한 보상까지 수많은 이론과 기술이 모여있죠. 이것들이 모여서 비트코인의 암호화 기술을 완성했습니다. 즉, 복제 및 해킹을 방지하는 것이죠.
블록체인 외에 다른 기술들은 다음에 공유해 드리도록 하겠습니다. 그 중 블록체인을 이해하는 것은 다른 암호화 기술을 이해하기 위해 반드시 필요한 경우가 있습니다. 비트코인에 대해 깊고 공부하실 생각이시면 반드시 이해해두시길 바랄게요~!
** 이 글을 읽기 전 아랫글은 반드시 읽고 와주세요!
오늘 역시 제 긴 글을 읽어주셔서 너무 감사합니다. 혹시 제 글이 마음에 드셨다면 아래 구독하기 그리고 하트 눌러주세요~! 또 제가 작성했던 글들도 달아드리니 관심 있으시면 읽어주세요~!
댓글 영역