Package org.verapdf.cos.filters
Class COSFilterAESDecryptionDefault
java.lang.Object
java.io.InputStream
org.verapdf.as.io.ASInputStream
org.verapdf.as.filters.ASInFilter
org.verapdf.as.filters.io.ASBufferedInFilter
org.verapdf.cos.filters.COSFilterAESDecryptionDefault
- All Implemented Interfaces:
Closeable,AutoCloseable
This filter decrypts data using AES cipher as described in Algorithm 1 of
7.6.2 of ISO 32000:2008.
- Author:
- Sergey Shemyakov
-
Field Summary
Fields inherited from class org.verapdf.as.filters.io.ASBufferedInFilter
BF_BUFFER_SIZE, buffer, START_BUFFER_SIZEFields inherited from class org.verapdf.as.io.ASInputStream
isClosed, isSourceClosed, resourceUsers -
Constructor Summary
ConstructorsConstructorDescriptionCOSFilterAESDecryptionDefault(ASInputStream stream, COSKey objectKey, byte[] encryptionKey, boolean decryptingCOSStream, ASAtom method) Constructor. -
Method Summary
Methods inherited from class org.verapdf.as.filters.io.ASBufferedInFilter
addToBuffer, bufferPop, bufferPopArray, bufferSize, closeResource, concatenate, feedBuffer, getBufferBegin, getBufferCapacity, getBufferEnd, getReadCounter, getStream, getStreamUntilToken, initialize, isEOF, peek, peek, processBuffer, read, readByte, resetReadCounter, skip, unread, unreadMethods inherited from class org.verapdf.as.filters.ASInFilter
close, decrementResourceUsers, getInputStream, incrementResourceUsers, read, setInputStreamMethods inherited from class org.verapdf.as.io.ASInputStream
createStreamFromStreamMethods inherited from class java.io.InputStream
available, mark, markSupported, nullInputStream, read, readAllBytes, readNBytes, readNBytes, skip, skipNBytes, transferTo
-
Constructor Details
-
COSFilterAESDecryptionDefault
public COSFilterAESDecryptionDefault(ASInputStream stream, COSKey objectKey, byte[] encryptionKey, boolean decryptingCOSStream, ASAtom method) throws IOException, GeneralSecurityException Constructor.- Parameters:
stream- is stream with encrypted data.objectKey- contains object and generation numbers from object identifier for object that is being decrypted. If it is direct object, objectKey is taken from indirect object that contains it.encryptionKey- is encryption key that is calculated from user password and encryption dictionary.method- value of CFM key in crypt filter dictionary, should be AESV2 or AESV3.- Throws:
IOExceptionGeneralSecurityException
-
-
Method Details
-
read
- Overrides:
readin classASBufferedInFilter- Throws:
IOException
-
reset
Description copied from class:ASBufferedInFilter- Overrides:
resetin classASBufferedInFilter- Throws:
IOException
-