org.bouncycastle.asn1.x9.X9ECParameters.getN()方法的使用及代码示例

x33g5p2x  于2022-02-03 转载在 其他  
字(8.1k)|赞(0)|评价(0)|浏览(91)

本文整理了Java中org.bouncycastle.asn1.x9.X9ECParameters.getN()方法的一些代码示例,展示了X9ECParameters.getN()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。X9ECParameters.getN()方法的具体详情如下:
包路径:org.bouncycastle.asn1.x9.X9ECParameters
类名称:X9ECParameters
方法名:getN

X9ECParameters.getN介绍

暂无

代码示例

代码示例来源: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: hyperledger/fabric-sdk-java

BigInteger curveN = params.getN();

代码示例来源:origin: hyperledger-archives/fabric-api

private BigInteger toCanonicalS(BigInteger s) {
  if (s.compareTo(HALF_CURVE_ORDER) <= 0) {
    return s;
  } else {
    return curve.getN().subtract(s);
  }
}

代码示例来源:origin: com.bushidowallet/bushido-core-lib

public ECKey(byte[] l, ECKey parent) {
  if (parent.hasPrivate()) {
    this.priv = new BigInteger(1, l).add(parent.priv).mod(curve.getN());
    setPub(parent.compressed, true, null);
  } else {
    throw new Error("Support derived ECKey with public key only");
  }
}

代码示例来源: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: 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: org.bouncycastle/bcprov-debug-jdk15on

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: 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: 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: 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: eBay/UAF

public static boolean verifyUsingSecp256k1(byte[] pub, byte[] dataForSigning,
    BigInteger[] rs) throws Exception {
  ECDSASigner signer = new ECDSASigner();
  X9ECParameters params = SECNamedCurves.getByName("secp256k1");
  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 verifyUsingSecp256k1(byte[] pub, byte[] dataForSigning,
    BigInteger[] rs) throws Exception {
  ECDSASigner signer = new ECDSASigner();
  X9ECParameters params = SECNamedCurves.getByName("secp256k1");
  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: com.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: 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();
}

相关文章