Subversion Repositories oidplus

Rev

Rev 846 | Rev 1042 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

  1. <?php
  2.  
  3. /**
  4.  * DH Public Key
  5.  *
  6.  * @category  Crypt
  7.  * @package   DH
  8.  * @author    Jim Wigginton <terrafrost@php.net>
  9.  * @copyright 2015 Jim Wigginton
  10.  * @license   http://www.opensource.org/licenses/mit-license.html  MIT License
  11.  * @link      http://phpseclib.sourceforge.net
  12.  */
  13.  
  14. namespace phpseclib3\Crypt\DH;
  15.  
  16. use phpseclib3\Crypt\Common;
  17. use phpseclib3\Crypt\DH;
  18.  
  19. /**
  20.  * DH Public Key
  21.  *
  22.  * @package DH
  23.  * @author  Jim Wigginton <terrafrost@php.net>
  24.  * @access  public
  25.  */
  26. class PublicKey extends DH
  27. {
  28.     use Common\Traits\Fingerprint;
  29.  
  30.     /**
  31.      * Returns the public key
  32.      *
  33.      * @param string $type
  34.      * @param array $options optional
  35.      * @return string
  36.      */
  37.     public function toString($type, array $options = [])
  38.     {
  39.         $type = self::validatePlugin('Keys', $type, 'savePublicKey');
  40.  
  41.         return $type::savePublicKey($this->prime, $this->base, $this->publicKey, $options);
  42.     }
  43.  
  44.     /**
  45.      * Returns the public key as a BigInteger
  46.      *
  47.      * @return \phpseclib3\Math\BigInteger
  48.      */
  49.     public function toBigInteger()
  50.     {
  51.         return $this->publicKey;
  52.     }
  53. }
  54.