0
bvg
12.02.13
✎
14:47
|
На почту приходит файл зархивированный, подписанный, зашифрованный.
Получаем файл из почты, расшифровываем , получаем сертификат из двоичных данных ... но распаковать не получается, так как двоичные данные архива содержат сертификат и метод ЧтениеZIP.ИзвлечьВсе(...) не отрабатывает, хотя WinRar спокойно распаковывает. Вопрос: как получить двоичные данные без сертификата?
|
|
1
bvg
12.02.13
✎
15:04
|
может так понятнее будет:
Для каждого Вложение Из Сообщение.Вложения Цикл
Если ТипЗнч(Вложение.Данные) <> Тип("ДвоичныеДанные") Тогда
Продолжить;
КонецЕсли;
ВременныйКаталог = КаталогВременныхФайлов();
ИмяФайла = Вложение.ИмяФайла;
ПолныйПутьКФайлу = ПолучитьИмяВременногоФайла(".zip");
ТекДанные = РасшифрованныеДанные(Вложение.Данные, пароль);
ТекДанные.Записать(ПолныйПутьКФайлу);
СертификатыПодписи = МенеджерКриптографии.ПолучитьСертификатыИзПодписи(ТекДанные);
Если СертификатыПодписи.Количество()<>0 тогда
//ПроверитьПодпись(МенеджерКриптографии,ТекДанные,СертификатыПодписи[0])
КонецЕсли;
ЧтениеZIP = Новый ЧтениеZipФайла(ПолныйПутьКФайлу);
ЧтениеZIP.ИзвлечьВсе(ВременныйКаталог,
РежимВосстановленияПутейФайловZIP.НеВосстанавливать);
ЧтениеZIP.Закрыть();
КонецЦикла;
|
|