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

16.04.18

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

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

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
СделатьНечитаемым.epf
.epf 11,74Kb
58
58 Скачать (1 SM) Купить за 1 850 руб.

Порядок работы простой:

1) Отметить галочками нужные реквизиты

2) Нажать "Обфусцировать реквизиты"

Обработка обратного действия не имеет. Не стоит запускать ее в том случае, если не уверены, что она никому не навредит. 

Пример работы. 

Было так: 

Стало: 

Защита данных

См. также

Защита ПО и шифрование Программист Платформа 1С v8.3 Россия Абонемент ($m)

Обработки, в которых реализованы алгоритмы шифрования ГОСТ 34.10-2012, RSA-1024, AES-256-GCM, XChacha20-poly1305. Реализация нативно на чистом 1С без COM-объектов и внешних компонент.

1 стартмани

17.03.2025    377    3    alexyur    8    

4

Защита ПО и шифрование Программист Платформа 1С v8.3 1С:Управление торговлей 11 Абонемент ($m)

Небольшой пример - "лайф-хак" по установке собственного пароля на отчет или обработку, не втягивая в это RLS.

3 стартмани

06.03.2025    1815    2    aximo    23    

14

Защита ПО и шифрование Программист Платформа 1С v8.3 Бесплатно (free)

В статье приведен простой способ защиты кода внешней обработки от несанкционированного доступа (если это необходимо).

30.12.2024    5748    artemusII    17    

9

Защита ПО и шифрование Программист Платформа 1С v8.3 1С:Бухгалтерия 3.0 Абонемент ($m)

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

1 стартмани

09.02.2023    3217    14    aximo    5    

2

Защита ПО и шифрование Программист Абонемент ($m)

Для установки защиты pdf документа, полученного в 1С, написано консольное приложение на c#., использующее одну зависимость pdfSharp.dll. В результате работы приложения ограничены операции над документом и записаны метаданные. С помощью аргументов командной строки можно управлять работой приложения.

2 стартмани

30.01.2023    2414    2    olevlasam    3    

3

Защита ПО и шифрование Программист Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

Универсальный синтаксический анализатор ASN.1, который может декодировать любую допустимую структуру ASN.1 DER или BER, независимо от того, закодирована ли она в кодировке Base64 (распознаются необработанные base64, защита PEM и begin-base64) или в шестнадцатеричном кодировании.

1 стартмани

04.12.2022    3905    18    keyn5565`    0    

15

Защита ПО и шифрование Программист Платформа 1С v8.3 Абонемент ($m)

Демонстрация возможностей шифрования строки на основе мастер-пароля в 1С Предприятие 8.3.19. AES без zip файла, RSA, PKDF2. (c использованием библиотеки С# через com).

2 стартмани

31.08.2022    4890    9    vit59    2    

6
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. spy-83 199 03.11.15 07:29 Сейчас в теме
по мне - так лучше делать названия типа
Цена1, Цена2, ЦенаN
Контрагент1, Контрагент2, Контрагент N
и т.п.
CratosX; корум; mtv:); herfis; bashinsky; marz; +6 Ответить
2. insurgut 208 03.11.15 08:23 Сейчас в теме
На втором скрине читается любая строка без заглядывания в первый скрин. Уникальная способность есть у мозга человеческого воспринимать совокупность символов (даже если они перетасованы) как единое слово.
Irwin; 7OH; корум; mtv:); herfis; alexveraww; sergpogo; i.d.Kravchenko; HiKS; +9 Ответить
6. kser87 2469 03.11.15 10:07 Сейчас в теме
(2) insurgut, это когда данных немного
3. Brawler 460 03.11.15 08:25 Сейчас в теме
Обфускация такая штука дрюка, которая не скроет финансового состояния организации, по которой ведется учет в базе данных, будут как на ладони объемы сделок, себестоимость продукции, и тд. и тп.
Ладно там замылить название контрагентов, имена физиков, продукции, так еще нужно замылить номера ИНН, СНИЛС, и тд. и тп.
Вот так вот забудешь, что либо и ушли на просторы инета сведения коммерческой тайны или защищаемые 152-фз.

Нужно не ленится создавать пустую базу и на ней делать тестовые примеры.
Бывает так, что находишь ошибку в рабочей базе, вернее о ней сообщают.
Ты такой ее геройски пытаешься оттебажить, вроде выявляешь место в коде, где она возникает.
Только письмо в 1С писать, а потом, ан нет, дай я попробую на пустой базе такую ошибку получить.
И не могу ее получить.
Оказывается косяк в установленных/снятых неведомых галочках в рабочей базе данных.
pvl_mksv; ipoloskov; корум; artbear; NachtLied; +5 Ответить
7. kser87 2469 03.11.15 10:08 Сейчас в теме
(3) Brawler, ну обработка и не претендует на универсальность.
10. kser87 2469 03.11.15 11:24 Сейчас в теме
(3) Brawler, Нужно не ленится создавать пустую базу и на ней делать тестовые примеры. - обычно тестовая база является более или менее свежей копией рабочей. И обычно именно справочники точно копированы. Это делается как раз из-за неведомых галочек.
4. tormozit 7270 03.11.15 09:24 Сейчас в теме
Обфускация больших объемов данных - весьма долгая операция. Ее разумно выполнять многопоточно или через СУБД.
Касательно числовых значений кажется лучшее решение - умножение на случайный дробный коэффициент в диапазоне [1;2]. В таком случае нули в первичных строках таблиц сохраняются, что очень важно для вопроизведения ошибок платформы, но в строках итогов они конечно не сохраняются, поэтому обфускация чисел наиболее сильно влияет на воспроизводимость ошибок платформы.
5. kser87 2469 03.11.15 10:06 Сейчас в теме
(4) tormozit, бесспорно.
Но я и не рассчитываю на то, что обработкой будут пользоваться клиенты с большими базами данных. Она предназначена для тех, кто не может себе позволить нанять программиста для таких задач. Для мелких организаций вполне подойдет
8. qwed557 30 03.11.15 10:52 Сейчас в теме
Чем не утраивает обработка с ИТС "Изменение конфиденциальной информации"?
9. kser87 2469 03.11.15 11:19 Сейчас в теме
(8) qwed557, она разве работает на упр. формах?
15. h00k 51 04.11.15 16:14 Сейчас в теме
(9)
она разве работает на упр. формах?

Нет, но, что мешает открыть конфигурацию в режиме обычное приложение и запустить обработку?

П.С.: ИТС-овкая обработка очень "прожорливая". Запускал на нашей базе УТ 11.1, с приличным объемом данных - рпхост вырос до 35Гб, но обработка отработала правильно.
16. kser87 2469 04.11.15 16:36 Сейчас в теме
(15) h00k, Нет, но, что мешает открыть конфигурацию в режиме обычное приложение и запустить обработку? мне конечно ничего не мешает. Но для большинства простых пользователей это пустые слова.
17. kser87 2469 04.11.15 16:42 Сейчас в теме
(15) h00k, почему рпхост так раздулся? Есть идеи?
11. premierex 207 04.11.15 12:18 Сейчас в теме
А я бы такую базу даже в работу бы не взял.
Во первых, между программистом и заказчиком должен существовать определённый уровень доверия, подкрепленный договором или устно - неважно.
Во вторых отладка в такой базе будет существенно затрудняться, ведь при отладке иногда приходится прерывать работу программы, а при последующем запуске надо ещё вспомнить с каким "ёпрст" объектом ты работал.
Пустая база - тоже не вариант. Тратить время на заполнение базы данными для отладки - абсурд, да и на практике чаще встречаются ситуации, когда ошибки возникают именно из-за неправильного заполнения данных пользователями, ну а программист-то, конечно, всё грамотно внесет.
Такая вот "обфусцированная" база сразу наводит на мысль - заказчик не доверяет. Почему же я тогда должен ему доверять? И не получу ли я в качестве гонорара "обфусцированную" сумму, где завершающие ноли станут лидирующими?
корум; agilov_a; NachtLied; jaroslav.h; +4 Ответить
12. kser87 2469 04.11.15 13:07 Сейчас в теме
(11) premier, могут быть совершенно разные ситуации. Бывает у программиста и заказчика заключен официальный договор, сложились доверительные отношения. А бывает фирме не нужен постоянно специалист 1С. Например, они наняли фри на какую-то мелкую работу.
insurgut; +1 Ответить
13. premierex 207 04.11.15 14:38 Сейчас в теме
(12) фри, как правило, мелкую работу выполняют в офисе заказчика, чтобы зафиксировать отработанное время. А чтобы не получить "обфусцированную" базу для отладки, достаточно подписать договор о неразглашении коммерческой информации или пообещать это заказчику устно.
14. kser87 2469 04.11.15 15:15 Сейчас в теме
(13) premier, фри часто заказчика часто в лицо даже не знают и могут находится в другом городе. На то они и фри
insurgut; h00k; +2 Ответить
18. revned 6 11.11.16 17:47 Сейчас в теме
Скачал, хотел чуть побаловаться, но не работает.
Ошибка получения информации набора данных
по причине:
Ошибка в запросе набора данных
по причине:
{(1, 1)}: Ожидается выражение "ВЫБРАТЬ"

платформа 8.3.9.1818, база самописная
19. kser87 2469 11.11.16 22:28 Сейчас в теме
(18) revned, киньте скрин настроек
20. revned 6 14.11.16 09:01 Сейчас в теме
(19) kser87, настроек чего? Форма обработки не открывается. Причем ставлю точки останова ПриОткрытии, ПриСозданииНаСервере - нет эффекта, не заходит в отладчик.
21. revned 6 16.11.16 10:46 Сейчас в теме
(19) kser87, В типовой бухгалтерии 3.0 то же самое
22. user1201613 17.06.19 12:12 Сейчас в теме
Всем привет! Данная обработка подойдет для конфигурации ERP 2.0?
23. kser87 2469 17.06.19 14:25 Сейчас в теме
24. insurgut 208 13.02.20 11:41 Сейчас в теме
Как оказалось на диске ИТС много чего полезного есть :)
Прикрепленные файлы:
СкрытиеКонфиденциальнойИнформации.epf
25. Brawler 460 13.02.20 12:15 Сейчас в теме
(24) Ну и 1С сами ее рекомендуют, когда просят прислать им базу данных для изучения.
Оставьте свое сообщение