generate를 통하여 생성된 keyring에서 사용하는 private key를 변경하고자 하는 경우 Account update 트랜잭션을 클레이튼 네트워크에 전송하여 클레이튼 네트워크에 저장된 계정의 key 정보를 업데이트 해야 합니다.
일단 Klaytn account와 Klaytn account key는 Klaytn Docs의 설명을 참고해서 읽어보시기 바랍니다.
클레이튼 계정에서 여러 개의 private key를 사용하고 싶은 경우 AccountKeyWeightedMultiSig로 계정의 키를 업데이트 해야 하는데, Getting Started에 보시면 중간 부분에 AccountKeyWeightedMutliSig로 업데이트하는 방법이 코드와 함께 설명되어 있습니다.
질문해 주신 것을 보면 A account( A private key - A public key - A address )에서 사용하는 키를 업데이트 해야 하는데, const newKeyring = caver.wallet.keyring.createWithMultipleKey(Aaddress, [APrivateKey, BPrivateKey, CPrivateKey]) 를 통해 나온 keyring에서 newKeyring.toAccount(options)를 통하여 나온 Account를 사용하면 됩니다.
그리고 A privateKey만 가지고도 서명이 가능하게 하려는 경우 AccountKeyWeightedMultisig의 threshold와 weight 값을 조절하면 됩니다. Klaytn Docs의 AccountKeyWeightedMultiSig에 대한 설명을 읽어보시기 바랍니다.
안녕하세요!
질문 내용을 추가적으로 말씀드리겠습니다.
현재 내부적으로
키 생성 시 threshold를 설정하여 하나의 키를 여러명의 관리자를 두고 사용하고 있습니다.
이때 하나의 keystore에 대해서 JsonShare를 이용해서 설정한 비밀번호, 최소 허용 수 를 이용해서 서명을 하고 있는데 이런 기능이 있을까요?