Encrypt PDFs with AES on iOS

Nutrient iOS SDK bundles two tools you can use to encrypt documents with AES:

  1. Our AESCryptor tool
  2. The cryptor-cli command-line tool

AESCryptor tool

When downloading Nutrient iOS SDK, we include a tool called AESCryptor, which lets you encrypt and decrypt files with ease. It’s located in the downloaded .dmg in Extras > AESCryptor > AESCryptor.app.

  1. Open the AESCryptor application and select the file you want to encrypt under Input. A Finder window will open and allow you to select your desired document.
  2. Now you need a password and salt to safely encrypt your file. This example uses the following values provided in AESCryptoDataProviderExample.swift.
  • Password: afghadöghdgdhfgöhapvuenröaoeruhföaeiruaerub
  • Salt: ducrXn9WaRdpaBfMjDTJVjUf3FApA6gtim0e61LeSGWV9sTxB0r26mPs59Lbcexn
  1. Now click Encrypt to complete the encryption process.

Here’s how it should appear in the end:

cryptor-cli

Nutrient iOS SDK bundles the cryptor-cli tool, which allows you to encrypt and decrypt files on a server. cryptor-cli is a standalone command-line tool written in Go, so it’ll work on Windows, macOS, and Linux/Unix. You can find cryptor-cli in the distribution DMG under Extras/cryptor-cli.

Build

To build cryptor-cli on your system, follow these steps:

  1. Install Go(opens in a new tab). On Windows and macOS, package installers are available, and on Linux, you have to build from source.
  2. cd to the cryptor-cli directory.
  3. Type go build.

Use

Terminal window
./cryptor-cli -h
Usage of ./cryptor-cli:
-f=false: force overwrite of output file
-in="": input file
-o="encrypt": operation, can be [encrypt, decrypt]
-out="": output file
-p="": passphrase
-s="": salt (optional)

Encrypt example

Terminal window
./cryptor-cli -o "encrypt" -in "path/to/original.pdf" -out "path/to/encrypted" -p "test123" -s "salt"

Decrypt example

Terminal window
./cryptor-cli -o "decrypt" -in "path/to/encrypted" -f -out "path/to/decrypted.pdf" -p "test123" -s "salt"