Size: a a a

Хирьянов Т.Ф., Практика программирования на Python 3 (2019)

2020 July 14

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
да jit это дело десятое
источник

ДК

Даниил Кустов... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Nick Pershyn
Там компилятор такие оптимизации делает, которые меняют сложность алгоритмов...
Циклы векторизуют насколько я помню
источник

NP

Nick Pershyn in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Циклы?
источник

ДК

Даниил Кустов... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
В cpp компиляторы на уровне оптимизации O2
источник

NP

Nick Pershyn in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Я говорю про Хаскел.
источник

ДК

Даниил Кустов... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Ячо знаю про хаскел
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Даниил Кустов
В cpp компиляторы на уровне оптимизации O2
ну классно ломать то что никто не защищал
источник

ДК

Даниил Кустов... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
и заявлять что можно че угодно взломать
источник

ДК

Даниил Кустов... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
О чо нашол
источник

ДК

Даниил Кустов... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
mr.slavik
ну классно ломать то что никто не защищал
Так бери та обфусцируй да протекти
Кто мешает то? :D
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
я как бы тоже взломаю на изи с text секцией
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Даниил Кустов
Так бери та обфусцируй да протекти
Кто мешает то? :D
да мне не надо тестить
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
уже все протестили
источник

NP

Nick Pershyn in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Ну хорошо, даже с плюсами. В функциональном стиле у меня будут одни лямбды, хвостовые рекурсии, корутины и везде константы.
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
есть продукты которые тупо ты или покупаешь или идешь нахрен
ближайшие 10000 лет восстанавливать код
источник

ДК

Даниил Кустов... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Nick Pershyn
Ну хорошо, даже с плюсами. В функциональном стиле у меня будут одни лямбды, хвостовые рекурсии, корутины и везде константы.
Ну больно будет тому кто реверсить будет
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Переслано от mr.slavik
а вообще - для защиты серьезного ПО используют MCFACT

Сейчас вот попалось на глаза. Может будет интересно, раз упоминал выше о защите Steinberg Cubase 5. Цитаты с трекера.

Кусок из интервью со взломщиками

В: Но нам пришлось чертовски долго ждать этот релиз - Почему?
О: Было потрачено большое количество времени, чтобы изучить и обойти нынешнюю Syncrosoft защиту. Сами подумайте: около 25 процентов програмного кода охраняются MCFACT* и, следовательно, связаны с защитой. Как вы можете догадаться, усилия, приложенные для обхода такой защиты, требовались немалые. На этот раз нам потребовалось почти 4000 человеко-часов, чтобы справиться с этим "зверем"!

Там же пояснения

MCFACT - Multi-Channel-Finite-Automata-Code-Transformation метод защиты кода программ и данных за счет преобразования их в конечный автомат. Преобразованный код программы в состоянии обработать зашифрованный код программы, без расшифровки данных. Ни преобразованный код программы, ни какие-либо данные не расшифровываются до, во время или после выполнения операции.
Обработка зашифрованных данных, без расшифровки во время выполнения, преобразованный код программы выполняется виртуальной единицей обработки. Конечные автоматы выполняют фактическую операцию и шифрование операции в один заход. Состав конечных автоматов гарантирует, что никакие промежуточные простые данные или информация об операции не могут быть восстановлены.

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

Если хакер хочет взломать таблицы автоматов, он вынужден анализировать большой многоканальный конечный автомат. Опыт взлома больших конечных автоматов был получен например, анализом Китайского алгоритма открытого ключа FAPKC (Finite Automaton Public Key Cryptosystem). Одна из версий этого алгоритма была сломана за счет полного изменения открытого ключа. Однако, сегодня нет никакого известного подхода (теперь уже есть))), чтобы сломать этот алгоритм, используя декомпозицию. Реверсинг (реверс-инжиниринг) не является проблемой безопасности для MCFACT, никакая информация о внутренней структуре не может быть получена, используя этот подход.

P.S. Это очень вольный перевод, но думаю понятно что сломать все это было очень сложно!
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
5й кубейс - последний который взломали
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
сейчас уже 10й
и с аппаратными токенами
у меня с программным elicenser
как раз от syncrosoft
источник