本文整理了Java中org.spongycastle.asn1.x9.X9ECParameters.getG()
方法的一些代码示例,展示了X9ECParameters.getG()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。X9ECParameters.getG()
方法的具体详情如下:
包路径:org.spongycastle.asn1.x9.X9ECParameters
类名称:X9ECParameters
方法名:getG
暂无
代码示例来源: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: stackoverflow.com
X9ECParameters x9 = NISTNamedCurves.getByName("P-224"); // or whatever curve you want to use
ECPoint g = x9.getG();
BigInteger n = x9.getN();
int nBitLength = n.bitLength();
BigInteger x;
do
{
x = new BigInteger(nBitLength, random);
}
while (x.equals(ZERO) || (x.compareTo(n) >= 0));
ECPoint randomPoint = g.multiply(x);
代码示例来源:origin: ontio/ontology-java-sdk
private static ECPoint gMultiply(BigInteger p) {
return CURVE.getG()
.multiply(p);
}
}
代码示例来源:origin: lhalcyon/dapp-wallet-demo
private static ECPoint gMultiply(BigInteger p) {
return CURVE.getG()
.multiply(p);
}
}
代码示例来源:origin: ontio/ontology-java-sdk
private static ECPoint gMultiply(BigInteger p) {
return CURVE.getG()
.multiply(p);
}
}
代码示例来源: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: QuincySx/BlockchainWallet-Crypto
public ECKeyPair(BigInteger priv, boolean compressed) {
this.priv = priv;
this.compressed = compressed;
ECPoint multiply = CURVE.getG().multiply(priv);
this.pub = multiply.getEncoded(false);
this.pubComp = multiply.getEncoded(true);
}
代码示例来源: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/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/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: com.madgag.spongycastle/prov
protected ECNamedCurveSpec createNamedCurveSpec(String curveName)
throws InvalidAlgorithmParameterException
{
// NOTE: Don't bother with custom curves here as the curve will be converted to JCE type shortly
X9ECParameters p = ECUtils.getDomainParametersFromName(curveName);
if (p == null)
{
try
{
// Check whether it's actually an OID string (SunJSSE ServerHandshaker setupEphemeralECDHKeys bug)
p = ECNamedCurveTable.getByOID(new ASN1ObjectIdentifier(curveName));
if (p == null)
{
Map extraCurves = configuration.getAdditionalECParameters();
p = (X9ECParameters)extraCurves.get(new ASN1ObjectIdentifier(curveName));
if (p == null)
{
throw new InvalidAlgorithmParameterException("unknown curve OID: " + curveName);
}
}
}
catch (IllegalArgumentException ex)
{
throw new InvalidAlgorithmParameterException("unknown curve name: " + curveName);
}
}
// Work-around for JDK bug -- it won't look up named curves properly if seed is present
byte[] seed = null; //p.getSeed();
return new ECNamedCurveSpec(curveName, p.getCurve(), p.getG(), p.getN(), p.getH(), seed);
}
代码示例来源:origin: blockcypher/java-client
ECDomainParameters CURVE = new ECDomainParameters(params.getCurve(), params.getG(), params.getN(), params.getH());
BigInteger HALF_CURVE_ORDER = params.getN().shiftRight(1);
SecureRandom secureRandom = new SecureRandom();
代码示例来源: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());
}
代码示例来源:origin: com.madgag.spongycastle/bctls-jdk15on
public static ECDomainParameters getDomainParameters(int namedGroup)
{
if (!NamedGroup.refersToASpecificCurve(namedGroup))
{
return null;
}
String curveName = NamedGroup.getName(namedGroup);
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: QuincySx/BlockchainWallet-Crypto
public static ECKeyPair createNew(boolean compressed) {
ECKeyPairGenerator generator = new ECKeyPairGenerator();
ECKeyGenerationParameters keygenParams = new ECKeyGenerationParameters(domain,
secureRandom);
generator.init(keygenParams);
AsymmetricCipherKeyPair keypair = generator.generateKeyPair();
ECPrivateKeyParameters privParams = (ECPrivateKeyParameters) keypair.getPrivate();
ECPublicKeyParameters pubParams = (ECPublicKeyParameters) keypair.getPublic();
ECKeyPair k = new ECKeyPair();
k.priv = privParams.getD();
k.compressed = compressed;
ECPoint multiply = CURVE.getG().multiply(k.priv);
k.pub = multiply.getEncoded(false);
k.pubComp = multiply.getEncoded(true);
return k;
}
代码示例来源:origin: com.madgag.spongycastle/prov
public static ECDomainParameters getDomainParameters(
ProviderConfiguration configuration,
X962Parameters params)
{
ECDomainParameters domainParameters;
if (params.isNamedCurve())
{
ASN1ObjectIdentifier oid = ASN1ObjectIdentifier.getInstance(params.getParameters());
X9ECParameters ecP = ECUtil.getNamedCurveByOid(oid);
if (ecP == null)
{
Map extraCurves = configuration.getAdditionalECParameters();
ecP = (X9ECParameters)extraCurves.get(oid);
}
domainParameters = new ECNamedDomainParameters(oid, ecP.getCurve(), ecP.getG(), ecP.getN(), ecP.getH(), ecP.getSeed());
}
else if (params.isImplicitlyCA())
{
org.spongycastle.jce.spec.ECParameterSpec iSpec = configuration.getEcImplicitlyCa();
domainParameters = new ECDomainParameters(iSpec.getCurve(), iSpec.getG(), iSpec.getN(), iSpec.getH(), iSpec.getSeed());
}
else
{
X9ECParameters ecP = X9ECParameters.getInstance(params.getParameters());
domainParameters = new ECDomainParameters(ecP.getCurve(), ecP.getG(), ecP.getN(), ecP.getH(), ecP.getSeed());
}
return domainParameters;
}
代码示例来源:origin: QuincySx/BlockchainWallet-Crypto
public static boolean verify(byte[] publicKey, byte[] signature, byte[] msg) {
X9ECParameters params = SECNamedCurves.getByName("secp256k1");
ECDomainParameters EC_PARAMS = new ECDomainParameters(params.getCurve(), params.getG(), params.getN(), params.getH());
synchronized (EC_PARAMS) {
boolean valid;
ECDSASigner signerVer = new ECDSASigner(new HMacDSAKCalculator(new SHA256Digest()));
try {
ECPublicKeyParameters pubKey = new ECPublicKeyParameters(EC_PARAMS.getCurve().decodePoint(publicKey), EC_PARAMS);
signerVer.init(false, pubKey);
ASN1InputStream derSigStream = new ASN1InputStream(signature);
DLSequence seq = (DLSequence) derSigStream.readObject();
BigInteger r = ((ASN1Integer) seq.getObjectAt(0)).getPositiveValue();
BigInteger s = ((ASN1Integer) seq.getObjectAt(1)).getPositiveValue();
derSigStream.close();
valid = signerVer.verifySignature(msg, r, s);
} catch (IOException e) {
throw new RuntimeException();
}
return valid;
}
}
}
代码示例来源:origin: com.madgag.spongycastle/bcpg-jdk15on
new ECNamedDomainParameters(ecPub.getCurveOID(), x9.getCurve(), x9.getG(), x9.getN(), x9.getH()));
default:
throw new PGPException("unknown public key algorithm encountered");
内容来源于网络,如有侵权,请联系作者删除!