클레이튼 keystore로 로그인 하면 자꾸 invalid하다고 합니다.
password가 처음 계좌를 만들 때 패스워드 아닌가요?
klaytn wallet에서 똑같은 password로 접속을 하니까 거기선 또 접속이 됩니다.
password 잘못친거 아닙니다.
privatekey로 접속하니까 또 됩니다.
바오밥 테스트넷입니다.
클레이튼 keystore로 로그인 하면 자꾸 invalid하다고 합니다.
password가 처음 계좌를 만들 때 패스워드 아닌가요?
klaytn wallet에서 똑같은 password로 접속을 하니까 거기선 또 접속이 됩니다.
password 잘못친거 아닙니다.
privatekey로 접속하니까 또 됩니다.
바오밥 테스트넷입니다.
안녕하세요, 클레이튼 포럼에 질문을 올려주셔서 감사드립니다.
Klaytn IDE에서 keystore file을 import할 때 에러가 난다는 말씀이신거죠?
현재 Klaytn IDE에서는 keystore v4를 지원하지 않아 해당 에러가 발생하는 것 같습니다.
Klaytn wallet에서는 최근 keystore v4를 지원하도록 업데이트 되었습니다만 Klaytn IDE에서 지원되지 않아 문제가 되는 것 같습니다. 개발팀에게 문의하여 수정될 수 있도록 하겠습니다.
감사합니다.
@11121
안녕하세요, 이제 Klaytn IDE에서 keystore v4가 지원됩니다. 확인 부탁드리겠습니다.
감사합니다.
와! 잘됩니다. 감사합니다.
하나만 더 여쭤보겠습니다.
keystore 방식으로 로그인하는 방식으로 코드 작성 중인데
버전이 바뀌면서 코드 작성 방법이 달라졌나요?
cav.klay.accouts.decrypt 나
cav.klay.accounts.privateKeyToAccount
같은거요!
만약 아무 변화 없다면 아래 질문은 굳이 안 읽어 보셔도 됩니다!
달라졌다면 다른 방법 찾아보겠습니다.
Bapp 개발 중 keystore 방식으로 로그인하는 코드를 작성 중인데
handleLogin: async function () {
if (this.auth.accessType === 'keystore'){
try{
const privateKey = cav.klay.accounts.decrypt(this.auth.keystore, this.auth.password).privateKey;
this.integrateWallet(privateKey);
} catch(e){
$('#message').text('비밀번호가 일치하지 않습니다');
}
}
},
integrateWallet: function (privateKey) {
const walletInstance = cav.klay.accounts.privateKeyToAccount(privateKey);
cav.klay.accounts.wallet.add(walletInstance);
sessionStorage.setItem('walletInstance', JSON.stringify(walletInstance));
this.changeUI(walletInstance);
},
버전이 바뀌면 이런 식으로는 더 이상 할 수 없나요?
되야 할것 같은데요?
v4 가 기존 eth key 와 필드 이름이 조금 차이가 나지만, private key scheme 은 같아요.
그냥 private key 기반으로 사용하면 v4 든 차이가 없을것 같네요.
안녕하세요, decrypt()함수는 v3, v4모두를 지원하도록 구현되어 있습니다. json object의 version field를 통해 구분합니다.
privateKeyToAccount()는 keystore version과 관계가 없으니, 잘 동작할 것 같습니다.
답변이 되셨을런지요? 추가 질문이 있으시다면 댓글 부탁드립니다.
감사합니다.