Пример #1
0
 public function format(PublicKeyInterface $key)
 {
     if (!$key->getCurve() instanceof NamedCurveFp) {
         throw new \RuntimeException('Not implemented for unnamed curves');
     }
     $sequence = new Sequence(new Sequence(new ObjectIdentifier(DerPublicKeySerializer::X509_ECDSA_OID), CurveOidMapper::getCurveOid($key->getCurve())), new BitString($this->encodePoint($key->getPoint())));
     return $sequence->getBinary();
 }
Пример #2
0
 /**
  * @param OutputInterface $output
  * @param PublicKeyInterface $key
  */
 public static function dumpPublicKey(OutputInterface $output, PublicKeyInterface $key)
 {
     $order = $key->getPoint()->getOrder();
     $output->writeln('<comment>Public key information</comment>');
     $output->writeln('');
     $output->writeln('<info>Curve type</info> : ' . $key->getCurve()->getName());
     $output->writeln('<info>X</info>          : ' . $key->getPoint()->getX());
     $output->writeln('<info>Y</info>          : ' . $key->getPoint()->getY());
     $output->writeln('<info>Order</info>      : ' . (empty($order) ? '<null>' : $key->getPoint()->getOrder()));
 }