Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
You are not logged in - nap
CSDb User Forums


Forums > C64 Coding > Cartridge protection
2025-05-23 03:55
DanPhillips

Registered: Jan 2003
Posts: 42
Cartridge protection

Armalyte Ultra cartridge:

Now, normally there's one "smart" guy making an attempt at adding anti piracy measures to a product, and "loads" of people then trying to break it.

I know we will go down the "custom" cart that probably won't be supported by vice...until we release a version that does.
Adding something like DMA or hardware decompression, would have to actually enhance the game in some way :)

But what else could be done?

Thought it might be an interesting challenge for who could come up with the best scheme, maybe we could do custom versions with different schemes and see who's gets cracked first ? :)

Discussion or DM...up to you

Cheers

Dan
2025-05-23 08:09
tlr

Registered: Sep 2003
Posts: 1814
An elaborate code wheel is fairly efficient. Quite a hassle for the legitimate player though, but that’s inherent in the DRM concept.
2025-05-23 09:02
Krill

Registered: Apr 2002
Posts: 3098
Properly encrypt* some later part of the game, with the key not contained in the game package.

Once a player has reached that part, they are asked for a pass-phrase to go on.

That pass-phrase is provided by the publisher after authentication and verification of player legitimacy, and hashed by the game to obtain the decryption key to go on playing.

Optionally, encrypt more later stages, too, or have a unique encryption key for a given retail copy such that a "leaked" pass-phrase can cause no harm.

* Decryption using a modern stream cipher with a reasonable amount of key bits should be no problem for the 1 MHz 6510 while still taking modern hardware quite a while to brute-force.
2025-05-23 10:29
cadaver

Registered: Feb 2002
Posts: 1163
Additional userport dongle that the game communicates with to obtain decryption keys for code/data assets. Code that communicates with the dongle is heavily obfuscated and run through a virtual machine, and some unique accesses will only happen during the later parts of the game.
2025-05-23 10:33
Krill

Registered: Apr 2002
Posts: 3098
Quoting cadaver
Additional userport dongle
Can we assume blank cheque for the BOM? =)

.oO( Run the entire game from Blackbox-FPGA-C-64 in the Cartridge, with C-64 in Ultimax mode. )
2025-05-23 10:37
Burglar

Registered: Dec 2004
Posts: 1137
@Dan, you want to protect the cartridge itself from being cracked to vice-supported .crt/easyflash, right? and it should be hard/impossible to crack to disk?

an unsupported cartridge type would probably work for a while, but you'll also lock out legal users that just want to play it on their emu...

@Krill, leaking keys is an issue, only one version needed with correct keys to crack it...
2025-05-23 10:44
Krill

Registered: Apr 2002
Posts: 3098
Quoting Burglar
@Krill, leaking keys is an issue, only one version needed with correct keys to crack it...
Hence unique key for each retail copy.

Having more than one retail copy might allow for some differential cryptanalysis, but would still take a while to crack. =)
2025-05-23 10:45
Krill

Registered: Apr 2002
Posts: 3098
And yes, the X-Y problem question came to mind first when reading the OP.
2025-05-23 10:49
Krill

Registered: Apr 2002
Posts: 3098
Quoting Burglar
@Krill, leaking keys is an issue, only one version needed with correct keys to crack it...
Ah, now i get your point. Well... leaking player is uniquely identifiable and could get in legal trouble. =)

Also, pass-phrases could not be given out until X amount of time after copy is bought.
Primary goal is to delay a crack, inevitableness of it being a given.
2025-05-23 13:10
tlr

Registered: Sep 2003
Posts: 1814
Also: the requirements for copy protection is very different from emulation protection.

For copy protection just make the game depend fully on some non-trivial hardware extension, e.g a blitter. It has to be such that it wouldn’t be possible to implement without it.

For emulation protection your only real choice is obfuscation. Have a cartridge implementation containing lots of states, file numbers of chips and fill with black epoxy.

Just be aware that doing these things make a tempting challenge for some. 😉
2025-05-23 13:22
hedning

Registered: Mar 2009
Posts: 4807
Design a really hard-to-crack copy protection for a C64 game cartridge that integrates a Raspberry Pi Pico, that involves taking advantage of both hardware-level obfuscation and dynamic, hard-to-emulate behavior? (Challenge-Response Cryptographic Check, Dynamic Behavior/Time-Variant Checks, Encrypt Game Code in ROM, and Hardware Fingerprinting). :D
 
... 11 posts hidden. Click here to view all posts....
 
Previous - 1 | 2 | 3 - Next
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
zzarko/Avatar
Didi/Laxity
Guests online: 135
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Codeboys & Endians  (9.7)
4 Mojo  (9.6)
5 Coma Light 13  (9.6)
6 Edge of Disgrace  (9.6)
7 Signal Carnival  (9.6)
8 Wonderland XIV  (9.5)
9 Uncensored  (9.5)
10 Comaland 100%  (9.5)
Top onefile Demos
1 Nine  (9.7)
2 Layers  (9.6)
3 Cubic Dream  (9.6)
4 Party Elk 2  (9.6)
5 Copper Booze  (9.5)
6 Scan and Spin  (9.5)
7 Onscreen 5k  (9.5)
8 Grey  (9.5)
9 Dawnfall V1.1  (9.5)
10 Rainbow Connection  (9.5)
Top Groups
1 Artline Designs  (9.3)
2 Booze Design  (9.3)
3 Oxyron  (9.3)
4 Performers  (9.3)
5 Censor Design  (9.3)
Top Coders
1 Axis  (9.8)
2 Sailor  (9.8)
3 Lft  (9.8)
4 Graham  (9.8)
5 Crossbow  (9.8)

Home - Disclaimer
Copyright © No Name 2001-2025
Page generated in: 0.08 sec.