이렇게 2개의 파일이 있는데, 0x91… 이 파일은 텍스트파일인데 안에는 ‘egY(N$Zb$X]D)9n’ 이런식의 문구가 들어 있습니다.
이게 키암호인 줄 알고 klay.ipc 에 연결해서 personal.unlockAccount(“0x91E4211FDa3d2D5093A66e64CA4504af1d0d6Dec”) 를 하고 ‘egY…’ 이 암호를 직접입력해도 언락이 되지 않았습니다.
personal.unlockAccount(“0x91E4211FDa3d2D5093A66e64CA4504af1d0d6Dec”)
Unlock account 0x91E4211FDa3d2D5093A66e64CA4504af1d0d6Dec
Passphrase:
Error: could not decrypt key with given passphrase
제가 이전에 만들땐 이렇게 들어 있으면 자동으로 언락이 진행되는 것으로 알고 있어서,
그냥 parent_bridge_account 폴더내의 키파일들을 모두 삭제하고
노드를 재시작하여 자동으로 만들어진 다른 키 및 parentAddress에 klay를 지급하니
정상적으로 동작하였습니다.
(일부 해결) UTC–…91e. 이 키파일을 keystore에 넣으니 unlock은 가능했습니다.
그래서, parent_bridge_account 폴더에서 기존 키파일을 삭제하고 다시 0x91E(암호파일)과 UTC–…91e…(키파일)을 넣고, kscnd를 stop/start 를 한 후에, 아래 명령을 쳐봤는데,
서비스노드에서 subbridge를 활성화 하게 되면
자동으로 parent_bridge_account 폴더안에 keystore파일을 생성하고 passphrase파일도 주소명으로 생성하게 됩니다. 만약 keystore파일이 별도로 존재하고 있으면 주소명과 동일한 passphrase 파일을 찾아 해당 wallet을 unlock시도하며 passphrase 파일이 없으면 unlock을 하지 못하고 노드를 실행하게 됩니다.
노드 실행 이후에 수동으로 unlock을 위해서는 아래와 같이 unlock을 시키면 됩니다.
parent/child operator keystore는 일반 keystore와는 별도로 해당 위치에 저장을 하고 있습니다.
lock/unlock시에도 personal_XXX API가 아닌 subbridge_XXX API를 사용해야 합니다.
말씀하신데로 직접 계정을 지정하시려면 keystore파일을 생성하시고 그 파일을 해당 parent_bridge_account 폴더에 위치하시면 됩니다. 자동 unlock을 하고 싶으시면 passphrase 파일을 같은 자리에 주소를 파일명으로 해서 저장해놓으시면 됩니다.