Sounds like what you're looking for would be a little program that would allow the user to input a password, then check an authentication server to see if that password is valid, and then, if so, send an unlock key or command to the program to decrypt/unzip the file.

I don't know of anything that would do that offhand, but I don't think it would be too difficult to create. You could also potentially set it up so the password was usable only a certain number of times after which it would automatically disable.

That sounds like a really good idea... hmmmm