public class SecureChannelProtocol
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
protected static char[] |
hex |
| Constructor and Description |
|---|
SecureChannelProtocol() |
| Modifier and Type | Method and Description |
|---|---|
byte[] |
computeCryptogram_SCP01(java.lang.String selectedToken,
java.lang.String keyNickName,
byte[] card_challenge,
byte[] host_challenge,
byte[] keyInfo,
byte nistSP800_108KdfOnKeyVersion,
boolean nistSP800_108KdfUseCuidAsKdd,
byte[] xCUID,
byte[] xKDD,
int cryptogramType,
byte[] authKeyArray,
java.lang.String useSoftToken_s,
java.lang.String keySet,
java.lang.String transportKeyName) |
byte[] |
computeDes3EcbEncryption(org.mozilla.jss.crypto.SymmetricKey desKey,
java.lang.String selectedToken,
byte[] input) |
org.mozilla.jss.crypto.SymmetricKey |
computeKEKKey_SCP01(java.lang.String selectedToken,
java.lang.String keyNickName,
byte[] keyInfo,
byte nistSP800_108KdfOnKeyVersion,
boolean nistSP800_108KdfUseCuidAsKdd,
byte[] xCUID,
byte[] xKDD,
byte[] devKeyArray,
java.lang.String useSoftToken_s,
java.lang.String keySet,
java.lang.String transportKeyName) |
byte[] |
computeKeyCheck(org.mozilla.jss.crypto.SymmetricKey desKey,
java.lang.String selectedToken) |
byte[] |
computeMAC_SCP01(org.mozilla.jss.crypto.SymmetricKey symKey,
byte[] input,
byte[] icv,
java.lang.String selectedToken) |
org.mozilla.jss.crypto.SymmetricKey |
computeSessionKey_SCP01(java.lang.String keyType,
java.lang.String selectedToken,
java.lang.String keyNickName,
byte[] card_challenge,
byte[] host_challenge,
byte[] keyInfo,
byte nistSP800_108KdfOnKeyVersion,
boolean nistSP800_108KdfUseCuidAsKdd,
byte[] xCUID,
byte[] xKDD,
byte[] devKeyArray,
java.lang.String useSoftToken_s,
java.lang.String keySet,
java.lang.String transportKeyName) |
org.mozilla.jss.crypto.SymmetricKey |
computeSessionKey_SCP02(java.lang.String selectedToken,
java.lang.String keyNickName,
byte[] keyInfo,
byte nistSP800_108KdfOnKeyVersion,
boolean nistSP800_108KdfUseCuidAsKdd,
byte[] xCUID,
byte[] xKDD,
byte[] macKeyArray,
byte[] sequenceCounter,
byte[] derivationConstant,
java.lang.String useSoftToken_s,
java.lang.String keySet,
java.lang.String transportKeyName) |
static void |
debugByteArray(byte[] array,
java.lang.String message) |
byte[] |
diversifyKey(java.lang.String tokenName,
java.lang.String newTokenName,
java.lang.String oldMasterKeyName,
java.lang.String newMasterKeyName,
byte[] oldKeyInfo,
byte[] newKeyInfo,
byte nistSP800_108KdfOnKeyVersion,
boolean nistSP800_108KdfUseCuidAsKdd,
byte[] CUIDValue,
byte[] KDD,
byte[] kekKeyArray,
java.lang.String useSoftToken,
java.lang.String keySet,
byte protocol) |
byte[] |
ecbEncrypt(org.mozilla.jss.crypto.SymmetricKey devKey,
org.mozilla.jss.crypto.SymmetricKey symKey,
java.lang.String selectedToken) |
byte[] |
encryptData(java.lang.String selectedToken,
java.lang.String keyNickName,
byte[] data,
byte[] keyInfo,
byte nistSP800_108KdfOnKeyVersion,
boolean nistSP800_108KdfUseCuidAsKdd,
byte[] xCUID,
byte[] xKDD,
byte[] kekKeyArray,
java.lang.String useSoftToken_s,
java.lang.String keySet) |
org.mozilla.jss.crypto.SymmetricKey |
extractDes2FromDes3(org.mozilla.jss.crypto.SymmetricKey baseKey,
java.lang.String selectedToken) |
org.mozilla.jss.crypto.SymmetricKey |
generateSymKey(java.lang.String selectedToken) |
org.mozilla.jss.CryptoManager |
getCryptoManger() |
static java.lang.String |
getHexString(byte[] bytes) |
org.mozilla.jss.crypto.SymmetricKey |
getSharedSecretKey(org.mozilla.jss.crypto.CryptoToken token) |
static java.lang.String |
getSharedSecretKeyName(java.lang.String name) |
static org.mozilla.jss.crypto.SymmetricKey |
getSymKeyByName(org.mozilla.jss.crypto.CryptoToken token,
java.lang.String name) |
static byte[] |
longToBytes(long x) |
static byte[] |
makeDes3FromDes2(byte[] des2) |
org.mozilla.jss.crypto.SymmetricKey |
makeDes3KeyDerivedFromDes2(org.mozilla.jss.crypto.SymmetricKey des3Key,
java.lang.String selectedToken) |
org.mozilla.jss.crypto.CryptoToken |
returnTokenByName(java.lang.String name,
org.mozilla.jss.CryptoManager manager) |
static void |
setDefaultPrefix(java.lang.String masterkeyPrefix) |
static java.lang.String |
setSharedSecretKeyName(java.lang.String name) |
org.mozilla.jss.crypto.SymmetricKey |
unwrapSymKeyOnToken(org.mozilla.jss.crypto.CryptoToken token,
byte[] inputKeyArray,
boolean isPerm) |
org.mozilla.jss.crypto.SymmetricKey |
unwrapSymKeyOnToken(org.mozilla.jss.crypto.CryptoToken token,
org.mozilla.jss.crypto.SymmetricKey unwrappingKey,
byte[] inputKeyArray,
boolean isPerm) |
org.mozilla.jss.crypto.SymmetricKey |
unwrapWrappedSymKeyOnToken(org.mozilla.jss.crypto.CryptoToken token,
org.mozilla.jss.crypto.SymmetricKey unwrappingKey,
byte[] inputKeyArray,
boolean isPerm) |
byte[] |
wrapSessionKey(java.lang.String tokenName,
org.mozilla.jss.crypto.SymmetricKey sessionKey,
org.mozilla.jss.crypto.SymmetricKey wrappingKey) |
public byte[] computeCryptogram_SCP01(java.lang.String selectedToken,
java.lang.String keyNickName,
byte[] card_challenge,
byte[] host_challenge,
byte[] keyInfo,
byte nistSP800_108KdfOnKeyVersion,
boolean nistSP800_108KdfUseCuidAsKdd,
byte[] xCUID,
byte[] xKDD,
int cryptogramType,
byte[] authKeyArray,
java.lang.String useSoftToken_s,
java.lang.String keySet,
java.lang.String transportKeyName)
throws EBaseException
EBaseExceptionpublic org.mozilla.jss.crypto.SymmetricKey computeSessionKey_SCP02(java.lang.String selectedToken,
java.lang.String keyNickName,
byte[] keyInfo,
byte nistSP800_108KdfOnKeyVersion,
boolean nistSP800_108KdfUseCuidAsKdd,
byte[] xCUID,
byte[] xKDD,
byte[] macKeyArray,
byte[] sequenceCounter,
byte[] derivationConstant,
java.lang.String useSoftToken_s,
java.lang.String keySet,
java.lang.String transportKeyName)
throws EBaseException
EBaseExceptionpublic org.mozilla.jss.crypto.SymmetricKey computeKEKKey_SCP01(java.lang.String selectedToken,
java.lang.String keyNickName,
byte[] keyInfo,
byte nistSP800_108KdfOnKeyVersion,
boolean nistSP800_108KdfUseCuidAsKdd,
byte[] xCUID,
byte[] xKDD,
byte[] devKeyArray,
java.lang.String useSoftToken_s,
java.lang.String keySet,
java.lang.String transportKeyName)
throws EBaseException
EBaseExceptionpublic org.mozilla.jss.crypto.SymmetricKey computeSessionKey_SCP01(java.lang.String keyType,
java.lang.String selectedToken,
java.lang.String keyNickName,
byte[] card_challenge,
byte[] host_challenge,
byte[] keyInfo,
byte nistSP800_108KdfOnKeyVersion,
boolean nistSP800_108KdfUseCuidAsKdd,
byte[] xCUID,
byte[] xKDD,
byte[] devKeyArray,
java.lang.String useSoftToken_s,
java.lang.String keySet,
java.lang.String transportKeyName)
throws EBaseException
EBaseExceptionpublic org.mozilla.jss.crypto.SymmetricKey getSharedSecretKey(org.mozilla.jss.crypto.CryptoToken token)
throws EBaseException
EBaseExceptionpublic static java.lang.String getSharedSecretKeyName(java.lang.String name)
throws EBaseException
EBaseExceptionpublic static java.lang.String setSharedSecretKeyName(java.lang.String name)
throws EBaseException
EBaseExceptionpublic org.mozilla.jss.crypto.SymmetricKey unwrapSymKeyOnToken(org.mozilla.jss.crypto.CryptoToken token,
org.mozilla.jss.crypto.SymmetricKey unwrappingKey,
byte[] inputKeyArray,
boolean isPerm)
throws EBaseException
EBaseExceptionpublic org.mozilla.jss.crypto.SymmetricKey unwrapWrappedSymKeyOnToken(org.mozilla.jss.crypto.CryptoToken token,
org.mozilla.jss.crypto.SymmetricKey unwrappingKey,
byte[] inputKeyArray,
boolean isPerm)
throws EBaseException
EBaseExceptionpublic org.mozilla.jss.crypto.SymmetricKey unwrapSymKeyOnToken(org.mozilla.jss.crypto.CryptoToken token,
byte[] inputKeyArray,
boolean isPerm)
throws EBaseException
EBaseExceptionpublic static org.mozilla.jss.crypto.SymmetricKey getSymKeyByName(org.mozilla.jss.crypto.CryptoToken token,
java.lang.String name)
throws EBaseException
EBaseExceptionpublic org.mozilla.jss.crypto.CryptoToken returnTokenByName(java.lang.String name,
org.mozilla.jss.CryptoManager manager)
throws org.mozilla.jss.NoSuchTokenException
org.mozilla.jss.NoSuchTokenExceptionpublic static byte[] makeDes3FromDes2(byte[] des2)
public static void debugByteArray(byte[] array,
java.lang.String message)
public static java.lang.String getHexString(byte[] bytes)
public org.mozilla.jss.CryptoManager getCryptoManger()
throws EBaseException
EBaseExceptionpublic static byte[] longToBytes(long x)
public org.mozilla.jss.crypto.SymmetricKey generateSymKey(java.lang.String selectedToken)
throws EBaseException
EBaseExceptionpublic byte[] ecbEncrypt(org.mozilla.jss.crypto.SymmetricKey devKey,
org.mozilla.jss.crypto.SymmetricKey symKey,
java.lang.String selectedToken)
throws EBaseException
EBaseExceptionpublic org.mozilla.jss.crypto.SymmetricKey makeDes3KeyDerivedFromDes2(org.mozilla.jss.crypto.SymmetricKey des3Key,
java.lang.String selectedToken)
throws EBaseException
EBaseExceptionpublic org.mozilla.jss.crypto.SymmetricKey extractDes2FromDes3(org.mozilla.jss.crypto.SymmetricKey baseKey,
java.lang.String selectedToken)
throws EBaseException
EBaseExceptionpublic byte[] wrapSessionKey(java.lang.String tokenName,
org.mozilla.jss.crypto.SymmetricKey sessionKey,
org.mozilla.jss.crypto.SymmetricKey wrappingKey)
throws EBaseException
EBaseExceptionpublic byte[] computeDes3EcbEncryption(org.mozilla.jss.crypto.SymmetricKey desKey,
java.lang.String selectedToken,
byte[] input)
throws EBaseException
EBaseExceptionpublic byte[] computeKeyCheck(org.mozilla.jss.crypto.SymmetricKey desKey,
java.lang.String selectedToken)
throws EBaseException
EBaseExceptionpublic byte[] computeMAC_SCP01(org.mozilla.jss.crypto.SymmetricKey symKey,
byte[] input,
byte[] icv,
java.lang.String selectedToken)
throws EBaseException
EBaseExceptionpublic byte[] diversifyKey(java.lang.String tokenName,
java.lang.String newTokenName,
java.lang.String oldMasterKeyName,
java.lang.String newMasterKeyName,
byte[] oldKeyInfo,
byte[] newKeyInfo,
byte nistSP800_108KdfOnKeyVersion,
boolean nistSP800_108KdfUseCuidAsKdd,
byte[] CUIDValue,
byte[] KDD,
byte[] kekKeyArray,
java.lang.String useSoftToken,
java.lang.String keySet,
byte protocol)
throws EBaseException
EBaseExceptionpublic static void setDefaultPrefix(java.lang.String masterkeyPrefix)
public byte[] encryptData(java.lang.String selectedToken,
java.lang.String keyNickName,
byte[] data,
byte[] keyInfo,
byte nistSP800_108KdfOnKeyVersion,
boolean nistSP800_108KdfUseCuidAsKdd,
byte[] xCUID,
byte[] xKDD,
byte[] kekKeyArray,
java.lang.String useSoftToken_s,
java.lang.String keySet)
throws EBaseException
EBaseException