urban 5cc30c4fee first commit hai 10 meses
..
src 5cc30c4fee first commit hai 10 meses
test 5cc30c4fee first commit hai 10 meses
.coveralls.yml 5cc30c4fee first commit hai 10 meses
.gitignore 5cc30c4fee first commit hai 10 meses
.travis.yml 5cc30c4fee first commit hai 10 meses
LICENSE 5cc30c4fee first commit hai 10 meses
README.md 5cc30c4fee first commit hai 10 meses
composer.json 5cc30c4fee first commit hai 10 meses
composer.lock 5cc30c4fee first commit hai 10 meses
phpunit.xml.dist 5cc30c4fee first commit hai 10 meses

README.md

php-secp256k1 Build Status Coverage Status

$ composer require kornrunner/secp256k1

Usage

Sign a message:

<?php

require_once 'vendor/autoload.php';

use kornrunner\Secp256k1;
use kornrunner\Serializer\HexSignatureSerializer;

$secp256k1 = new Secp256k1();

// return signature contains r, s and recovery param (v).
// message and privateKey are hex strings
$signature = $secp256k1->sign($message, $privateKey);

// get r
$r = $signature->getR();

// get s
$s = $signature->getS();

// get recovery param
$v = $signature->getRecoveryParam();

// encode to hex
$serializer = new HexSignatureSerializer();
$signatureString = $serializer->serialize($signature);

// or you can call toHex
$signatureString = $signature->toHex();

Verify a message:

<?php

require_once 'vendor/autoload.php';

use kornrunner\Secp256k1;

$secp256k1 = new Secp256k1();

// signature was created by sign method
// hash and publicKey are hex strings
$isVerified = $secp256k1->verify($hash, $signature, $publicKey);

License

MIT

Crypto

ETH 0x9c7b7a00972121fb843af7af74526d7eb585b171