๐Ethereum Signature Validator API
Authenticates SDK users from their EOAs
Features
Provide HTTP API endpoint
Return the result of validation with error message
How to use API
Call HTTP API endpoint with arguments set in request body
Authenticates SDK users from their EOAs
PUT https://asia-northeast1-startrail-api-prod.cloudfunctions.net/ethereum-signature-validator
This module recovers Ethereum address (EOA) from message and signature, and validates that the recovered address is equal to the signer's address.
Request Body
message*
String
raw message that signature is generated from (it does not have to be hashing)
signature*
String
0x prefixed signature that is generated by secp256k1 algorithm such as eth_sign function
address*
String
Ethreum Address(EOA) of the signer(Both lowercase and mixed case which is compatible with EIP55 are accepted)
signMethod
String
eth_signor personal_sign
A specific sign method with which signature is generated. If not specified, both eth_sign and personal_sign method is used to validate EOA
// Validation Success
{ isValid: true, invalidReason: null, triedSignMethods: ['eth_sign'] }
// Validation Failure
{ isValid: false, invalidReason: 'Signature is invalid', triedSignMethods: ['eth_sign', 'personal_sign'] }// Validation Failure
{ isValid: false, invalidReason: 'Request parameters are not properly set' }
{ isValid: false, invalidReason: 'Signature format is invalid' }
{ isValid: false, invalidReason: 'Ethereum address is invalid' }Sample Request command
curl -X PUT \
-H "Content-type: application/json" \
--data '{"message": "test-message", "signature": "0x633bc7c201cf45fff0c1724b77c90c825a04c1b818f043915e2fedd55b4cfe681b425fe844ea3684a3860dc250527e318d3225b2d21ad0f75e419db4f0939a1b1c", "address": "0xBFC1331F8111102A51588b3b4A3E2F317B3a0363"}' \
https://asia-northeast1-startrail-api-prod.cloudfunctions.net/ethereum-signature-validatorcurl -X PUT \
-H "Content-type: application/json" \
--data '{"message": "test-message", "signature": "0x7cdf2aa9dfb2da8c6f8fe63269b4dbfb923451f0e36087479e7f2897718a6d0b6438bd44e367907e30c65a4b950c9e11f94049d38a0ca1dd4d419e107a3dade31c", "address": "0xBFC1331F8111102A51588b3b4A3E2F317B3a0363", "signMethod": "personal_sign"}' \
https://asia-northeast1-startrail-api-prod.cloudfunctions.net/ethereum-signature-validatorLast updated
Was this helpful?