gnu.crypto.pad
Class PKCS7
java.lang.Object
|
+--gnu.crypto.pad.BasePad
|
+--gnu.crypto.pad.PKCS7
- All Implemented Interfaces:
- IPad
- public final class PKCS7
- extends BasePad
The implementation of the PKCS7 padding algorithm.
This algorithm is described for 8-byte blocks in [RFC-1423] and extended to
block sizes of up to 256 bytes in [PKCS-7].
References:
RFC-1423: Privacy
Enhancement for Internet Electronic Mail: Part III: Algorithms, Modes, and
Identifiers.
IETF.
[PKCS-7]PKCS #7:
Cryptographic Message Syntax Standard - An RSA Laboratories Technical Note.
RSA Security.
- Version:
- $Revision: 1.3 $
Constructor Summary |
(package private) |
PKCS7()
Trivial package-private constructor for use by the Factory class. |
Method Summary |
byte[] |
pad(byte[] in,
int offset,
int length)
Returns the byte sequence that should be appended to the designated input. |
void |
setup()
|
int |
unpad(byte[] in,
int offset,
int length)
Returns the number of bytes to discard from a designated input buffer. |
Methods inherited from class java.lang.Object |
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
PKCS7
PKCS7()
- Trivial package-private constructor for use by the Factory class.
- See Also:
PadFactory
setup
public void setup()
- Overrides:
setup
in class BasePad
pad
public byte[] pad(byte[] in,
int offset,
int length)
- Description copied from interface:
IPad
- Returns the byte sequence that should be appended to the designated input.
- Overrides:
pad
in class BasePad
- Following copied from interface:
gnu.crypto.pad.IPad
- Parameters:
in
- the input buffer containing the bytes to pad.offset
- the starting index of meaningful data in in.length
- the number of meaningful bytes in in.- Returns:
- the possibly 0-byte long sequence to be appended to the designated
input.
unpad
public int unpad(byte[] in,
int offset,
int length)
throws WrongPaddingException
- Description copied from interface:
IPad
- Returns the number of bytes to discard from a designated input buffer.
- Overrides:
unpad
in class BasePad
- Following copied from interface:
gnu.crypto.pad.IPad
- Parameters:
in
- the input buffer containing the bytes to unpad.offset
- the starting index of meaningful data in in.length
- the number of meaningful bytes in in.- Returns:
- the number of bytes to discard, to the left of index position
offset + length in in. In other words, if the return
value of a successful invocation of this method is result, then
the unpadded byte sequence will be offset + length - result bytes
in in, starting from index position offset.
- Throws:
WrongPaddingException
- if the data is not terminated with the
expected padding bytes.
Copyright ©2001-2002
Free Software Foundation, Inc.. All Rights Reserved.