Korn explained it to me but I already forgot how it went...

so upon connecting to a server...the client sends the CD Key Hash and then server server sends it to GameSpy to compare it to a hash database?