This blog will guide you on how to create a Ruby on Rails application and add rubyzip which used to make zip files with Password Protection.

Let’s have a brief introduction about Password Protection using rubyzip. If you are familiar with rubyzip and Password Protection, then directly go to the Implementation section.

What is Rubyzip?

  • It’s a ruby gem (library) that is used to read and write zip files.
  • rubyzip provides you with the power of reading and writing zip files and also makes password-protected zip files.

Why Rubyzip?

  • Complete password protected reading and writing of zip files
  • rubyzip provides traditional password protection.


  • Ruby 1.9.2 or greater

Technology Stack


  • Create a new rails app

$ rails new zipper --database=postgresql

  • Now put below gem in the `Gemfile` as

gem 'rubyzip', '>= 1.0.0'

Don’t forget to bundle 😉

  • Generate a controller with the `create` and `new` method

rails g controller zipping_folders new

  • Simply set the root path to zipping_folders new method and make resource path for only create method in routes.rb

resources :zipping_folders, only: [:create]
root ‘zipping_folders#new’

  • Now make a form in new.html.erb with one file tag to choose files and two input fields that define zip file name and password respectively.

  • You have to write below code in zipping_folders_controller.rb.

Bingooo!!! That’s it..!!!

You can find complete codebase here.

Read Also : File Upload with Box Using Ruby on Rails

Consulting is free – let us help you grow!