本文整理了Java中org.spongycastle.asn1.x9.X9ECParameters.getCurve()
方法的一些代码示例,展示了X9ECParameters.getCurve()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。X9ECParameters.getCurve()
方法的具体详情如下:
包路径:org.spongycastle.asn1.x9.X9ECParameters
类名称:X9ECParameters
方法名:getCurve
[英]Return the ASN.1 entry representing the Curve.
[中]返回ASN。1个代表曲线的条目。
代码示例来源:origin: ethereum/ethereumj
@BeforeClass
public static void beforeAll() {
curve = new ECDomainParameters(IES_CURVE_PARAM.getCurve(), IES_CURVE_PARAM.getG(), IES_CURVE_PARAM.getN(), IES_CURVE_PARAM.getH());
}
代码示例来源:origin: ontio/ontology-java-sdk
private static ECPoint decode(final byte[] toAdd) {
return CURVE.getCurve().decodePoint(toAdd);
}
代码示例来源:origin: lhalcyon/dapp-wallet-demo
private static ECPoint decode(final byte[] toAdd) {
return CURVE.getCurve().decodePoint(toAdd);
}
代码示例来源:origin: ontio/ontology-java-sdk
private static ECPoint decode(final byte[] toAdd) {
return CURVE.getCurve().decodePoint(toAdd);
}
代码示例来源:origin: com.madgag.spongycastle/core
public static void printRootZ(X9ECParameters x9)
{
if (!ECAlgorithms.isF2mCurve(x9.getCurve()))
{
throw new IllegalArgumentException("Sqrt optimization only defined over characteristic-2 fields");
}
implPrintRootZ(x9);
}
代码示例来源:origin: com.madgag.spongycastle/core
public static void printNonZeroTraceBits(X9ECParameters x9)
{
if (!ECAlgorithms.isF2mCurve(x9.getCurve()))
{
throw new IllegalArgumentException("Trace only defined over characteristic-2 fields");
}
implPrintNonZeroTraceBits(x9);
}
代码示例来源:origin: com.madgag.spongycastle/core
private static void implPrintRootZ(X9ECParameters x9)
{
ECFieldElement z = x9.getCurve().fromBigInteger(BigInteger.valueOf(2));
ECFieldElement rootZ = z.sqrt();
System.out.println(rootZ.toBigInteger().toString(16).toUpperCase());
if (!rootZ.square().equals(z))
{
throw new IllegalStateException("Optimized-sqrt sanity check failed");
}
}
代码示例来源:origin: stackoverflow.com
X9ECParameters x9 = NISTNamedCurves.getByName("P-224");
ECCurve.Fp curve = (Fp) x9.getCurve();
BigInteger q = curve.getQ();
ECFieldElement x1 = new ECFieldElement.Fp(q, new BigInteger("8"));
ECFieldElement y1 = new ECFieldElement.Fp(q, new BigInteger("9"));
代码示例来源:origin: QuincySx/BlockchainWallet-Crypto
private static ECPoint decompressKey(BigInteger xBN, boolean yBit) {
X9IntegerConverter x9 = new X9IntegerConverter();
byte[] compEnc = x9.integerToBytes(xBN, 1 + x9.getByteLength(CURVE.getCurve()));
compEnc[0] = (byte) (yBit ? 0x03 : 0x02);
return CURVE.getCurve().decodePoint(compEnc);
}
代码示例来源:origin: stackoverflow.com
public static PrivateKey getPrivateKeyFromECBigIntAndCurve(BigInteger s, String curveName) {
X9ECParameters ecCurve = ECNamedCurveTable.getByName(curveName);
ECParameterSpec ecParameterSpec = new ECNamedCurveSpec(curveName, ecCurve.getCurve(), ecCurve.getG(), ecCurve.getN(), ecCurve.getH(), ecCurve.getSeed());
ECPrivateKeySpec privateKeySpec = new ECPrivateKeySpec(s, ecParameterSpec);
try {
KeyFactory keyFactory = KeyFactory.getInstance("EC");
return keyFactory.generatePrivate(privateKeySpec);
} catch (NoSuchAlgorithmException | InvalidKeySpecException e) {
e.printStackTrace();
return null;
}
}
代码示例来源:origin: com.madgag.spongycastle/core
public static void discoverEndomorphisms(X9ECParameters x9)
{
if (x9 == null)
{
throw new NullPointerException("x9");
}
ECCurve c = x9.getCurve();
if (ECAlgorithms.isFpCurve(c))
{
BigInteger characteristic = c.getField().getCharacteristic();
if (c.getA().isZero() && characteristic.mod(ECConstants.THREE).equals(ECConstants.ONE))
{
System.out.println("Curve has a 'GLV Type B' endomorphism with these parameters:");
printGLVTypeBParameters(x9);
}
}
}
代码示例来源:origin: com.madgag.spongycastle/core
public static void main(String[] args)
{
SortedSet names = new TreeSet(enumToList(ECNamedCurveTable.getNames()));
names.addAll(enumToList(CustomNamedCurves.getNames()));
Iterator it = names.iterator();
while (it.hasNext())
{
String name = (String)it.next();
X9ECParameters x9 = CustomNamedCurves.getByName(name);
if (x9 == null)
{
x9 = ECNamedCurveTable.getByName(name);
}
if (x9 != null && ECAlgorithms.isF2mCurve(x9.getCurve()))
{
System.out.print(name + ":");
implPrintRootZ(x9);
}
}
}
代码示例来源:origin: com.madgag.spongycastle/core
private static void discoverEndomorphisms(String curveName)
{
X9ECParameters x9 = ECNamedCurveTable.getByName(curveName);
if (x9 == null)
{
System.err.println("Unknown curve: " + curveName);
return;
}
ECCurve c = x9.getCurve();
if (ECAlgorithms.isFpCurve(c))
{
BigInteger characteristic = c.getField().getCharacteristic();
if (c.getA().isZero() && characteristic.mod(ECConstants.THREE).equals(ECConstants.ONE))
{
System.out.println("Curve '" + curveName + "' has a 'GLV Type B' endomorphism with these parameters:");
printGLVTypeBParameters(x9);
}
}
}
代码示例来源:origin: com.madgag.spongycastle/core
private static void printGLVTypeBParameters(X9ECParameters x9)
{
// x^2 + x + 1 = 0 mod n
BigInteger[] lambdas = solveQuadraticEquation(x9.getN(), ECConstants.ONE, ECConstants.ONE);
/*
* The 'Beta' values are field elements of order 3. There are only two such values besides 1, each corresponding
* to one choice for 'Lambda'.
*/
ECFieldElement[] betas = findBetaValues(x9.getCurve());
printGLVTypeBParameters(x9, lambdas[0], betas);
System.out.println("OR");
printGLVTypeBParameters(x9, lambdas[1], betas);
}
代码示例来源:origin: com.madgag.spongycastle/prov
public static ASN1ObjectIdentifier getNamedCurveOid(
ECParameterSpec ecParameterSpec)
{
for (Enumeration names = ECNamedCurveTable.getNames(); names.hasMoreElements();)
{
String name = (String)names.nextElement();
X9ECParameters params = ECNamedCurveTable.getByName(name);
if (params.getN().equals(ecParameterSpec.getN())
&& params.getH().equals(ecParameterSpec.getH())
&& params.getCurve().equals(ecParameterSpec.getCurve())
&& params.getG().equals(ecParameterSpec.getG()))
{
return org.spongycastle.asn1.x9.ECNamedCurveTable.getOID(name);
}
}
return null;
}
代码示例来源:origin: stackoverflow.com
X9ECParameters ecP = CustomNamedCurves.getByName("curve25519");
ECParameterSpec ecSpec=new ECParameterSpec(ecP.getCurve(), ecP.getG(),
ecP.getN(), ecP.getH(), ecP.getSeed());
代码示例来源:origin: com.madgag/sc-light-jdk15on
static ECDomainParameters getECParameters(int namedCurve)
{
int index = namedCurve - 1;
if (index < 0 || index >= curveNames.length)
{
return null;
}
String curveName = curveNames[index];
// Lazily created the first time a particular curve is accessed
X9ECParameters ecP = SECNamedCurves.getByName(curveName);
if (ecP == null)
{
return null;
}
// It's a bit inefficient to do this conversion every time
return new ECDomainParameters(ecP.getCurve(), ecP.getG(), ecP.getN(), ecP.getH(),
ecP.getSeed());
}
}
代码示例来源:origin: com.madgag.spongycastle/prov
public static ECParameterSpec convertToSpec(
X9ECParameters domainParameters)
{
return new ECParameterSpec(
convertCurve(domainParameters.getCurve(), null), // JDK 1.5 has trouble with this if it's not null...
new ECPoint(
domainParameters.getG().getAffineXCoord().toBigInteger(),
domainParameters.getG().getAffineYCoord().toBigInteger()),
domainParameters.getN(),
domainParameters.getH().intValue());
}
代码示例来源:origin: com.madgag.spongycastle/core
public static ECDomainParameters getParametersForNamedCurve(int namedCurve)
{
String curveName = getNameOfNamedCurve(namedCurve);
if (curveName == null)
{
return null;
}
// Parameters are lazily created the first time a particular curve is accessed
X9ECParameters ecP = CustomNamedCurves.getByName(curveName);
if (ecP == null)
{
ecP = ECNamedCurveTable.getByName(curveName);
if (ecP == null)
{
return null;
}
}
// It's a bit inefficient to do this conversion every time
return new ECDomainParameters(ecP.getCurve(), ecP.getG(), ecP.getN(), ecP.getH(), ecP.getSeed());
}
代码示例来源:origin: yggdrash/yggdrash
@BeforeClass
public static void beforeAll() {
curve = new ECDomainParameters(IES_CURVE_PARAM.getCurve(), IES_CURVE_PARAM.getG(), IES_CURVE_PARAM.getN(), IES_CURVE_PARAM.getH());
}
内容来源于网络,如有侵权,请联系作者删除!