Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.13;
Скачать: CL | DM;

Вниз

Алгоритм генерации серийника   Найти похожие ветки 

 
Blacki ©   (2003-02-28 10:29) [0]

Подскажите пожалуйста 2 алгоритма:
1. Проверка, подходит ли серийник к даному логину(этот будет в моей программе)
2. Генерация по логину серийника
Всё это для того чтобы для моей программы смогли сделать кряк но не генератор серийников.
Или просто подскажите урлами.


 
Delirium^.Tremens ©   (2003-02-28 10:31) [1]

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


 
mrcat ©   (2003-02-28 10:41) [2]


1. Проверка, подходит ли серийник к даному логину(этот будет в моей программе)
2. Генерация по логину серийника


Самый примитивный метод: делать свертку от логина (хэш-функция) с добавлением дополнительных параметров, указываемых при регистрации (только по логину делать не рекомендуется - вероятность совпадения = 1 для пользователей с одинаковым логином)


 
joint ©   (2003-02-28 13:07) [3]

Если в программе будет кусок кода в котором рассчитывается правильный серийник и сравнивается с введенным, то считай, что генератор серийников рано или поздно сделают. Может быть, подойдет такое:воспользовавшись какой-то системой несимметричного шифрования сгенерировать пару ключей. Секретный зашиваешь в программу, публичный держишь у себя. При регистрации программы создаешь свертку, как говорил mrcat; я бы дополнил, что можно в качестве доп.параметров использовать какую-то постоянную для данной машины информацию-напр. ID винта, видеокарты, и.т.д. Потом все это записываешь в какой-то файл и требуешь послать себе. У себя шифруешь эту инфу своим ключом и посылаешь обратно. Теперь когда программа запускается у клиента, она по новой делает свертку и пытаеся расшифровать то, что ты ей послал, ключом, который зашит в программе. Если результат идентичный, значит все Ок, можно работать, иначе-до свиданья.Таким образом, кроме тебя никто не сгенерирует за приемлимое время зашифованный твоим ключом файл, даже если у него есть секретный ключ и он знает, что именно ты шифруешь( по крайней мере так пишут в книгах:))


 
mrcat ©   (2003-02-28 13:14) [4]

joint © (28.02.03 13:07)
>>Секретный зашиваешь в программу


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


 
joint ©   (2003-02-28 15:09) [5]

Почему противоречит? Ведь там главное что по одной половине ключа нельзя сгенерировать другую, неважно, ту что используется для шифрования или дешифрования. Просто в большинстве задач важно, чтобы нельзя было сфальсифицировать открытый текст, а тут открытый текст особо не прячется, просто надо чтобы он соответствовал зашифрованному с нужным ключом; по-моему, если клиент перехватит ту информацию, которая используется программой для проверки и вычислит, как эту инфу получить для другой машины(пользователя), он не сможет ее зашифровать так, чтобы потом программа ее могла расшифровать. Конечно, такой метод можно обойти, заменив где-то в коде jnz на jmp, но это уже другой кусок защиты.


 
Anatoly Podgoretsky ©   (2003-02-28 15:40) [6]

joint © (28.02.03 15:09)
Из приватного ключа можно сгенерировать общий, наоборот нельзя.


 
Dms   (2003-02-28 15:42) [7]


> Всё это для того чтобы для моей программы смогли сделать
> кряк но не генератор серийников.

А какая разница ? Принцип что-ли ?


 
.::D.e.M.o.N.i.X::. ©   (2003-02-28 16:04) [8]

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


 
joint ©   (2003-02-28 16:12) [9]

Anatoly Podgoretsky © (28.02.03 15:40)
Согласен, не самую умную вещь предложил:(
Вернее перепутал общий о приватный ключи.


 
mrcat ©   (2003-02-28 17:15) [10]

joint © (28.02.03 15:09)
Почему противоречит? Ведь там главное что по одной половине ключа нельзя сгенерировать другую


http://www.racal.ru/rsp/rsa.htm
Здесь достаточно прозрачно описан принцип работы ассиметричного алгоритма RSA (см. ссылку); К тексту могу лишь добавить, что зная d, найти (n, e) не составит труда.


 
Blacki ©   (2003-02-28 18:03) [11]

2 mrcat © (28.02.03 10:41)
>Самый примитивный метод: делать свертку от логина (хэш-функция) с добавлением дополнительных параметров, указываемых при регистрации (только по логину делать не рекомендуется - вероятность совпадения = 1 для пользователей с одинаковым логином)


Так мне и не надо чтобы у разных имён былие разные пароли. Мне главное чтобы первый алгоритм не содержал самого алгоритма генерации, но мог проверит подходит ли серийник к имени. А второй алгоритм всё таки должен получать по логину серийник(надо же как то генерировать мне серийники). И код не подкинете, а то голой теории у меня и так полная голова


 
mrcat ©   (2003-02-28 18:39) [12]

Blacki © (28.02.03 18:03)
Мне главное чтобы первый алгоритм не содержал самого алгоритма генерации, но мог проверит подходит ли серийник к имени. А второй алгоритм всё таки должен получать по логину серийник(надо же как то генерировать мне серийники).


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

Помимо этого, невозможно проверит подходит ли серийник к имени не сопоставив имя, либо серийник алгоритму генерации...


 
Фома   (2003-03-02 01:21) [13]

Еще генератор случайных чисел можно привинтить, а логин использовать как вектор инициализации...

И потом это регистрилово продавать как самостоятельный продукт...:)))



Страницы: 1 вся ветка

Текущий архив: 2003.03.13;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.013 c
3-39183
7Up
2003-02-20 13:34
2003.03.13
Ошибка функции ConfigDSN...


14-39473
copyr25
2003-02-25 13:51
2003.03.13
Созданная независимость поведения программы.


1-39411
frizZ.
2003-03-01 20:26
2003.03.13
Посчитать строку


14-39518
Gydrop
2003-02-25 23:07
2003.03.13
Значение ключа по умолчанию в реестре


4-39640
maxim2
2003-01-22 09:08
2003.03.13
Послать сообщение окну