No matter the medium of communication, all forms of encryption share the same “plain-text” and “cipher-text” transitioning.
To clarify, software dependent could be described to be something that requires the use of some piece of software during the encryption or decryption process. For example, a encryption program could be used by entering plain-text which is then piped through to generate cipher-text, similarly, a piece of software could be used in the decryption process as well where cipher-text is piped through to generate output of plain-text.
Both of these processes use algorithms to both decrypt and encrypt a set of data. For software independent forms of encryption, a key (or perhaps a password of some sort) is usually used to either decrypt or encrypt data. If a key is used for both the decryption and encryption of data, then the algorithm used would be under the category of symmetric cryptography, which is also known as private-key cryptography. On the flip side, asymmetric encryption (also known as public-key cryptography), uses two separate keys for encrypting and decrypting a set of data.
As documented in “Cryptography – Forms and Applications (Part 1)”, the following is a recap of the types of encryption one can encounter:
Software Dependent:
- Manual Encryption
- Transparent Encryption
- Semi-Transparent Encryption
Software Independent:
- Symmetric Encryption
- Asymmetric Encryption
Let’s look into each type to better understand the big picture, shall we?