Skip to content

coolbutuseless/rmonocypher

Repository files navigation

Encryption for R Data

CRAN R-CMD-check

{rmonocypher} provides a simple, high-level interface for easily encrypting R objects using a strong, modern cryptographic technique.

The key use-case this package addresses:

I want to easily encrypt and save data to a public location 
(e.g. shared drive, cloud drive, etc) which only I can decrypt.

What’s in the box

  • decrypt()/encrypt() read/write encrypted R objects to file
  • argon2() derives encryption keys from passwords
  • rbyte() generates secure random bytes using your operating system’s CSPRNG.

Technical bona fides

Installation

This package can be installed from CRAN

install.packages('rmonocypher')

You can install the latest development version from GitHub with:

# install.package('remotes')
remotes::install_github('coolbutuseless/rmonocypher')

Pre-built source/binary versions can also be installed from R-universe

install.packages('rmonocypher', repos = c('https://coolbutuseless.r-universe.dev', 'https://cloud.r-project.org'))

Read/write data to an encrypted file

Encrypt any R object and save to file.

encrypt(mtcars, dst = "SharedDrive/mydata.dat", key = "mykey")

Then decrypt the object using the same key.

decrypt(src = "SharedDrive/mydata.dat", key = "mykey")

For more details on how passwords are used to derive encryption keys, and for other ways of supplying and generating keys see the Vignette: Encryption Keys.

Vignettes

  • Encryption Keys
    • Generating encryption keys from passwords with argon2()
    • Using random bytes as the encryption key
    • Using hexadecimal string as the encryption key
  • Technical Notes
    • Background on the encryptiong techniques used
  • Using Additional Data
    • Advanced technique which is not needed for regular use of this package.
    • Details on using additional data
    • Worked example

About

Easy to use encryption tools for R

Resources

License

Unknown, MIT licenses found

Licenses found

Unknown
LICENSE
MIT
LICENSE.md

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published