Статус: Участник
Группы: Участники
Зарегистрирован: 02.08.2019(UTC) Сообщений: 22 Сказал «Спасибо»: 2 раз
|
Всем привет. Друзья, может кто поделится примером кода для расшифровки с помощью кадеса файла *.enc. Файл шиифровался на сервере при помощи открытого ключа *.cer. Теперь его нужно расшифровать.
Помогите кто чем может!
|
|
|
|
Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 24.11.2009(UTC) Сообщений: 965 Откуда: Crypto-Pro
Сказал(а) «Спасибо»: 3 раз Поблагодарили: 174 раз в 152 постах
|
CAdES это формат подписи, он не слабо связан с шифрованием. Можете уточнить откуда появилось требования "расшифровать через кадес"? |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 02.08.2019(UTC) Сообщений: 22 Сказал «Спасибо»: 2 раз
|
Имеется ввиду расшифровать с помощью кадес плагина на клиенте т.к. закрытый ключ хранится на клиенте.
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,685 Сказал «Спасибо»: 500 раз Поблагодарили: 2044 раз в 1585 постах
|
Автор: avilio Имеется ввиду расшифровать с помощью кадес плагина на клиенте т.к. закрытый ключ хранится на клиенте. Пример и страница для расшифрования: https://cryptexpert.ru/plugin/ Snimok ehkrana ot 2020-04-03 15-06-22.png (18kb) загружен 14 раз(а). |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 02.08.2019(UTC) Сообщений: 22 Сказал «Спасибо»: 2 раз
|
Автор: Андрей * Автор: avilio Имеется ввиду расшифровать с помощью кадес плагина на клиенте т.к. закрытый ключ хранится на клиенте. Пример и страница для расшифрования: https://cryptexpert.ru/plugin/ Snimok ehkrana ot 2020-04-03 15-06-22.png (18kb) загружен 14 раз(а). Расшифрование на сайте нерабочее. При любом файле зашифрованном пишет ошибку Failed Decrypt. Error: Встречено неверное значение тега ASN1. (0x8009310B) Может подскажете ещё примеров сайтов где есть расшифрование?
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 02.08.2019(UTC) Сообщений: 22 Сказал «Спасибо»: 2 раз
|
Вот рабочий код. Может кому пригодится. Код:
function decryptAsync(dataToDecrypt) {
return new Promise(function(resolve, reject) {
cadesplugin.async_spawn(function *(args) {
try {
const oEnvelopedData = yield cadesplugin.CreateObjectAsync("CAdESCOM.CPEnvelopedData");
yield oEnvelopedData.propset_ContentEncoding(cadesplugin.CADESCOM_BASE64_TO_BINARY);
yield oEnvelopedData.propset_Content(dataToDecrypt);
console.log('CONTENT ', oEnvelopedData.Content);
console.log('ENCODING ', oEnvelopedData.ContentEncoding);
oEnvelopedData.Decrypt(dataToDecrypt).then((result) => {
console.log('Result ', oEnvelopedData.Content);
});
args[1](oEnvelopedData.Content);
} catch (err) {
args[2]("Sign is not verify. Error: " + cadesplugin.getLastError(err));
}
}, dataToDecrypt, resolve, reject);
});
}
Отредактировано пользователем 3 апреля 2020 г. 15:22:12(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,685 Сказал «Спасибо»: 500 раз Поблагодарили: 2044 раз в 1585 постах
|
Автор: avilio Автор: Андрей * Автор: avilio Имеется ввиду расшифровать с помощью кадес плагина на клиенте т.к. закрытый ключ хранится на клиенте. Пример и страница для расшифрования: https://cryptexpert.ru/plugin/ Snimok ehkrana ot 2020-04-03 15-06-22.png (18kb) загружен 14 раз(а). Расшифрование на сайте нерабочее. При любом файле зашифрованном пишет ошибку Failed Decrypt. Error: Встречено неверное значение тега ASN1. (0x8009310B) Может подскажете ещё примеров сайтов где есть расшифрование? Файл в der нужно, не в base64 и прочее... |
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 12,685 Сказал «Спасибо»: 500 раз Поблагодарили: 2044 раз в 1585 постах
|
Автор: avilio Вот рабочий код. Может кому пригодится. Код:
function decryptAsync(dataToDecrypt) {
return new Promise(function(resolve, reject) {
cadesplugin.async_spawn(function *(args) {
try {
const oEnvelopedData = yield cadesplugin.CreateObjectAsync("CAdESCOM.CPEnvelopedData");
yield oEnvelopedData.propset_ContentEncoding(cadesplugin.CADESCOM_BASE64_TO_BINARY);
yield oEnvelopedData.propset_Content(dataToDecrypt);
console.log('CONTENT ', oEnvelopedData.Content);
console.log('ENCODING ', oEnvelopedData.ContentEncoding);
oEnvelopedData.Decrypt(dataToDecrypt).then((result) => {
console.log('Result ', oEnvelopedData.Content);
});
args[1](oEnvelopedData.Content);
} catch (err) {
args[2]("Sign is not verify. Error: " + cadesplugin.getLastError(err));
}
}, dataToDecrypt, resolve, reject);
});
}
args[2](" Sign is not verify. ? function DecryptEnvelopedBase64_Async(EnvelopedBase64) в https://cryptexpert.ru/plugin/js/async_code.js |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 02.08.2019(UTC) Сообщений: 22 Сказал «Спасибо»: 2 раз
|
Автор: Андрей * Автор: avilio Вот рабочий код. Может кому пригодится. Код:
function decryptAsync(dataToDecrypt) {
return new Promise(function(resolve, reject) {
cadesplugin.async_spawn(function *(args) {
try {
const oEnvelopedData = yield cadesplugin.CreateObjectAsync("CAdESCOM.CPEnvelopedData");
yield oEnvelopedData.propset_ContentEncoding(cadesplugin.CADESCOM_BASE64_TO_BINARY);
yield oEnvelopedData.propset_Content(dataToDecrypt);
console.log('CONTENT ', oEnvelopedData.Content);
console.log('ENCODING ', oEnvelopedData.ContentEncoding);
oEnvelopedData.Decrypt(dataToDecrypt).then((result) => {
console.log('Result ', oEnvelopedData.Content);
});
args[1](oEnvelopedData.Content);
} catch (err) {
args[2]("Sign is not verify. Error: " + cadesplugin.getLastError(err));
}
}, dataToDecrypt, resolve, reject);
});
}
args[2](" Sign is not verify. ? function DecryptEnvelopedBase64_Async(EnvelopedBase64) в https://cryptexpert.ru/plugin/js/async_code.js Столкнулся с тем что мой код и функция DecryptEnvelopedBase64_Async выдаёт ошибку на одном из зашифрованных файлов (размер 5 Мб.) В криптоАрм всё норм. Failed Decrypt. Error: Нехватка памяти для ASN1. (0x80093106) мой код Код:function decryptAsync(dataToDecrypt) {
return new Promise(function(resolve, reject) {
cadesplugin.async_spawn(function *(args) {
try {
const oEnvelopedData = yield cadesplugin.CreateObjectAsync("CAdESCOM.CPEnvelopedData");
yield oEnvelopedData.propset_ContentEncoding(cadesplugin.CADESCOM_BASE64_TO_BINARY);
yield oEnvelopedData.propset_Content(dataToDecrypt);
oEnvelopedData.Decrypt(dataToDecrypt).then((result) => {
}, (result) => { console.log(result); });
args[1](oEnvelopedData.Content);
} catch (err) {
args[2]("Async decrypt error: " + cadesplugin.getLastError(err));
}
}, dataToDecrypt, resolve, reject);
});
}
Подскажите как быть? Отредактировано пользователем 8 мая 2020 г. 16:29:12(UTC)
| Причина: Не указана
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close