Цифровая подпись Cades-BES для XML средствами 1С с помощью КриптоПро

Публикация № 1058940

Разработка - Защита и шифрование

Обработка цифровая подпись ЭЦП КриптоПро CadesBES ГИС ЖКХ XML

Обработка иллюстрирует возможность подписания XML SOAP-конверта по стандарту Cades-BES средствами 1С с помощью внешней компоненты КриптоПРО "CAdESCOM" с учетом ГОСТ 2001 и ГОСТ 2012. Стандарт используется в различных механизмах государственных сайтов России, в том числе в СМЭВ и ГИС ЖКХ. Код не привязан к прикладному решению может быть встроен куда угодно, но только на платформе Windows.

Для работы с ГИС ЖКХ из 1С через API понадобилось выполнять цифровую подпись. Поначалу использовался OpenSSL + Python вот отсюда. Там сама подпись и контрольные суммы генерируются с помощью OpenSSL, а скрипт вставляет в исходный XML необходимые узлы.

Во-первых, все это работает через консоль, что не очень быстро. Во-вторых, OpenSSL принимает закрытый ключ в открытом PEM формате, что само по себе безобразие. В-третьих, с переходом на ГОСТ 2012 все это стало невозможно, поскольку инструментов извлечения закрытого ключа в формате PEM из сертификата, выполненного по ГОСТ 2012 не нашлось.

Штатный менеджер криптографии 1С помочь не может, так как подписывать XML не умеет, может только вернуть подпись для потока данных в формате CMS (базируется на PKCS#7), а необходима только сигнатура, длиной в 64 байта.

В итоге пришлось написать обработку, которая выполняет то же самое, что выполнял скрипт на Python.

Обработка подписывает стандартный SOAP-конверт <envelope>, для примера в ней есть тестовый запрос. Разумеется, для подписи в системе должен стоять КриптоПро, к нему должен быть подцеплен сертификат. Пробную версию КриптоПро можно скачать и установить бесплатно на официальном сайте. Тестовый сертификат можно выпустить там же, в тестовом удостоверяющем центре.

Для получения сигнатуры и хеша используется COM-объект "CAdESCOM", поставляемый вместе с КриптоПро. Менеджер криптографии 1С используется для получения данных сертификата - издателя и открытого ключа. Можно было бы обойтись без него, но с ним удобнее. Кроме того, используется COM-объект "System.Text.UTF8Encoding" для конвертации строки в массив байт COMSafeArray в кодировке UTF8. К сожалению, на выходе у XML полностью теряется форматирование. Избежать этого не получилось, так как оно уничтожается при каноникализации средствами 1С. Обратно возвращать форматирование уже нельзя, подпись становится невалидной.

Методика не привязана к конкретному прикладному решению и работает как на сервере, так и на клиенте. Тестировалось на релизе 8.3.13.1513. На более ранних будет работать вплоть до релиза, где есть МенеджерКриптографии, ДокументDOM, ДвоичныеДанные, ПреобразованиеККаноническомуXML и функции для работы с Base64.

P.S. Буду очень благодарен, если кто-нибудь сможет ответить на пару вопросов:

1. Так как используется COM, работать все это будет только на Windows. Если конвертацию в UTF8 можно переписать на 1С, то аналога CAdESCOM в Linux нет и не будет. Может, кто знает, как можно получить хеш и сигнатуру из КриптоПро в консоли на Linux.

2. Элемент подписи создается с помощью ДокументDOM фактически вручную, то есть поэтапным созданием каждого узла. Дописать в ДокументDOM кусок получилось из объекта ФабрикаXDTO, но началась путаница с пространствами имен и каноникализацией. Возможно, все-таки перепишу с использованием фабрики и макета. А вот вставить в один ДокументDOM кусок другого ДокументDOM, созданного из макета, у меня не получилось, хотя в СП такая возможность вроде как декларируется. Если кто подскажет, как - скажу спасибо.

P.P.S. Не на тему ЭЦП, но около. Если кто-нибудь озадачится вопросом создания туннеля по стандарту ГОСТ 2012, как этого требует ГИС ЖКХ и не только он, при наличии КриптоПро с этим отлично справляется их форк STunnel - stunnel-msspi. В него уже встроены необходимые алгоритмы, при этом нет необходимости вытаскивать ключ из КриптоПро и хранить его в открытом виде, как требуется в случае использования оригинального STunnel. Достаточно только указать открытый ключ сертификата или имя хранилища в КриптоПро.

Скачать файлы

Наименование Файл Версия Размер
Цифровая подпись Cades-BES для XML средствами 1С с помощью КриптоПро:
.epf 14,63Kb
10.05.19
36
.epf 14,63Kb 36 Скачать

Специальные предложения

Вознаграждение за ответ
Показать полностью
Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. akela2014 5 15.05.19 09:12 Сейчас в теме
"Если кто-нибудь озадачится вопросом создания туннеля по стандарту ГОСТ 2012, как этого требует ГИС ЖКХ"©
Интеграция в ГИС ЖКХ работает только с ГОСТ 2001 и неизвестно когда у них ГОСТ 2012 будет.
2. akela2014 5 15.05.19 14:05 Сейчас в теме
"поскольку инструментов извлечения закрытого ключа в формате PEM из сертификата, выполненного по ГОСТ 2012 не нашлось."
Есть такие
http://www.lissi.ru/ls_product/utils/p12fromcsp/
5. PythonJ 91 20.05.19 08:21 Сейчас в теме
(2) Из ГОСТ 2001 доставал PEM именно этой утилитой. На просторах Интернета нашлась. Но с ГОСТ 2012 не справилась. Можно, конечно, купить последнюю версию, но хранить ключ в PEM - по определению небезопасно. Да и зоопарк устраивать нет желания. OpenSSL из коробки ГОСТ 2012 не умеет. Надо собирать руками. STunnel - аналогично. Скрипт на Python работает с временными файлами, что само по себе не быстро. Кстати, не думаю, что в корпоративной среде допустимо использовать такие кулибинские методы для работы с криптографией.
Проще и логичнее купить КриптоПро и решить все проблемы разом.
Жалко вот, что подписывать получается только под Windows.
24. VVi3ard 49 09.08.19 12:50 Сейчас в теме
(5) Из моей практики для целей криптографии намного проще и эффективнее поставить рядом с Linux небольшую машину на Windows и опубликовать на ней http сервис прокси который будет подписывать данные.

По работе с криптографией в линукс (уточню что с российской криптографией) информации не так и много.
Если же говорить о инструментах самой КриптоПро то они только в консольном виде доступны, а при больших нагрузках это не так удобно.

Если вы прям очень очень хотите на Линукс, то готового решения у меня нет, но частично информация есть тут:
https://habr.com/ru/post/282225/

Если это не для себя а для работы то я предпочел бы использовать mainstream инструменты с гарантированной поддержкой и стабильной работой.

Но за статью огромное спасибо, еще в 2016 пытался сделать все что вы описали, но в итоге так и не смог штатными средствами получить XMLDSIG. А потом вопрос отпал и дальше копать не стал, но вообще уже на тот момент были мысли не мучать 1С а использовать прокси http сервис на C#
25. PythonJ 91 12.08.19 21:44 Сейчас в теме
(24) О да, если бы не получилось сделать в 1С - рядом бы прокси повесил, но это был последний вариант. Планируется перевод сервера на Linux - соответственно опять же, если не получится - будет рядом висеть виртуалка с Windows.
Возможно в 2016 году в 1С это и не получилось бы. Не уверен, что все используемые объекты уже были и работали правильно. Не помню, с каких релизов стали поддерживать каноникализацию в более-менее разумных реализациях. Да и то что сейчас поддерживается - не все, что надо. Руками пришлось поправлять пространства имен.
Статью на хабре эту уже вдоль и поперек прочитал, когда хотел без криптопро обойтись. Но это будет как раз "для себя" а не "для работы". Даже если сделать собственную реализацию, пользоваться ей в рабочих процессах не очень законно, как минимум. Вариант с КриптоПро предпочтительнее.
Насчет "очень хочется на Линукс", скажем так, учитывая что 1С медленно но верно ползет к кросс-платформенности, меня сразу коробит от конструкции "Новый COMОбъект", когда нет даже приблизительных вариантов то же самое сделать без COM. То есть с КриптоПро, но без COM. А руками лезть в криптографию... Интересно, но бессмысленно с практической точки зрения.
3. akela2014 5 16.05.19 14:12 Сейчас в теме
Неожиданный ответ от поддержки ГИС ЖКХ получили )))
ТО есть они уже сделали но как нам сделать не сказали)))

"Поддержка стандарта усиленной квалифицированной электронной подписи ГОСТ Р 34.10-2012 «Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи» для организации шифрованного канала передачи данных при интеграционном взаимодействии, а также для подписания интеграционных пакетов в информационной системе жилищно-коммунального хозяйства (далее - система) осуществляется с версии системы 12.2.2.15.

Поддержка ГОСТ Р 34.10-2001 в системе будет осуществляться до 31.12.2019.

Дополнительно сообщаем, что в ближайшей версии системы в документации «Альбом ТФФ» будет добавлен пример запроса, подписанного с использованием сертификата с ГОСТ 34.10-2012 в пункт "2.2 Процедуры приема и передачи информации через SOAP веб-сервисы."."©
4. PythonJ 91 20.05.19 08:15 Сейчас в теме
(3) Конечно уже работает. В районе января-февраля пробовал, тогда еще не работала. Узнал, что ГОСТ 2001 будет работать до конца года и махнул на это дело рукой. А вот недавно, в апреле 2019 одна из контор, с которой я работаю, перевыпустила сертификат. Выдали уже только один сертификат по ГОСТ 2012. В конце 2018 года выдавали сразу два по двум стандартам. Самое интересно, что в тот момент, когда выпустили новый сертификат, предыдущий по ГОСТ 2001 тут же оказался отозванным, хотя срок его действия на тот момент еще не истек. Пришлось в срочном порядке разбираться с ГОСТ 2012 и выяснилось, что ГИС ЖКХ тихой сапой уже включили его поддержку.
Кстати, нам ответ прислали один в один такой же.
6. PythonJ 91 20.05.19 09:09 Сейчас в теме
Отвечу себе сам на вопрос по поводу COM и Windows.
Все то, что сейчас выполняется средствами CadesCOM, можно выполнить консольными командами с помощью утилит cryptcp и csptest, которые будут работать не только в Windows. Cryptcp позволяет получить хеш-суммы и открепленную подпись. А с помощью csptest можно выдернуть из подписи сигнатуру в 64 байта.
Ложка дегтя - в процессе одной подписи будут неоднократно использоваться временные файлы. Если количество сообщений ощутимое, из соображений быстродействия стоит создать RAM-диск маленького размера для этих файлов.
Как только реализую подпись без COM-объектов - выложу. Заодно сравню скорость.
7. ЕлыПалы 27.05.19 08:53 Сейчас в теме
Добрый день! Скачали Вашу разработку "Цифровая подпись Cades-BES для XML средствами 1С с помощью КриптоПро" для подписи файлов для ГИС ЖКХ и сразу столкнулись с трудностями. При нажатии кнопки "Выбрать сертификат" и ответа на вопрос, что сертификат подписи находится на клиенте выдается ошибка "Возможно не установлен КРИПТО-ПРО или используется операционная система, отличная от Microsoft Windows". Хотя на компьютере установлена последняя версия 4.0.9944 (так утверждает админ, который сейчас находится в отпуске :) Подскажите, что делать?
8. ЕлыПалы 27.05.19 08:54 Сейчас в теме
Какая-то мистика происходит. Компоненту установил, но результат тот же. Версия 1С:Предприятие 8.3 (8.3.12.1714). Попробовал подключить компоненту через 8.2. Работает. COM-объект успешно подключается. Сертификаты все отображаются в списке выбора. Подписать пока не получается в 8.2 по уже другим и понятным причинам.
9. ЕлыПалы 27.05.19 08:54 Сейчас в теме
Вот что выдает ОписаниеОшибки(): {ВнешняяОбработка.Подписать.Форма.Форма.Форма(41)}: Ошибка при вызове конструктора (COMОбъект): -2147221005(0x800401F3): Недопустимая строка с указанием класса
10. ЕлыПалы 27.05.19 08:55 Сейчас в теме
Есть подозрение, что причиной ошибки является то, что КриптоПро стоит на одном компьютере, а 1С стоит на другом сервере ...
11. ЕлыПалы 27.05.19 09:05 Сейчас в теме
Попробовал установить в качестве эксперимента на компьютере где стоит КриптоПро файловую 1С и подписать сообщение. Все заработало
12. PythonJ 91 27.05.19 10:08 Сейчас в теме
КриптоПро и компонента CADeSCOM должны стоять на той машине, на которой осуществляется подпись. Если подпись выполняется на клиенте, то все это должно стоять на том компьютере, с которого запускается клиент. То есть на том, за которым вы открыли 1С. Сертификат в КриптоПро должен быть прицеплен к вашей учетной записи за этим ПК. Если подпись выполняется на сервере - ситуация совершенно иная.
1. Сервер 1С должен работать под управлением MS Windows, так как если сервер работает под Linux, то о CADeSCOM можно забыть. COM-объектов там нету.
2. КриптоПро и CADeSCOM должны стоять на сервере 1С. Обратите внимание, серверные версии КриптоПро, то есть которые можно поставить на Windows Server, стоят совершенно других денег. Если лицензия на обычный КриптоПро стоит порядка 2000 - 3000 руб, то серверная, насколько я помню, больше 40000.
3. Cертификат должен быть прицеплен к КриптоПро на сервере к пользователю, под которым работает служба сервера 1С. Как правило USR1CV8. Тут возникает две проблемы. Во-первых, чтобы это сделать, нужно либо вручную править ветку реестра этого пользователя, либо временно дать ему право интерактивного входа в систему, зайти под ним и добавить сертификат. Вторая проблема хуже. Подобное решение - очень серьезная дыра в безопасности. Фактически, доступ к сертификату имеет любой пользователь, вошедший в 1С. Тут можно всякого разного придумать - защитить сертификат PIN-кодом, запретить выполнение обработок и т.д.
В обработке я не ставил своей задачей грамотно решить вопрос безопасности в случае, когда подпись происходит на сервере.
13. ЕлыПалы 04.06.19 12:24 Сейчас в теме
Дмитрий, добрый день! На все запросы getStateRequest возвращает одну и ту же ошибку AUT011005 "Ошибка формата подписи запроса". Проверка этих запросов в SoapUI на валидность проходит на ура. Никаких претензий к запросам нет. Вы не сталкивались с такой проблемой?
14. ЕлыПалы 04.06.19 14:51 Сейчас в теме
Вот что на это отвечает служба поддержки ГИС ЖКХ:
На текущий момент в приложенном Вами запросе возникает ошибка "AUT011005 Ошибка формата подписи запроса", которая отображается в связи с некорректной подписью запроса. В частности возникает проблема при обработке группы тегов xades:SigningCertificate.
Во вложении предоставлен пример структуры электронного сообщения, подписанного по ГОСТ Р 34.11-2012/34.10-2012
Прикрепленные файлы:
пример 2012.xml
15. PythonJ 91 18.06.19 19:18 Сейчас в теме
(14)
Если один и тот же запрос при отправке из SoapUI отправляет корректно, а при отправке из 1С не работает, могу только предположить, что с запросом еще что-то происходит перед отправкой из 1С. Дело в том, что после подписи в теле запроса нельзя менять ни одного байта - подпись сразу станет невалидной. Даже перенос строки убрать/добавить нельзя. В настоящее время у меня работает отправка из 1С по ГОСТ 2012 без проблем. Нужно смотреть на код. Если хотите - сделайте демо-процедуру с подписью и отправкой с обращением, например, к nsi-common и пришлите.
16. PythonJ 91 18.06.19 21:25 Сейчас в теме
(14)
Посмотрел внимательно на пример от СП ГИС ЖКХ. Странное дело. По логике вещей, моя обработка не должна бы работать, потому что кроме дайджеста самой подписи все хеширование выполняется старым алгоритмом ГОСТ 2001. Но тем не менее, у меня обмен работает. Видимо, перестанет после окончания поддержки в 2020 году. Поправлю обработку и сделаю все дайджесты одинаковыми. Спасибо за наводку.
17. ЕлыПалы 20.06.19 11:19 Сейчас в теме
Очередной ответ СП ГИС ЖКХ:

Ошибка "AUT011005 Ошибка формата подписи запроса", при выполнении запроса, отобразилась в связи с некорректной подписью запроса. В частности возникает проблема при обработке группы тегов xades:SigningCertificate. Также просьба убедиться, что текст запроса не был изменён после его подписания. Для успешной отправки запроса не рекомендуется вносить изменения в подписанный запрос.

Также для успешного выполнения запросов необходимо указать заголовок X-Client-Cert-Fingerprint актуального сертификата, которым и подписывается запрос.

Подскажите, пожалуйста, в каком формате или кодировке этот отпечаток указывать в заголовке?
18. ЕлыПалы 20.06.19 11:51 Сейчас в теме
Хотя в документации написано следующее:
"В случае установления нешифрованного соединения является обязательным добавление дополнительного http-заголовка X-Client-Cert-Fingerprint при отправке запроса на сервер. В качестве значения для данного заголовка необходимо указать отпечаток сертификата (в формате – без пробелов, например, 78302e3e47a4b7f5aac2f53bbcceb33bd12cbd16), который был указан в заявке на регистрацию ИС."
Причем здесь это, если канал шифрованный?...
19. ЕлыПалы 21.06.19 16:23 Сейчас в теме
Отослал в ГИС примеры запросов. Пришел ответ:


Данная ошибка возникает в результате того, что подпись запроса вычислена некорректна: неверно рассчитано значение "DigestValue" в группе тегов "SigningCertificate".

Напоминаем, что подпись запроса осуществляется на стороне приложения, при помощи которого осуществляется интеграционное взаимодействие с Системой. Приложенные к письму тексты запроса явно указывают на то, что для одного метода алгоритм подписания не реализован или не используется. Рекомендуем Вам ознакомиться с документацией «Демо-приложение по формированию и отправке запросов в ГИС ЖКХ на .NET» (Открытая часть Системы, раздел «Регламенты и инструкции»). В тексте документации содержится ссылка на исходный код утилиты для подписания xml файлов и soap запросов с применением алгоритмов ГОСТ, пример использования приложения и параметры конфигурации.
20. PythonJ 91 26.06.19 20:24 Сейчас в теме
Для работы с ГИС ЖКХ перед подписью необходимо проверить корректность исходного XML. Он должен быть канонизирован с исключающей каноникализацией. В обработке предполагается, что XML уже корректен. Если он создается с помощью XDTO, так оно и будет. Но если собирается "руками", то перед подписью нужно преобразовать его к каноническому виду. Иначе DigestValue получится некорректный.
21. user1029657 24.07.19 08:53 Сейчас в теме
в итоге получается ли подписывать 12 гостом?
22. PythonJ 91 24.07.19 08:54 Сейчас в теме
(21) Да. У вас не получилось?
user1029657; +1 Ответить
23. user1029657 24.07.19 08:56 Сейчас в теме
мне походу не то скачали((просил вашу обработку
26. Vyacheslav56 13 08.11.19 17:17 Сейчас в теме
скачал обработку, в моем сертификате нет Сертификат.Издатель.OU,но на ГИС заходит, не знаете почему?
27. PythonJ 91 09.11.19 03:36 Сейчас в теме
(26) В каком смысле "заходит"?
Если я правильно понимаю, есть официальный сертификат без OU, и с ним можно авторизоваться в ЕСИА. Так?
Но подписать запрос обработкой при этом не получается.
Так? Странно.
Не знаю, насколько там обязателен OU.
Можете прислать открытую часть сертификата?
28. veritasuna12 3 02.05.20 14:54 Сейчас в теме
Подскажите почему так?
Прикрепленные файлы:
29. PythonJ 91 02.05.20 14:58 Сейчас в теме
(28)
Такая картина будет если в оснастке "Сертификаты" сертификат присутствует, но КриптоПро не отдает приватный ключ. Либо его нету, либо защищен паролем, затрудняюсь сказать, что именно происходит. Обратите внимание, что приватный ключ должен быть доступен для того пользователя, от имени которого выполняется процесс подписи. Если на сервере, то для пользователя от имени которого запущен сервер 1С.
30. veritasuna12 3 02.05.20 15:01 Сейчас в теме
Когда устанавливал личный сертификат он спрашивал пароль.

(29)
31. PythonJ 91 02.05.20 15:04 Сейчас в теме
(30)
Я снимал пароль для работы. Полностью корректно реализовать работу с паролем не дошли пока руки. Сходу не получилось. Попробуйте дописать, там есть поле Key, кажется. Там какая-то заморочка была с тем, что пароль на сертификат - одно, а пин-код - другое. Честно, не помню, в чем точно возникла проблема. Руки не дошли разобраться.
32. veritasuna12 3 02.05.20 15:06 Сейчас в теме
(31)
там есть поле Key


Присвоить значение полю чего?
33. PythonJ 91 02.05.20 15:12 Сейчас в теме
(32)
Если бы я помнил. Попробуйте для начала снять пароли и пинкоды с ключа. Тогда хотя бы будет понятно, что дело именно в этом. А как все-таки работать с паролем - увы, не подскажу.
34. veritasuna12 3 02.05.20 15:14 Сейчас в теме
(33)
Сильно не пинай, но как снять пароль он вроде в обязаловку должен бытт
35. PythonJ 91 02.05.20 15:18 Сейчас в теме
В самом криптопро скопировать ключ в реестр. При копировании он спрашивает, каким пин-кодом защитить ключ. Оставить пусто. После этого если копирование было сделано с носителя - извлечь носитель. Если из другого экземпляра ключа реестра, то удалить этот экземпляр. Чтобы КриптоПро при поиске сертификата нашел именно тот, который без пароля.
36. veritasuna12 3 02.05.20 15:24 Сейчас в теме
37. veritasuna12 3 03.05.20 11:05 Сейчас в теме
(35)
Пароль снял
Прикрепленные файлы:
38. PythonJ 91 03.05.20 12:49 Сейчас в теме
(37)
Закрытый ключ стал виден.
Дальше что, подпись не выполняется?
39. veritasuna12 3 03.05.20 13:51 Сейчас в теме
(38)
Нет. Поле keypin с ошибкой
40. veritasuna12 3 10.05.20 15:55 Сейчас в теме
Коллеги ни кто не сталкивался с проблемой: если данный код находится в модуле формы обработки, то сертификаты есть и в цикл заходит. Но если этот код поместить в общий модуль, то не находит сертификатов и соответственно в цикл не заходит. Формы обычные.

Процедура Кнопка1Нажатие(Элемент)
CURRENT_USER_STORE = 2;
MY_STORE = "My";
STORE_OPEN_READ_ONLY = 0;

OSertificats = Новый COMОбъект("CAdESCOM.Store");
OSertificats.Open(CURRENT_USER_STORE, MY_STORE, STORE_OPEN_READ_ONLY);

Certs = OSertificats.Certificates;
Для Сч = 1 По Certs.Count Цикл
ТекСерт = Certs.Item(Сч)
КонецЦикла;
КонецПроцедуры
Показать
41. uno-c 120 11.05.20 14:06 Сейчас в теме
(40)Возможно, в модуле формы ищет в личном хранилище сертификатов текущего пользователя ОС, а в общем модуле - в хранилище пользователя USR1CV8
Оставьте свое сообщение

См. также

Изменение конфиденциальной информации (обработка, управляемые формы) Промо

Обработка документов Обработка справочников Защита и шифрование v8::УФ 1cv8.cf Абонемент ($m)

Обработка позволяет полностью заменить в базе все конфиденциальные данные - все поля справочников, суммы в документах и прочие значения объектов. Идентична по функционалу обработке с ИТС "Изменение конфиденциальной информации", но работает под управляемыми формами и в интерфейсе "Такси". Есть гибкая настройка тех данных, которые необходимо удалять.

1 стартмани

17.05.2015    31456    130    primat    23    

Алгоритм шифрования AES ECB 128/192/256

Защита и шифрование v8 1cv8.cf Абонемент ($m)

Реализация алгоритма симметричного шифрования AES (Advanced Encryption Standard) в режиме ECB (Electronic codebook) с различной длиной ключа 128/192/256 без использования внешних компонент и zip-файлов.

1 стартмани

20.04.2020    1022    5    NikitaXa    12    

Мобильная платформа. Шифрование строк в Android при помощи внешней компоненты

Разработка внешних компонент Защита и шифрование v8::Mobile Молдова Абонемент ($m)

Внешняя компонента для мобильной платформы на Android. Шифруем строки.

3 стартмани

15.04.2020    1051    0    kinan    0    

1C и защищенное хранение данных на блокчейне: модуль интеграции от Acryl Platform

Защита и шифрование Блокчейн Расширения Прочие инструменты разработчика v8 1cv8.cf Абонемент ($m)

Модуль интеграция 1С и блокчейн платформы "Acryl Platform" без использования внешних компонент. Под катом реализация механизмов Base58, Blake2b, Keccak, Curv25519 (the elliptic curve Diffie–Hellman) в подсистеме "Crypt", примеры генерации ключей, адресов, подписи транзакций, запись данных в блокчейн, чтение и восстановление данных из блокчейн. Код открыть. Лицензия MIT.

1 стартмани

21.01.2020    4013    2    ArtemSerov    17    

Создание "обезличенной" демо базы 8,1,8.2 и 8.3 Управляемые и обычные формы. Промо

Защита и шифрование Обработка справочников v8 v8::УФ 1cv8.cf Абонемент ($m)

Иногда нужно продемонстрировать работу базы посторонним людям, которым совершенно нет необходимости видить реальные наименования контрагентов, номенклатуры, договоров, пользователей и организаций.

1 стартмани

03.12.2010    29642    40    milkers    10    

Кодирование / декодирование в Base58 без использования внешних компонент

Защита и шифрование v8 1cv8.cf Абонемент ($m)

Функции кодирование / декодирование строки в Base58 без использования внешних компонент. Код алгоритмов доступен в полном описании статьи.

1 стартмани

14.11.2019    3574    1    ArtemSerov    23    

Компонента аутентификации и шифрования с помощью биометрической информации для Андроид

Разработка внешних компонент Мобильная разработка Защита и шифрование v8::Mobile Абонемент ($m)

Компонента для мобильной платформы, позволяющая идентифицировать пользователя и шифровать данные с помощью биометрических сканеров.

5 стартмани

17.09.2019    4311    1    IgorKissil    7    

Криптографическое шифрование файлов

Защита и шифрование v8 1cv8.cf Абонемент ($m)

Обработка шифрует и дешифрует файлы. 

1 стартмани

03.09.2019    2374    2    shell_maxim    0    

Подписываем файлы с помощью ЭЦП средствами 1с Промо

Универсальные обработки Защита и шифрование v8 1cv8.cf Абонемент ($m)

Обработка для подписи с помощью сертификата (ЭЦП) произвольных файлов, только средствами платформы 1с. Работает на всех конфигурациях, но только на последних платформах 8.2 и 8.3, где есть менеджер криптографии.

1 стартмани

05.09.2013    59514    249    anig99    25    

Запутывание кода 1С

Защита и шифрование v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка запутывания (обфускации) исходного кода 1С с помощью регулярных выражений.

2 стартмани

02.09.2019    7645    37    leoxz    66    

Защищаем конфигурацию. Один ключ СЛК для всех клиентов

Защита и шифрование v8 Абонемент ($m)

Пользователь защищенной конфигурации вводит регистрационный номер и код доступа. Установка сервера СЛК у пользователя не требуется. Управляем лицензиями удаленно.

1 стартмани

30.08.2019    8558    9    mvxyz    62    

Электронный документооборот для украинских конфигураций

Защита и шифрование Документооборот и делопроизводство Документооборот и делопроизводство v8 1cv8.cf Украина Абонемент ($m)

Подсистема электронного документооборота (в дальнейшем ЭД) является конфигурацией 1С:Предприятие, выполняющей базовые функции регистрации НН/РК и загрузки их из Реестра и способной встраиваться с минимальными изменениями в любые, в том числе нетиповые конфигурации 1С. ЭД представляет собой несколько независимых регистров сведений, справочников, документов и обработок, которые можно встроить в любую конфигурацию. «Сердцем» ЭД является обработка «ЭД: Криптопровайдер», которая экспортирует методы взаимодействия 1С с криптобиблиотекой ИИТ

1 стартмани

30.06.2019    2970    7    Asdam    0    

Защита конфигурации 1С (без внешних компонент, супер легкая и быстрая) Промо

Защита и шифрование v8 1cv8.cf Россия Абонемент ($m)

Возможность автоматизации легкой и быстрой защиты конфигурации от распространения неблагонадежными клиентами. Работает только в режиме обычного приложения. Защита не полноценная (в случае если не применять обфускатор к спец.модулям), но позволяет снять проблему.

3 стартмани

11.05.2012    40000    27    Kyrales    45    

Шифрование текста и файлов с помощью 1С. Используется хеш-код SHA256, Без Capicom, Архиваторов и сторонних служб

Защита и шифрование v8 1cv8.cf Абонемент ($m)

Данная статья описывает простейший собственный алгоритм шифрования средствами 1С. Без Capicom, Архиваторов и сторонних служб. Данный метод работает на Платформе 8.3 и т.п. 09.07.19 Добавлена обработка шифрования файлов

1 стартмани

26.06.2019    6864    6    Indgo    42    

Проверка пинкода для мобильного приложения

Защита и шифрование v8::Mobile Абонемент ($m)

Простая проверка с помощью пинкода на вход в мобильное приложение.

3 стартмани

16.04.2019    2908    2    bashinsky    2    

Кодирование Base64

Защита и шифрование v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка кодирования декодирования строки алгоритмом Base64 через использования потоков.

1 стартмани

18.02.2019    4006    5    BigTaur    6    

Подписываем отчёт об исполнении контрактов ГОЗ или приказ №554

Защита и шифрование v8 v8::УФ 1cv8.cf Государственные, бюджетные структуры Россия Абонемент ($m)

Внешняя обработка, упрощающая подпись файла и генерацию архива с отчётом об исполнении госконтракта по Приказу №554 МО РФ

1 стартмани

06.02.2019    8821    30    semagin@gmail.com    8    

Генератор ФИО, ИНН, СНИЛС и дат рождения

Защита и шифрование Обработка справочников v8 1cv8.cf Абонемент ($m)

Понадобилась мне обезличенная база биллинга на полтора миллиона лицевых счетов. Забивать существующие ФИО символом "Х" ("Иванов Иван Иванович" -> "Хххххх Хххх Хххххххх") было не интересно. Взял из существующей базы собрал мужские, женские фамилии, имена и отчества и написал генератор случайных ФИО. Также в обработке есть возможность генерировать ИНН физических лиц, СНИЛС и дат рождения.

1 стартмани

03.12.2018    8047    7    BigB    10    

Применение цифровой подписи при организации учёта ТМЦ и ГСМ

Защита и шифрование Управление бизнес-процессами (BPM) Мобильная разработка v8::Mobile v8::Бизнес-процессы 1cv8.cf Абонемент ($m)

Статья о том, как внедрение мобильного приложения в бизнес-процессы компании сократило оборот бумажных документов, а простая электронная подпись - заменила аналоговую.

1 стартмани

25.10.2018    6667    2    ikekoval    2    

"Открыть нельзя защищать!" - Где поставить запятую?

Защита и шифрование v8 v8::УФ 1cv8.cf Абонемент ($m)

Если Вам интересна эта тема, то вы уже знаете, какие есть возможности по защите кода модулей, внешних обработок и отчетов. Это расширение конфигурации для защиты внешних обработок от просмотра и редактирования кода.

1 стартмани

16.02.2018    12019    14    adam26    9    

Шифрование перестановкой символов

Защита и шифрование v8 1cv8.cf Абонемент ($m)

Простое шифрование строки перестановкой символов.

1 стартмани

14.12.2017    6387    3    unregisteret    3    

ЭЦП по гостам Украины в 1С - Внешняя компонента BilboSign.dll

Разработка внешних компонент Защита и шифрование v8 1cv8.cf Украина Абонемент ($m)

Причиной данной разработки послужило отсутствие на данный момент криптопровайдера ЭЦП, который может работать по гостам Украины и использоваться в 1С. Для этого разработана внешняя компонента по технологии NativeAPI.

1 стартмани

11.12.2017    10411    14    Zahary    5    

Обработка шифрования ключом

Защита и шифрование v8 1cv8.cf Россия Абонемент ($m)

Обработка шифрования введенной строки. Платформа 8.3 (обычное приложение). В обработке реализован механизм XOR шифрования на платформе 8.3. Может быть полезна при решении задач с шифрованием паролей или текстов или чисел.

1 стартмани

05.12.2017    7849    16    timothy_    3    

Обфускация кода 1С

Защита и шифрование v8 1cv8.cf Абонемент ($m)

Обфускация кода 1С как вариант защиты кода.

10 стартмани

09.10.2017    31076    76    VsHome    5    

Обезличивание базы данных для КАМИН:Зарплата для бизнеса 4

Обработка справочников Защита и шифрование Управление персоналом (HRM) Управление персоналом (HRM) v8 1cv8.cf БУ Абонемент ($m)

Данная обработка обезличивает Вашу информационную базу данных. Это значит, что все фамилии, имена, отчества, ИНН, СНИЛС, серии и номера документов, будут заменены случайным набором символов.

1 стартмани

26.06.2017    8434    3    juricher    2    

"Набор юного строителя" для реализации внутреннего шифрования и ЭЦП

Универсальные обработки Документооборот и делопроизводство Защита и шифрование Документооборот и делопроизводство v8 1cv8.cf Абонемент ($m)

Набор процедур и функций для организации внутрикорпоративного документооборота и согласования.

1 стартмани

09.06.2017    12943    28    eskor    7    

Обезличивание базы данных средствами скрипта для MSSQL

Защита и шифрование v8 1cv8.cf Россия Абонемент ($m)

Обработка предназначена для сотрудников, которым необходимо подготовить обезличенную базу для передачи ее сторонним лицам. Для пользования обработкой необходимо запустить 1С: предприятие в режиме тонкого клиента управляемого приложения. Тестировалась обработка на 1С:Предприятие 8.3 (8.3.8.2088) Обработка генерирует SQL - скрипт на основе структуры метаданных.

10 стартмани

28.02.2017    11875    27    ZadachNik1C    1    

HMAC на встроенном языке 1С

Защита и шифрование v8 1cv8.cf Россия Абонемент ($m)

Внешняя обработка хеширования данных HMAC (SHA-1, MD5, SHA-256, CRC-32) без использования внешних компонент.

1 стартмани

25.02.2017    23700    63    Knup    35    

Шифрование и расшифровка строковых полей справочников методом Виженера (с улучшениями)

Защита и шифрование Обработка справочников v8 1cv8.cf Абонемент ($m)

Обработка по шифрованию и расшифровке строковых полей справочников модифицированным методом Виженера - реализация без внешних компонент, без com-объектов, чистый 1С.

1 стартмани

27.04.2016    29057    37    NikitaXa    17    

Защита разработок от копирования (Обычная и Управляемая форма)

Защита и шифрование v8 v8::УФ 1cv8.cf Абонемент ($m)

Вы разработчик, и разработали чудесный алгоритм, но не хотите ни с кем с ним делиться - используйте данную разработку, и тогда предполагаемый злоумышленник, глядя на такой код, просто плюнет и начнет писать свой.

1 стартмани

28.03.2016    36441    319    karpik666    123    

Двухфакторная аутентификация в 1С

Защита и шифрование v8 1cv8.cf Россия Абонемент ($m)

Двухфакторная аутентификация (2FA) — это механизм, который позволяет защитить ваш аккаунт надежнее, чем традиционный пароль. Пароль должен быть сложным, при этом его нужно всегда помнить, хранить от посторонних глаз и достаточно часто менять. Но даже если вы принимаете все меры, пароль все равно остается уязвимым — например, для вирусов, которые могут перехватить то, что вы набираете на клавиатуре.

1 стартмани

16.02.2016    32776    136    Юрий-К    20    

Генератор сертификатов

Универсальные обработки Защита и шифрование v8 1cv8.cf Абонемент ($m)

Недавно пришлось организовывать обмен шифрованными сообщениями в 1С, при этом кучу времени заняла процедура создания сертификатов для работы с "Менеджером криптографии". Как итог сделал небольшую обработку для генерации разных типов сертификатов.

3 стартмани

27.01.2016    18114    28    eskor    5    

Обфускация кода 1С (приведение в нечитаемый вид) для платформы 1С:Предприятие 8.3.7

Защита и шифрование v8 1cv8.cf Абонемент ($m)

Обработка для обфуксации (приведения в нечитаемый вид) кода 1С, это может использоваться как один из способов защиты программных модулей.

1 стартмани

20.12.2015    38012    308    masterkio    106    

Обфускация данных в 1С

Защита и шифрование v8 1cv8.cf Абонемент ($m)

Часто возникает ситуация, когда программист просит предоставить базу данных. Но по соображениям безопасности не хочется показывать ему какую-то информацию. Эта обработка перетасует случайным образом строковые реквизиты справочников. Информация станет нечитаемой.

1 стартмани

03.11.2015    15295    41    kser87    25    

Двухфакторная аутентификация с помощью мессенджера Telegram

Информационная безопасность Защита и шифрование Внешние источники данных v8 Россия Абонемент ($m)

Повесть о том, как приручить бота из Telegram для аутентификации пользователей при входе в приложение 1С.

1 стартмани

29.10.2015    25990    67    id-mt    12    

Подсистема шифрования данных + пример реализации: решение Keystore для хранения паролей

Защита и шифрование v8 1cv8.cf Абонемент ($m)

Настоящая публикация представляет собой одновременно подсистему функциональности шифрования данных и готовое к использованию решение для хранения паролей в качестве примера реализации работы подсистемы.

3 стартмани

23.06.2015    16969    9    alex271    3    

Ключ защиты из USB накопителя для 8.3

Информационная безопасность Защита и шифрование v8 1cv8.cf Абонемент ($m)

Ключ защиты конфигурации из обычной USB-флешки для платформы 8.3. Можно внедрить на любой конфигурации, и ключик не привязывается к определенному рабочему месту. Реализовано в Такси.

5 стартмани

31.05.2015    34237    24    Naposaram    57    

Шифрование текста, хеш сумма

Защита и шифрование v8 1cv8.cf Абонемент ($m)

Этот пример показывает, что использование шифрования и получение хеш суммы очень просто. В обработке реализовано шифрование по алгоритму AES и получение хеш суммы MD5. Все делается динамически, без использования файлов.

2 стартмани

15.04.2015    21765    45    MherArsh    22    

Сжатие текстов исключительно средствами языка 1С

Защита и шифрование v8 1cv8.cf Россия Абонемент ($m)

Обработка упаковывает текст и делает его в виде исполняемого SFX. Область применения: Just for fun Побаловался на досуге, размял мозг. Можно применять для упаковки и нечитаемости текстов процедур и функций, или запросов

1 стартмани

25.11.2014    13406    7    eugeniezheludkov    5    

Простое симметричное шифрование табличным смещением

Защита и шифрование v8 1cv8.cf Абонемент ($m)

Данные шифруются одним из самых простых симметричных алгоритмов, в котором зашифрованный символ получается путем смещения исходного символа на дельту.

1 стартмани

06.10.2014    12997    5    insidex    3    

Шредер - не удобочитаемый код 1с

Защита и шифрование v8 1cv8.cf Абонемент ($m)

Нужно сделать текст 1с нечитабельным - не вопрос!

1 стартмани

21.08.2014    15701    33    ivn75    18    

Элементарное шифрование

Защита и шифрование v8 Абонемент ($m)

Алгоритм шифрования - простая перестановка

1 стартмани

11.02.2014    14691    3    sdn-1    3    

Удаление информации по сотрудникам

Чистка базы Обработка документов Защита и шифрование Зарплата Управление персоналом (HRM) Зарплата Управление персоналом (HRM) v8 УПП1 Абонемент ($m)

4 обработки для удаления (обезличивания) данных по зарплате сотрудников из информационной базы

1 стартмани

09.01.2014    12968    8    FullMoon    2    

Пример асимметричного шифрования(RSA) 1С:Предприятие 8

Защита и шифрование v8 1cv8.cf Абонемент ($m)

Обработка является примером работы с RSA.

1 стартмани

02.03.2013    23060    54    windows98a    7