Имя: Пароль:
1C
1С v8
Удаление сертификата из двоичных данных
0 bvg
 
12.02.13
14:47
На почту приходит файл зархивированный, подписанный, зашифрованный.
Получаем файл из почты, расшифровываем , получаем сертификат из двоичных данных ... но распаковать не получается, так как двоичные данные архива содержат сертификат и метод ЧтениеZIP.ИзвлечьВсе(...) не отрабатывает, хотя WinRar спокойно распаковывает. Вопрос: как получить двоичные данные без сертификата?
1 bvg
 
12.02.13
15:04
может так понятнее будет:

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