|
Bouncy Castle Cryptography Library 1.71 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.bouncycastle.openpgp.operator.PGPKeyEncryptionMethodGenerator | +--org.bouncycastle.openpgp.operator.PBEKeyEncryptionMethodGenerator
PGP style PBE encryption method.
A pass phrase is used to generate an encryption key using the PGP string-to-key
method. This class always uses the salted and iterated form of the
S2K algorithm
.
Note that the iteration count provided to this method is a single byte as described by the
S2K
algorithm, and the actual iteration count ranges exponentially from
0x01 == 1088 to 0xFF == 65,011,712.
Constructor Summary | |
protected |
PBEKeyEncryptionMethodGenerator(char[] passPhrase,
PGPDigestCalculator s2kDigestCalculator)
Construct a PBE key generator using the default iteration count ( 0x60 == 65536 iterations). |
protected |
PBEKeyEncryptionMethodGenerator(char[] passPhrase,
PGPDigestCalculator s2kDigestCalculator,
int s2kCount)
Construct a PBE key generator using a specific iteration level. |
Method Summary | |
protected abstract byte[] |
encryptSessionInfo(int encAlgorithm,
byte[] key,
byte[] sessionInfo)
|
ContainedPacket |
generate(int encAlgorithm,
byte[] sessionInfo)
Generates a packet encoding the details of this encryption method. |
byte[] |
getKey(int encAlgorithm)
Generate a key for a symmetric encryption algorithm using the PBE configuration in this method. |
PBEKeyEncryptionMethodGenerator |
setSecureRandom(java.security.SecureRandom random)
Sets a user defined source of randomness. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
protected PBEKeyEncryptionMethodGenerator(char[] passPhrase, PGPDigestCalculator s2kDigestCalculator)
passPhrase
- the pass phrase to encrypt with.s2kDigestCalculator
- a digest calculator to use in the string-to-key function.protected PBEKeyEncryptionMethodGenerator(char[] passPhrase, PGPDigestCalculator s2kDigestCalculator, int s2kCount)
passPhrase
- the pass phrase to encrypt with.s2kDigestCalculator
- a digest calculator to use in the string-to-key function.s2kCount
- a single byte S2K
iteration count specifier, which is translated to
an actual iteration count by the S2K class.Method Detail |
public PBEKeyEncryptionMethodGenerator setSecureRandom(java.security.SecureRandom random)
If no SecureRandom is configured, a default SecureRandom will be used.
public byte[] getKey(int encAlgorithm) throws PGPException
encAlgorithm
- the encryption algorithm
to generate
the key for.PGPException
- if an error occurs performing the string-to-key generation.public ContainedPacket generate(int encAlgorithm, byte[] sessionInfo) throws PGPException
PGPKeyEncryptionMethodGenerator
generate
in class PGPKeyEncryptionMethodGenerator
org.bouncycastle.openpgp.operator.PGPKeyEncryptionMethodGenerator
encAlgorithm
- the encryption algorithm
being usedsessionInfo
- session data generated by the encrypted data generator.PGPException
- if an error occurs constructing the packet.protected abstract byte[] encryptSessionInfo(int encAlgorithm, byte[] key, byte[] sessionInfo) throws PGPException
|
Bouncy Castle Cryptography Library 1.71 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |