KIP7 Mint 문의 드립니다

안녕하세요. KIP7을 발행 후 특정 유저에게 추가 Mint를 해주고 싶은데

여기 문서에는 추가 mint를 할때 인증된 사용자만 토큰을 발행 할 수 있어야 하므로 주의하라고 적혀있는데
스마트컨트랙트에서 인증을 어떤식으로 구현해야 할까요?

@Dgn

문서에 첨부되어 있는 링크를 따라가다 보면 openzeppelin-contracts/contracts/access at v2.3.0 · OpenZeppelin/openzeppelin-contracts · GitHub 를 보실 수 있을거예요. 코드를 직접 확인하시면 어떻게 구현하는지 바로 감을 잡으실 수 있을 거 같습니다 :slight_smile:

1개의 좋아요

감사합니다.
한가지만 더 여쭤볼게요!!
MinterRole.sol 코드에서 addMinter 함수가 onlyMinter 만 가능한거 같은데 그럼 토큰을 생성한 사람이 계속 minter를 추가해줘햐 하는건가요? 만약 minter에 다른 B계정이 추가 됐을때 B계정에서도 addMinter가 가능해 지는건가요?

@Dgn

토큰을 생성한 사람이 계속 minter 를 추가해줘야한다는 건 어떤 뜻일까요~?
계속 Minter를 추가할 만한 유즈케이스가 어떤 게 있나요?

코드를 보시면 아시겠지만, Minter에 다른 계정 B가 추가되면 B도 addMinter가 가능해집니다.

아 제가 잘못 이해하고 있는거 같네요…
그럼 유저 A가 토큰을 달라는 트렌젝션은 호출하면 ownerAddress로 토큰 추가 발행 후 유저 A에게 transfer 하면 될까요?

@Dgn

네. 그렇게 하시면 될 거 같습니다.
일반적으로 Mint (토큰의 총 발행량을 늘리는 행위)를 하는 일은 거의 없어야 하지 않나? 라는 생각이 들긴 하지만,
구현은 서비스의 기획에 맞게 자유롭게 하시면 될 거 같습니다. :slight_smile:

1개의 좋아요

저 죄송한데 한가지만 더 여쭤도 될까요?
KIP7 토큰을 transfer 함수 하나만 쓰는 것이랑 approve, transfer 두 함수를 같이 쓰는게 어떤 차이가 있을까요?