비트코인에서 이더리움으로..시작의 차이(개혁과 발전)2

in kr •  7 years ago 

대문1.jpg

@subasuba님의 블록체인 글을 읽다가 마침 두 개를 비교해주신 글이 있어서 리스팀했습니다.
ms-dos와 윈도우라는 표현이 와닿더라구요.ㅎㅎ

eth11251.jpg

비트코인에서 이더리움으로.. 시작의 차이(개혁과 발전)1

그럼 어제에 이어 오늘은 이더리움의 시작에 관해 글을 써보겠습니다.

어제 글을 한 문장으로 요약하면 비트코인은 기존 화폐의 문제점을 개혁하기 위해 만든 암호화 화폐이고 블록체인은 그 화폐를 가능하게 만드는 수단이었다는 것입니다.
주된 목표는 비트코인이라는 화폐였지 블록체인이라는 기술이 아니었다는 것이죠.

그럼 이더리움은 어떨까요?
이더리움을 만든 비탈릭 부테린은 비트코인 블록체인을 대하는 방향이 좀 달랐습니다.
비탈릭.jpg

'어 저 블록체인이라는 거 멋진데?' 에서 시작하죠.

작업증명의 기반이 되는 작동방식은 매우 혁신적인 것이었는데, 이것은 두가지 문제를 동시에 해결하기 때문이다. 첫째, 이것은 간단하면서도 상당히 효과적인 합의 알고리즘을 제공해주었다. (중략) 둘째, 누구나 합의 프로세스에 참여할 수 있도록 허용해줌으로써 합의결정권에 대한 정치적 문제를 해결할 수 있을 뿐만 아니라 동시에 시빌공격(sybil attacks)도 방어해줄 수 있는 메커니즘을 제공했다.

비탈릭은 이더리움 백서에서 저 두 가지를 혁신적이라고 표현하고 있습니다. 비트코인 블록체인이 나오기 전에 있었던 디지털 화폐들의 문제점을 바로 작업증명(POW) 합의 알고리즘에 의해 풀어냈기 때문입니다. 비탈릭은 그 결과 탄생하게 된 비트코인이라는 화폐의 가능성이 아니라, 그 동안 가장 어려운 문제였던 합의 알고리즘을 풀어낸 블록체인이라는 시스템에서 상당한 가능성을 발견한 것입니다.

이 블럭체인의 가능성을 누구나 개발에 참여할 수 있는 오픈 플랫폼의 형태로 발전시킨 것이 이더리움입니다. 비트코인이 하나의 기능에 집중했다면 이더리움은 블럭체인을 플랫폼으로 만들고 그 위에서 누구나 개발하고 참여할 수 있게 열어버린거죠 . 비트코인이 현실 문제의 개혁을 위해 만들어졌다면 이더리움은 비트코인이 가지고 있는 블록체인을 발전시키기 위해 만들어진 것입니다.

이더.jpg

이더리움은 블록체인을 발전시키기 위해 비트코인 블록체인의 한계를 없애야 했습니다.

그 중 가장 큰 한계가 스크립트 라는 언어였죠. 저번 글에서도 설명했듯이 스크립트는 작은 전자계산기와 같습니다. 단순하지만 안전하고 적은 용량으로 쉽게 처리할 수 있지만 할 수 있는 일에 한계가 있습니다. 거래 지불수단인 비트코인에는 적합하지만 그 이상의 다양한 프로그래밍을 위해서는 한계가 있었습니다. 이더리움은 이 한계를 넘기 위해 튜링 완전한 Solidity란 프로그래밍 언어를 씁니다. 여기서 자주 듣게 되는 튜링 완전함(Turing-Completeness) 이라는 말이 나옵니다.

이 튜링 완전함이라는 개념은 블록체인의 가능성이란 말과 닮아 있어 조금 설명을 하도록 하겠습니다.

비트코인 스크립트가 튜링 완전하지않다(Turing-incompleteness)라고 하는 이유는 순환명령(loop)을 할 수 없기 때문이라고 알려져 있습니다. 비트코인이 이 무한루프(자동반복)을 하지 못하게 한 이유는 거래 내역 안에 논리 폭탄을 막기 위한 것이었습니다. 하나의 명령이 끝없이 돌아가면, 제어장치가 없는 비트코인 노드는 과부하가 걸리기 때문입니다. 프로그래밍 언어로 튜링 불완전하다는 것은 이렇게 구현할 수 없는 기능이 있다는 것으로 설명됩니다.
그럼 튜링 완전함이라는 것은 프로그래밍으로 모든 것을 구현할 수 있다는 것인데, 이 튜링 완전함에 대한 설명에서 이더리움이 추구하는 바를 유추해 볼 수 있습니다.

튜링.jpg(앨런 튜링 : 영화 '이미테이션 게임' 의 주인공)
튜링 완전함이란 말은 앨런 튜링이라는 사람이 만든 튜링 머신라는 개념에서 나옵니다. 튜링 머신은 튜링 완전한 언어와 무한한 저장 공간을 가진다면 모든 문제를 풀 수 있다고 합니다. 즉 충분한 공간만 있으면 모든 문제를 풀 수 있는 언어라는 것이죠. 모든 문제를 풀 수 있는 언어로, 화폐에 국한되지 않는 다양한 서비스를 블록체인 위에 구현하고자 한 이더리움과 닮아있지 않나요? 19살 괴짜 천재의 눈에는 블록체인이 저 튜링 머신처럼 모든 걸 이뤄낼 수 있는 세계처럼 보인 게 아닌가 상상하게 됩니다.(현재 많은 문제점이 나오고 있지만요.ㅎㅎ)

이더리움은 지불수단이라는 비트코인의 기능을 발전시킵니다. 누구에게 돈을 주고 받고 송금하고의 문제는 두 사람간의 합의가 바탕이 된 하나의 계약입니다. 이 계약의 한 가지 방식을 설계 가능한 모든 계약 형태로 확장시키는 거죠. 이것이 이더리움의 핵심 기능인 스마트 컨트랙트입니다.

이더리움이 제공하려는 것은 완벽한 튜링완전(turing-complete) 프로그래밍 언어가 심어진 블록체인이다. 이 프로그래밍 언어는, 코딩된 규칙에 따라 '어떤 상태'를 다르게 변환시키는 기능(arbitrary state transition functions)이 포함된 "계약(contracts)"을 유저들이 작성할 수 있게 함으로써 앞서 설명한 시스템들을 구현 가능하게 할 뿐만 아니라 우리가 아직 상상하지 못한 다른 많은 어플리케이션도 매우 쉽게 만들 수 있도록 도와줄 것이다.

비트코인도 블록체인에서 하나의 Dapp(Decentralized Application)이라고 불리는 이유가 바로 이것입니다. 블록체인 기능을 확장시켜 다양한 어플리케이션을 사용한다면, 비트코인도 지불이나 송금을 할 수 있는 어플리케이션 중에 하나가 되는거죠.

스마트 컨트랙트.jpeg

백서에서 스마트 컨트랙트를 매개로 하는 Dapp은 다양한 서비스들을 구현할 수 있다고 합니다. 현실에서 컨트랙트(계약)이라고 하면 약관이란 것을 생각하게 되는데, 인터넷 사이트 회원가입할 때 가장 많이 보는 것 같네요. 그리고 은행 계좌나 카드 만들 때, 이사한다고 집 계약할 때, 보험 등등에서 약관이라는 걸 봅니다.
회원가입할 때 하는 약관은 신원 확인이나 개인 인증과 관련된 계약이니 이런 인증 시스템을 블록체인 위에 올릴 수 있습니다. 집 계약과 관계된 소유권 이전 같은 계약도 블록체인의 모든 정보가 공개되고 조작될 수 없다는 특성 상 잘 어울리는 서비스가 될 수 있습니다. 금융에 관계된 계약들은 이미 나온 수많은 암호화폐들이 보여주고 있죠.
또한 P2P네트워크로 연결된 노드 시스템이라는 점은 전세계 컴퓨터가 연결되어 있다는 것이니 그 컴퓨터를 이용하는 방식으로도 이용할 수 있을 것입니다. 네이버 클라우드 같은 클라우딩 컴퓨터나 분산 저장소가 만들어 질 수 있겠죠.
이더리움은 이런 구체적인 예들을 이더리움을 처음 소개하는 백서에서 설명하고 있습니다. 이더리움 플랫폼 위에 올라갈 Dapp들의 로드맵이 될 수도 있고 블록체인 자체의 발전방향이라고 말할 수도 있겠죠. 이더리움을 만들게 된 이유이기도 하고요.
그만큼 암호화 화폐의 보조수단이 아니라 블록체인 자체와 그 위에서 할 수 있는 일들의 가능성을 말하고 싶었던 것이 아닐까요?


이더리움은 분명 현재 많은 한계를 들어내고 있습니다. 올해 우리나라에 수많은 이더교도를 생산했지만 많은 문제점도 역시 들어내고 말았죠. 저두 아직 공부가 덜 되 이더리움이 블록체인에서 할 수 있다는 말은 이해가 가지만, 왜 블럭체인에서 저런 걸 해야하는 지는 잘 모르겠습니다. 블럭체인의 장점을 잘 살릴 수 있는 영역은 분명 있겠지만 아닌 영역도 분명 있다고 생각합니다. 이걸 알아내기 위해 공부해야겠죠.ㅎㅎ 사실 저두 사이비 이더교 신자이긴 하지만 이더의 가능성을 믿는 건 바로 좋은 개발진을 많이 선점했다는 점입니다. 엉성하긴 하지만 실제 Dapp들이 나오고 있고요. 밑에 새로운 킬러앱 같은.ㅎㅎ 그래두 아직 이더리움도 갈 길이 멀다는 건 팩트인거 같습니다.

이더레이싱.jpg
(이더리움 플랫폼에 올라온 이더레이싱이란 Dapp입니다. 차는 ER-4, ER-1, ER-3가 좋습니다)

어쩌다 보니 이더리움 백서의 초반 부분을 설명한 것처럼 되어버렸네요.ㅎ
이더리움 백서의 초반부분은 비트코인을 설명하는 것으로 시작됩니다. 그리고 그 한계를 지적하면서 이더리움으로 넘어가죠. 어제 오늘 글이 그 흐름을 따르고 있습니다.
다음 글에서는 이해하기 쉬운 것보다 자세한 차이를 좀 집어보겠습니다. 그리고 백서로 넘어가야죠!!!

튜링 완전함에 대해서 글을 찾아보다가 알게된 글이 있어 소개합니다. 자세히 알고 싶은 분은 한승환 님의 브런치 글 [이더리움 개론 + 튜링완전]을 읽어보시기 바랍니다. 튜링 완전함을 인간의 뇌에 비교하시면서 알기 쉽게 설명해주셨습니다. 물론 이더리움에 대해서도 잘 설명해주셨구요.ㅎ

글이 너무 길어졌네요. 이렇게 안 쓸려고 했는데 컨디션이 좀 메롱하다보니...죄송합니다!!!
긴 글 읽어주셔서 감사드립니다. 오늘은 사견이 좀 많이 들어간 거 같은데 의견은 나누라고 있는거니 댓글로 남겨주시고 같이 공부해요~~~

Ourselves 캠페인
셀프보팅을 하지 않고 글을 올리시고
ourselves 테그를 달아 주시면
많은 분들이 관심 가져 줄꺼에요

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

도스와 윈도우에 비교하니 이해가 잘 되는 것 같습니다... 2편부터 보고 1편을 보게되네요... 좋은 정보 잘 보고 갑니다...^^

잘 봐주셔서 감사합니다~~ 저두 코인 쬐금 가지고 있는데..ㅎㅎ
자주 들려서 볼게요.정보 많이 올려주시네요. ㅎㅎ
댓글 감사드려요~~ 자주 뵈요. ^^

좋은 글 감사합니다.
앞으로 쓰실 글들도 기대하겠습니다. ^^

staycalm777 님 2018년 새해 소망 릴레이에 추천드렸어요~
https://steemit.com/kr/@feyee95/2018-3
아직 블로그를 안 쓰셨는데 이런 글로라도 시작하셨으면 해서요. ^^
안 하셔도 되는 릴레이니 부담 갖지 마시구 편하게 생각하셔도 되요.
개인적으로 얼릉 글 쓰셔서 같이 스팀잇 즐겼으면 하네요~
새해 복많이 받으세요~~^^

설명 너무 감사합니다 ㅎㅎㅎ팔로우하고 열심히 써주시는 소중한 내용 잘 숙지하려고요. 요즘 암호화폐에 대해 투기니 도박이니 하는데 새로움에 대한 거부감을 띄며 다들 터부시 할 때 먼저 공부하고 체험해 보는게 기회를 잡는 것 아닌가 하는 생각을 해봅니다. 문과생이었던지라 시스템적인 부분에 대한 이해는 쉽지 않지만 이런 잘 설명해주시는 글들 읽다보면 언젠간 쉽게 이해되는 날이 오겠지요^^ 소중한 글 감사드리고 제 파워는 얼마 안되지만 보팅 꾹 누르고갑니다! ㅎㅎ

  ·  7 years ago (edited)

댓글 감사합니다~~
개인적으로 시드니를 너무 좋아해서 요새 올리시는 글 잘 보고 있어요.ㅎㅎ
저두 문과생이라 최대한 쉽게 쓸려고 해도 잘 안되네요.ㅋ
저두 자주 들릴게요~~ 여행기도 많이 올려주세요. ^^ 아 코카콜라 대박!!! ㅎㅎ

이제야 이더리움을 기반으로 한 크립토키티를 조금 이해했네요. 저는 그게 뭐지 왜 나온거지라고만 생각했는데 이해가 됩니다! :D 언제나 좋은 글 감사합니다!

항상 응원 감사드려요~ wherever님은 자신의 시리즈를 지키시는 거 같아서 다른 이벤트 추천하기가 좀 죄송하네요.ㅎㅎ
그래두 새해 바라는 거 잘 생각하시구 꼭 다 이루어지시길 바랄게용~~^^