gost3410parameterspec.java
来自「bouncycastle 是一个JAVA安全提供者」· Java 代码 · 共 99 行
JAVA
99 行
package org.bouncycastle.jce.spec;import java.security.spec.AlgorithmParameterSpec;import org.bouncycastle.asn1.DERObjectIdentifier;import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers;import org.bouncycastle.asn1.cryptopro.GOST3410NamedParameters;import org.bouncycastle.asn1.cryptopro.GOST3410ParamSetParameters;import org.bouncycastle.jce.interfaces.GOST3410Params;/** * ParameterSpec for a GOST 3410-94 key. */public class GOST3410ParameterSpec implements AlgorithmParameterSpec, GOST3410Params{ private GOST3410PublicKeyParameterSetSpec keyParameters; private String keyParamSetOID; private String digestParamSetOID; private String encryptionParamSetOID; public GOST3410ParameterSpec( String keyParamSetID, String digestParamSetOID, String encryptionParamSetOID) { GOST3410ParamSetParameters ecP = null; try { ecP = GOST3410NamedParameters.getByOID(new DERObjectIdentifier(keyParamSetID)); } catch (IllegalArgumentException e) { DERObjectIdentifier oid = GOST3410NamedParameters.getOID(keyParamSetID); if (oid != null) { keyParamSetID = oid.getId(); ecP = GOST3410NamedParameters.getByOID(oid); } } if (ecP == null) { throw new IllegalArgumentException("no key parameter set for passed in name/OID."); } this.keyParameters = new GOST3410PublicKeyParameterSetSpec( ecP.getP(), ecP.getQ(), ecP.getA()); this.keyParamSetOID = keyParamSetID; this.digestParamSetOID = digestParamSetOID; this.encryptionParamSetOID = encryptionParamSetOID; } public GOST3410ParameterSpec( String keyParamSetID, String digestParamSetOID) { this(keyParamSetID, digestParamSetOID, null); } public GOST3410ParameterSpec( String keyParamSetID) { this(keyParamSetID, CryptoProObjectIdentifiers.gostR3411_94_CryptoProParamSet.getId(), null); } public GOST3410ParameterSpec( GOST3410PublicKeyParameterSetSpec spec) { this.keyParameters = spec; this.digestParamSetOID = CryptoProObjectIdentifiers.gostR3411_94_CryptoProParamSet.getId(); this.encryptionParamSetOID = null; } public String getPublicKeyParamSetOID() { return this.keyParamSetOID; } public GOST3410PublicKeyParameterSetSpec getPublicKeyParameters() { return keyParameters; } public String getDigestParamSetOID() { return this.digestParamSetOID; } public String getEncryptionParamSetOID() { return this.encryptionParamSetOID; }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?