com.healthmarketscience.jackcess.impl.office
Class BlockCipherProvider

java.lang.Object
  extended by com.healthmarketscience.jackcess.impl.BaseCryptCodecHandler
      extended by com.healthmarketscience.jackcess.impl.OfficeCryptCodecHandler
          extended by com.healthmarketscience.jackcess.impl.office.BlockCipherProvider
All Implemented Interfaces:
com.healthmarketscience.jackcess.impl.CodecHandler
Direct Known Subclasses:
AgileEncryptionProvider, ECMAStandardEncryptionProvider

public abstract class BlockCipherProvider
extends OfficeCryptCodecHandler

Author:
James Ahlborn

Nested Class Summary
 
Nested classes/interfaces inherited from class com.healthmarketscience.jackcess.impl.OfficeCryptCodecHandler
OfficeCryptCodecHandler.Phase
 
Field Summary
 
Fields inherited from class com.healthmarketscience.jackcess.impl.BaseCryptCodecHandler
CIPHER_DECRYPT_MODE, CIPHER_ENCRYPT_MODE
 
Constructor Summary
BlockCipherProvider(com.healthmarketscience.jackcess.impl.PageChannel channel, byte[] encodingKey)
           
 
Method Summary
 boolean canDecodeInline()
           
 boolean canEncodePartialPage()
           
protected  void decodePageImpl(ByteBuffer inPage, ByteBuffer outPage, int pageNumber)
           
 ByteBuffer encodePageImpl(ByteBuffer buffer, int pageNumber, int pageOffset)
           
protected  org.bouncycastle.crypto.BufferedBlockCipher getBlockCipher()
           
protected  org.bouncycastle.crypto.BlockCipher initCipher()
           
protected  org.bouncycastle.crypto.BlockCipher initCryptCipher()
           
protected  org.bouncycastle.crypto.BlockCipher initPwdCipher()
           
protected  void reset()
           
 
Methods inherited from class com.healthmarketscience.jackcess.impl.OfficeCryptCodecHandler
bits2bytes, create, decodePage, encodePage, getDigest, getPhase, initCryptDigest, initDigest, initPwdDigest, int2bytes, iterateHash, verifyPassword
 
Methods inherited from class com.healthmarketscience.jackcess.impl.BaseCryptCodecHandler
applyPageNumber, blockDecrypt, blockDecryptBytes, blockEncrypt, computeCipherParams, decryptBytes, decryptBytes, decryptInit, decryptInit, encryptInit, encryptInit, fill, fixToLength, fixToLength, getCipherParams, getEncodingKey, getEncodingKey, getStreamCipher, getTempBuffer, hash, hash, hash, hash, isBlankKey, processBytesFully, readHeaderPage, streamDecrypt, streamEncrypt, toString, wrap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

BlockCipherProvider

public BlockCipherProvider(com.healthmarketscience.jackcess.impl.PageChannel channel,
                           byte[] encodingKey)
Method Detail

getBlockCipher

protected org.bouncycastle.crypto.BufferedBlockCipher getBlockCipher()
Overrides:
getBlockCipher in class BaseCryptCodecHandler

canEncodePartialPage

public final boolean canEncodePartialPage()

canDecodeInline

public final boolean canDecodeInline()

initCipher

protected org.bouncycastle.crypto.BlockCipher initCipher()

initPwdCipher

protected org.bouncycastle.crypto.BlockCipher initPwdCipher()

initCryptCipher

protected org.bouncycastle.crypto.BlockCipher initCryptCipher()

decodePageImpl

protected void decodePageImpl(ByteBuffer inPage,
                              ByteBuffer outPage,
                              int pageNumber)
Specified by:
decodePageImpl in class OfficeCryptCodecHandler

encodePageImpl

public ByteBuffer encodePageImpl(ByteBuffer buffer,
                                 int pageNumber,
                                 int pageOffset)
                          throws IOException
Specified by:
encodePageImpl in class OfficeCryptCodecHandler
Throws:
IOException

reset

protected void reset()
Overrides:
reset in class OfficeCryptCodecHandler


Copyright © 2010-2017 Health Market Science. All Rights Reserved.