Перейти к основному содержимому

IR.CreateEncryption()

Создать объект шифрования.

Синтаксис RSA: IR.CreateEncryption([encryption_type, key_size](#IR.CreateEncryption()))

IR.CreateEncryption([encryption_type, key, is_public](#IR.CreateEncryption()))

AES:

IR.CreateEncryption([encryption_type, AES_object](#IR.CreateEncryption()))

encryption_typeIR.ENCRYPTION_RSA, IR.ENCRYPTION_AEStype: ObjectТип шифрования.
key_size32(256 бит), 64(512 бит), 128(1024 бит), 256(2048 бит), 512(4096 бит)type: NumberРазмер ключа в байтах.
key"60,25,57,21,96,..."type: StringКлюч.
is_publictruetype: Boolean true - публичный ключ, false - приватный ключ.
AES_objectl_AESInit = "Vector": "56,2e,17, ...", "Key": "60,25,57, ..."type: ObjectДанные шифрования.
на выходе
Object[object EnctyptionPrototype]type: ObjectOбъект шифрования.

//////////////<translate><!--T:13-->
Объект шифрования AES</translate>////////////////
//CBC:
//<translate><!--T:14-->
Создание объекта с данными:</translate>
var l_AESInit = {
"Vector": "56,2e,17,99,6d,09,3d,28,dd,b3,ba,69,5a,2e,6f,58",
"Key": "60,25,57,21,96,98,cd,10,cd,0b,44,00,03,7f,ba,6f"
}
//<translate><!--T:15-->
Создание объекта шифрования:</translate>
var AES = IR.CreateEncryption(IR.ENCRYPTION_AES, l_AESInit);



//ECB:
//<translate><!--T:16-->
Создание объекта с данными:</translate>
var l_AESInit = {
"Key": "60,25,57,21,96,98,cd,10,cd,0b,44,00,03,7f,ba,6f",
"Type": 1 // 1 = ENCRYPTION_AES_ECB, 0 = ENCRYPTION_AES_CBC
}
//<translate><!--T:17-->
Создание объекта шифрования:</translate>
var AES = IR.CreateEncryption(IR.ENCRYPTION_AES, l_AESInit);


//////////////<translate><!--T:18-->
Объект шифрования RSA</translate>////////////////
//<translate><!--T:19-->
Создание объекта шифрования с ключом размером 128 байт:</translate>
var RSA_1 = IR.CreateEncryption(IR.ENCRYPTION_RSA, 128);


var public_key = RSA_1.GetPublicKey(); // <translate><!--T:20-->
получение публичного ключа</translate>
//<translate><!--T:21-->
Создание объекта шифрования с помощью публичного ключа:</translate>
var RSA_2 = IR.CreateEncryption(IR.ENCRYPTION_RSA, public_key, true);

.Encode()

Зашифровать строку или массив данных.

''' Синтаксис ''' IR.CreateEncryption(param).Encode(data, resultType, inputType)

data"3,0,0,0,0, ..."type: String / ArrayДанные для шифрования.
resultTypeIR.RESULT_TYPE_ARRAY, IR.RESULT_TYPE_BASE64_STRING*type: String / ArrayТип зашифрованного значения.
inputType**IR.INPUT_TYPE_BYTE_STRING, IR.INPUT_TYPE_BASE64_STRINGtype: StringТип параметра data.
на выходе
EncryptedData"246,75,186,52,183, ..."type: String / ArrayЗашифрованные данные.

// <translate><!--T:32-->
Кодировать данные с результатом base64</translate>
var encode_base64 = RSA_2.Encode(data, IR.RESULT_TYPE_BASE64_STRING);
IR.Log("BASE64 ENCODE: " + encode_base64);


  • Вы можете получить строку в формате в Base64, чтобы не потерять данные.
  • Действует только если data строка.

.Decode()

Расшифровать строку или массив данных.

''' Синтаксис ''' EncryptedData.Decode(data, resultType, inputType)

data"246,75,186,52,183, ..."type: String / ArrayЗашифрованные данные.
resultTypeIR.RESULT_TYPE_ARRAY, IR.RESULT_TYPE_STRING, IR.RESULT_TYPE_BASE64_STRING*type: String / ArrayТип расшифрованного значения.
inputType**IR.INPUT_TYPE_BYTE_STRING, IR.INPUT_TYPE_BASE64_STRINGtype: StringТип параметра data.
на выходе
DecryptedData"3,0,0,0,0, ..."type: String / ArrayРасшифрованные данные.

// <translate><!--T:45-->
Декодировать encode_base64 со строковым результатом:</translate>
var decode_string_1 = RSA_1.Decode(encode_base64, IR.RESULT_TYPE_STRING, IR.INPUT_TYPE_BASE64_STRING);
IR.Log("STRING DECODE_FROM_BASE64: " + decode_string_1);

  • Вы можете получить строку в формате в Base64, чтобы не потерять данные.
  • Действует только если data строка.

.GetPublicKey()

Получить публичный ключ.

Синтаксис

EncryptedData.GetPublicKey()
columncolumncolumn
на входезначениеописание
EncryptedData"246,75,186,52,183, ..."type: String
Зашифрованные данные. / Array
columncolumncolumn
на выходе
PublicKey"60,25,57,21,96,..."type: String
Публичный ключ.

Пример

//<translate> <!--T:52-->
Инициализация объекта шифрования:</translate>
var RSA_1 = IR.CreateEncryption(IR.ENCRYPTION_RSA, 128);
//<translate><!--T:53-->
Получение публичного ключа:</translate>
var public_key = RSA_1.GetPublicKey();
IR.Log("public key: " + public_key);

Примечания

Подсказка

Данный метод работает только с RSA шифрованием.