2

I have a 12 word string that I want to encrypt securely and easily with my own long password in order to store the (preferably readable) result in writing in paper.

I'm basically looking for a step by step implementation of what Cryptocurrency Security Standard call "strong encryption".

I'm finding it hard to find a reliable, easy to use implementation to use in Linux. Preferably open source, with a GUI, and where you can simply enter the password, the string to be encrypted, and get the resulting string satisfying the encryption standard linked to above.

What could be used for this?

CLI could also work if not too complicated. I want a non-coder to be able to do it.

2 Answers 2

2

Gpg (GNU Privacy Guard) is a OpenPGP implementation.

There are several frontend applications, although I never tried any of them; I prefer the command line.

To encrypt:

gpg --symmetric --armor --cipher-algo AES 12-words.txt

It will prompt for a passphrase and create a 12-words.txt.asc file with encrypted data (ASCII characters).

To decrypt:

gpg --decrypt 12-words.txt.asc

It will prompt for the passphrase and output original data.

As an example, using this 12 words as input and 12345qwerty as passphrase:

first second third fourth fifth banana orange pineapple watermelon aircraft tree blue

Encrypted data looks like:

-----BEGIN PGP MESSAGE-----

jA0EBwMCTr1N5q0Sagbr0owBRP8NZZeOO34POa1Aszv6GW4z9DefxuFH+qKNRtPN
IyuftnFtXB2jftUKnlisyso2CWEfs20Pd1rAYtGAoa8u4+DUSvkDD097f32BI3TP
heXY8RyIIUTaBa2thSqOBQ3G/ZCNXM840F8oD8iHbPF+JEzfQ0wVwpTpAQZaInUo
AHWXH9k0hCwKxB4KcQ==
=8rgw
-----END PGP MESSAGE-----
0
1

A more bare-bones means of symmetric encryption with Rijndael is ccrypt. You can use Base64 to format the binary data in a way that's relatively easy to read and write by hand.

$ printf 'first second third fourth fifth banana orange pineapple watermelon aircraft tree blue' | ccrypt | base64
Enter encryption key: abc
Enter encryption key: (repeat) abc
lTWl9w6iBo14G3JYjLBcpxCGD92Bzsios6GhRKsQpCYdw73SQ67C8ZTNXTjpYGZ2Aj0iKXKKuY/L
/TlJyUmmFhJgidEujiUbKOnzo8X2Ml+/PK1hshOcHDLrPnIhhdCMP5tnVH7lQq2ql5gbZjKGuQ0S
QEfe

To decrypt, use base64 and ccdecrypt:

$ echo 'lTWl9w6iBo14G3JYjLBcpxCGD92Bzsios6GhRKsQpCYdw73SQ67C8ZTNXTjpYGZ2Aj0iKXKKuY/L/TlJyUmmFhJgidEujiUbKOnzo8X2Ml+/PK1hshOcHDLrPnIhhdCMP5tnVH7lQq2ql5gbZjKGuQ0SQEfe' | base64 -d | ccdecrypt 
Enter decryption key: abc
first second third fourth fifth banana orange pineapple watermelon aircraft tree blue

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.