I ran into this myself recently. Rubyzip is a wrapper around the zlib compression library. Zlib itself doesn't support password protected zips. There is another library made by the same folks that created zlib called Info-zip. It does support password protection but you'll have to write your own to wrapper to make it a Ruby extension. N.B. There's a comment in the source for info-zip that implies that the password protection handling is hard to work with. I found that to be the case. In the end, I purchased a third party compression library (from ChilKat).