이 카테고리는 Ground X에서 진행한 한양대학교 일반대학원 블록체인 융합학과 강의와 그 외의 참고자료를 보고 정리하는 곳입니다. 강의 동영상은 여기서 볼 수 있습니다.
너무 빈약한 지식이기에 이 글을 신뢰하지는 마세요.. 혹시 지나가시다가 잘못된 점 발견하시면 피드백 부탁드립니다.
1. 스마트 컨트랙트
비트코인은 지루하다. 왜? 사람들과 교류할 수 없기 때문.
그저 비트코인을 주고 받는 것 뿐이다.
But,
스마트 컨트랙트를 통해 사람들과 교류가 가능하다.
스마트 컨트랙트란?
"서면으로 이루어지던 계약을 코드로 구현하고,
특정 조건이 충족되었을 때 해당 계약이 이행되게 하는 소프트웨어"
스마트 컨트랙트를 사용하면 두 당사자가 서로를 모르거나 신뢰하지 않더라도 계약을 체결할 수 있다.
특정 조건이 만족되지 않으면 계약은 실행되지 않기 때문이다.
그렇기에 중계인 없이도 계약을 이행할 수 있다.
다른 말로 스마트 컨트랙트는 "특정 주소에 배포되어 있는 트랜잭션으로 실행 가능한 코드"다.
블록체인의 상태를 바꿀 수 있는건 오직 트랜잭션 뿐이다.
스마트 컨트랙트는 트랜잭션으로 실행된다.(트랜잭션의 결과가 컨트랙트에 반영됨)
스마트 컨트랙트는 [함수]+[상태]로 구성되며,
함수는 [상태를 변경하는]+[상태를 변경하지 않는] 함수로 구성된다.
2. 활용
에어비엔비에서 스마트 컨트랙트를 활용한다고 해보자.
에어비엔비라는 중계인이 사라지고 사용자<->집주인으로 연결된다면,
사용자는 돈을 보내고 자동으로 계약이 성사되며 IoT기기를 통해 집주인의 집을 사용할 수 있다
테슬라 자율주행 자동차에 스마트 컨트랙트를 활용해보자.
차가 필요한 사람<->자동차 간에 계약을 맺어서 돈을 보내면 자율주행으로 차가 필요한 사람에게 보내진다.
핵심은 중계인이 없다는 것이다.
3. 장단점
장점
- 비용 절감
- 계약 과정이 간단하며 빠르게 계약이 가능하다
- 네트워크의 모든 사용자가 계약 내용을 증명 가능하다
- 코드를 사용한 계약이기에 내용이 모호하지 않다(해석에 따라 오해의 여지가 없다)
단점
- 초기 계약 설정이 잘못되어 문제가 발생할 수 있다
- 코드로 동작하기에 시스템에 결함이 발생하면 문제가 된다
- 해당 블록체인 네트워크 위에서만 동작한다
- 조건이 만족되믄 기준이 명확하지 않을 수 있다
예를들어, 내일 비가오면(조건) 내기의 상금을 받는다(계약)인데,
비가 오는지 알기위해서는 제 3자를 신뢰해야 한다. 이 경우에는 비 감지 센서나 기상청 데이터 등이 되겠다.
참고:
'Block Chain' 카테고리의 다른 글
[블록체인] 블록체인 노드란? (1) | 2021.11.24 |
---|---|
[블록체인] 블록체인의 활용 (0) | 2021.08.29 |
[블록체인] 블록체인 애플리케이션 BApp (1) | 2021.08.28 |
[블록체인] 트랜잭션과 가스비 (0) | 2021.08.24 |
[블록체인] 블록체인이란? (1) | 2021.08.22 |