in reply to authentication via cookies

One thing that I used to do before my birth in the Perl realm was to use type=hidden form tags to pass data from one page to another. This included a session ID, username, basically any information that you needed each page to have. It could get messy, but it was very easy to construct.

That being said, and not having looked at it myself, CGI::Session sounds right up your alley!
/\ Sierpinski