This package provides symmetric encryption of large files using RSA keys.
It provides a class that takes the path of one file and generates a random encryption key.
The class can create an output file to store the encryption key, reads the input file in chunks of a small size, encrypts the file data using the AES-256-CBC cypher, and then uses a given RSA key to encrypt the resulting data with a public key before storing the data in a file.
It can also do the opposite by reading a previously encrypted file, decrypting the file data using a private RSA key, reading the encryption key from the file, reading the file chunks, decrypting the file chunks using an AES-256-CBC cipher, and storing the decrypted chunks in the output file. |