package com.avaje.ebean.config; /** * Used for Java side encryption of properties when DB encryption is not used. * <p> * By default this is used on non-varchar types such as Blobs. * </p> * * @author rbygrave * */ public interface Encryptor { /** * Encrypt the data using the key. */ public byte[] encrypt(byte[] data, EncryptKey key); /** * Decrypt the data using the key. */ public byte[] decrypt(byte[] data, EncryptKey key); /** * Encrypt the formatted string value using a key. */ public byte[] encryptString(String formattedValue, EncryptKey key); /** * Decrypt the data returning a formatted string value using a key. */ public String decryptString(byte[] data, EncryptKey key); }