# File lib/prawn/security.rb, line 88 def encrypt_document(options={}) Prawn.verify_options [:user_password, :owner_password, :permissions], options @user_password = options.delete(:user_password) || "" @owner_password = options.delete(:owner_password) || @user_password if @owner_password == :random # Generate a completely ridiculous password @owner_password = (1..32).map{ rand(256) }.pack("c*") end self.permissions = options.delete(:permissions) || {} # Shove the necessary entries in the trailer. @trailer[:Encrypt] = encryption_dictionary @encrypted = true end