Lines Matching refs:curve

193     public static function setImplicitCurve(BaseCurve $curve)  argument
195 self::$implicitCurve = $curve;
211 $curve = '\phpseclib3\Crypt\EC\Curves\\' . $params['namedCurve'];
212 if (!class_exists($curve)) {
215 return new $curve();
227 $curve = new PrimeCurve();
228 $curve->setModulo($data['fieldID']['parameters']);
229 $curve->setCoefficients(
233 $point = self::extractPoint("\0" . $data['base'], $curve);
234 $curve->setBasePoint(...$point);
235 $curve->setOrder($data['order']);
236 return $curve;
238 $curve = new BinaryCurve();
254 $curve->setModulo(...$modulo);
256 $curve->setCoefficients(
260 $point = self::extractPoint("\0" . $data['base'], $curve);
261 $curve->setBasePoint(...$point);
262 $curve->setOrder($data['order']);
263 return $curve;
280 public static function extractPoint($str, BaseCurve $curve) argument
282 if ($curve instanceof TwistedEdwardsCurve) {
291 if ($y->compare($curve->getModulo()) >= 0) {
294 $point = $curve->recoverX($y, $sign);
295 if (!$curve->verifyPoint($point)) {
311 $order = $curve->getLengthInBytes();
314 return $curve->derivePoint($str);
325 $curve->convertInteger(new BigInteger($x, 256)),
326 $curve->convertInteger(new BigInteger($y, 256))
329 if (!$curve->verifyPoint($point)) {
348 …private static function encodeParameters(BaseCurve $curve, $returnArray = false, array $options = … argument
352 $reflect = new \ReflectionClass($curve);
380 if (!$candidate->getModulo()->equals($curve->getModulo())) {
383 if ($candidate->getA()->toBytes() != $curve->getA()->toBytes()) {
386 if ($candidate->getB()->toBytes() != $curve->getB()->toBytes()) {
391 list($curveX, $curveY) = $curve->getBasePoint();
406 if ($candidate->getModulo() != $curve->getModulo()) {
409 if ($candidate->getA()->toBytes() != $curve->getA()->toBytes()) {
412 if ($candidate->getB()->toBytes() != $curve->getB()->toBytes()) {
417 list($curveX, $curveY) = $curve->getBasePoint();
432 $order = $curve->getOrder();
439 $point = $curve->getBasePoint();
443 if ($curve instanceof PrimeCurve) {
460 'parameters' => $curve->getModulo()
463 'a' => $curve->getA()->toBytes(),
464 'b' => $curve->getB()->toBytes()
474 if ($curve instanceof BinaryCurve) {
475 $modulo = $curve->getModulo();
502 $a = ltrim($curve->getA()->toBytes(), "\0");
506 $b = ltrim($curve->getB()->toBytes(), "\0");