本文整理了Java中org.bouncycastle.asn1.x9.X9ECParameters.getCurve()
方法的一些代码示例,展示了X9ECParameters.getCurve()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。X9ECParameters.getCurve()
方法的具体详情如下:
包路径:org.bouncycastle.asn1.x9.X9ECParameters
类名称:X9ECParameters
方法名:getCurve
[英]Return the ASN.1 entry representing the Curve.
[中]返回ASN。1个代表曲线的条目。
代码示例来源:origin: hierynomus/sshj
ECNamedCurveSpec ecCurveSpec = new ECNamedCurveSpec(name, ecParams.getCurve(), ecParams.getG(), ecParams.getN());
ECPoint p = new ECPoint(bigX, bigY);
ECPublicKeySpec publicKeySpec = new ECPublicKeySpec(p, ecCurveSpec);
代码示例来源:origin: hierynomus/sshj
private PrivateKey createECDSAPrivateKey(KeyType kt, PlainBuffer buffer, String name) throws GeneralSecurityException, Buffer.BufferException {
kt.readPubKeyFromBuffer(buffer); // Public key
BigInteger s = new BigInteger(1, buffer.readBytes());
X9ECParameters ecParams = NISTNamedCurves.getByName(name);
ECNamedCurveSpec ecCurveSpec = new ECNamedCurveSpec(name, ecParams.getCurve(), ecParams.getG(), ecParams.getN());
ECPrivateKeySpec pks = new ECPrivateKeySpec(s, ecCurveSpec);
return SecurityUtils.getKeyFactory("ECDSA").generatePrivate(pks);
}
}
代码示例来源:origin: hierynomus/sshj
/**
* TODO want to figure out why BouncyCastle does not work.
* @return The initialized curve25519 parameter spec
*/
public static AlgorithmParameterSpec getCurve25519Params() {
X9ECParameters ecP = CustomNamedCurves.getByName("curve25519");
return new ECParameterSpec(ecP.getCurve(), ecP.getG(), ecP.getN(), ecP.getH(), ecP.getSeed());
}
}
代码示例来源:origin: apache/pulsar
ECParameterSpec ecSpec = new ECParameterSpec(ecParam.getCurve(), ecParam.getG(), ecParam.getN(),
ecParam.getH(), ecParam.getSeed());
KeyFactory keyFactory = KeyFactory.getInstance(ECDSA, BouncyCastleProvider.PROVIDER_NAME);
代码示例来源:origin: apache/pulsar
ECParameterSpec ecSpec = new ECParameterSpec(ecParam.getCurve(), ecParam.getG(), ecParam.getN(),
ecParam.getH(), ecParam.getSeed());
KeyFactory keyFactory = KeyFactory.getInstance(ECDSA, BouncyCastleProvider.PROVIDER_NAME);
代码示例来源:origin: ch.dissem.jabit/jabit-cryptography-bouncy
private ECPoint keyToPoint(byte[] publicKey) {
BigInteger x = new BigInteger(1, Arrays.copyOfRange(publicKey, 1, 33));
BigInteger y = new BigInteger(1, Arrays.copyOfRange(publicKey, 33, 65));
return EC_CURVE_PARAMETERS.getCurve().createPoint(x, y);
}
代码示例来源:origin: ch.dissem.jabit/jabit-cryptography-bouncy
@Override
public byte[] createPoint(byte[] x, byte[] y) {
return EC_CURVE_PARAMETERS.getCurve().createPoint(
new BigInteger(1, x),
new BigInteger(1, y)
).getEncoded(false);
}
}
代码示例来源:origin: org.bouncycastle/bcprov-debug-jdk15on
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: org.bouncycastle/bcprov-debug-jdk15on
public static void printNonZeroTraceBits(X9ECParameters x9)
{
if (!ECAlgorithms.isF2mCurve(x9.getCurve()))
{
throw new IllegalArgumentException("Trace only defined over characteristic-2 fields");
}
implPrintNonZeroTraceBits(x9);
}
代码示例来源:origin: org.bouncycastle/bcprov-debug-jdk15on
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: horrorho/InflatableDonkey
public static Optional<ECCurvePoint> create(BigInteger x, BigInteger y, String curveName) {
X9ECParameters x9ECParameters = ECAssistant.x9ECParameters(curveName);
ECPoint Q = x9ECParameters.getCurve()
.createPoint(x, y);
if (!Q.isValid()) {
logger.warn("-- create() - bad Q: {} curve: {}", Q, curveName);
return Optional.empty();
}
ECCurvePoint point = new ECCurvePoint(Q, curveName, x9ECParameters);
return Optional.of(point);
}
代码示例来源:origin: citp/TwoFactorBtcWallet
/**
* Always treat de-serialization as a full-blown constructor, by
* validating the final state of the de-serialized object.
*/
private void readObject(ObjectInputStream aInputStream) throws ClassNotFoundException, IOException {
//always perform the default de-serialization first
aInputStream.defaultReadObject();
X9ECParameters CURVEparams = SECNamedCurves.getByName("secp256k1");
this.CURVE = new ECDomainParameters(CURVEparams.getCurve(), CURVEparams.getG(), CURVEparams.getN(),
CURVEparams.getH());
}
代码示例来源:origin: horrorho/InflatableDonkey
public ECPoint copyQ() {
return x9ECParameters()
.getCurve()
.createPoint(x(), y());
}
代码示例来源:origin: horrorho/InflatableDonkey
ECPoint decodePoint(byte[] data) {
ECCurve curve = ECNamedCurveTable.getByName(curveName).getCurve();
int compactExportSize = (curve.getFieldSize() + 7) / 8;
return data.length == compactExportSize
? ECPointsCompact.decodeFPPoint(curve, data) // Compact keys support, non RFC6636 compliant.
: curve.decodePoint(data);
}
代码示例来源:origin: com.hierynomus/sshj
private PrivateKey createECDSAPrivateKey(KeyType kt, PlainBuffer buffer, String name) throws GeneralSecurityException, Buffer.BufferException {
PublicKey pk = kt.readPubKeyFromBuffer(buffer); // Public key
BigInteger s = new BigInteger(1, buffer.readBytes());
X9ECParameters ecParams = NISTNamedCurves.getByName(name);
ECNamedCurveSpec ecCurveSpec = new ECNamedCurveSpec(name, ecParams.getCurve(), ecParams.getG(), ecParams.getN());
ECPrivateKeySpec pks = new ECPrivateKeySpec(s, ecCurveSpec);
return SecurityUtils.getKeyFactory("ECDSA").generatePrivate(pks);
}
}
代码示例来源:origin: org.bouncycastle/bcprov-debug-jdk15on
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...
EC5Util.convertPoint(domainParameters.getG()),
domainParameters.getN(),
domainParameters.getH().intValue());
}
代码示例来源:origin: horrorho/InflatableDonkey
public static ECDomainParameters ecDomainParametersFrom(X9ECParameters x9ECParameters) {
return new ECDomainParameters(
x9ECParameters.getCurve(),
x9ECParameters.getG(),
x9ECParameters.getN(),
x9ECParameters.getH(),
x9ECParameters.getSeed());
}
}
代码示例来源:origin: eBay/UAF
public static boolean verify(byte[] pub, byte[] dataForSigning,
BigInteger[] rs) throws Exception {
ECDSASigner signer = new ECDSASigner();
X9ECParameters params = SECNamedCurves.getByName("secp256r1");
ECDomainParameters ecParams = new ECDomainParameters(params.getCurve(),
params.getG(), params.getN(), params.getH());
ECPublicKeyParameters pubKeyParams = new ECPublicKeyParameters(ecParams
.getCurve().decodePoint(pub), ecParams);
signer.init(false, pubKeyParams);
return signer.verifySignature(dataForSigning, rs[0].abs(), rs[1].abs());
}
代码示例来源:origin: eBay/UAF
public static boolean verify(byte[] pub, byte[] dataForSigning,
BigInteger[] rs) throws Exception {
ECDSASigner signer = new ECDSASigner();
X9ECParameters params = SECNamedCurves.getByName("secp256r1");
ECDomainParameters ecParams = new ECDomainParameters(params.getCurve(),
params.getG(), params.getN(), params.getH());
ECPublicKeyParameters pubKeyParams = new ECPublicKeyParameters(ecParams
.getCurve().decodePoint(pub), ecParams);
signer.init(false, pubKeyParams);
return signer.verifySignature(dataForSigning, rs[0].abs(), rs[1].abs());
}
代码示例来源:origin: RUB-NDS/TLS-Attacker
public static AsymmetricCipherKeyPair generateECPublicKey() {
// Should we also generate random curves?
X9ECParameters ecp = SECNamedCurves.getByName(getRandomCurveName());
ECKeyPairGenerator keygen = new ECKeyPairGenerator();
ECDomainParameters domainParams = new ECDomainParameters(ecp.getCurve(), ecp.getG(), ecp.getN(), ecp.getH(),
ecp.getSeed());
keygen.init(new ECKeyGenerationParameters(domainParams, RandomHelper.getBadSecureRandom()));
return keygen.generateKeyPair();
}
内容来源于网络,如有侵权,请联系作者删除!