in the past (pre-steam) the packets used a simple encryption algorithm that you can find on my website:
http://mirror.aluigi.org/papers/hldec.h
http://mirror.aluigi.org/papers/hlenc.h
then CS adopted an additional bzip2 compression which I don't remember if was pre or post encryption.
For the rest I don't know what is the current situation but I think that this old algorithm is still in use (search for COM_Munge and COM_UnMunge, they are the official names used by Valve)