|
Есть ли методы обфускации кода в общих модулях 1с8? | ☑ | ||
---|---|---|---|---|
0
Stagor
10.04.12
✎
15:28
|
Интересует способ без привязки к физическим ключам.
т.е. что-бы клиент не копался в модулях сам!? |
|||
1
mikecool
10.04.12
✎
15:29
|
убери все переводы строк и лишние пробелы
|
|||
2
Steel_Wheel
10.04.12
✎
15:30
|
Гм. А разве обфускация -- это не снижение читабельности?
|
|||
3
Жан Пердежон
10.04.12
✎
15:30
|
зачем?
пусть копается потом еще денег с него слупишь, чтоб вернуть как было |
|||
4
XLife
10.04.12
✎
15:30
|
вк?
|
|||
5
PR
10.04.12
✎
15:31
|
Нетленка детектед
|
|||
6
Stagor
10.04.12
✎
15:31
|
(1) так, что бы их местный фикси не вскрыл. Что такое декомпилятор 1С, так что пароль на модуль - дохлый номер!
|
|||
7
akaBrr
10.04.12
✎
15:31
|
(0) А права отобрать заходить в конфигуратор, не?
|
|||
8
Волшебник
10.04.12
✎
15:31
|
(1) Тогда комментарий // распространится до конца строки.
|
|||
9
mikecool
10.04.12
✎
15:31
|
(6) думаю - запарится вскрывать )
|
|||
10
Stagor
10.04.12
✎
15:32
|
(5) Нет. Ленка.
(7) Нет. |
|||
11
le_
10.04.12
✎
15:32
|
||||
12
mikecool
10.04.12
✎
15:32
|
(8) первое что пришло мне в голову )
все переменные типа а, б, х никаких комментов и прочая ))) |
|||
13
Stagor
10.04.12
✎
15:33
|
Запутывать переменные и имена функций то же - не выход, к сожалению!
|
|||
14
andrewks
10.04.12
✎
15:33
|
(13) это почему?
|
|||
15
Волшебник
10.04.12
✎
15:34
|
(12) Лично я не вижу никакой ценности в таком коде.
|
|||
16
H A D G E H O G s
10.04.12
✎
15:34
|
(14) Потому что это шустро правится с помощью ctrl+h
|
|||
17
PR
10.04.12
✎
15:35
|
(8) А комментарии при обфускации нужно _обязательно_ удалять
|
|||
18
andrewks
10.04.12
✎
15:38
|
(16) любая обфускация приводится к читабельному виду. вопрос только, сколько усилий и времени на это будет затрачено
|
|||
19
Feanor
10.04.12
✎
15:38
|
Стыдно за собственный код перед фикси клиента?
З.Ы. погугли wiseadvice |
|||
20
Stagor
10.04.12
✎
15:38
|
(14) Все равно логика видна! Имена методов объекта остаются!
|
|||
21
Stagor
10.04.12
✎
15:39
|
(19) Смотрел, не подходит http://forum.infostart.ru/forum24/topic32439/
|
|||
22
andrewks
10.04.12
✎
15:39
|
код зашифровывать, кидать в хранилище. потом его извлекать, расшифровывать и выполнять.
|
|||
23
Адинэснег
10.04.12
✎
15:39
|
(0)кури нативапи и выноси функциональность туда
|
|||
24
Stagor
10.04.12
✎
15:40
|
(22) Как вариант. :)
|
|||
25
Волшебник
10.04.12
✎
15:40
|
Берёте стандартный код УПП и получаете пример грамотно обфускации. Самая главная фишка в многочисленных вызовах процедур с неочевидными параметрами и результатами. Если добавите рекурсию, то будет ещё лучше. Причём рекурсия желательна из 3-4 процедур, вызывающих друг друга по схеме:
A -> Б -> В -> Б -> A |
|||
26
Волшебник
10.04.12
✎
15:41
|
(22) Предлагаю выполнять без расшифровки. Тогда результат будет тоже непонятный.
|
|||
27
Feanor
10.04.12
✎
15:42
|
(21) а чем не подходит? там вроде можно шифровать отдельные модули
|
|||
28
Дикообразко
10.04.12
✎
15:42
|
(25) он же прост, как три копейки
|
|||
29
Stagor
10.04.12
✎
15:44
|
(11) классная вещь, спасибо!
|
|||
30
Волшебник
10.04.12
✎
15:44
|
Я ещё придумал способ. Все ключевые слова нужно перевести на английский. Т.е. использовать английские эквиваленты.
|
|||
31
andrewks
10.04.12
✎
15:46
|
или можно ещё круче: завести для хранения зашифрованного кода отдельную базу (1с/mssql/mysql/firebird/etc).
далее, вызов любой функции модуля будет состоять из запроса к базе с кодом, расшифровки, выполнения кода, и возвращения результата |
|||
32
pumbaEO
10.04.12
✎
15:46
|
(19) +10050
|
|||
33
andrewks
10.04.12
✎
15:50
|
(и тут остапа понесло) или закинуть код в облако
|
|||
34
Aswed
10.04.12
✎
15:50
|
Писать код на китайском
|
|||
35
Stagor
10.04.12
✎
15:52
|
(19) наивный.
(32) ты то же! |
|||
36
H A D G E H O G s
10.04.12
✎
15:53
|
(33) Облако сдохнет.
|
|||
37
Stagor
10.04.12
✎
15:53
|
(27) привязка к ключам.
Всем спасибо, вопрос решен :) |
|||
38
MMF
10.04.12
✎
15:54
|
(30) таких обфускаторов надо убивать в детстве из рогатки, чтобы не успели размножиться. У меня в одной конфе филиала код наполовину на англ, без форматирования и с идентификаторами в стиле "А", "АА", "ААА". Когда приходится от них что-нить загружать и открывать их конфу, как в бочку с гуаном погружаешься
|
|||
39
H A D G E H O G s
10.04.12
✎
15:54
|
(33) Это ты счаст Тонкого Клиента рассказал.
|
|||
40
Волшебник
10.04.12
✎
16:36
|
(38) А зачем ты делал декомпиляцию защищённых модулей? Вот получай теперь
|
|||
41
Дикообразко
10.04.12
✎
16:50
|
(38)
фигня, вот так будет лучше _ = 2; __ = 3; ___ = _+ __; |
|||
42
andrewks
10.04.12
✎
17:00
|
(41) (_|_)
|
|||
43
Stagor
10.04.12
✎
17:32
|
(41) Фигня, а не защита.
СтрЗаменить(Текст,"_","Имя"); СтрЗаменить(Текст,"__","Фамилия"); |
|||
44
Дикообразко
10.04.12
✎
17:36
|
(43) не взлетит :)
|
|||
45
kuromanlich
10.04.12
✎
17:37
|
(40) древняя неприязнь?..
|
|||
46
Stagor
10.04.12
✎
17:40
|
(44) сам, так расшифровал модуль, защищенный, как в (11)
муторно, но верно. Потом по логике - назвал переменные более корректно! |
|||
47
kuromanlich
10.04.12
✎
17:41
|
(46) зачем расшифровывал? оплачивалос отдельно?
|
|||
48
Stagor
10.04.12
✎
17:42
|
если конечно модуль в 10 тыщ. строк то - да, можно защитить, как в (11), но обычно логика переменных видна, как её не назови!
|
|||
49
Stagor
10.04.12
✎
17:43
|
(47) нужно было интегрировать, часть модуля пришлось расобфускировать!
|
|||
50
Дикообразко
10.04.12
✎
17:43
|
(46) твой код работать не будет, надо наоборот, начинать с самых длинных переменных :)
|
|||
51
GenV
10.04.12
✎
17:46
|
(43) Это только если во всем коде эта переменная Имя и Фамилия, а если она несколько раз в разных процедурах несколько раз инициализируется и имеет разное значение, то потом еще и в каждой процедуре в каждом блоке по смыслу править
|
|||
52
Stagor
10.04.12
✎
17:47
|
(50) я часть переменных расшифровал. Этого было достаточно!
Вообще, видел декомпилятор, который сам защищен так, что вообще кода нет :) |
|||
53
Stagor
10.04.12
✎
17:47
|
(51) Так и есть!
|
|||
54
boggonzikov
10.04.12
✎
17:50
|
для обфускации можно использовать http://infostart.ru/public/15907/ работает.
|
|||
55
Stagor
10.04.12
✎
17:52
|
(54) Она в (11) уже указана.
в (43), что расшифровывал модуль, который таким образом защищен! |
|||
56
fisher
10.04.12
✎
17:52
|
Большинство нетленок никакой дополнительной обфускации не требуют. Хватает врожденной.
|
|||
57
GenV
10.04.12
✎
17:53
|
(55) Только не говори, что не зная алгоритма работы и имен переменных ты сможешь восстановить исходный код как было.
|
|||
58
Stagor
10.04.12
✎
17:54
|
- замена имен переменных/процедур/функций/параметров на трудночитаемые;
это немного затрудняет расшифровку - не более. - удаление форматирования текста; фигня. Есть авто-форматирование :) - шифрование строковых переменных (может потребоваться capicom.dll). так же легко расшифровывается в обратную сторону - функция то 3 строчки! |
|||
59
Stagor
10.04.12
✎
17:54
|
(57) Как было? Только другое название функций и переменных.
|
|||
60
Дикообразко
10.04.12
✎
17:56
|
(59) циклы и условные операторы можно заменить на GoTo
|
|||
61
boggonzikov
10.04.12
✎
17:56
|
при обфускации кода теряется логика работы кода. И не факт что на расшифровку ты потратишь меньше времени, чем написать новый.
|
|||
62
boggonzikov
10.04.12
✎
17:57
|
для защиты без заморочек вполне достаточно, если этого не хватает, тогда хасп с ключами.
|
|||
63
GenV
10.04.12
✎
17:57
|
(59) А смысл тогда от расшифровки если все равно будешь все сам анализировать и проверять логику построчно?
ЗЫ Засунь в зашифрованную dll и будет счатье ) |
|||
64
boggonzikov
10.04.12
✎
17:58
|
а вообще, поддерживаю (5)
Нетленка детектед )) |
|||
65
Stagor
10.04.12
✎
18:02
|
Сам автор coder1cv8 про (54)
< Согласен. Данная обработка написана мной чисто из интереса, без какой-либо практической цели. Я считаю, что будущее защиты исходного кода для восьмерки за обфускаторами так называемого "байт-кода". Более тего, я тестировал бэта-версию такого обфускатора и могу сказать, что существующие на данный момент декомпиляторы просто вываливаются с ошибкой при попытке декомпеляции защищенного таким образом модуля (только не просите у меня эту обработку, я не автор и распространением не занимаюсь). > |
|||
66
Stagor
10.04.12
✎
18:02
|
(64) Нетленка детектед - нафиг!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |