Provided by: libcam-pdf-perl_1.60-3_all bug

NAME

       CAM::PDF::Decrypt - PDF security helper

LICENSE

       See CAM::PDF.

SYNOPSIS

           use CAM::PDF;
           my $pdf = CAM::PDF->new($filename);

DESCRIPTION

       This class is used invisibly by CAM::PDF whenever it detects that a document is encrypted.  See new(),
       getPrefs() and setPrefs() in that module.

FUNCTIONS

       $pkg->new($pdf, $ownerpass, $userpass, $prompt)
           Create and validate a new decryption object.  If this fails, it will set $CAM::PDF::errstr and return
           undef.

           $prompt is a boolean that says whether the user should be prompted for a password on the command
           line.

       $self->decode_permissions($field)
           Given a binary encoded permissions string from a PDF document, return the four individual boolean
           fields as an array:

             print boolean
             modify boolean
             copy boolean
             add boolean

       $self->encode_permissions($print, $modify, $copy, $add)
           Given four booleans, pack them into a single field in the PDF style that decode_permissions can
           understand.  Returns that scalar.

       $self->set_passwords($doc, $ownerpass, $userpass)
       $self->set_passwords($doc, $ownerpass, $userpass, $permissions)
           Change the PDF passwords to the specified values.  When the PDF is output, it will be encrypted with
           the new passwords.

           PERMISSIONS is an optional scalar of the form that decode_permissions can understand.  If not
           specified, the existing values will be retained.

           Note: we only support writing using encryption version 1, even though we can read encryption version
           2 as well.

       $self->encrypt($doc, $string)
           Encrypt the scalar using the passwords previously specified.

       $self->decrypt($doc, $string)
           Decrypt the scalar using the passwords previously specified.

AUTHOR

       See CAM::PDF