Для чего нужен зарезервированный тип trash ?

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
---
22806
---  

Задавая имя объекту случайно обнаружил, что trash подсветилось синим цветом и это имя для переменной использовать нельзя.

В журнале ошибок выдаёт как вроде это какой-то новый тип данных.

trash a;

Было бы интересно узнать про это у разработчиков.

Sergey Dzyublik
4374
Sergey Dzyublik  

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

Sergey Dzyublik
4374
Sergey Dzyublik  

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Защита авторства MQL кода в МТ5. security certificates

Renat Fatkhullin, 2009.11.22 16:54

Как раз для замусоривания/обфускации кода в MQL5 можно указывать для каждой функции специальный модификатор:

void MyFunc(int val) trash
  {
   Print("Val: ",val);
  }

Пока его назвали trash, но скорее всего изменим на protect.


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


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


Мда, 2009 год. Возможно сейчас  trash  ни чего и не делает. Нужно уточнять.
Maxim Dmitrievsky
19174
Maxim Dmitrievsky  
Sergey Dzyublik:

Мда, 2009 год. Возможно сейчас  trash  ни чего и не делает. Нужно уточнять.
код вроде бы и так сейчас при компиляции неплохо замусоривается :) но да, интересно
MetaQuotes
Админ
27509
Renat Fatkhullin  

Уже не имеет смысла.

Через некоторое время для MQL5 кода x64 версий мы представим возможность тотальной перешифрации промежуточного EX5 кода на наших серверах с дополнительной защитой, похожей на механизмы Маркета.

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

Возможно, этого делать не будем. Но если будем, сроков нет.

fxsaber
16799
fxsaber  
Renat Fatkhullin:

Уже не имеет смысла.

Через некоторое время для MQL5 кода x64 версий мы представим возможность тотальной перешифрации промежуточного EX5 кода на наших серверах с дополнительной защитой, похожей на механизмы Маркета.

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

Возможно, этого делать не будем. Но если будем, сроков нет.

Не понимаю, для чего эта защита? Ведь и сейчас же никак не взломать EX4/5. Неужели есть люди, которые не соглашаются переходить на MQL, потому что им кажется, что защита не достаточная?

Или это просто гиковская дань моде, чтобы можно было в сравнительной таблице поставить плюсик напротив использования самых совершенных методов защиты? У остальных этого плюсика не будет - типа маркетинга "зато у меня 70 мегапикселей в смартфоне".

Это практическая необходимость или все же маркетинг? 

Alexey Volchanskiy
27272
Alexey Volchanskiy  
fxsaber:

Не понимаю, для чего эта защита? Ведь и сейчас же никак не взломать EX4/5. Неужели есть люди, которые не соглашаются переходить на MQL, потому что им кажется, что защита не достаточная?

Или это просто гиковская дань моде, чтобы можно было в сравнительной таблице поставить плюсик напротив использования самых совершенных методов защиты? У остальных этого плюсика не будет - типа маркетинга "зато у меня 70 мегапикселей в смартфоне".

Это практическая необходимость или все же маркетинг? 

Меня периодически долбят вопросами с защитой. Народ хорошо помнит, как на ура ломались .ex4  < 600 билда автоматическими декомпиляторами. А народ, как кошка, будет плохое помнить вечно ))
Mickey Moose
3577
Mickey Moose  

вспоминается фраза "Вы или крестик снимите или трусы оденьте!"

 

Я конечно могу ошибаться но в какой то ветке были комментарии на тему "мт5 намного быстрее мт4 и делаются шаги для дальнейшего ускорения работы"

если данный тип не нужен почему его не удалить совсем?

если нужен то  зачем целенаправленно замедлять работу?

Alexey Volchanskiy
27272
Alexey Volchanskiy  
trader781:

вспоминается фраза "Вы или крестик снимите или трусы оденьте!"

 

Я конечно могу ошибаться но в какой то ветке были комментарии на тему "мт5 намного быстрее мт4 и делаются шаги для дальнейшего ускорения работы"

если данный тип не нужен почему его не удалить совсем?

если нужен то  зачем целенаправленно замедлять работу?

Стопудово оставлен для совместимости. Проблем нет, не используйте и не будет ничего замедляться.
Aleksey Semenov
3632
Aleksey Semenov  
мы и без треша успешно справляемся с замедлением кода своими кривыми костылями
Alexey Volchanskiy
27272
Alexey Volchanskiy  
Aleksey Semenov:
мы и без треша успешно справляемся с замедлением кода своими кривыми костылями
+++ )))
12
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий