RC6 : BO2K IDEA Encryption V0.2
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Author: Maw~
Contact: maw@wynne.demon.co.uk
Addr: http://www.wynne.demon.co.uk/maw/

What is it?
^^^^^^^^^^^
An encryption engine for BO2K using the AES 2nd round, RC6 algorithm.
Written in the UK this can be downloaded by anyone in the world since
it is being released to the public.

RC6 was designed by RSA Labs & they do hold patents on it. RC6Encrypt is
currently for *evaluation* only (thus allowing free dl), please report your
thoughts on RC6 to RSA. The availability of RC6Encrypt after the AES algorithm
has been chosen may change.

How do I use it?
^^^^^^^^^^^^^^^^
Simply install it as another plugin in both client & server. Set
the password (up to 256 chars) 

Make sure to tell the bo2k server to use RC6 to encrypt commands & file
transfers (in the bo2kcfg util under "Startup" and "File Transfers").

How do I compile it?
^^^^^^^^^^^^^^^^^^^^
Setup a standard Win32 DLL project. Import the files(including the .def file)
as well as config.cpp from the BO2K SDK. Make sure the BO2K headers are in the
include path. In the "Project Options" box under project settings
(Project->Settings->Link Tab->Project Options Box) add:
"/SECTION:.data,RW /SECTION:.rdata,RW" (minus quotes, duh).
And compile. Contact me if you have any problems.
	OR
Download the VC5 project file from the web page, open it up in VC and add in
config.cpp (from the BO2K SDK) and alter the Project->Settings->C\C++->
Preprocessor->Additional Include Directories field to the include directory
in the BO2K SDK root dir and then compile.

*ALWAYS* Use & Compile the Release Version! Use the debug version for debuging only
(Sounds obvious, but you'd be suprised...)

You will get the following 3 errors:
	C:\IDEAEncrypt\tiger.c(161) : warning C4035: 'tiger_compress' : no return value
	C:\IDEAEncrypt\tiger.c(161) : warning C4101: 'i' : unreferenced local variable
	C:\IDEAEncrypt\tiger.c(220) : warning C4035: 'tiger' : no return value
in tiger.c but just ignore them.

CBC Mode?
^^^^^^^^^
Yes!
Cipher Block Chaining Mode. Basically makes sure than no one can under
stand a simple packet of communication without knowing all the packets
which came before it. Basically keep it enabled unless it fails (due to 
packet loss or something).


Speed
^^^^^
Quite fast. Next version will be faster.

Security\Key Size
^^^^^^^^^^^^^^^^^
Although RC6 can use massive keys, this version is limited to 384-bit keys.
This is way big enough unless your scared of some Dr.Who TimeLords evesdropping
on you (your not that important :).

Comparison to 3DES
^^^^^^^^^^^^^^^^^^
3DES has an effective key length of 168-bits and so brute force wise it
is less secure than RC6Encrypt & the NSA had a part in developing it.

Thanks
^^^^^^
To Daniel Roethlisberger & Albert Yang
To the cDc & DilDog for BO2K and a damn good show at Defcon...

Maw~
Just helping things along.
