org.bouncycastle.crypto.params.ECPrivateKeyParameters.getD()方法的使用及代码示例

x33g5p2x  于2022-01-19 转载在 其他  
字(8.6k)|赞(0)|评价(0)|浏览(223)

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

ECPrivateKeyParameters.getD介绍

暂无

代码示例

代码示例来源:origin: org.bouncycastle/bcprov-debug-jdk15on

public BCDSTU4145PrivateKey(
  String algorithm,
  ECPrivateKeyParameters params)
{
  this.algorithm = algorithm;
  this.d = params.getD();
  this.ecSpec = null;
}

代码示例来源:origin: org.cryptacular/cryptacular

@Override
 public BigInteger getS()
 {
  return delegate.getD();
 }
}

代码示例来源:origin: org.bouncycastle/bcprov-debug-jdk15on

public BCECGOST3410_2012PrivateKey(
  String algorithm,
  ECPrivateKeyParameters params)
{
  this.algorithm = algorithm;
  this.d = params.getD();
  this.ecSpec = null;
}

代码示例来源:origin: org.bouncycastle/bcprov-debug-jdk15on

public BCECPrivateKey(
  String algorithm,
  ECPrivateKeyParameters params,
  ProviderConfiguration configuration)
{
  this.algorithm = algorithm;
  this.d = params.getD();
  this.ecSpec = null;
  this.configuration = configuration;
}

代码示例来源:origin: org.bouncycastle/bcprov-debug-jdk15on

public JCEECPrivateKey(
  String                  algorithm,
  ECPrivateKeyParameters  params)
{
  this.algorithm = algorithm;
  this.d = params.getD();
  this.ecSpec = null;
}

代码示例来源:origin: org.bouncycastle/bcprov-debug-jdk15on

public BCECGOST3410PrivateKey(
  String algorithm,
  ECPrivateKeyParameters params)
{
  this.algorithm = algorithm;
  this.d = params.getD();
  this.ecSpec = null;
}

代码示例来源:origin: RUB-NDS/TLS-Attacker

protected void preparePrivateKey(T msg) {
    msg.getComputations().setPrivateKey(privEcParams.getD());
    LOGGER.debug("PrivateKey: " + msg.getComputations().getPrivateKey().getValue().toString());
  }
}

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

@Override
public byte[] createNewPrivateKey() {
  ECKeyPairGenerator generator = new ECKeyPairGenerator();
  ECKeyGenerationParameters keygenParams = new ECKeyGenerationParameters(domain, secureRandom);
  generator.init(keygenParams);
  AsymmetricCipherKeyPair keypair = generator.generateKeyPair();
  ECPrivateKeyParameters privParams = (ECPrivateKeyParameters) keypair.getPrivate();
  return privParams.getD().toByteArray();
}

代码示例来源:origin: redfish64/TinyTravelTracker

/**
   * Decrypt an EC pair producing the original EC point.
   *
   * @param pair the EC point pair to process.
   * @return the result of the Elgamal process.
   */
  public ECPoint decrypt(ECPair pair)
  {
    if (key == null)
    {
      throw new IllegalStateException("ECElGamalDecryptor not initialised");
    }

    ECPoint tmp = pair.getX().multiply(key.getD());

    return pair.getY().subtract(tmp).normalize();
  }
}

代码示例来源:origin: redfish64/TinyTravelTracker

public BigInteger calculateAgreement(
    CipherParameters pubKey)
  {
    ECPublicKeyParameters pub = (ECPublicKeyParameters)pubKey;
    ECPoint P = pub.getQ().multiply(key.getD()).normalize();

    if (P.isInfinity())
    {
      throw new IllegalStateException("Infinity is not a valid agreement value for ECDH");
    }

    return P.getAffineXCoord().toBigInteger();
  }
}

代码示例来源:origin: org.bouncycastle/bcprov-debug-jdk15on

private ECPoint calculateU(SM2KeyExchangePublicParameters otherPub)
{
  ECDomainParameters params = staticKey.getParameters();
  ECPoint p1 = ECAlgorithms.cleanPoint(params.getCurve(), otherPub.getStaticPublicKey().getQ());
  ECPoint p2 = ECAlgorithms.cleanPoint(params.getCurve(), otherPub.getEphemeralPublicKey().getQ());
  BigInteger x1 = reduce(ephemeralPubPoint.getAffineXCoord().toBigInteger());
  BigInteger x2 = reduce(p2.getAffineXCoord().toBigInteger());
  BigInteger tA = staticKey.getD().add(x1.multiply(ephemeralKey.getD()));
  BigInteger k1 = ecParams.getH().multiply(tA).mod(ecParams.getN());
  BigInteger k2 = k1.multiply(x2).mod(ecParams.getN());
  return ECAlgorithms.sumOfTwoMultiplies(p1, k1, p2, k2).normalize();
}

代码示例来源:origin: redfish64/TinyTravelTracker

public BigInteger calculateAgreement(
    CipherParameters pubKey)
  {
    ECPublicKeyParameters pub = (ECPublicKeyParameters)pubKey;
    ECDomainParameters params = pub.getParameters();

    BigInteger hd = params.getH().multiply(key.getD()).mod(params.getN());

    ECPoint P = pub.getQ().multiply(hd).normalize();

    if (P.isInfinity())
    {
      throw new IllegalStateException("Infinity is not a valid agreement value for ECDHC");
    }

    return P.getAffineXCoord().toBigInteger();
  }
}

代码示例来源:origin: org.bouncycastle/bcprov-debug-jdk15on

public byte[] calculateAgreement(
  CipherParameters pubKey)
{
  ECPublicKeyParameters pub = (ECPublicKeyParameters)pubKey;
  ECDomainParameters params = key.getParameters();
  if (!params.equals(pub.getParameters()))
  {
    throw new IllegalStateException("ECVKO public key has wrong domain parameters");
  }
  BigInteger hd = params.getH().multiply(ukm).multiply(key.getD()).mod(params.getN());
  // Always perform calculations on the exact curve specified by our private key's parameters
  ECPoint pubPoint = ECAlgorithms.cleanPoint(params.getCurve(), pub.getQ());
  if (pubPoint.isInfinity())
  {
    throw new IllegalStateException("Infinity is not a valid public key for ECDHC");
  }
  ECPoint P = pubPoint.multiply(hd).normalize();
  if (P.isInfinity())
  {
    throw new IllegalStateException("Infinity is not a valid agreement value for ECVKO");
  }
  return fromPoint(P);
}

代码示例来源:origin: nuls-io/nuls

public ECPoint initEnc(SM2 sm2, ECPoint userKey) {
  AsymmetricCipherKeyPair key = sm2.ecc_key_pair_generator.generateKeyPair();
  ECPrivateKeyParameters ecpriv = (ECPrivateKeyParameters) key.getPrivate();
  ECPublicKeyParameters ecpub = (ECPublicKeyParameters) key.getPublic();
  BigInteger k = ecpriv.getD();
  ECPoint c1 = ecpub.getQ();
  this.p2 = userKey.multiply(k);
  reset();
  return c1;
}

代码示例来源:origin: gotoworld/hsd-cipher-sm

public ECPoint Init_enc(SM2 sm2, ECPoint userKey)
{
  AsymmetricCipherKeyPair key = sm2.ecc_key_pair_generator.generateKeyPair();
  ECPrivateKeyParameters ecpriv = (ECPrivateKeyParameters) key.getPrivate();
  ECPublicKeyParameters ecpub = (ECPublicKeyParameters) key.getPublic();
  BigInteger k = ecpriv.getD();
  ECPoint c1 = ecpub.getQ();
  this.p2 = userKey.multiply(k);
  Reset();
  return c1;
}

代码示例来源:origin: org.bouncycastle/bcprov-debug-jdk15on

/**
   * Decrypt an EC pair producing the original EC point.
   *
   * @param pair the EC point pair to process.
   * @return the result of the Elgamal process.
   */
  public ECPoint decrypt(ECPair pair)
  {
    if (key == null)
    {
      throw new IllegalStateException("ECElGamalDecryptor not initialised");
    }

    ECCurve curve = key.getParameters().getCurve();
    ECPoint tmp = ECAlgorithms.cleanPoint(curve, pair.getX()).multiply(key.getD());

    return ECAlgorithms.cleanPoint(curve, pair.getY()).subtract(tmp).normalize();
  }
}

代码示例来源:origin: NemProject/nem.core

@Override
public KeyPair generateKeyPair() {
  final ECKeyPairGenerator generator = new ECKeyPairGenerator();
  final ECKeyGenerationParameters keyGenParams = new ECKeyGenerationParameters(SecP256K1Curve.secp256k1().getParams(), RANDOM);
  generator.init(keyGenParams);
  final AsymmetricCipherKeyPair keyPair = generator.generateKeyPair();
  final ECPrivateKeyParameters privateKeyParams = (ECPrivateKeyParameters)keyPair.getPrivate();
  final PrivateKey privateKey = new PrivateKey(privateKeyParams.getD());
  return new KeyPair(privateKey, CryptoEngines.secp256k1Engine());
}

代码示例来源:origin: org.xipki/security

public SM2Signer(CipherParameters param) {
 if (param instanceof ParametersWithRandom) {
  ParametersWithRandom rdmParam = (ParametersWithRandom) param;
  ecKey = (ECKeyParameters)rdmParam.getParameters();
  ecParams = ecKey.getParameters();
  kCalculator.init(ecParams.getN(), rdmParam.getRandom());
 } else {
  ecKey = (ECKeyParameters) param;
  ecParams = ecKey.getParameters();
  kCalculator.init(ecParams.getN(), new SecureRandom());
 }
 if (!GMUtil.isSm2primev2Curve(ecKey.getParameters().getCurve())) {
  throw new IllegalArgumentException("Given EC key is not of the curve sm2primev2");
 }
 this.pubPoint = new FixedPointCombMultiplier().multiply(ecParams.getG(),
   ((ECPrivateKeyParameters)ecKey).getD()).normalize();
 this.digest = HashAlgo.SM3.createDigest();
}

代码示例来源:origin: kframework/k

/**
 * Generates an entirely new keypair with the given {@link SecureRandom} object. Point compression is used so the
 * resulting public key will be 33 bytes (32 for the co-ordinate and 1 byte to represent the y bit).
 */
public ECDSARecover(SecureRandom secureRandom) {
  ECKeyPairGenerator generator = new ECKeyPairGenerator();
  ECKeyGenerationParameters keygenParams = new ECKeyGenerationParameters(CURVE, secureRandom);
  generator.init(keygenParams);
  AsymmetricCipherKeyPair keypair = generator.generateKeyPair();
  ECPrivateKeyParameters privParams = (ECPrivateKeyParameters) keypair.getPrivate();
  ECPublicKeyParameters pubParams = (ECPublicKeyParameters) keypair.getPublic();
  priv = privParams.getD();
  pub = CURVE.getCurve().decodePoint(pubParams.getQ().getEncoded(true));
}

代码示例来源:origin: NemProject/nem.core

@Test
public void getPrivateKeyParametersReturnsPrivateKeyParameters() {
  // Arrange:
  final KeyGenerator generator = new SecP256K1KeyGenerator();
  final KeyPair keyPair = generator.generateKeyPair();
  // Act:
  final ECPrivateKeyParameters parameters = SecP256K1Utils.getPrivateKeyParameters(keyPair.getPrivateKey());
  // Assert:
  Assert.assertThat(parameters.getD(), IsEqual.equalTo(keyPair.getPrivateKey().getRaw()));
}

相关文章

微信公众号

最新文章

更多