forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Болтовня (http://forum.boolean.name/forumdisplay.php?f=25)
-   -   Система защиты - активация игры и ключи (http://forum.boolean.name/showthread.php?t=16050)

Данил 18.12.2011 10:44

Система защиты - активация игры и ключи
 
Вообще, на какой основе обычно генерируются ключи к играм?
И игры воспринимают их? Понимаю, что программа берет ключ, проверяет его - если сходится - то доступ разрешен. Если нет - то нет. Но какие вообще есть алгоритмы?

От балды, первый раз попробовал написать что-нибудь за 10 минут.
Смысл такой, что ключ состоит из цифр в 16сс (визуально) но с обратном счетом. сумма должна быть равна 200
пример ключа
9B39D-B2020-5BA4C-9E079-82DAE-E5DFF

Кстати, goto - ололо :)
Цитата:

SeedRnd MilliSecs()
Global key:String=NewKey()

Print key
Print TestKey()
Print DrawKey()



Function DrawKey:String()
Local key2:String
For i=1 To 30
key2=key2+Mid(Key,i,1)
If i Mod 5 = 0 And i<>30 Then key2=key2+"-"
Next
Return key2
End Function

Function TestKey:String()
Local a:Int
For i=0 To 30
'key=StrToInt
a=a+StrToInt(Mid(Key,i,1))
Next
Return "Key accept"
End Function

Function NewKey:String()
Local s:String
#start
S=""
A=200
B=0
C=0
D=0
For i=0 To 29
B=A
If A>15 Then B=15
If A<0 Then B=0
C=Rand(0,B)
A=A-C
D=D+C
s=s+inttostr(C)
Next
If D<200 Then Goto start
Return s
End Function

Function StrToInt:Int(str:String)
Select str
Case "0"; Return 15
Case "1"; Return 14
Case "2"; Return 13
Case "3"; Return 12
Case "4"; Return 11
Case "5"; Return 10
Case "6"; Return 9
Case "7"; Return 8
Case "8"; Return 7
Case "9"; Return 6
Case "A"; Return 5
Case "B"; Return 4
Case "C"; Return 3
Case "D"; Return 2
Case "E"; Return 1
Case "F"; Return 0
End Select
End Function

Function IntToStr:String(n:Int)
Select n
Case 0; Return "F"
Case 1; Return "E"
Case 2; Return "D"
Case 3; Return "C"
Case 4; Return "B"
Case 5; Return "A"
Case 6; Return "9"
Case 7; Return "8"
Case 8; Return "7"
Case 9; Return "6"
Case 10; Return "5"
Case 11; Return "4"
Case 12; Return "3"
Case 13; Return "2"
Case 14; Return "1"
Case 15; Return "0"
End Select
End Function

Wegox 18.12.2011 15:33

Ответ: Система защиты - активация игры и ключи
 
Лучше использовать не один ключ а три каждый должен отпереть определённый участок кода при это замочная скважина должны меняться местами.
Ключ должен быть связан с игровой логикой.

ABTOMAT 18.12.2011 19:30

Ответ: Система защиты - активация игры и ключи
 
Цитата:

Сообщение от Данил (Сообщение 214416)
Вообще, на какой основе обычно генерируются ключи к играм?
И игры воспринимают их? Понимаю, что программа берет ключ, проверяет его - если сходится - то доступ разрешен. Если нет - то нет. Но какие вообще есть алгоритмы?

От балды, первый раз попробовал написать что-нибудь за 10 минут.
Смысл такой, что ключ состоит из цифр в 16сс (визуально) но с обратном счетом. сумма должна быть равна 200
пример ключа
9B39D-B2020-5BA4C-9E079-82DAE-E5DFF

Кстати, goto - ололо :)


На основе ID железок. CPUID например. + можно количество оперативной памяти учитывать ну и вообще кто во что горазд. Чтобы на другом компе игрулька заругалась, что её не туда поставили.
Взываю Mr_F'а сюда, он пояснит.

Mr_F_ 18.12.2011 23:53

Ответ: Система защиты - активация игры и ключи
 
Цитата:

Взываю Mr_F'а сюда, он пояснит.
ну вроде пояснять больше нечего, ты уже сказал суть.
добавлю, что я такой же новичок в этом деле, поэтому мои советы вообще не обязательно слушать)
все ID железок легко подделываются.
конкретно я брал MAC адрес первого сетевого адаптера, возвращённого винапи (что является фейлом, т.к. подключили мы гпрс или вайфай - и прога уже не пашет), выполнял над ними извращенские преобразования и получал ключ.

Dream 19.12.2011 04:30

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

pax 19.12.2011 09:48

Ответ: Система защиты - активация игры и ключи
 
Дополнительный способ защиты: онлайн проверка ключа в базе на сайте. Причем можно сделать выполнение проверки например после пяти минут игры.

Данил 19.12.2011 10:53

Ответ: Система защиты - активация игры и ключи
 
А что делать, если интернета нету?)

upd
а, да, дополнительная...

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

.Squid 19.12.2011 13:05

Ответ: Система защиты - активация игры и ключи
 
DRM - зло.
Пиратство не такая страшная угроза, как ее описывают всякие Юбисофты.

Hurrit 19.12.2011 18:50

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

.Squid 19.12.2011 19:01

Ответ: Система защиты - активация игры и ключи
 
И самое печальное - это то, что DRM портит жизнь порядочным покупателям.
Аналогично

reumep 19.12.2011 23:06

Ответ: Система защиты - активация игры и ключи
 
Блин, очень просто, создай свою систему закачки контента типа Origin или Steam, распиарь ее, обеспечь стабильный онлайн, выпусти много игр, привлеки на свою сторону издателей, потом добавь привязку к аккаунту и к железу - вуаля, все просто

Nex 20.12.2011 03:44

Ответ: Система защиты - активация игры и ключи
 
Цитата:

Сообщение от reumep (Сообщение 214627)
Блин, очень просто, создай свою систему закачки контента типа Origin или Steam, распиарь ее, обеспечь стабильный онлайн, выпусти много игр, привлеки на свою сторону издателей, потом добавь привязку к аккаунту и к железу - вуаля, все просто

ололо


Часовой пояс GMT +4, время: 13:18.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot