1<?php 2 3/** 4 * secp192k1 5 * 6 * PHP version 5 and 7 7 * 8 * @category Crypt 9 * @package EC 10 * @author Jim Wigginton <terrafrost@php.net> 11 * @copyright 2017 Jim Wigginton 12 * @license http://www.opensource.org/licenses/mit-license.html MIT License 13 * @link http://pear.php.net/package/Math_BigInteger 14 */ 15 16namespace phpseclib3\Crypt\EC\Curves; 17 18use phpseclib3\Crypt\EC\BaseCurves\KoblitzPrime; 19use phpseclib3\Math\BigInteger; 20 21class secp192k1 extends KoblitzPrime 22{ 23 public function __construct() 24 { 25 $this->setModulo(new BigInteger('FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFEE37', 16)); 26 $this->setCoefficients( 27 new BigInteger('000000000000000000000000000000000000000000000000', 16), 28 new BigInteger('000000000000000000000000000000000000000000000003', 16) 29 ); 30 $this->setBasePoint( 31 new BigInteger('DB4FF10EC057E9AE26B07D0280B7F4341DA5D1B1EAE06C7D', 16), 32 new BigInteger('9B2F2F6D9C5628A7844163D015BE86344082AA88D95E2F9D', 16) 33 ); 34 $this->setOrder(new BigInteger('FFFFFFFFFFFFFFFFFFFFFFFE26F2FC170F69466A74DEFD8D', 16)); 35 36 $this->basis = []; 37 $this->basis[] = [ 38 'a' => new BigInteger('00B3FB3400DEC5C4ADCEB8655C', -16), 39 'b' => new BigInteger('8EE96418CCF4CFC7124FDA0F', -16) 40 ]; 41 $this->basis[] = [ 42 'a' => new BigInteger('01D90D03E8F096B9948B20F0A9', -16), 43 'b' => new BigInteger('42E49819ABBA9474E1083F6B', -16) 44 ]; 45 $this->beta = $this->factory->newInteger(new BigInteger('447A96E6C647963E2F7809FEAAB46947F34B0AA3CA0BBA74', -16)); 46 } 47} 48