Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (102)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (322)
Collections:
Other Resources:
JDK 17 jdk.crypto.ec.jmod - Crypto EC Module
JDK 17 jdk.crypto.ec.jmod is the JMOD file for JDK 17 Crypto EC module.
JDK 17 Crypto EC module compiled class files are stored in \fyicenter\jdk-17.0.5\jmods\jdk.crypto.ec.jmod.
JDK 17 Crypto EC module compiled class files are also linked and stored in the \fyicenter\jdk-17.0.5\lib\modules JImage file.
JDK 17 Crypto EC module source code files are stored in \fyicenter\jdk-17.0.5\lib\src.zip\jdk.crypto.ec.
You can click and view the content of each source code file in the list below.
✍: FYIcenter
⏎ sun/security/ec/point/ExtendedHomogeneousPoint.java
/*
* Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved.
* ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
package sun.security.ec.point;
import sun.security.util.math.*;
import java.math.BigInteger;
/**
* Elliptic curve point in extended homogeneous coordinates (X, Y, T, Z) where
* an affine point (x, y) is represented using any (X, Y, T, Z) s.t.
* x = X/Z, y = Y/Z, and x*y = T/Z.
*/
public abstract class ExtendedHomogeneousPoint
<T extends IntegerModuloP> implements Point {
protected final T x;
protected final T y;
protected final T t;
protected final T z;
protected ExtendedHomogeneousPoint(T x, T y, T t, T z) {
this.x = x;
this.y = y;
this.t = t;
this.z = z;
}
@Override
public IntegerFieldModuloP getField() {
return this.x.getField();
}
@Override
public Immutable fixed() {
return new Immutable(x.fixed(), y.fixed(), t.fixed(), z.fixed());
}
@Override
public Mutable mutable() {
return new Mutable(x.mutable(), y.mutable(), t.mutable(), z.mutable());
}
public T getX() {
return x;
}
public T getY() {
return y;
}
public T getT() {
return t;
}
public T getZ() {
return z;
}
public AffinePoint asAffine() {
IntegerModuloP zInv = z.multiplicativeInverse();
return new AffinePoint(x.multiply(zInv), y.multiply(zInv));
}
private static
<T1 extends IntegerModuloP, T2 extends IntegerModuloP>
boolean affineEquals(ExtendedHomogeneousPoint<T1> p1,
ExtendedHomogeneousPoint<T2> p2) {
MutableIntegerModuloP x1 = p1.getX().mutable().setProduct(p2.getZ());
MutableIntegerModuloP x2 = p2.getX().mutable().setProduct(p1.getZ());
if (!x1.asBigInteger().equals(x2.asBigInteger())) {
return false;
}
MutableIntegerModuloP y1 = p1.getY().mutable().setProduct(p2.getZ());
MutableIntegerModuloP y2 = p2.getY().mutable().setProduct(p1.getZ());
if (!y1.asBigInteger().equals(y2.asBigInteger())) {
return false;
}
return true;
}
public boolean affineEquals(Point p) {
if (p instanceof ExtendedHomogeneousPoint) {
@SuppressWarnings("unchecked")
ExtendedHomogeneousPoint<IntegerModuloP> ehp =
(ExtendedHomogeneousPoint<IntegerModuloP>) p;
return affineEquals(this, ehp);
}
return asAffine().equals(p.asAffine());
}
public static class Immutable
extends ExtendedHomogeneousPoint<ImmutableIntegerModuloP>
implements ImmutablePoint {
public Immutable(ImmutableIntegerModuloP x,
ImmutableIntegerModuloP y,
ImmutableIntegerModuloP t,
ImmutableIntegerModuloP z) {
super(x, y, t, z);
}
}
public static class Mutable
extends ExtendedHomogeneousPoint<MutableIntegerModuloP>
implements MutablePoint {
public Mutable(MutableIntegerModuloP x,
MutableIntegerModuloP y,
MutableIntegerModuloP t,
MutableIntegerModuloP z) {
super(x, y, t, z);
}
@Override
public Mutable conditionalSet(Point p, int set) {
if (!(p instanceof ExtendedHomogeneousPoint)) {
throw new RuntimeException("Incompatible point");
}
@SuppressWarnings("unchecked")
ExtendedHomogeneousPoint<IntegerModuloP> ehp =
(ExtendedHomogeneousPoint<IntegerModuloP>) p;
return conditionalSet(ehp, set);
}
private <T extends IntegerModuloP>
Mutable conditionalSet(ExtendedHomogeneousPoint<T> ehp, int set) {
x.conditionalSet(ehp.x, set);
y.conditionalSet(ehp.y, set);
t.conditionalSet(ehp.t, set);
z.conditionalSet(ehp.z, set);
return this;
}
@Override
public Mutable setValue(AffinePoint p) {
x.setValue(p.getX());
y.setValue(p.getY());
t.setValue(p.getX()).setProduct(p.getY());
z.setValue(p.getX().getField().get1());
return this;
}
@Override
public Mutable setValue(Point p) {
@SuppressWarnings("unchecked")
ExtendedHomogeneousPoint<IntegerModuloP> ehp =
(ExtendedHomogeneousPoint<IntegerModuloP>) p;
return setValue(ehp);
}
private <T extends IntegerModuloP>
Mutable setValue(ExtendedHomogeneousPoint<T> ehp) {
x.setValue(ehp.x);
y.setValue(ehp.y);
t.setValue(ehp.t);
z.setValue(ehp.z);
return this;
}
}
}
⏎ sun/security/ec/point/ExtendedHomogeneousPoint.java
Or download all of them as a single archive file:
File name: jdk.crypto.ec-17.0.5-src.zip File size: 62834 bytes Release date: 2022-09-13 Download
⇒ JDK 17 jdk.dynalink.jmod - Dynamic Linking Module
2023-10-15, ∼8415🔥, 0💬
Popular Posts:
Woodstox 6.4.0 Source Code Files are provided at the Woodstox GitHub Website . You can download them...
What Is XMLBeans xbean.jar 2.6.0? XMLBeans xbean.jar 2.6.0 is the JAR file for Apache XMLBeans 2.6.0...
JDK 11 java.management.jmod is the JMOD file for JDK 11 Management module. JDK 11 Management module ...
pache Derby is an open source relational database implemented entirely in Java and available under t...
Apache Log4j API provides the interface that applications should code to and provides the adapter co...