Jose\Algorithm\Signature\ECDSA::getPHPECCSignature PHP Method

getPHPECCSignature() private method

private getPHPECCSignature ( Jose\Object\JWKInterface $key, string $data ) : string
$key Jose\Object\JWKInterface
$data string
return string
    private function getPHPECCSignature(JWKInterface $key, $data)
    {
        $p = $this->getGenerator();
        $d = $this->convertBase64ToGmp($key->get('d'));
        $hash = $this->convertHexToGmp(hash($this->getHashAlgorithm(), $data));
        $k = RandomGeneratorFactory::getRandomGenerator()->generate($p->getOrder());
        $signer = EccFactory::getSigner();
        $private_key = $p->getPrivateKeyFrom($d);
        $signature = $signer->sign($private_key, $hash, $k);
        $part_length = $this->getSignaturePartLength();
        $R = str_pad($this->convertDecToHex($signature->getR()), $part_length, '0', STR_PAD_LEFT);
        $S = str_pad($this->convertDecToHex($signature->getS()), $part_length, '0', STR_PAD_LEFT);
        return $this->convertHexToBin($R . $S);
    }