Важная информация

User Tag List

Страница 1 из 4 1234 ПоследняяПоследняя
Показано с 1 по 10 из 36

Тема: сложнопонимаемый алгоритм

  1. #1
    Banned
    Регистрация
    25.01.2005
    Адрес
    Miass, Chelyabinsk region
    Сообщений
    4,094
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию сложнопонимаемый алгоритм

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

    например, ксорка. если её записать в обычном своем виде, то мы запросто увидим, что она и как делает (это ж просто цикл!). если вытворять хитрости с кодом, типа, скажем, чтоб прыгала с адреса на адрес (используя стек), то это тоже не эффективно: достаточно посидеть и можно понять, что делается.

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

    может, кто-нить знает, как можно еще затруднить чтение алгоритма? может, 2 виртуальных процессора?

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2
    Guru
    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    13,560
    Спасибо Благодарностей отдано 
    1,223
    Спасибо Благодарностей получено 
    1,754
    Поблагодарили
    683 сообщений
    Mentioned
    67 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    А для чего такие извраты?
    Все равно крекнут (если надо будет)

  4. #3
    Veteran Аватар для Sinus
    Регистрация
    29.01.2005
    Адрес
    Belarus, Grodno
    Сообщений
    1,279
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

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

    допустим: LD HL,100

    Код:
        PUSH DE
        PUSH BC
        EX AF,AF'
        PUSH AF
        LD B,15
        LD HL,85
    L0  ADD A,(HL)
        SUB B
        INC HL
        DJNZ L0
        POP AF
        EX AF,AF'
        POP BC
        POP DE
    и так по 4-8 вариантов на каждую комманду.
    тормозить будет и объём кода вырастет, но разбираться в нём надо будет ооочень долго
    [target] [zemu] [js8x] [pouet] KAY-1024, 5''FDD, 3''FDD, HDD

  5. #4
    Banned
    Регистрация
    25.01.2005
    Адрес
    Miass, Chelyabinsk region
    Сообщений
    4,094
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus
    А для чего такие извраты?
    Все равно крекнут (если надо будет)
    не, конечно крекнут, если прям НАДО но надо чтоб желание КРЕКАТЬ пропало

  6. #5
    Banned
    Регистрация
    25.01.2005
    Адрес
    Miass, Chelyabinsk region
    Сообщений
    4,094
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sinus
    пишешь свой ассемблер...
    во, а это даже интересно!)) блин, классно придумано) практически то, что надо

  7. #6
    Guru
    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    13,560
    Спасибо Благодарностей отдано 
    1,223
    Спасибо Благодарностей получено 
    1,754
    Поблагодарили
    683 сообщений
    Mentioned
    67 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от psb
    не, конечно крекнут, если прям НАДО но надо чтоб желание КРЕКАТЬ пропало
    Вряд ли пропадет, из принципа крекнут

    Хотя зачем крекать, если сейчас в любом эмуляторе программу останови и все готово.

  8. #7
    Master
    Регистрация
    17.05.2005
    Адрес
    г. Абакан
    Сообщений
    694
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Помнится еще в школе написал програмку типа хитрого скроллера, фишка была в оптимизации по памяти, т.е. требовалось запихать в минимальный объем, в качестве оптимайзера были применены куча условных и безусловных переходов. Когда друган сел разбирать ее "на запчасти" чтобы посмотреть как это работает, черз день выдал фразу: "работать недолжно, ибо бред, но РАБОТАЕТ"...
    О какой либо защите я тогда даже не задумывался...

  9. #8
    Activist Аватар для Jukov
    Регистрация
    03.12.2005
    Адрес
    Серов
    Сообщений
    491
    Спасибо Благодарностей отдано 
    13
    Спасибо Благодарностей получено 
    38
    Поблагодарили
    13 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Не тратьте время на ерунду. Время, когда на Спектруме можно было защитить программу было и ушло. Более менее надёжный вариант защиты кода программы, это использование аппаратного ключа типа тех, что вставляют в LPT на IBMках. Но и здесь найдутся умельцы, правда уже в меньшем количестве, которые его взломают.
    Кстати, а что защищать-то собрался? Объект-то хоть стоящий?

  10. #9
    Guru Аватар для newart
    Регистрация
    19.01.2005
    Адрес
    Санкт-Петербург
    Сообщений
    11,440
    Спасибо Благодарностей отдано 
    192
    Спасибо Благодарностей получено 
    145
    Поблагодарили
    61 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Jukov
    Не тратьте время на ерунду. Время, когда на Спектруме можно было защитить программу было и ушло. Более менее надёжный вариант защиты кода программы, это использование аппаратного ключа типа тех, что вставляют в LPT на IBMках. Но и здесь найдутся умельцы, правда уже в меньшем количестве, которые его взломают.
    Кстати, а что защищать-то собрался? Объект-то хоть стоящий?
    Про спектрум вроде никто и не говорил...

  11. #10
    Master Аватар для Vladimir Kladov
    Регистрация
    09.02.2005
    Адрес
    Новосибирск
    Сообщений
    933
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    17 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Пишешь свой ассемблер... Для таких извратов существуют МАКРОСЫ и DEFINE's. В нормальных ассемблерах, по крайней мере.
    Последнюю версию EmuZWin (2.7) можно получить по этой ссылке, а "официальная" страница с описанием здесь. Если что-то не пашет, берите там же версии 2.6 или старше. [B]

Страница 1 из 4 1234 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •