Your primary means of protection, and in fact what most people probably first think of when you say you want to hide something from prying eyes, is going to be the protection of what I'm going to call "inactive" or "at rest" data. This could be something like a handwritten message on a Post-It Note, an address book, a file on a computer/phone/thumb drive, an email you want to send, a message left on someone's voicemail, a tweet, or really anything that is no longer actively "in your hands," so to speak. There are
many options to choose from, and which one(s) you use might be different depending on each situation. It is FAR beyond the ability of one short thread on some Internet forum to give you the optimal combination for every possible situation, so you will have to make some determinations on your own as to which and how many methods to use/combine. Just remember that making something more complicated does
not guarantee that it will also be more secure.
Now, on to the methods:
ENCRYPTION - A process by which an original message (called the "plaintext") is transformed into something unreadable without knowing how to transform it back to its original form. This is probably the first thing people think of using when they want to hide something. There are two main types:
CODES, where specific words/phrases are replaced with other,
different phrases/words (or "tokens"), and
CIPHERS, where the plaintext is subjected to some sort of content-agnostic process in order to transform it into gobbledygook (called the "ciphertext"). Codes can be
much harder to break, but they are also
significantly more complex to implement, as they require the use of a huge dictionary to translate back and forth. Data compression is a kind of code which tries to replace larger bits with smaller tokens in an attempt to save space. Unfortunately, the creation and use of effective codes is
way beyond the scope of this thread, so I will instead focus on ciphers.
Most people are familiar with ciphers in one way or another. For English-speakers,
ROT13 is a very popular
shift (or "Cæser") cipher. Many of you may have also played with
A1Z26, the
Pigpen cipher, or even
Morse Code at some point in your life. These are all very easy to remember, but they should
never be considered "secure" unless the only people you are hiding things from still have all their baby teeth, and even then there's no guarantee. And while even the added complexity of
polyalphabetic ciphers such as
Vigenère or WW2's famous
Enigma machines may be more than the average human can reliably solve by hand, they are still no match for the ability of even the simplest of modern computers.
There are two main types of cipher algorithms:
Symmetric and
Asymmetric. With a symmetric cipher, you use the same "key" (or "password") for both encryption and decryption, but with an asymmetric cipher, you use one key to encrypt, but a different key to decrypt. All of the examples linked in the previous paragraph are symmetric. Asymmetric methods are more complex to implement, but that alone does not guarantee they are more secure. Again, you should be matching the method to the need. These days, the strongest widely-available symmetric systems use either
Triple DES or
AES-256 (preferred), and the most popular asymmetric methods usually ride on top of
OpenPGP or
GnuPG (probably preferred).
If you are encrypting things you are going to
store on your own computer/phone/whatever, then you probably want to use 3DES or AES256 just for simplicity's sake due to requiring just the one password for both encryption and decryption. If you are encrypting things you will be
sending to another person/location, then one of the PGP variants would probably be better, mainly because PGP has the built-in benefit of authenticating the source, so you can be sure the file is coming from who you think it is. A more thorough explanation of why you probably want to do this can be found at the
Email Self-Defense site. The site gives steps for setting up PGP with a specific email application, but there is nothing saying you
have to use that one. It is the process that is important.
ENCRYPTION TOOLS:
AES
All:
AESCrypt - simple AES-256 tool available for most any platform.
PGP
Windows:
Gpg4win v3 (Win7 and up)
Mac:
GPG Suite (10.13.x or newer)
Linux: GnuPG (via your package manager of choice, or compile
from source)
3DES apps are not really recommended unless there is no choice, as 3DES is slower and less secure than AES256, plus there are issues when trying to encrypt more than 32GB of data.
Additionally, many file compression utilities either natively support added encryption or can use some form of encryption plugin:
7-Zip (Free - WinXP/2k or newer, macOS 10.9 or newer via
keka)
WinRAR ($30 - GUI on Windows XPSP3 and newer, but only command line tools for Linux, FreeBSD, macOS)
WinZIP ($30 - Vista and up/macOS 10.10 and up)
File compression utilities make it easy to bundle together multiple files together into one archive, and they can even make the resulting archive smaller and easier to store/transmit. HOWEVER... many compression utilities may default to an older,
weaker file format or form of encryption for backward compatibility reasons. Make
sure you explicitly select the AES256 (or PGP, or 3DES if there's nothing else) option before encrypting your file(s). Also, if you have any concerns that the manufacturers of these programs may have injected their own secret key to recover your encrypted documents, you can always use the compression part by itself and then use one of the other encryption tools listed in the previous section as a second step on the compressed archive(s).
There are two other things I would like to talk about, and they are:
STEGANOGRAPHY - The practice of hiding something unobtrusively within something else.
Thi
s c
ould be
some
thing as simple/d
umb as hiding a stu
pid message v
ia the first letter of each line, or even with only bol
ded letters. It is most frequently associated with
hiding one picture inside of another, but can also be used to hide information inside of
MP3s or just about any audio using phase cancelation. This could also be something like hiding a bunch of porn inside of a folder named "Thanksgiving Recipes."
There are many software tools of varying sophistication available for steganographic purposes. I will not go into all of them here, but be aware that when you embed secret data inside of other, public-facing data, the public data will be subtly changed, possibly in a manner that attracts the attention of an attacker who may not know exactly what is going on, but who can tell that
something is definitely going on. For instance, while it is technically possible to hide an entire feature-length DVD rip of
Broken Arrow inside of a 640x480 .JPG file of Mt. Rushmore, anyone who finds it is going to be suspicious why such a low-resolution image takes up something like 1.5GB of disk space.
MASKING/PADDING - Mehtods off obsufcarting uh massage thet wood fuel uh masheen butt knot uh hooman. This includes things like using
homonyms, l33tsp34k, CaMeL cAsE,
Typoglycemic text,
Rail fence/
zigzag/
scytale/
route ciphers, or even jxust ixnsertxing suxperfluxous chxaractexrs (also called "nulls"). You may recognize these as some of the same techniques that many unsolicited emails use to evade spam filters.
By themselves, these methods don't really do a whole lot to hide a message, but if a message is first subjected to one (or more) of these techniques and then subsequently encrypted, the added layer of complexity will make it significantly harder for a computer attack to break, as it will likely be looking for more recognizable content.