urban 5cc30c4fee first commit 10 ماه پیش
..
src 5cc30c4fee first commit 10 ماه پیش
test 5cc30c4fee first commit 10 ماه پیش
.coveralls.yml 5cc30c4fee first commit 10 ماه پیش
.gitignore 5cc30c4fee first commit 10 ماه پیش
.travis.yml 5cc30c4fee first commit 10 ماه پیش
LICENSE 5cc30c4fee first commit 10 ماه پیش
README.md 5cc30c4fee first commit 10 ماه پیش
composer.json 5cc30c4fee first commit 10 ماه پیش
composer.lock 5cc30c4fee first commit 10 ماه پیش
phpunit.xml.dist 5cc30c4fee first commit 10 ماه پیش

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