Pull to refresh
16
Karma
0
Rating

Обфускация программ

Да, я уже говорил, что я читал научные статьи про математическую обфускацию.
Основная проблема, которую я вижу — есть классы функций, которые нельзя безопасно обфусцировать,
и есть *некоторые* функции, для которых придумали обфускацию. Этих функций очень мало, они «скучные» или их роль может выполнить другим путем.

> обфускация ПО для противодействия поиска уязвимости по патчу

Я вижу две проблемы:
— мне дается код, который я не должен понимать и он должен предоставить мне «безопасность». Security though obscurity.
— для детектирования «атаки» может понадобиться такая функция, которую невозможно безопасно обфусцировать.

> маркировка ПО.

Зачем?

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

Это *совершенно* ужасная цель.

> Можно просто ограничить функциональность на ровне интерфейса

Я уже много раз говорил это, но повторюсь: DRM это фундаментально плохая идея. Она не несет *ничего* хорошего.

Обфускация программ

С тех пор как я написал свой комментарий, я прочел несколько статей об «математической» обфускации программ,
и все еще считаю, что это бесполезная штука, которая может использоваться исключительно для DRM.

> i+=2 vs i++; i++;

1. Математически, это две одинаковые программы и они скомпилируются в один и тот же машинный код оптимизирующим компилятором.
2. Если они скомпилируются в разный код, то будут отличаться по таймигу.
3. Это не программа из реального мира.

> абсолютно некорректное утверждение.

История показывает обратное — люди разбирают существующие программы и неимоверное количество кряков в прошлом это весомый аргумент в мою сторону. Какие ваши аргументы?

WebGL для всех

Google Maps, рендереры Open Street Maps, FinalMesh.

Пользуйтесь подсветкой кода

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

Метапрограммирование: какое оно есть и каким должно быть

Если честно, я не вижу фундаментальной разницы между ними. Да, они отличаются, но принцип — тот же.
При желании можно писать макросы как в CL:
gist.github.com/m1el/084477b3db4c5f6bd202

GOTO or not GOTO вот в чём вопрос

Perl 5 вышел в свет 20 лет назад :)

Мастер-класс Дмитрия Склярова. DRM: вчера, сегодня и завтра

> Дальнейшее развитие DRM
Автор не слышал новости про White-box crypto

> Проблемы Digital Rights Management
> Наверное, главная технологическая проблема — открытость платформы.
Когда уже до управляющего звена дойдет, что DRM это фундаментально сломанная идея.
И единственная проблема DRM — это факт его существования. DRM неполноценен на уровне замысла.
Проблема в мозгах тех кретинов, которые считают, что DRM может решить какую-либо проблему касающуюся мультимедиа.

Максимум того что могут все существующие имплементации DRM для мультимедиа это вызывать проблемы для конечного пользователя.
Все существующие имплементации DRM были сломаны.

DRM не работает. DRM тратит ресурсы производства. DRM плох для конечного пользователя. DRM плох для архивации. DRM плох для ремиксов. DRM плох для цитирования. DRM плох для семьи. DRM убивает котят.

> Альтернативны Digital Rights Management в книгоиздании
Не использовать DRM.

Червь, который изменил Интернет

Придет время и веб-индустрия поймет, что единственный адекватный подход к защите от XSS это:

  • Использовать DOM-based шаблоны вместо текстовых
  • Исключить использование inline-javascript в HTML, включая on* аттрибуты
  • Использовать Content-Security-Policy и X-Frame-Options: DENY
  • Фильтровать ссылки и адреса ресурсов, генерируемые динамически

Генерация html на PHP

Можно использовать и DOMDocument для генерации HTML, и это подходит под мой критерий. Но апи у него очень громоздкое.
В качестве примера того что я имею в виду я выберу React.js.

Генерация html на PHP

Я считаю, что генерация HTML при помощи DOM-подобных приемов это очень правильный подход, и автор пытается это сделать.

Но получается криво.

Осциллоскоп на WebGL

Хорошо. Я понял почему мой комментарий можно было принять как оскорбление.
Он не подразумервался как оскорбление.

Осциллоскоп на WebGL

Я не вижу хамства в своем комментарии и вижу слово «осциллоскоп» в словарях.

Осциллоскоп на WebGL

Ну, я бы начал с того, что «осциллоскоп» и «осциллограф» — равносильно слова позаимствованные.
Оба слова есть в русском словаре. Не понимаю, в чем обвинение «кальки» с английского.

Осциллоскоп на WebGL

А что же, по-вашему, будет?
Не считая youscope, в котором трек для музыки и для осциллоскопа — разный.
Предлагаю скачать треки (которые используются в демо или oscillofun.flac, alpha_molecule.wav), подключить к осциллоскопу в режиме XY, два канала аудио и посмотреть что будет.

Осциллоскоп на WebGL

Для вас можно и «осциллограф», но в статье будет «осциллоскоп» :)

Осциллоскоп на WebGL

Конкретно эти точки так и должны выглядеть — сигнал «замирает» на месте.
i.imgur.com/rg7x1dI.png

Осциллоскоп на WebGL

>эти сегменты накладываются и получаются светящиеся точки в местах сцепления.
Как раз, нет. Благодаря тому, что я расчитываю интеграл интенсивности, два смежных отрезка будут выглядеть хорошо.
Именно эта «проблема» с яркими точками на соединении отрезков отлично решается с помощью математики :)

Осциллоскоп на WebGL

Технически — да. «gl.blendFunc(gl.SRC_ALPHA, gl.ONE);»

Но я включил JS в хабы потому что woscope написан с использованием JS. Интересующиеся могут почитать на гитхабе.
Да и WebGL использовать без JS не получится :)
Код на JS не включен в статью потому что он, в основном, является бойлерплейтом для загрузки данных и работы с WebGL.

Information

Rating
5,991-st
Date of birth
Registered
Activity