com.salesforce.androidsdk.security
Class Encryptor

java.lang.Object
  extended by com.salesforce.androidsdk.security.Encryptor

public class Encryptor
extends java.lang.Object

Helper class for encryption/decryption/hash computations


Constructor Summary
Encryptor()
           
 
Method Summary
static java.lang.String decrypt(java.lang.String data, java.lang.String key)
          Decrypt data with key using aes256
static java.lang.String encrypt(java.lang.String data, java.lang.String key)
          Encrypt data with key using aes256
static javax.crypto.Cipher getBestCipher()
           
static java.lang.String hash(java.lang.String data, java.lang.String key)
          Return hmac-sha256 hash of data using key
static boolean init(Context ctx)
           
static boolean isBase64Encoded(java.lang.String key)
          Checks if the string is Base64 encoded.
static boolean isFileSystemEncrypted()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Encryptor

public Encryptor()
Method Detail

init

public static boolean init(Context ctx)
Parameters:
ctx -
Returns:
true if the cryptographic module was successfully initialized
Throws:
java.security.GeneralSecurityException

getBestCipher

public static javax.crypto.Cipher getBestCipher()
                                         throws java.security.GeneralSecurityException
Throws:
java.security.GeneralSecurityException

isFileSystemEncrypted

public static boolean isFileSystemEncrypted()
Returns:
true if file system encryption is available and active

decrypt

public static java.lang.String decrypt(java.lang.String data,
                                       java.lang.String key)
Decrypt data with key using aes256

Parameters:
data -
key - base64 encoded 256 bits key or null to leave data unchanged
Returns:
decrypted data

encrypt

public static java.lang.String encrypt(java.lang.String data,
                                       java.lang.String key)
Encrypt data with key using aes256

Parameters:
data -
key - base64 encoded 256 bits key or null to leave data unchanged
Returns:
base64, aes256 encrypted data

isBase64Encoded

public static boolean isBase64Encoded(java.lang.String key)
Checks if the string is Base64 encoded.

Parameters:
key - String.
Returns:
True - if encoded, False - otherwise.

hash

public static java.lang.String hash(java.lang.String data,
                                    java.lang.String key)
Return hmac-sha256 hash of data using key

Parameters:
data -
key -
Returns: