# EasyRSA.jl

This project **should not** be used in production environments under any circumstances.

This project is under development and totally free-to-use, feel free to contribute. I'm a student so forgive any possible problem and report it opening a issue. Ideas can also, and should, be sent.

## Technical reference

This project use as reference the original paper of RSA ("A Method for Obtaining Digital Signatures and Public-Key Cryptosystems").

# How to install

Just copy and paste the following command in Julia Terminal:

import Pkg; Pkg.add(url="https://github.com/Thiago-Simoes/EasyRSA.jl")

# How to use

### Generating keys

- Choose how many bits do you want for your keys.

bits = 512

- Generate your P and Q:

p, q = generate_p_q(bits)

- Generate your keys:

This returns a Tuple, respectively Public and Private Key.

keys = generate_keys(p, q)

### Encrypting

- Use your Public Key to encrypt your data.

msg = "Secret message."
encrypted_message = encrypt(msg, keys[1])

### Decrypting

- Use your Private Key to decrypt your data.

decrypted_message = decrypt(encrypted_message, keys[2])