-
Notifications
You must be signed in to change notification settings - Fork 12
CipherKeyManager
Класс для организации хранилища ключей под используемый алгоритм шифрования.
- Поддерживаемые имена симметричного шифрования: 'des', 'des-ede', 'des-ede3'.
- Поддерживаемые имена асимметричного шифрования: 'aes'.
Название | Тип | Описание |
---|---|---|
getDesKey | DES_key_schedule | возвращает ключ шифрования для алгоритма DES |
getAesPubKey | AES_key | возвращает публичный ключ для алгоритма AES |
getAesPrivKey | AES_key | возвращает закрытый ключ для алгоритма AES |
getNumberKeys | number | возвращает кол-во ключей в хранилище |
Метод | Описание |
---|---|
generateDesKey | генерация ключа шифрования для алгоритма DES |
setDesKey | устанавливает ключ в хранилище для алгоритма DES |
setAesPubKey | устанавливает публичный ключ в хранилище для алгоритма AES |
setAesPrivKey | устанавливает закрытый ключ в хранилище для алгоритма AES |
clearCipherKeyManager | очистка хранилища ключей |
CipherKeyManager(сipherAlgName : string)
Конструктор класса для хранения ключей шифрования. В качестве параметра передается наименование алгоритма шифрования, например, 'des' или 'des-ede3'.
generateDesKey()
generateDesKey(numKey : number)
функция генерирует ключ для алгоритма DES (ключ имеет тип DES_key_schedule). В зависимости от используемого алгоритма хранилище может быть создано для одного или трех ключей. Функция generateDesKey() генерирует ключ и заполняет массив (заполнение осуществляется циклически с замещением). Параметр функции numKey позволяет указать номер ключа. При внесении ключа в keyManager осуществляется его проверка на битность.
###Пример использования:
var km = new СipherKeyManager('des-ede3')
km.generateDesKey(1)
km.generateDesKey(2)
km.generateDesKey(3)
getDesKey() : DES_key_schedule
getDesKey(numKey : number) : DES_key_schedule
функция возвращает ключ в виде структуры DES_key_schedule из хранилища ключей. При отсутствии параметра возвращается первый найденный ключ и -1 в случае пустого массива. При указании номера ключа возвращается ключ или -1, если он не был сгенерирован.
setDesKey(desKey : DES_key_schedule)
setDesKey(desKey : DES_key_schedule, numKey : number)
функция устанавливает ключ формата DES_key_schedule в хранилище.
getAesPubKey() : AES_Key
функция возвращает публичный ключ формата AES_Key из хранилища.
getAesPrivKey() : AES_Key
функция возвращает приватный ключ формата AES_Key из хранилища.
setAesPubKey(aesKey : AES_Key)
функция устанавливает публичный ключ формата AES_Key в хранилище.
setAesPrivKey(aesKey : AES_Key)
функция устанавливает приватный ключ формата AES_Key в хранилище.
getNumberKeys() : number
функция возвращает количество ключей из массива keyManager и 0 - в случае его пустоты.
clearCipherKeyManager()
функция выполняет очистку менеджера ключей.