本文整理汇总了Java中org.spongycastle.crypto.params.AsymmetricKeyParameter类的典型用法代码示例。如果您正苦于以下问题:Java AsymmetricKeyParameter类的具体用法?Java AsymmetricKeyParameter怎么用?Java AsymmetricKeyParameter使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
AsymmetricKeyParameter类属于org.spongycastle.crypto.params包,在下文中一共展示了AsymmetricKeyParameter类的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: generateCSR
import org.spongycastle.crypto.params.AsymmetricKeyParameter; //导入依赖的package包/类
/**
* Create the certificate signing request (CSR) from private and public keys
*
* @param keyPair the KeyPair with private and public keys
* @return PKCS10CertificationRequest with the certificate signing request
* (CSR) data
* @throws IOException
* @throws OperatorCreationException
*/
public static PKCS10CertificationRequest generateCSR(KeyPair keyPair) throws IOException,
OperatorCreationException {
String principal = "CN=AWS IoT Certificate" + ", O=Amazon";
AsymmetricKeyParameter privateKey = PrivateKeyFactory.createKey(keyPair.getPrivate()
.getEncoded());
AlgorithmIdentifier signatureAlgorithm = new DefaultSignatureAlgorithmIdentifierFinder()
.find("SHA1WITHRSA");
AlgorithmIdentifier digestAlgorithm = new DefaultDigestAlgorithmIdentifierFinder()
.find("SHA-1");
ContentSigner signer = new BcRSAContentSignerBuilder(signatureAlgorithm, digestAlgorithm)
.build(privateKey);
PKCS10CertificationRequestBuilder csrBuilder = new JcaPKCS10CertificationRequestBuilder(
new X500Name(principal), keyPair.getPublic());
ExtensionsGenerator extensionsGenerator = new ExtensionsGenerator();
extensionsGenerator.addExtension(Extension.basicConstraints, true, new BasicConstraints(
true));
csrBuilder.addAttribute(PKCSObjectIdentifiers.pkcs_9_at_extensionRequest,
extensionsGenerator.generate());
PKCS10CertificationRequest csr = csrBuilder.build(signer);
return csr;
}
示例2: readKey
import org.spongycastle.crypto.params.AsymmetricKeyParameter; //导入依赖的package包/类
@Override
public AsymmetricKeyParameter readKey(InputStream in)
throws IOException {
try {
return super.readKey(in);
} catch (IllegalArgumentException e) {
throw new IOException(e);
}
}
示例3: encrypt
import org.spongycastle.crypto.params.AsymmetricKeyParameter; //导入依赖的package包/类
public static String encrypt(String data, String strKey) throws Exception {
strKey = strKey.replace("-----BEGIN PUBLIC KEY-----\n", "");
strKey = strKey.replace("-----END PUBLIC KEY-----", "");
AsymmetricKeyParameter publicKey = PublicKeyFactory.createKey(Base64.decode(strKey, Base64.NO_WRAP));
AsymmetricBlockCipher e = new RSAEngine();
e = new org.spongycastle.crypto.encodings.PKCS1Encoding(e);
e.init(true, publicKey);
byte[] messageBytes = data.getBytes();
byte[] hexEncodedCipher = e.processBlock(messageBytes, 0, messageBytes.length);
return new String(Base64.encodeToString(hexEncodedCipher, Base64.NO_WRAP));
}
示例4: getEncoded
import org.spongycastle.crypto.params.AsymmetricKeyParameter; //导入依赖的package包/类
@Override
public byte[] getEncoded(AsymmetricKeyParameter asymmetricKeyParameter) {
return ((ECPublicKeyParameters) asymmetricKeyParameter).getQ().getEncoded(false);
}
示例5: getEncoded
import org.spongycastle.crypto.params.AsymmetricKeyParameter; //导入依赖的package包/类
@Override
public byte[] getEncoded(AsymmetricKeyParameter key) {
if (!(key instanceof ECPublicKeyParameters))
throw new IllegalArgumentException();
return ((ECPublicKeyParameters) key).getQ().getEncoded(false);
}
示例6: getEncoded
import org.spongycastle.crypto.params.AsymmetricKeyParameter; //导入依赖的package包/类
@Override public byte[] getEncoded(AsymmetricKeyParameter asymmetricKeyParameter) {
return ((ECPublicKeyParameters) asymmetricKeyParameter).getQ()
.getEncoded(false);
}
示例7: init
import org.spongycastle.crypto.params.AsymmetricKeyParameter; //导入依赖的package包/类
/**
* Initialise the encryptor.
*
* @param publicKey
* the recipient's/sender's public key parameters
* @param params
* encoding and derivation parameters, may be wrapped to include an IV for an
* underlying block cipher.
* @param ephemeralKeyPairGenerator
* the ephemeral key pair generator to use.
*/
public void init(AsymmetricKeyParameter publicKey, CipherParameters params,
EphemeralKeyPairGenerator ephemeralKeyPairGenerator) {
this.forEncryption = true;
this.pubParam = publicKey;
this.keyPairGenerator = ephemeralKeyPairGenerator;
extractParams(params);
}