public interface SecretKeyInterface extends KeyInterface
Key,
KeyInterface| Modifier and Type | Field and Description |
|---|---|
static int |
CRYPT_DIRECTION
направление шифрования.
|
static int |
MODE_CRYPT_INTERVAL
размер битового интервала в переменной типа int, в которой определяется
режим шифрования.
|
static int |
MODE_CRYPT_MASK
маска битового интервала в переменной типа int, в которой определяется
режим шифрования.
|
static int |
MODE_CRYPT_OFFSET
смещение битового интервала в переменной типа int, в которой определяется
режим шифрования.
|
| Modifier and Type | Method and Description |
|---|---|
void |
changeKey(CryptParamsInterface p)
Усложнение ключа.
|
void |
decrypt(int mode,
byte[] dest,
int destOffs,
byte[] source,
int sourceOffs,
int numBlocks,
int[] synchro,
CryptParamsInterface uz)
метод расшифрования одного блока.
|
void |
decrypt(int mode,
int[] buf,
int[] synchro,
CryptParamsInterface uz)
метод расшифрования одного блока.
|
void |
diversKey(byte[] iv)
Функция смены ключа, на котором осуществляется шифрование другого ключа.
|
void |
diversKey2012(byte[] iv)
Функция смены ключа, на котором осуществляется шифрование другого ключа
(CALG_PRO12_EXPORT).
|
void |
encrypt(int mode,
byte[] dest,
int destOffs,
byte[] source,
int sourceOffs,
int numBlocks,
int[] synchro,
CryptParamsInterface uz)
метод зашифрования одного блока.
|
void |
encrypt(int mode,
int[] buf,
int[] synchro,
CryptParamsInterface uz)
метод зашифрования одного блока.
|
byte[] |
getIV()
Функция генерации имитовставки для шифратора.
|
SecretKeyInterface |
getWorkKey()
Получение рабочего ключа.
|
void |
imita(int[] res,
byte[] buf,
int bufOffset,
int count,
CryptParamsInterface uz)
Функция подсчета имиты содержимого buf на данном ключе.
|
void |
imita(int[] buf,
CryptParamsInterface uz)
Вычисление имитовставки.
|
void |
methodGOSTR3411PRF(byte[][] data,
byte[] digest,
boolean isNewDigest_2012_256)
Вычисление PRF на основе функции хэширования ГОСТ Р 34.11-94.
|
MasterKeyInterface |
preHashMaster(byte[] emsHash,
boolean isNewDigest_2012_256)
Функция получение расширенного master-ключа из pre-master-ключа на основе хэша данных.
|
MasterKeyInterface |
preHashMaster(byte[] clientRandom,
byte[] serverRandom,
boolean isNewDigest_2012_256)
Функция получение master-ключа из premaster-ключа на основе случайных
последовательностей клиента и сервера.
|
void |
setIVLen(int ivLen)
Функция устанавливает необходимую длину имитовставки.
|
SecretKeyInterface |
unwrap(byte[] wrappedKey,
int[] iv,
CryptParamsInterface uz,
boolean needDivers,
boolean export12)
Функция расшифрования ключа на данном ключе.
|
SecretKeyInterface |
unwrap(byte[] wrappedKey,
java.lang.String wrappedKeyAlgorithm,
byte[] ukm,
CryptParamsInterface uz)
Функция расшифрования ключа на данном ключе.
|
boolean |
updateTLSKey(long sequenceNumber,
int keyAlg)
Функция обновления ключей для алгоритмов Кузнечик и Магма (в TLS).
|
byte[] |
wrap(SecretKeyInterface spec,
byte[] iv,
CryptParamsInterface uz)
Зашифрование данного ключа на передаваемом ключе при помощи синхропосылки и
данного узла шифрования.
|
byte[] |
wrap(SecretKeyInterface spec,
int[] iv,
CryptParamsInterface uz,
boolean needDivers,
boolean export12)
Зашифрование данного ключа на передаваемом ключе при помощи
синхропосылки и данного узла шифрования.
|
clear, clone, getParams, setParamsstatic final int CRYPT_DIRECTION
static final int MODE_CRYPT_INTERVAL
static final int MODE_CRYPT_OFFSET
static final int MODE_CRYPT_MASK
void imita(int[] buf,
CryptParamsInterface uz)
throws java.security.InvalidKeyException
buf - - массив размера 2, имитовставка вычисляется для этого буффера, и
сохраняется в него же.uz - - commutatorjava.security.InvalidKeyExceptionvoid imita(int[] res,
byte[] buf,
int bufOffset,
int count,
CryptParamsInterface uz)
throws java.security.InvalidKeyException
res - результат, значение имитыbuf - данные, на которые подсчитывается имитаbufOffset - смещение в буфереcount - число блоков для преобразованияuz - узел имитопреобразованияjava.security.InvalidKeyExceptionvoid encrypt(int mode,
int[] buf,
int[] synchro,
CryptParamsInterface uz)
throws java.security.InvalidKeyException
mode - режим, определяется реализациейbuf - буффер данных. данные шифруются, результат записывается в этот же
буфферsynchro - буффер синхропоссылки или любого другого дополнительного
значения. Если дополнительные данные не нужны, следует передавать nulluz - узел заменjava.security.InvalidKeyExceptionvoid decrypt(int mode,
int[] buf,
int[] synchro,
CryptParamsInterface uz)
throws java.security.InvalidKeyException
mode - режим, определяется реализациейbuf - буффер данных. данные шифруются, результат записывается в этот же
буфферsynchro - буффер синхропоссылки или любого другого дополнительного
значения. Если дополнительные данные не нужны, следует передавать nulluz - узел заменjava.security.InvalidKeyException - ключ поврежденvoid encrypt(int mode,
byte[] dest,
int destOffs,
byte[] source,
int sourceOffs,
int numBlocks,
int[] synchro,
CryptParamsInterface uz)
throws java.security.InvalidKeyException
mode - режим, определяется реализациейdest - массив, в который будут записываться зашифрованные данныеdestOffs - смещение в массиве-результате, с которого будет записываться
блок данныхsource - массив, из которого будут браться исходные данныеsourceOffs - смещение, с которого в массиве-источнике будут браться
данныеnumBlocks - число полных блоков для зашифрованияsynchro - буффер синхропоссылки или любого другого дополнительного
значения. Если дополнительные данные не нужны, следует передавать nulluz - узел заменjava.security.InvalidKeyException - ключ поврежденvoid decrypt(int mode,
byte[] dest,
int destOffs,
byte[] source,
int sourceOffs,
int numBlocks,
int[] synchro,
CryptParamsInterface uz)
throws java.security.InvalidKeyException
mode - режим, определяется реализациейdest - массив, в который будут записываться расшифрованные данныеdestOffs - смещение в массиве-результате, с которого будет записываться
блок данныхsource - массив, из которого будут браться исходные данныеsourceOffs - смещение, с которого в массиве-источнике будут браться
данныеnumBlocks - число полных блоков для расшифрованияsynchro - буффер синхропоссылки или любого другого дополнительного
значения. Если дополнительные данные не нужны, следует передавать nulluz - узел заменjava.security.InvalidKeyException - ключ поврежденbyte[] getIV()
void setIVLen(int ivLen)
byte[] wrap(SecretKeyInterface spec, int[] iv, CryptParamsInterface uz, boolean needDivers, boolean export12) throws java.security.InvalidKeyException
spec - ключ зашифрованияiv - синхропосылкаuz - узел шифрованияneedDivers - нужна ли диверсификацияexport12 - используется ли CALG_PRO12_EXPORTjava.security.InvalidKeyExceptionbyte[] wrap(SecretKeyInterface spec, byte[] iv, CryptParamsInterface uz) throws java.security.InvalidKeyException
spec - ключ зашифрованияiv - синхропосылкаuz - узел шифрованияjava.security.InvalidKeyExceptionSecretKeyInterface unwrap(byte[] wrappedKey, int[] iv, CryptParamsInterface uz, boolean needDivers, boolean export12) throws java.security.InvalidKeyException, java.security.KeyManagementException
wrappedKey - зашифрованный ключiv - синхропосылкаuz - узел расшифрованияneedDivers - нужна ли диверсификацияexport12 - используется ли CALG_PRO12_EXPORTjava.security.InvalidKeyExceptionjava.security.KeyManagementExceptionSecretKeyInterface unwrap(byte[] wrappedKey, java.lang.String wrappedKeyAlgorithm, byte[] ukm, CryptParamsInterface uz) throws java.security.InvalidKeyException, java.security.KeyManagementException
wrappedKey - зашифрованный ключukm - синхропосылкаuz - узел расшифрованияukm - ukmjava.security.InvalidKeyExceptionjava.security.KeyManagementExceptionvoid changeKey(CryptParamsInterface p) throws java.security.InvalidKeyException
java.security.InvalidKeyExceptionMasterKeyInterface preHashMaster(byte[] clientRandom, byte[] serverRandom, boolean isNewDigest_2012_256) throws java.security.InvalidKeyException, java.security.KeyManagementException
clientRandom - случайные данные клиентаserverRandom - случайные данные сервераisNewDigest_2012_256 - true, если используется алгоритм
хеширования ГОСТ 34.11-2012 (256)java.security.InvalidKeyExceptionjava.security.KeyManagementExceptionMasterKeyInterface preHashMaster(byte[] emsHash, boolean isNewDigest_2012_256) throws java.security.InvalidKeyException, java.security.KeyManagementException
emsHash - хэш данныхjava.security.InvalidKeyExceptionjava.security.KeyManagementExceptionvoid methodGOSTR3411PRF(byte[][] data,
byte[] digest,
boolean isNewDigest_2012_256)
throws java.security.InvalidKeyException
data - данные, от которых вычисляется PRFdigest - буфер для записи результатisNewDigest_2012_256 - true, если используется алгоритм
хеширования ГОСТ 34.11-2012 (256)java.security.InvalidKeyExceptionvoid diversKey(byte[] iv)
throws java.security.InvalidKeyException
iv - вектор синхропосылкиjava.security.InvalidKeyExceptionvoid diversKey2012(byte[] iv)
throws java.security.InvalidKeyException
iv - вектор синхропосылкиjava.security.InvalidKeyExceptionboolean updateTLSKey(long sequenceNumber,
int keyAlg)
throws java.security.InvalidKeyException
sequenceNumber - очередной номер рекордаkeyAlg - алгоритм выработки ключейjava.security.InvalidKeyExceptionSecretKeyInterface getWorkKey()