Добрый день.
Подскажите примеры для JavaScript lkz cadesplugin_api.js - шифрования файла!
Не надо мне тыкать мол смотри в C# или в Microsoft мол как там и что куда передаётся.
Беру ваш пример и нифига не понимаю, что в функцию run() НАДО ПЕРЕДАТЬ!!! ЧТО БЫ ЗАРАБОТАЛО.
ДАЙТЕ РАБОЧИЙ ПРИМЕР ГОСПОДА... ИНАЧЕ СПРАВОЧНИК НИОЧЁМ.
(Все типы подписаний я уже сделал и всё работает на AJAX-PHP связке прекрасно как часы)
По ссылке:
https://docs.cryptopro.ru/cades/plugin/plugin-samples/plugin-samples-enveloped-dataВот код примера:
var CAPICOM_CURRENT_USER_STORE = 2;
var CAPICOM_MY_STORE = "My";
var CAPICOM_STORE_OPEN_MAXIMUM_ALLOWED = 2;
function run() {
// Задаем SubjectName для используемых сертификатов
var certSignatureSubjectName = "SignCert";
var certEncryptSubjectName = "EncryptCert";
var oStore = cadesplugin.CreateObject("CAdESCOM.Store");
oStore.Open(CAPICOM_CURRENT_USER_STORE, CAPICOM_MY_STORE, CAPICOM_STORE_OPEN_MAXIMUM_ALLOWED);
var oCertificates = oStore.Certificates.Find(CAPICOM_CERTIFICATE_FIND_SUBJECT_NAME, certSignatureSubjectName);
if (oCertificates.Count === 0) {
alert("Certificate not found: " + certSubjectName);
return;
}
var oCertSignature = oCertificates.Item(1);
oCertificates = oStore.Certificates.Find(CAPICOM_CERTIFICATE_FIND_SUBJECT_NAME, certEncryptSubjectName);
if (oCertificates.Count === 0) {
alert("Certificate not found: " + certSubjectName);
return;
}
var oCertEncrypt = oCertificates.Item(1);
oStore.Close();
// Задание свойства Content сбрасывает состояние объекта, поэтому сначала заполняем его
var oEnvelopedData = cadesplugin.CreateObject("CAdESCOM.CPEnvelopedData");
var expectedContent = "Message to encrypt с русскими буквами";
oEnvelopedData.Content = expectedContent;
oEnvelopedData.Recipients.Add(oCertSignature);
oEnvelopedData.Recipients.Add(oCertEncrypt);
var encMessage = oEnvelopedData.Encrypt(cadesplugin.CADESCOM_ENCODE_BASE64);
if ("" === encMessage) {
alert("oEnvelopedData.Encrypt failed");
}
// Проверяем, что полученное расшифрованное сообщение соответствует исходному
var oEnvelopedData2 = cadesplugin.CreateObject("CAdESCOM.CPEnvelopedData");
oEnvelopedData2.Decrypt(encMessage);
var content = oEnvelopedData2.Content;
if (expectedContent !== content) {
alert("oEnvelopedData.Decrypt failed");
}
}