좋은 프로그램은 마음의 여유에서 나온다.

EOS Hello Contract 올려보기-1 본문

블록체인/EOS

EOS Hello Contract 올려보기-1

좋은데이 2018. 6. 20. 10:00

EOS 튜토리얼에 있는 Hello 컨트랙 올려보기.


EOS 컨트랙을 올리기 위해서는 account가 필요합니다.


한개의 account는 한개의 contract만 올릴 수 있습니다.


앞의 지갑 생성하기(http://lky1001.tistory.com/187)를 따라 하셨다면


지갑에 키를 임포트하고 account를 생성하도록 하겠습니다.


지갑은 unlock 되어있어야합니다.


아래의 명령어로 키를 생성할 수 있으나 EOSIO 1.0.5 버전부터 테스트용 키를 써야 하므로(http://lky1001.tistory.com/190)

$ cleos create key Private key: AAAAAA Public key: BBBBBB


다음의 테스트키를 사용하겠습니다.


eosio private key: 5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3

eosio public key: EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV


지갑에 키 임포트하기


// 지갑 이름을 명시 안하면 default로 추가가 되고, -n 옵션을 이용해 지갑 이름을 지정할 수 있다.
$ cleos wallet import 5Jmsawgsp1tQ3GD6JyGCwy1dcvqKZgX6ugMVMdjirx85iv5VyPR
imported private key for: EOS7ijWCBmoXBi3CgtK7DJxentZZeTkeUnaSDvyro9dq7Sd1C3dC4


지갑을 unlock하지 않으면 아래와 같은 에러가 난다.

Error 3120003: Locked wallet
Ensure that your wallet is unlocked before using it!
Error Details:
Wallet is locked: default


키 추가된 것 확인하기

$ cleos wallet keys
[
  "EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV"
]


account 생성하기


$ cleos create account 인증계정 새로운계정 오너키 활성키

인증계정 : 계정 생성과 새로운 계정에 대한 지불을 할 계정
새로운계정 : 새로 생성할 계정의 이름
오너키 : 계정의 소유자 자격에 해당하는 공개키
활성키 : 계정의 활동 자격에 해당하는 공개키

** 오너키는 매우 중요하므로 잘 보관해야 한다. 예제에서는 편의상 오너키와 활성키를 같은것으로 생성.


$ cleos create account eosio hello.test EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV
executed transaction: 91888afece08d8a1ef3438ba6816ffd14bc15c169fd086029f182f8b4ae9d5ea 200 bytes 1556 us # eosio <= eosio::newaccount "0000000000ea30550040c62a031aa36a01000000010002c0ded2bc1f1305fb0faac5e6c03ee3a1924234985427b6167ca56... warning: transaction executed locally, but may not be confirmed by the network yet


* 위의 예제에서 eosio를 인증계정으로 사용하는데 eosio는 eosio 노드를 실행하기 위한 특별한 계정. 
(이 위치에서 찾을 수 있음. ~/.local/share/eosio/nodeos/config/config.ini)

계정 이름 규칙
- 13 글자 미만일 것
- 다음 문자만을 포함하고 있을 것: .12345abcdefghijklmnopqrstuvwxyz

여기서는 account를 hello.test 라고 생성함


공개키로 account 확인하기

$ cleos get accounts EOS7ijWCBmoXBi3CgtK7DJxentZZeTkeUnaSDvyro9dq7Sd1C3dC4
{
  "account_names": [
    "user"
  ]
}


account 상세보기


$ cleos get account hello.test -j
{
  "account_name": "hello.test",
  "head_block_num": 44749,
  "head_block_time": "2018-06-20T01:44:01.000",
  "privileged": false,
  "last_code_update": "1970-01-01T00:00:00.000",
  "created": "2018-06-20T01:42:38.500", 생략



'블록체인 > EOS' 카테고리의 다른 글

첫 이오스 메인넷 댑  (1) 2018.07.02
이오스 메인넷에 계정 만들기  (0) 2018.07.02
EOS HTTP API 외부 요청 허용  (0) 2018.06.19
EOS dawn 1.0.2 노드 실행 오류  (0) 2018.06.14
EOS 지갑 생성하기  (0) 2018.06.11
Comments