Encrypto is a service encrypting files, without storing the encrypted files. Encrypto only stores the information required to decrypt a file.
Email: info@bonaroo.nl
Encrypto encrypts your files while not storing them. Encrypto does store the secrets to decrypt the file. To encrypt a file, you should upload the file (plaintext) to encrypto using the API. The encrypted file (ciphertext) is returned as a response, which your application should save.
When you need to decrypt the file, upload the encrypted file (ciphertext) and the original file is returned (plaintext).
The uploads are limited to roughly 50MB in size. If you need to encrypt larger files, please let us know.
Encrypto does never log or save your files, only their secrets to decrypt the files. If your encrypted files are leaked, they're unreadable without the secrets to decrypt them. A potential attacker must either use encrypto to decrypt the files, or somehow also hack encrypto to get the secrets. This drastically increases the difficulty to steal your sensitive files.
For all API requests, you need to add Authorization: Bearer $TOKEN
to your request.
GET /hello
Returns the current user.
{ "hello": "some-client-id" }
POST /keys
Create a new key that can be used to encrypt files.
{ "type": "cipher-aes-256-cbc" }
{ "id": "dd8e40c2-670a-4771-82f6-aaf6e51a6fcc",
"secret": null,
"type": "cipher-aes-256-cbc" }
POST /keys/:id/encrypt
Encrypt a string
request
Content-Type: application/octet-stream
(plaintext)
response
Content-Type: application/octet-stream
(ciphertext)
POST /keys/:id/decrypt
Decrypt a string
request
Content-Type: application/octet-stream
(ciphertext)
response
Content-Type: application/octet-stream
(plaintext)
TOKEN=""
PLAINTEXT="THIS IS A SAMPLE STRING"
CREATE_KEY_RESPONSE=$(curl --silent \
--header "Authorization: Bearer $TOKEN" \
--header "Content-Type: application/json" \
--data '{"type":"cipher-aes-256-cbc"}' \
https://encrypto.bonaroo.nl/keys)
ID=$(echo $CREATE_KEY_RESPONSE | node -p "($CREATE_KEY_RESPONSE).id")
curl --silent \
--header "Authorization: Bearer $TOKEN" \
--header "Content-Type: application/octet-stream" \
--data "$PLAINTEXT" \
https://encrypto.bonaroo.nl/keys/$ID/encrypt > ciphertext.enc
DECRYPTED=$(curl --silent \
--header "Authorization: Bearer $TOKEN" \
--header "Content-Type: application/octet-stream" \
--data-binary "@ciphertext.enc" \
https://encrypto.bonaroo.nl/keys/$ID/decrypt)
echo "RESULT:" $DECRYPTED
echo "See ciphertext.enc for the encrypted data."