UNPKG

@andybry/crypto-testing

Version:

Utilities for expermenting with cryptography

37 lines (33 loc) 1.67 kB
const ecdsa = require('../ecdsa') // key generation const keys1 = ecdsa.generateKeys() const keys2 = ecdsa.generateKeys() const message = 5n // 256bit integer (e.g. from hashing a message with keccak) const signature = ecdsa.sign(keys1.private, message) const verify1 = ecdsa.verify(keys1.public, message, signature) const verify2 = ecdsa.verify(keys2.public, message, signature) const recovered = ecdsa.recover(message, signature) console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>') console.log('Keys for User 1:') console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>') console.log(keys1) console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>') console.log('Keys for User 2:') console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>') console.log(keys2) console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>') console.log('Signature (by User 1):') console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>') console.log(signature) console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>') console.log('Verification of signature against User 1:') console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>') console.log(verify1) console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>') console.log('Verification of signature against for User 2:') console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>') console.log(verify2) console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>') console.log('Recovered possible public keys for the signature') console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>') console.log(recovered)