- 배포 전이 아니라 배포 후에 msg.sender(배포자)를 저장할 수 있다는 말씀이시죠?
정확히는 스마트 컨트랙을 발행한 EOA의 계좌 주인이 되는 거죠? 이후에 바꿀 수 있는게 아니라
스마트 컨트랙트 권한은 설정하기 나름입니다.
msg.sender는 해당 컨트랙트에 함수를 실행한 계정의 주소입니다. contract 배포할 때의 msg.sender는 컨트랙트 배포자가 되는것이지요.
그래서 많은 예시에서 constract constructor에서 msg.sender를 contract owner로 설정합니다.
@okay 님이 컨트랙트내에 owner의 주소를 바꿀 수 있는 함수를 짜실 수도 있고, owner가 여러명이게 만들 수도 있습니다.
그리고 modifier를 정의해서 다른 함수를 실행하기 전 권한 설정을 할 수 있습니다.
예시 : Contracts — Solidity 0.5.3 documentation
- solc version입니다
npm list solc 아니면 npm show solc version을 해야 나오네요.
truffle 버전도 solidity 버전과 통일시켜줬어야 했던 것으로 기억납니다. 저도 예전에 이것 때문에 truffle 삭제 하고 다시 설치해서 해결했던 것 같습니다. 이건 저도 한번 확인해 보고 다시 알려드릴게요.
- API 사용을 여쭙기 전에, API를 쓰려면 KAS에서 토큰 등록을 먼저 해야 되더군요.
그럴려면 여기 답변처럼 진행을 하려는데, caver-js에서 signuatre값을 가져오려 해도 문제네요
아래 TextDecoder는 node version이 11 이상부터 해결될 수 있다는데…
현재 권장하는 버전이 truffle 4.15, solc 0.5.6, node v10, npm v6 아닌가요?
지원하는 툴마다 버전이 달라서 문제를 겪고 계신군요. 이건 저희가 한번 맞춰봐야 할 것 같습니다. 일단 지금 truffle-hdwallet-provider-klaytn은 node v10까지 동작하는 것을 확인했습니다. 정식적이진 않지만, node v12 이상에서 truffle을 방법은 있습니다. 불편해도 다음 방법을 이용해 주시면 감사하겠습니다.