이더리움(Ethereum) - ERC20 토큰, ERC721 표준 (다중상속) 이더리움에 관심이 좀 있으신 분들은 ERC20 토큰에 대해서 들어보았을 것입니다. ERC20이란 이더리움에서 정해진 공통적인 매서드를 가진 스마트 컨트랙트입니다. 즉 전송, 잔액확인 등의 매서드(함수,function)들을 오버라이딩해서 사용하게 됩니다. 사실 토큰은 그저 하나의 contract에 불과하기 때문에 해당 컨트랙트에서 누구는 몇개의 코인을 가지고있는지를 저장해 놓는 것 뿐입니다. 그리고 전송기능과 같은 함수를 통해서 코인을 전송하거나 등의 기능을 하게되는 것이죠. 예를 들어서 거래소에서도 토큰과 통신할 contract를 만든뒤에 그 contract로 전송을받고 고객들의 잔액을 관리하게 되는 것이죠. 또 ERC20표준..
이더리움(Ethereum) Gas, 가스 사용료 줄이기를 위한 압축 이더리움 Dapp에 우리가 만든 함수를 다른 사람들이 이용하려면 그 사람들은 Gas(가스)를 지불해야한다. 가스란 일종의 연료로 이더리움(Ethereum)으로 구매해서 사용하게된다. 이러한 가스는 함수의 로직(구조)가 얼마나 복잡한 지에 따라서 지불 비용이 달라지게된다. 즉, 많은 연산을 수행해야하는 구조의 복잡한 함수는 더 많은 양의 가스(gas)가 필요하게되고, 간단한 함수는 그 양이 적을 것이다. 하지만, 최적화가 되지않은 함수에 대해서도 가스가 더 많이 지불 될 수 있으니 이더리움 컨트랙트 개발에서는 최적화가 필수라고 할 수 있다. 그래서 기본인 압축을 알아보려고한다. uint 8, 16, 32, 128, 256 일반적으로 uin..
솔리디티(solidity) 생성자, modifier, import, 상속 솔리디티는 이더리움의 스마트컨트랙트 개발용 언어로 이더리움만의 자체 언어입니다. 스마트계약에서 그리고 이더리움네트워크 에서 돌아간다는 것 빼고는 다른 언어와 별 다른 차이점이 없지만, 알아야하는 문법은 존재합니다.생성자 위는 생성자 예시입니다. Ownable이라는 컨트랙트(contract)가 있고 그 이름을 똑같이 가지는 생성자(함수)는 바로 밑에 처럼 function으로 해주며 접근 지정자는 public으로 지정해줍니다. (다른 언어와 다른 점은 접근 지정자를 마지막에 붙여줍니다.) 함수 제어자(modifier) 함수제어자는 함수가 실행되기전에 요구조건을 만족시키는지 확인하는 작업을 해준다. 위에서는 오너와 현재 메세지 보내는 사..