Block Chain 4

솔리디티의 기본 자료형

솔리디티는 스마트 컨트랙트에 최적화된 자료형을 지원. 1. 변수 선언 자료형 변수명 = 데이터; type name = data; # 변수 선언 시 데이터는 생략할 수 있지만, 자료형과 변수명은 필수적으로 명시해야 한다. # 'constant' 키워드를 붙여 상수로 선언할 수 있다. 이때는 데이터를 반드시 넣어주어야 한다. 2. 변수의 유형 1) 상태 변수 (State variable) -함수 외부에서 선언된 변수로 블록체인에 값이 영구적으로 저장된다. 2) 지역 변수 (Local variable) -함수 내부에서 선언된 변수로 블록체인에 값이 영속적으로 저장되지 않는다. 3) 특수 전역 변수 (Special global variable) -블록체인과 관련된 정보를 제공하기 위해 내장된 변수 3. 자료형의..

mapping, msg.sender

목차 mapping msg.sender mapping mapping (a => b) public 이름; msg.sender 현재 함수를 호출한 사람의 주소를 가르키는 전역변수 모든 함수에서 이용 가능한 변수이다. *참고 : 솔리디티에서 함수 실행은 항상 외부 호출자가 시작한다. 컨트랙트는 누군가 컨트랙트의 함수를 호출할 떄까지 블록체인 상에서 어떤 행동도 하지 않고 있다. ##Internal과 External public과 private 이외에도 솔리디티에는 internal과 external이라는 함수 접근 제어자가 있다. internal은 함수가 정의된 컨트랙트를 상속하는 컨트랙트에서도 접근이 가능하다 점을 제외하면 private과 동일하다. external은 함수가 컨트랙트 바깥에서만 호출될 수 있고..

스마트 컨트랙트의 기본개념

스마트 컨트랙트 -1995년 Nick Szado에 의해 제안되었다. -상황에 따라 자동으로 계약 내용을 이행해주는 응용 프로그램으로 이해하는 것이 편하다. -스마트 컨트랙트를 이용시 중재자 없이 자동으로 계약을 주선하고 이행할 수 있다. (제 3의 인증기간이 필요하지 않음) -> 블록체인이 추구하는 탈중앙화(decentralized)구현 -스마트 컨트랙트 등장 이전에는 블록체인상에 단순히 비트코인의 입출금 내역(UTXO : Unspent Transaction Outputs)을 기록하는 것에 그쳤지만 스마트 컨트랙트의 출현으로 디지털 자산이 결제 수단등의 기능을 넘어 블록체인의 생태계 확장이 가능하도록 하는 수단으로 발전되었다.