public interface JCSPSecretKeyInterface
extends ru.CryptoPro.JCP.Key.SecretKeyInterface, java.lang.Cloneable
Key
,
KeyInterface
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
clone()
Копирование объекта.
|
java.lang.Object |
clone2()
JCP-1740
Копирование объекта.
|
void |
decrypt(byte[] buf,
int[] buflen,
boolean last)
метод расшифрования одного блока.
|
int |
decryptLength(int inlength,
boolean last)
метод определения длины буффера, необходимой для расшифрования заданного
количества байт
|
void |
encrypt(byte[] buf,
int[] buflen,
boolean last)
метод зашифрования массива.
|
int |
encryptLength(int inlength,
boolean last)
метод определения длины буффера, необходимой для зашифрования заданного
количества байт
|
int |
getAlgorithmIdentifier()
Идентификатор алгоритма.
|
int |
getEncryptMode()
возвращает режим шифрования, в котором находится ключ
|
byte[] |
getIV_blob()
Функция генерации блоба имитовставки для шифратора.
|
byte[] |
getIV_byte()
Функция генерации имитовставки для шифратора.
|
byte[] |
getKeyX()
Функция получает значение ключа (только в дебаге).
|
boolean |
getMixMode()
возвращает тип усложнения ключа.
|
byte[] |
getOmac()
Функция получения зашифрованной имиты.
|
int |
getPadding()
возвращает MODE_PKCS5_PADDING, или 0, если паддинг другой
|
ru.CryptoPro.JCSP.MSCAPI.HHash |
makeNewHMAC(int algid,
ru.CryptoPro.JCP.params.OID digestParamOID) |
ru.CryptoPro.JCSP.MSCAPI.HHash |
makeNewMac(int algid,
int hashSize)
Формирование функции хеширования.
|
JCSPMasterKeyInterface |
preHashMaster(byte[] clientRandom,
byte[] serverRandom,
int algTls1Prf,
int algEnc,
int IvLen,
boolean isOldSuite)
Функция получение master-ключа из pre-master-ключа на основе случайных
последовательностей клиента и сервера.
|
JCSPMasterKeyInterface |
preHashMaster(byte[] emsHash,
int algTls1Prf,
int algEnc,
int IvLen,
boolean isOldSuite)
Функция получение расширенного master-ключа из pre-master-ключа
на основе хэша данных.
|
void |
setAlgorithmIdentifier(int keyType)
Задание алгоритма ключа.
|
void |
setEncryptMode(int keyEncryptMode,
boolean isCMS)
устанавливает режим шифрования, в котором находится ключ.
|
void |
setIV_blob(byte[] iv)
Функция установки блоба имитовставки для шифратора.
|
void |
setIV_byte(byte[] iv)
Функция установки имитовставки для шифратора.
|
void |
setMixMode(boolean keyMixMode)
устанавливает тип усложнения ключа, true, если происходит смена ключа
через килобайт, false иначе.
|
void |
setModeBits(int modeBits)
Устанавливает длину блока гаммы (в битах).
|
void |
setOmac(byte[] omac)
Функция проверки зашифрованной имиты.
|
void |
setPadding(int keyPadding)
устанавливает режим паддинга, в котором находится ключ паддинг может быть
равен MODE_PKCS5_PADDING
|
JCSPSecretKeyInterface |
unwrap(byte[] wrappedKey,
int keyAld,
boolean isForeign)
Функция расшифрования ключа на данном ключе.
|
byte[] |
wrap(ru.CryptoPro.JCP.Key.SecretKeyInterface spec)
Зашифрование данного ключа на передаваемом ключе при помощи синхропосылки
и данного узла шифрования.
|
void encrypt(byte[] buf, int[] buflen, boolean last) throws java.security.InvalidKeyException, javax.crypto.ShortBufferException
buf
- буффер даннных.buflen
- массив с длиной. на вход - длина шифруемых данных, после
выхода считывать длину расшифрованных данных.last
- признак завершения шифрования.java.security.InvalidKeyException
- если ошибкиjavax.crypto.ShortBufferException
void decrypt(byte[] buf, int[] buflen, boolean last) throws java.security.InvalidKeyException, javax.crypto.ShortBufferException
buf
- буффер даннных.buflen
- массив с длиной. на вход - длина шифруемых данных, после
выхода считывать длину расшифрованных данных.last
- признак завершения шифрования.java.security.InvalidKeyException
- если ошибкиjavax.crypto.ShortBufferException
int encryptLength(int inlength, boolean last) throws java.security.InvalidKeyException
inlength
- сколько надо зашифроватьlast
- признак, что блок терминальныйjava.security.InvalidKeyException
- если ключ неподходящийint decryptLength(int inlength, boolean last) throws java.security.InvalidKeyException
inlength
- сколько надо расшифроватьlast
- признак, что блок терминальныйjava.security.InvalidKeyException
- если ключ неподходящийbyte[] getIV_byte() throws java.security.InvalidKeyException
java.security.InvalidKeyException
void setIV_byte(byte[] iv) throws java.security.InvalidKeyException
java.security.InvalidKeyException
byte[] getIV_blob() throws java.security.InvalidKeyException
java.security.InvalidKeyException
byte[] getKeyX() throws java.security.InvalidKeyException
java.security.InvalidKeyException
void setIV_blob(byte[] iv) throws java.security.InvalidKeyException
java.security.InvalidKeyException
byte[] getOmac() throws java.security.InvalidKeyException
java.security.InvalidKeyException
void setOmac(byte[] omac) throws java.security.InvalidKeyException
java.security.InvalidKeyException
byte[] wrap(ru.CryptoPro.JCP.Key.SecretKeyInterface spec) throws java.security.InvalidKeyException
spec
- ключ зашифрованияjava.security.InvalidKeyException
JCSPSecretKeyInterface unwrap(byte[] wrappedKey, int keyAld, boolean isForeign) throws java.security.InvalidKeyException, java.security.KeyManagementException
wrappedKey
- зашифрованный ключjava.security.InvalidKeyException
java.security.KeyManagementException
JCSPMasterKeyInterface preHashMaster(byte[] clientRandom, byte[] serverRandom, int algTls1Prf, int algEnc, int IvLen, boolean isOldSuite) throws java.security.InvalidKeyException, java.security.KeyManagementException
clientRandom
- случайные данные клиентаserverRandom
- случайные данные сервераjava.security.InvalidKeyException
java.security.KeyManagementException
JCSPMasterKeyInterface preHashMaster(byte[] emsHash, int algTls1Prf, int algEnc, int IvLen, boolean isOldSuite) throws java.security.InvalidKeyException, java.security.KeyManagementException
emsHash
- хэш данныхjava.security.InvalidKeyException
java.security.KeyManagementException
java.lang.Object clone() throws java.lang.CloneNotSupportedException
clone
in interface ru.CryptoPro.JCP.Key.KeyInterface
java.lang.CloneNotSupportedException
java.lang.Object clone2() throws java.lang.CloneNotSupportedException
java.lang.CloneNotSupportedException
int getEncryptMode()
void setEncryptMode(int keyEncryptMode, boolean isCMS)
int getPadding()
void setPadding(int keyPadding)
boolean getMixMode()
void setMixMode(boolean keyMixMode)
void setModeBits(int modeBits)
modeBits
- размер гаммы.ru.CryptoPro.JCSP.MSCAPI.HHash makeNewMac(int algid, int hashSize) throws java.security.InvalidKeyException
hashSize
- устанавливаемая длина хэша (используется только для Кузнечки и Магмы)java.security.InvalidKeyException
ru.CryptoPro.JCSP.MSCAPI.HHash makeNewHMAC(int algid, ru.CryptoPro.JCP.params.OID digestParamOID) throws java.security.InvalidKeyException
java.security.InvalidKeyException
void setAlgorithmIdentifier(int keyType) throws java.security.InvalidKeyException
keyType
- Алгоритм ключа.java.security.InvalidKeyException
int getAlgorithmIdentifier()