web3p / secp256k1
Ethereum secp256k1 library in PHP.
v0.2
2018-03-20 02:37 UTC
Requires
- mdanter/ecc: dev-master
Requires (Dev)
- phpunit/phpunit: ~6.0
This package is auto-updated.
Last update: 2024-10-08 01:23:31 UTC
README
secp256k1 for ethereum, this package depends on mdanter/ecc package.
Install
Set minimum stability to dev
composer require web3p/secp256k1
Usage
Sign a message:
use Web3p\Secp256k1\Secp256k1; use Web3p\Secp256k1\Serializer\HexSignatureSerializer; $secp256k1 = new Secp256k1(); // return signature contains r and s. // message and privateKey are hex string $signature = $secp256k1->sign($message, $privateKey); // get r $r = $signature->getR(); // get s $s = $signature->getS(); // encode to hex $serializer = new HexSignatureSerializer(); $signatureString = $serializer->serialize($signature); // or you can call toHex $signatureString = $signature->toHex();
Verify a message:
use Web3p\Secp256k1\Secp256k1; $secp256k1 = new Secp256k1(); // signature was created from sign method. // hash and publicKey are hex string $isVerified = $secp256k1->verify($hash, $signature, $publicKey);
API
Todo.
License
MIT