[BlockChain] 메타마스크 서명과 검증
2021. 9. 8. 18:53ㆍBlockChain
메타마스크를 활용하면 특정 메시지에 서명한 값을 가지고 서버에서 메시지를 검증하여 사용자가 맞는지 확인하여 로그인, 사용자 검증 등에 사용할 수 있다.
아래는 메타마스크의 인스톨 여부와 권한을 요청하는 구문이다.
/* Metamask message 서명 함수 */
const signing = () => {
let from = user.account;
let params = ['Hello'];
let method = 'personal_sign';
try {
web3.currentProvider.sendAsync(
{
method,
params,
from,
},
function (err, result) {
if (!err) {
/* err가 아닐 경우 ... */
}
else if (err) {
console.log(result);
}
});
}
catch (e) {
console.log(e);
}
}
아래와 같이 2단계에 걸쳐 연결을 설정한다.
서명 inject된 metamask web3를 가지고 서명 요청을 보내는 기본적인 스크립트이다.
method의 경우 personal_sign 말고도 구조화된 메시지를 보내는 여러 함수들이 있다.
( 참고 docs.metamask.io/guide/signing-data.html )
서명을 하게 되면 아래와 같은 결과 값을 받게 되는데 result에 해당 하는 값이 서명된 메시지이다.
'BlockChain' 카테고리의 다른 글
[BlockChain] NFT Market 컨트랙트 배포 (0) | 2022.05.19 |
---|---|
[BlockChain] Klaytn Code Verify (0) | 2022.04.27 |
IPFS(InterPlanetary File System) Upload (0) | 2021.06.29 |
ERC721 - NFT 만들기 (2) | 2021.06.24 |
나만의 토큰 만들기 (0) | 2021.06.03 |