본문 바로가기
New IT tech/Study

[ 기술 ] 블록체인의 목적과 이더리움 기술 요약

by Vellena 2023. 11. 11.
반응형

 

ethereum logo

 

비트코인 블록체인은 주로 은행과 같은 중앙 기관의 중재 없이 블록체인의 다양한 당사자 간에 돈을 송금하는 데 사용됩니다. 근데 이게 우리나라는 필요 없어보일지 몰라도 외국에서는 이렇게 쉽지 않습니다.

 

캐나다 같은 경우 각주에 내는 세금과 연방정부에 내는 세금이 따로 있습니다. 대한민국 일반 직장인은 세금이 자동으로 출금이 되기 때문에 내가 낸세금과 내가 실제로 내야할 세금을 비교하는 연말정산만 잘하면 됩니다. 하지만 캐나다 같은 경우 직접 저렇게 작성 및 신고를 여러군데 해야합니다. 원래 캐나다가 많이 느린 편이지만 중재자들로 인해 추가 비용과 시간이 든다면 낭비가 됩니다.

 

이더리움

 비탈릭 부테린(Vitalik Buterin)이라는 이름의 19세 청년 개발자는 이러한 탈중앙화의 개념을 송금 외에 다른 분야에 적용하고자 했습니다. 그는 중앙화된 통제 권한 없이 전 세계적으로 운영될 수 있는 응용 프로그램을 만들고 싶었습니다. 예를 들어, 페이스북의 경우 페이스북 주식회사가 사용자의 데이터를 소유하고 있으며 원하면 사용자의 계정을 제거할 수 있는 권리를 가집니다. 10년 뒤 페이스북이 폐쇄된다고 가정하면 모든 데이터가 손실될 수도 있습니다.

 

비탈릭은 응용 프로그램을 빌드할 수 있도록 비트코인에 스크립팅 언어를 추가할 것을 제안하지만 비트코인 개발팀과의 합의에 도달하지 못합니다. 결국 그는 2014년 1월에 일반적인 스크립팅 언어를 사용할 수 있는 새로운 플랫폼에 대한 백서를 출간합니다. 곧이어 개발팀이 꾸려지고, 개빈 우드(Gavin Wood) 박사의 팀이 이더리움 황서에서 네트워크의 모든 스마트 계약을 실행하는 런타임 환경인 EVM(EVerenum Virtual Machine)에 대해 설명했습니다(EVM 및 스마트 계약에 대한 자세한 내용은 다음 절에서 설명합니다). 이 플랫폼의 개발을 위한 자금의 크라우드펀딩은 2014년 7월부터 8월에 거쳐 이루어졌으며, 펀딩 참가자는 비트코인으로 이더리움 밸류 토큰(이더)을 구입했습니다.

 

이더리움은 퍼블릭 블록체인(공공이라서 누구나 볼수 있습니다) 기반의 분산 컴퓨팅 플랫폼입니다. 전세계의 수많은 작은 컴퓨터로 구성된 하나의 큰 컴퓨터로 생각할 수도 있습니다. 응용 프로그램을 작성하고이 글로벌 컴퓨터에서 실행할 수 있으며, 이 플랫폼은 중단 시간, 검열, 사기 또는 제 3 자의 간섭없이 항상 실행되도록 보장합니다. 응용 프로그램을 실행하는 것 외에도, 이더리움 블록체인을 통해 중앙 권한없이 두 당사자간에 돈을 이체할 수 있습니다. 이러한 모든 컴퓨터(노드라고도 함)는 서로 연결되어 있으며 코드와 데이터의 전체 복사본을 가지고 있습니다. 이더리움 블록체인에 코드를 배포하면 코드가 네트워크의 모든 노드로 복제됩니다. 응용 프로그램에 데이터가 저장되면 모든 노드에서 해당 데이터가 복제됩니다. 네트워크에는 수천 개의 노드가 있으며 모든 노드를 중지시키는 것은 거의 불가능합니다. 따라서 응용 프로그램에 항상 액세스할 수 있습니다.

 

ethereum coin data copy graph

 

 

웹 앱 아키텍쳐

아래는 간단한 웹 애플리케이션의 클라이언트/서버 아키텍처입니다. 일반적인 웹 응용 프로그램은 일반적으로 자바, C#, 루비, 파이썬 같은 프로그래밍 언어로 작성된 서버 단 코드로 구성됩니다. 프론트엔드 코드는 HTML/CSS/자바스크립트를 사용하여 구현됩니다.

 

전체 애플리케이션은 AWS, 마이크로소프트 애져, 구글 클라우드 플랫폼, Heroku 또는 VPS와 같은 호스팅 제공 업체에서 호스팅됩니다.( 대신 웹, 앱을 저장공간을 대여해서 저장해준다는 의미 ) 사용자는 웹 브라우저, curl/wget(커맨드 라인) 또는 API를 통해 클라이언트를 사용하여 웹 응용 프로그램과 상호 작용합니다. 중앙화된 하나의 웹 응용 프로그램이 있으며 모든 클라이언트가 이 응용 프로그램과 상호 작용합니다. 클라이언트가 서버에 요청하면 서버는 요청을 처리하고 데이터베이스 또는 캐시와 상호 작용하며 데이터베이스를 읽고, 쓰고, 업데이트하고 클라이언트에 응답을 반환합니다.

 

client server architecture

 

네모난 점선이 서버단으로 호스팅 하고 있고 web 클라이언트단이나 다른 응용프로그램에 연결되어 있습니다.

위의 그림의 내용의 데이터베이스와 캐쉬와 서버 코드를 블록체인으로 교체합니다.

 

 

 

 

이전데이터베이스 대신 이더리움 EVM을 사용하는 경우

 

 

 

 

 

이더리움 단위

각 국가마다 USD, INR, RNB, GBP, EUR 등과 같은 자체 통화가 있듯이, 각 블록체인에는 자체 통화가 있습니다. 이더리움 블록체인의

경우 기본 통화를 이더(Ether)라고 합니다. 이더를 USD 또는 EUR와 같은 다른 화폐로 교환할 수 있는 거래소도 있습니다. 이더의 현재

가격은 이곳에서 확인할 수 있습니다.현실 세계의 통화에는 다양한 단위가 있습니다. 예를 들어 미국 1달러는 100센트이며 페니(1센

트), 니켈(5센트), 십 센트(10센트), 쿼터(25센트)와 같은 다양한 단위가 있습니다. 국가 및 통화에 따라 다양한 단위가 있을 수 있습니

다. 이더에도 아래 그림과 같이 다양한 단위 있습니다. 그 중에서 두 가지, 이더와 웨이만 잘 기억해도 됩니다. 웨이는 가장 낮은 단위로,  스마트 계약서에서 실제로 쓰이는 단위입니다.

 

ethereum unit

 

 

 

 

 

 

이더리움 주소

 

페이스북과 같은 웹사이트에 로그인하려면 일반적으로 이메일, 사용자 이름과 비밀번호를 사용합니다. 당신의 사용자 이름은 페이스북에서 신분증에 준하며, 사용자 이름 / 암호를 사용하여 페이스북 로그인을 위한 인증을 거치게 됩니다.이더리움 블록체인에서 사용자의 신분증에 해당하는 것은 주소입니다. 이더리움 주소는 001d3f1ef827552ae1114027bd3ecf1f086ba0f9 과 같은 형태를 가집니다. 각 주소에는 해당 개인키가 있습니다. 개인키는 사용자가 알고 있는 일종의 암호로 간주할 수 있습니다. 블록체인과 상호 작용하려면 이 주소 + 개인키 쌍이 필요합니다. 다음은 블록체인과 이더리움을 이해하기 위해 암기해야 할 몇 가지 핵심 사항입니다.

  1. 이더리움 주소는 공개되어 있으며 전 세계 누구와도 공유 할 수 있습니다.
  2. 개인키는 절대 다른 사람과 공유해서는 안됩니다.
  3. 주소 + 개인키는 그 어떤 데이터베이스에도 저장되지 않습니다. 사용자만이 이 정보를 통제 할 수 있습니다.

 

 

* 개인키

무언가를 전달할때 아무나 가져갈수 없게 만들기위해서 암호화를 시킵니다. 그러면 그것을 각 개인마다 복호화 할수 있게 키를 주는데 그것이 개인키입니다.(쉽게 말씀드리자면 집 관리자 열쇠입니다. 비밀키랑 비교하자면 암호복호화가 비대칭입니다. ) 

 

반응형