__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
<?php /** * Curve448 * * PHP version 5 and 7 * * @author Jim Wigginton <[email protected]> * @copyright 2019 Jim Wigginton * @license http://www.opensource.org/licenses/mit-license.html MIT License * @link http://pear.php.net/package/Math_BigInteger */ namespace phpseclib3\Crypt\EC\Curves; use phpseclib3\Crypt\EC\BaseCurves\Montgomery; use phpseclib3\Math\BigInteger; class Curve448 extends Montgomery { public function __construct() { // 2^448 - 2^224 - 1 $this->setModulo(new BigInteger( 'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE' . 'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', 16 )); $this->a24 = $this->factory->newInteger(new BigInteger('39081')); $this->p = [$this->factory->newInteger(new BigInteger(5))]; // 2^446 - 0x8335dc163bb124b65129c96fde933d8d723a70aadc873d6d54a7bb0d $this->setOrder(new BigInteger( '3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF' . '7CCA23E9C44EDB49AED63690216CC2728DC58F552378C292AB5844F3', 16 )); /* $this->setCoefficients( new BigInteger('156326'), // a ); $this->setBasePoint( new BigInteger(5), new BigInteger( '355293926785568175264127502063783334808976399387714271831880898' . '435169088786967410002932673765864550910142774147268105838985595290' . '606362') ); */ } /** * Multiply a point on the curve by a scalar * * Modifies the scalar as described at https://tools.ietf.org/html/rfc7748#page-8 * * @return array */ public function multiplyPoint(array $p, BigInteger $d) { //$r = strrev(sodium_crypto_scalarmult($d->toBytes(), strrev($p[0]->toBytes()))); //return [$this->factory->newInteger(new BigInteger($r, 256))]; $d = $d->toBytes(); $d[0] = $d[0] & "\xFC"; $d = strrev($d); $d |= "\x80"; $d = new BigInteger($d, 256); return parent::multiplyPoint($p, $d); } /** * Creates a random scalar multiplier * * @return BigInteger */ public function createRandomMultiplier() { return BigInteger::random(446); } /** * Performs range check */ public function rangeCheck(BigInteger $x) { if ($x->getLength() > 448 || $x->isNegative()) { throw new \RangeException('x must be a positive integer less than 446 bytes in length'); } } }
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| Curve25519.php | File | 2.26 KB | 0664 |
|
| Curve448.php | File | 2.57 KB | 0664 |
|
| Ed25519.php | File | 9.95 KB | 0664 |
|
| Ed448.php | File | 7.66 KB | 0664 |
|
| brainpoolP160r1.php | File | 1.02 KB | 0664 |
|
| brainpoolP160t1.php | File | 1.73 KB | 0664 |
|
| brainpoolP192r1.php | File | 1.07 KB | 0664 |
|
| brainpoolP192t1.php | File | 1.08 KB | 0664 |
|
| brainpoolP224r1.php | File | 1.12 KB | 0664 |
|
| brainpoolP224t1.php | File | 1.13 KB | 0664 |
|
| brainpoolP256r1.php | File | 1.16 KB | 0664 |
|
| brainpoolP256t1.php | File | 1.17 KB | 0664 |
|
| brainpoolP320r1.php | File | 1.47 KB | 0664 |
|
| brainpoolP320t1.php | File | 1.48 KB | 0664 |
|
| brainpoolP384r1.php | File | 1.71 KB | 0664 |
|
| brainpoolP384t1.php | File | 1.72 KB | 0664 |
|
| brainpoolP512r1.php | File | 1.9 KB | 0664 |
|
| brainpoolP512t1.php | File | 1.91 KB | 0664 |
|
| nistb233.php | File | 358 B | 0664 |
|
| nistb409.php | File | 358 B | 0664 |
|
| nistk163.php | File | 358 B | 0664 |
|
| nistk233.php | File | 358 B | 0664 |
|
| nistk283.php | File | 359 B | 0664 |
|
| nistk409.php | File | 358 B | 0664 |
|
| nistp192.php | File | 358 B | 0664 |
|
| nistp224.php | File | 358 B | 0664 |
|
| nistp256.php | File | 358 B | 0664 |
|
| nistp384.php | File | 358 B | 0664 |
|
| nistp521.php | File | 358 B | 0664 |
|
| nistt571.php | File | 358 B | 0664 |
|
| prime192v1.php | File | 362 B | 0664 |
|
| prime192v2.php | File | 1.06 KB | 0664 |
|
| prime192v3.php | File | 1.06 KB | 0664 |
|
| prime239v1.php | File | 1.13 KB | 0664 |
|
| prime239v2.php | File | 1.13 KB | 0664 |
|
| prime239v3.php | File | 1.13 KB | 0664 |
|
| prime256v1.php | File | 362 B | 0664 |
|
| secp112r1.php | File | 963 B | 0664 |
|
| secp112r2.php | File | 999 B | 0664 |
|
| secp128r1.php | File | 987 B | 0664 |
|
| secp128r2.php | File | 1016 B | 0664 |
|
| secp160k1.php | File | 1.52 KB | 0664 |
|
| secp160r1.php | File | 1.01 KB | 0664 |
|
| secp160r2.php | File | 1.04 KB | 0664 |
|
| secp192k1.php | File | 1.56 KB | 0664 |
|
| secp192r1.php | File | 2.96 KB | 0664 |
|
| secp224k1.php | File | 1.63 KB | 0664 |
|
| secp224r1.php | File | 1.1 KB | 0664 |
|
| secp256k1.php | File | 1.81 KB | 0664 |
|
| secp256r1.php | File | 1.15 KB | 0664 |
|
| secp384r1.php | File | 1.58 KB | 0664 |
|
| secp521r1.php | File | 1.97 KB | 0664 |
|
| sect113r1.php | File | 854 B | 0664 |
|
| sect113r2.php | File | 854 B | 0664 |
|
| sect131r1.php | File | 880 B | 0664 |
|
| sect131r2.php | File | 880 B | 0664 |
|
| sect163k1.php | File | 920 B | 0664 |
|
| sect163r1.php | File | 920 B | 0664 |
|
| sect163r2.php | File | 920 B | 0664 |
|
| sect193r1.php | File | 955 B | 0664 |
|
| sect193r2.php | File | 955 B | 0664 |
|
| sect233k1.php | File | 1003 B | 0664 |
|
| sect233r1.php | File | 1005 B | 0664 |
|
| sect239k1.php | File | 1008 B | 0664 |
|
| sect283k1.php | File | 1.05 KB | 0664 |
|
| sect283r1.php | File | 1.05 KB | 0664 |
|
| sect409k1.php | File | 1.25 KB | 0664 |
|
| sect409r1.php | File | 1.25 KB | 0664 |
|
| sect571k1.php | File | 1.52 KB | 0664 |
|
| sect571r1.php | File | 1.52 KB | 0664 |
|