Security/Blockchain(104)
-
간단한 스마트 계약의 예제
간단한 스마트 계약의 예제스마트 계약의 구조를 이해할 수 있는 가장 기본적인 스마트 계약의 예제입니다.본 예제는 스마트 계약이 갖추어야 할 기본 요소들을 모두 포함하고 있습니다. SimpleStorage.sol http://bit.ly/2CyJW2i
-
Solidity 특징
Solidity 특징· Turing Complete 프로그래밍 언어· BitCoin(비트코인) vs Ethereum(이더리움) Turing Complete 프로그래밍 언어· Turing Complete 프로그래밍 언어입니다. Turing Complete한 프로그래밍 언어로 어떠한 알고리즘과 응용프로그램도 구현할 수 있습니다.· 비트코인의 경우 프로그래밍이 가능한 Script 언어가 있지만 Turing Complete하지 않습니다. 따라서 비트코인 내 Script 언어를 가지고는 모든 알고리즘이나 응용프로그램을 구현할 수 없습니다.Turing Complete가 언급되는 이유는 이더리움이 비트코인과 많이 비교되기 때문입니다.· 비트코인은 화폐의 기능으로서 저장, 전송에 적합하지만 Turing Incomple..
-
선언된 변수
선언된 변수· 선언된 변수는 별도의 값을 할당하지 않는다면 Zero Bytes로 초깃값이 설정됩니다.· bool type의 경우 초깃값(default value)은 false이고, uint 및 int의 경우에는 0의 값으로 설정됩니다.
-
Ether 송금과 수수료
Ether 송금과 수수료 Metamask라는 이더리움 전자지갑을 통해 1 Ether를 송금한 것 입니다. Amount 1.000 ETH 568.36 USD Gas Limit 21000 UNITS 단위당 비용인 GAS Prices는 5 GWEI 가 되는 것으로, 1 GWEI는 10억 분의 1 Ether가 됩니다. (5 GWEI = 0.000000005 ETH) Max Transaction Fee 0.000105 ETH 0.06 USD 1 Ether를 송금할 때, 송금액인 1 Ether와 송금수수료를 더해야 총 금액이 산출됩니다. 1 ETH(송금액) + 0.000105 ETH(거래수수료)= 1.000105 ETH
-
스마트 계약 활용
스마트 계약 활용현실 경제의 계약에 대응되는 요소가 스마트 계약입니다. 그러므로 현실 경제에서 계약의 형태로 되어 있는 것은 스마트 계약으로 구현을 할 수 있습니다.스마트 계약을 활용하면 안전하고 상호신뢰를 보장하면서 매우 혁신적으로 구현할 수 있습니다.
-
에러 핸들링(Error Handling) - 거래 전송에 실패하게 될 경우, 스마트 계약의 경우, Gas Limit 초과
에러 핸들링(Error Handling)· 이더리움 스마트 계약은 Exception을 만나면 State-Reverting, 즉 모든 변경사항을 원래대로 복원하고 Caller에서 에러를 반환하고 종료하게 됩니다.· revert, require를 통해서 exception을 발생시킬 수 있습니다. 거래 전송에 실패하게 될 경우거래의 경우 거래 전송에 실패하게 되면 전송에 소모된 GAS는 소진되고 남은 GAS와 송신된 Ether가 송신자에게 반환되며 모든 상태를 복원하고 종료하게 됩니다. 스마트 계약의 경우스마트 계약의 경우도 마찬가지로 스마트 계약의 실행으로 변환된 상태는 호출되기 이전 상태로 복원이 되고 그때까지 스마트 계약을 실행하는 데 소모된 가스는 소진됩니다. 또한 남은 가스와 스마트 계약에 송금된 E..