Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

2 Страницы12>
Опции
К последнему сообщению К первому непрочитанному
Offline danolshev  
#1 Оставлено : 28 июня 2017 г. 11:53:42(UTC)
danolshev

Статус: Участник

Группы: Участники
Зарегистрирован: 02.06.2017(UTC)
Сообщений: 28
Российская Федерация
Откуда: Оренбург

Сказал(а) «Спасибо»: 5 раз
Я с помощью криптопро и браузер-плагина создаю подпись. Они у меня в Базе данных в разных полях лежат.
1. Возможно встроить подпись в файл, при этом сохранить его читабельность
2. Если да, то как то вашими средствами это возможно реализовать?
Offline Андрей Писарев  
#2 Оставлено : 28 июня 2017 г. 12:11:40(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 12,719
Мужчина
Российская Федерация

Сказал «Спасибо»: 500 раз
Поблагодарили: 2054 раз в 1594 постах
Здравствуйте.

Только такой вариант:
Необходимо проверять ЭП и извлекать подписанные данные из CMS и уже их показывать клиенту.

Либо использовать не "присоединенную ЭП" (контейнер, в котором исходные данные, подпись, сертификат и т.п.), а как написано в заголовке темы, для PDF\Microsoft Office
http://www.cryptopro.ru/products/dss-lite

Техническую поддержку оказываем тут
Наша база знаний
Offline danolshev  
#3 Оставлено : 28 июня 2017 г. 12:57:08(UTC)
danolshev

Статус: Участник

Группы: Участники
Зарегистрирован: 02.06.2017(UTC)
Сообщений: 28
Российская Федерация
Откуда: Оренбург

Сказал(а) «Спасибо»: 5 раз
Автор: Андрей * Перейти к цитате
Здравствуйте.

Только такой вариант:
Необходимо проверять ЭП и извлекать подписанные данные из CMS и уже их показывать клиенту.

Либо использовать не "присоединенную ЭП" (контейнер, в котором исходные данные, подпись, сертификат и т.п.), а как написано в заголовке темы, для PDF\Microsoft Office
http://www.cryptopro.ru/products/dss-lite



А подпись сформированную через браузер плагин можно проверить в суде? В любой программе проверки подписи.
Просто заказчика не устраивает, что подпись и файл не в одном файле
Offline Андрей Писарев  
#4 Оставлено : 28 июня 2017 г. 13:04:32(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 12,719
Мужчина
Российская Федерация

Сказал «Спасибо»: 500 раз
Поблагодарили: 2054 раз в 1594 постах
http://www.garant.ru/pro.../ipo/prime/doc/71451710/

Приказом Председателя Верховного Суда РФ от 29 ноября 2016 года № 46-П утвержден
«Порядок подачи в Верховный Суд Российской Федерации документов в электронном виде, в том числе в форме электронного документа».

Электронная подпись должна содержаться в отдельном файле (отсоединенная ЭП). При подписании документа несколькими лицами каждая электронная подпись должна содержаться в отдельном файле.
Техническую поддержку оказываем тут
Наша база знаний
thanks 1 пользователь поблагодарил Андрей * за этот пост.
danolshev оставлено 28.06.2017(UTC)
Offline danolshev  
#5 Оставлено : 28 июня 2017 г. 13:25:55(UTC)
danolshev

Статус: Участник

Группы: Участники
Зарегистрирован: 02.06.2017(UTC)
Сообщений: 28
Российская Федерация
Откуда: Оренбург

Сказал(а) «Спасибо»: 5 раз
Автор: Андрей * Перейти к цитате
http://www.garant.ru/products/ipo/prime/doc/71451710/

Приказом Председателя Верховного Суда РФ от 29 ноября 2016 года № 46-П утвержден
«Порядок подачи в Верховный Суд Российской Федерации документов в электронном виде, в том числе в форме электронного документа».

Электронная подпись должна содержаться в отдельном файле (отсоединенная ЭП). При подписании документа несколькими лицами каждая электронная подпись должна содержаться в отдельном файле.


Это понял, спасибо.

Еще вопрос у вас на сайте написано
http://joxi.ru/eAOEPyocyBZGmo

т.е. я могу и прикрепленную(если я правильно понял она встроена в файл) и отдельную(а это хеш на основе содержания файла и сертификата) создать подпись.

При создании прикрепленной подписи к файлу просто "прицепляется" подпись и файл просто можно открывать только для чтения, так?

Отредактировано пользователем 28 июня 2017 г. 13:29:03(UTC)  | Причина: Не указана

Offline Андрей Писарев  
#6 Оставлено : 28 июня 2017 г. 13:29:17(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 12,719
Мужчина
Российская Федерация

Сказал «Спасибо»: 500 раз
Поблагодарили: 2054 раз в 1594 постах
Автор: danolshev Перейти к цитате
Автор: Андрей * Перейти к цитате
http://www.garant.ru/products/ipo/prime/doc/71451710/

Приказом Председателя Верховного Суда РФ от 29 ноября 2016 года № 46-П утвержден
«Порядок подачи в Верховный Суд Российской Федерации документов в электронном виде, в том числе в форме электронного документа».

Электронная подпись должна содержаться в отдельном файле (отсоединенная ЭП). При подписании документа несколькими лицами каждая электронная подпись должна содержаться в отдельном файле.


Это понял, спасибо.

Еще вопрос у вас на сайте написано
http://joxi.ru/eAOEPyocyBZGmo

т.е. я могу и прикрепленную(если я правильно понял она встроена в файл) и отдельную(а это хеш на основе содержания файла и сертификата) создать подпись.


У Заказчика спросите, что он желает в итоге + этот Приказ.

Плагин умеет создавать оба варианта.
Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#7 Оставлено : 28 июня 2017 г. 13:32:54(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 12,719
Мужчина
Российская Федерация

Сказал «Спасибо»: 500 раз
Поблагодарили: 2054 раз в 1594 постах
Автор: danolshev Перейти к цитате

При создании прикрепленной подписи к файлу просто "прицепляется" подпись и файл просто можно открывать только для чтения, так?


Зависит от формата файла. Текстовый (txt\xml) - можно увидеть содержимое внутри, но редактировать\пересохранять в текстовом редакторе нельзя.

На выходе - CMS - это контейнер с закодированными данными.

Вы же Zip-файлы не смотрите в блокноте?
Техническую поддержку оказываем тут
Наша база знаний
Offline danolshev  
#8 Оставлено : 28 июня 2017 г. 13:43:10(UTC)
danolshev

Статус: Участник

Группы: Участники
Зарегистрирован: 02.06.2017(UTC)
Сообщений: 28
Российская Федерация
Откуда: Оренбург

Сказал(а) «Спасибо»: 5 раз
Автор: Андрей * Перейти к цитате
Плагин умеет создавать оба варианта.


Я создаю подпись с помощью SignCadesBES_Async_File(). На выходе получаю подпись.
А как мне встроенную подпись получить? Или встроить ее в файл?
Код:

cadesplugin.async_spawn(function*(arg) {
        var e = document.getElementById(arg[0]);
        var selectedCertID = e.selectedIndex;
        if (selectedCertID == -1) {
            alert("Выберите сертификат");
            return false;
        }
        var thumbprint = e.options[selectedCertID].value.split(" ").reverse().join("").replace(/\s/g, "").toUpperCase();
        try {
            var oStore = yield cadesplugin.CreateObjectAsync("CAdESCOM.Store");
            yield oStore.Open();
        } catch (err) {
            alert('Failed to create CAdESCOM.Store: ' + err.number);
            return false;
        }
        var CAPICOM_CERTIFICATE_FIND_SHA1_HASH = 0;
        var all_certs = yield oStore.Certificates;
        var oCerts = yield all_certs.Find(CAPICOM_CERTIFICATE_FIND_SHA1_HASH, thumbprint);

        if ((yield oCerts.Count) == 0) {
            alert("Certificate not found");
            return false;
        }
        var certificate = yield oCerts.Item(1);

        var SignatureFieldTitle = document.getElementsByName("SignatureTitle");
        var Signature;
        try
        {
            var certBoxId = undefined;
            FillCertInfo_Async(certificate, certBoxId, fileIdInDb);
            var errormes = "";
            try {

                var oSigner = yield cadesplugin.CreateObjectAsync("CAdESCOM.CPSigner");
            } catch (err) {
                errormes = "Failed to create CAdESCOM.CPSigner: " + err.number;
                throw errormes;
            }

            var oSigningTimeAttr = yield cadesplugin.CreateObjectAsync("CADESCOM.CPAttribute");

            var CAPICOM_AUTHENTICATED_ATTRIBUTE_SIGNING_TIME = 0;
            yield oSigningTimeAttr.propset_Name(CAPICOM_AUTHENTICATED_ATTRIBUTE_SIGNING_TIME);
            var oTimeNow = new Date();
            yield oSigningTimeAttr.propset_Value(oTimeNow);
            var attr = yield oSigner.AuthenticatedAttributes2;
            yield attr.Add(oSigningTimeAttr);


            var oDocumentNameAttr = yield cadesplugin.CreateObjectAsync("CADESCOM.CPAttribute");
            var CADESCOM_AUTHENTICATED_ATTRIBUTE_DOCUMENT_NAME = 1;
            yield oDocumentNameAttr.propset_Name(CADESCOM_AUTHENTICATED_ATTRIBUTE_DOCUMENT_NAME);
            yield oDocumentNameAttr.propset_Value("Document Name");
            yield attr.Add(oDocumentNameAttr);

            if (oSigner) {
                yield oSigner.propset_Certificate(certificate);
            }
            else {
                errormes = "Failed to create CAdESCOM.CPSigner";
                throw errormes;
            }

            var oSignedData = yield cadesplugin.CreateObjectAsync("CAdESCOM.CadesSignedData");
            var CADES_BES = 1;

            var dataToSign = fileContent; // fileContent - объявлен в Code.js
            if (dataToSign) {
                // Данные на подпись ввели
                yield oSignedData.propset_ContentEncoding(1); //CADESCOM_BASE64_TO_BINARY
                yield oSignedData.propset_Content(dataToSign);
                yield oSigner.propset_Options(1); //CAPICOM_CERTIFICATE_INCLUDE_WHOLE_CHAIN
                try {
                    var StartTime = Date.now();
                    Signature = yield oSignedData.SignCades(oSigner, CADES_BES);
                    var EndTime = Date.now();
                    document.getElementsByName('TimeTitle')[0].innerHTML = "Время выполнения: " + (EndTime - StartTime) + " мс";
                }
                catch (err) {
                    errormes = "Не удалось создать подпись из-за ошибки: " + cadesplugin.getLastError(err);
                    throw errormes;
                }
            }

            // document.getElementById("SignatureTxtBox").innerHTML = Signature;
            SignatureFieldTitle[0].innerHTML = "Подпись сформирована 
            return Signature;
        }
        catch(err)
        {
            SignatureFieldTitle[0].innerHTML = "Возникла ошибка:";
            document.getElementById("SignatureTxtBox").innerHTML = err;
        }
    }, certListBoxId); //cadesplugin.async_spawn
    }

Отредактировано пользователем 28 июня 2017 г. 13:56:58(UTC)  | Причина: Не указана

Offline Андрей Писарев  
#9 Оставлено : 28 июня 2017 г. 14:03:30(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 12,719
Мужчина
Российская Федерация

Сказал «Спасибо»: 500 раз
Поблагодарили: 2054 раз в 1594 постах
Цитата:
oSignedData.SignCades(oSigner, CADES_BES);


Интерфейс ICPSignedData2
SignCades
Добавляет к сообщению усовершенствованную подпись.

Цитата:
[Signer As Variant], _
[CadesType As CADESCOM_CADES_TYPE], _
[bDetached As Boolean], _
[EncodingType As CAPICOM_ENCODING_TYPE]


bDetached
Вид подписи: отделенная (true) или совмещенная (false). По умолчанию совмещенная.
Техническую поддержку оказываем тут
Наша база знаний
Offline danolshev  
#10 Оставлено : 28 июня 2017 г. 14:13:54(UTC)
danolshev

Статус: Участник

Группы: Участники
Зарегистрирован: 02.06.2017(UTC)
Сообщений: 28
Российская Федерация
Откуда: Оренбург

Сказал(а) «Спасибо»: 5 раз
Автор: Андрей * Перейти к цитате
Цитата:
oSignedData.SignCades(oSigner, CADES_BES);


Интерфейс ICPSignedData2
SignCades
Добавляет к сообщению усовершенствованную подпись.

Цитата:
[Signer As Variant], _
[CadesType As CADESCOM_CADES_TYPE], _
[bDetached As Boolean], _
[EncodingType As CAPICOM_ENCODING_TYPE]


bDetached
Вид подписи: отделенная (true) или совмещенная (false). По умолчанию совмещенная.

CADESCOM_CADES_TYPE вот сюда добавить? Счас у меня получается совмещенная??? Т.е. к файлу добавляется подпись?
http://joxi.ru/Q2KgPXoIzB8y2j
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
2 Страницы12>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.