Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #74, ФЕВРАЛЬ 2005 г.

Пишем профессиональную защиту

GPcH (www.dotfix.net)

Хакер, номер #074, стр. 074-112-5


Подробнее о вставке ассемблерных процедур в код на VB можно прочитать в двух моих статьях на эту тему на сайте www.dotfix.net.

В этом методе также рекомендую использовать глючную арифметику. Крэкер вряд ли сможет написать генератор ассемблерных процедур, не зная, что твоя программа способна на такие приколы.

Вывод

Если, прочитав про последний метод защиты, ты ничего не понял, но имеешь желание разобраться, придется ознакомиться с работой ассемблерных процедур, запускаемых из-под VB, и почитать документацию к ассемблеру nasm (лежит также на моем сайте). Только тогда все встанет на свои места. Описанные методы - практически максимум, что можно выжать из VB в плане защиты. Все необходимое: класс-модуль blowfish, документацию по nasm'у и электронные варианты моих статей по вставке ассемблерных процедур в код на Visual Basic - естественно, можно найти и на диске.

Public Function GetFunction(xStringToCrypt, xStringKey)

'если имя функции меньше имени пользователя - нарастим

If Len(xStringKey) < Len(xStringToCrypt) Then

For i = 1 To Len(xStringToCrypt)

xStringKey = xStringKey & xStringKey

If Len(xStringKey) > Len(xStringToCrypt) Then Exit For

Next

xStringKey = Mid$(xStringKey, 1, Len(xStringToCrypt))

'иначе урезаем имя функции :) - это недопустимо - сделай проверку этого сам

Else

xStringKey = Mid$(xStringKey, 1, Len(xStringToCrypt))

End If

'шифруем

For i = 1 To Len(xStringToCrypt)

sCrypt = Asc(Mid$(xStringKey, i, 1)) Xor Asc(Mid$(xStringToCrypt, i, 1))

sCryptedString = sCryptedString & Chr(sCrypt)

Next

sRepeateString = InStr(2, sCryptedString, Left$(sCryptedString, 4))

If sRepeateString > 0 Then sCryptedString = Left$(sCryptedString, sRepeateString - 1)

GetFunction = sCryptedString

End Function

CD

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

WWW

Если у тебя журнал без диска, то модуль со всеми описанными в статье функциями сливай с www.dotfix.net/xdocsrc.rar

INFO

Полезные статьи по теме ты всегда можешь найти на сайте www.dotfix.net. Там же почитай про использование ассемблерных процедур. Еще советую тебе шифровать строки в программах, для этого скачай прогу VB AntiCrack.

WARNING

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

Назад на стр. 074-112-4  Содержание