org.bouncycastle.openpgp.operator.PBESecretKeyDecryptor Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of bcpg-jdk14 Show documentation
Show all versions of bcpg-jdk14 Show documentation
The Bouncy Castle Java API for handling the OpenPGP protocol. This jar contains the OpenPGP API for JDK 1.4. The APIs can be used in conjunction with a JCE/JCA provider such as the one provided with the Bouncy Castle Cryptography APIs.
The newest version!
package org.bouncycastle.openpgp.operator;
import org.bouncycastle.bcpg.S2K;
import org.bouncycastle.openpgp.PGPException;
public abstract class PBESecretKeyDecryptor
{
private char[] passPhrase;
private PGPDigestCalculatorProvider calculatorProvider;
protected PBESecretKeyDecryptor(char[] passPhrase, PGPDigestCalculatorProvider calculatorProvider)
{
this.passPhrase = passPhrase;
this.calculatorProvider = calculatorProvider;
}
public PGPDigestCalculator getChecksumCalculator(int hashAlgorithm)
throws PGPException
{
return calculatorProvider.get(hashAlgorithm);
}
public byte[] makeKeyFromPassPhrase(int keyAlgorithm, S2K s2k)
throws PGPException
{
return PGPUtil.makeKeyFromPassPhrase(calculatorProvider, keyAlgorithm, s2k, passPhrase);
}
public abstract byte[] recoverKeyData(int encAlgorithm, byte[] key, byte[] iv, byte[] keyData, int keyOff, int keyLen)
throws PGPException;
public abstract byte[] recoverKeyData(
int encAlgorithm,
int aeadAlgorithm,
byte[] s2kKey,
byte[] iv,
int packetTag,
int keyVersion,
byte[] keyData,
byte[] pubkeyData)
throws PGPException;
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy