Class CryptoProcessor

java.lang.Object
com.sun.xml.ws.security.opt.impl.enc.CryptoProcessor
Direct Known Subclasses:
DataEncryptionProcessor, KeyEncryptionProcessor

public class CryptoProcessor extends Object
Author:
K.Venugopal@sun.com, Abhijit.Das@Sun.COM
  • Field Details

    • cipher

      protected Cipher cipher
    • key

      protected Key key
    • data

      protected Data data
  • Constructor Details

    • CryptoProcessor

      public CryptoProcessor()
    • CryptoProcessor

      public CryptoProcessor(int mode, String algo, Data ed, Key key) throws com.sun.xml.wss.XWSSecurityException
      Creates a new instance of EncryptionProcessor
      Throws:
      com.sun.xml.wss.XWSSecurityException
    • CryptoProcessor

      public CryptoProcessor(int mode, String algo, Key dk, Key key) throws com.sun.xml.wss.XWSSecurityException
      Throws:
      com.sun.xml.wss.XWSSecurityException
    • CryptoProcessor

      public CryptoProcessor(int mode, String algo, Key key) throws com.sun.xml.wss.XWSSecurityException
      Throws:
      com.sun.xml.wss.XWSSecurityException
  • Method Details

    • initCipher

      creates an instance of javax.crypto.Cipher class and inits it .
      Throws:
      NoSuchAlgorithmException
      NoSuchPaddingException
      InvalidKeyException
    • getAlgorithm

      protected String getAlgorithm()
    • convertAlgURIToTransformation

      protected String convertAlgURIToTransformation(String algorithmURI)
      Convert algorithm URI to actual transformation (DES/CBC/PKCS5Padding)
      Parameters:
      algorithmURI -
      Returns:
      String representing transforms
    • getKey

      protected Key getKey()
    • encrypt

      public void encrypt(OutputStream outputStream) throws IOException
      encrypts outputStream
      Parameters:
      outputStream -
      Throws:
      IOException
    • getCipherValueOfEK

      public byte[] getCipherValueOfEK()
      wraps the data encryption key .
      Returns:
      ed byte[]
    • encryptKey

      public void encryptKey(OutputStream outputStream) throws IOException
      wraps the data encryption key to byte[] and writes it to output stream
      Parameters:
      outputStream - OutputStream
      Throws:
      IOException
    • setEncryptedDataCV

      public void setEncryptedDataCV(byte[] cv)
    • encryptData

      public byte[] encryptData(byte[] cipherInput)
      initialises the Cipher and encrypts the data which is a byte[] and returns the encrypted data
      Parameters:
      cipherInput - byte[]
      Returns:
      encryptedBytes byte[]
    • encryptData

      public void encryptData(OutputStream eos) throws IOException
      initialises the Cipher and encrypts the data which is a OutputStream and writes the encrypted data into the data member
      Parameters:
      eos - OutputStream
      Throws:
      IOException
    • decryptKey

      public Key decryptKey(byte[] encryptedKey, String encAlgo) throws IOException
      decrypts the encrypted key which is a byte[] with encAlgo algorithm
      Parameters:
      encryptedKey - byte[]
      encAlgo - String
      Returns:
      Key
      Throws:
      IOException
    • decryptData

      public InputStream decryptData(InputStream is) throws IOException
      decrypts the given data which is of the form InputStream
      Parameters:
      is - InputStream
      Returns:
      InputStream
      Throws:
      IOException
    • decryptData

      public byte[] decryptData(byte[] encryptedContent) throws IOException
      decrypts the encryptedContent which a byte[]
      Parameters:
      encryptedContent - byte[]
      Returns:
      byte[]
      Throws:
      IOException