From Valve Developer Community
Jump to: navigation, search

ICE stands for Information Concealment Engine. It is a 64-bit private key block cipher, in the tradition of DES. However, unlike DES, it was designed to be secure against differential and linear cryptanalysis, and has no key complementation weaknesses or weak keys. In addition, its key size can be any multiple of 64 bits, whereas the DES key is limited to 56 bits.

Valve implemented ICE as a simple, and effective way of tamper-proofing a script file (using a 64-bit (8 bytes) key). You can ICE encrypt any file, as long as you have access to the code that loads it into the game.

For instructions on encryption and decryption, see Vice. The file format used by these encrypted files is CTX and NUC.

Encryption keys

Game Key
Half-Life 2: Deathmatch x9Ke0BY7
Source code default
Counter-Strike: Source AND Counter-Strike: Global Offensive d7NSuLq2
Day of Defeat: Source Wl0u5B3F
Team Fortress 2 E2NcUkG2
A5fSXbf7 (items.ctx only)
Left 4 Dead 2 SDhfi878
The Ship eb3A4m79
Contagion fUk0fF69 (.ctx weapon scripts)
5!rrFz6p (.nuc VScripts)
Zombie Panic! Source 5R0ni0pZ

See Also