Privacy, in the context of today's high-tech world, is the right to control one's personal information and
to conduct private communications. Whenever our information is accessed by an unauthorized party,
our right to privacy is violated. Thus, it must be emphasized that the following concepts ONLY applies
to a strictly delimited number of parties who agree to share and trust each other thereby excluding anyone else.
The following provides some information about data encryption ( a.k.a cryptography) in general as a means to protect the privacy of the information sent over transmission lines.
The subject is too vast and enormously complex and as such an even decent coverage goes way beyond the scope of this page.We will only attempt a very short overview.
Cryptography deals with all aspects of secure messaging, authentication, digital signatures,
electronic money, and other applications.
In cryptographic terminology, the message is called plaintext or cleartext. Encoding the contents of the message in such a way that hides its contents from outsiders is called encryption. The encrypted message is called the ciphertext. The process of retrieving the plaintext from the ciphertext is called decryption. Encryption and decryption usually make use of a key, and the coding method is such that decryption can be performed only by knowing the proper key.
Cryptology is the branch of mathematics that studies the mathematical foundations of cryptographic methods. Cryptanalysis is the technique of breaking ciphers, i.e. retrieving the plaintext without knowing the proper key. People who do cryptography are cryptographers, and practitioners of cryptanalysis are cryptanalysts.
If the key/encoding method is lost or forgotten the encrypted
document/message becomes unusable.
The key used for decryption can be different from the encryption key, but for most algorithms they are the same.
There are two classes of key-based algorithms, symmetric (also known as
"conventional" or "secret key") and asymmetric
(or "public-key") algorithms. The difference is that symmetric
algorithms use the same key for encryption and decryption (or the decryption key is easily derived from the
encryption key), whereas asymmetric algorithms use a different key for encryption and decryption, and the
decryption key cannot be derived from the encryption key.
In a typical example of using an asymmetric algorithm each user, either sender or receiver
has a pair of keys: a public key and a private key. Messages
encrypted with one key can only be decrypted by the other key. The public
key can be published widely while the private key is kept secret.
So if Alice wishes to send Bob some secrets, she simply finds and verifies
Bob's public key, encrypts her message with it, and mails it off to Bob.
When Bob gets the message, he uses his private key to decrypt it.
Verification of public keys is an important step in such a scenario.
This is mostly relevant at the sender's end. Failure to verify
that the public key really does belong to Bob leaves open the possibility that
Alice is using a key whose associated
private key is in the hands of an enemy.
Digital Signatures
Some public-key algorithms can be used to generate digital signatures.
Several methods for making and verifying digital signatures are freely available.
The most widely known algorithm is RSA.
A digital signature is a block of data that was created using some secret key, and there is a
public key that can be
used to verify that the signature was really generated using the corresponding private key.
Digital signatures are used to verify that a message really comes from the claimed sender (assuming only the sender knows the secret key corresponding to his/her public key). This is mostly important at the receiver's end.
They can also be used to timestamp documents: a trusted party signs the document and its timestamp with his/her secret key, thus testifying that the document existed at the stated time.
Digital signatures can also be used to testify (or certify) that a public key belongs to a particular person. This is done by signing the combination of the key and the information about its owner by a trusted key. The reason for trusting that key may again be that it was signed by another trusted key. Eventually some key must be a root of the trust hierarchy (that is, it is not trusted because it was signed by somebody, but because you believe a priori that the key can be trusted). In a centralized key infrastructure there are very few roots in the trust network (e.g., trusted government agencies; such roots are also called certification authorities). In a distributed infrastructure there need not be any universally accepted roots, and each party may have different trusted roots (such of the party's own key and any keys signed by it). This is the web of trust concept used e.g. in PGP.
Strength of Cryptographic Algorithms
In theory, any cryptographic method with a key can be broken by trying all possible keys in sequence. If using "brute force" to try all keys is the only option, the
required computing power increases exponentially with the length of the key.
A 32 bit key takes 2^32 (about 10^9) steps. This is something any amateur
can do on his/her home computer.
A crypto system with 40 bit keys (e.g. US-exportable version of RC4) takes
2^40 steps - this kind of computing power is available in most universities and even
smallish companies.
A system with 56 bit keys (such as DES) takes a substantial effort, but is
quite easily breakable with special hardware.
A 128 bit strong cipher is considered now(!!) safe for some time to come.
However, key length is not the only relevant issue. Many ciphers can be broken without trying all possible keys.
Demand for communications security is increasing and this is particularly true
with respect to the most used Internet application to date: email.
Since the Internet was conceived entirely as an 'open' network, there are no
practical ways of closing or securing the transmission route without employing
specialized software that ensures privacy and protection.
This issue affects the privacy of the message both at the ends (storage points) of the transmission channel as well as during the data travel over the channel.
There are different solutions to this problems since the potential vulnerability of
the message itself is different in nature, depending on where
and how a potential prying "attack" is attempted.
Secrecy vs. Integrity : What are you trying to protect?
For many users of computer-based cryptography, preserving the contents of a message is as important as protecting its secrecy. Damage caused by tampering can often be worse than damage caused by disclosure. For example, it may be disquieting to discover that a hacker has read the contents of your funds-transfer authorization, but it's a disaster for him to change the transfer destination to his own account.
Encryption by itself does not protect a message from tampering. In fact, there are several techniques for changing the contents of an encrypted message without ever figuring out the encryption key. If the integrity of your messages is important, don't rely on just secrecy to protect them. Check how the system's vendor protects messages from undetected modification.
The simple truth about Internet Email
Any program that can view text files can display your locally stored email messages,
if they are not encrypted. This is due to the fact of how the Internet Email clients are suppossed to operate.
The basic assumption of the entire local message handling is that the message is treated as if
it is in text format (even if that may not be always the case).
What this means is that many email client software DO NOT make any attempt to hide your data.
What is truly needed under these circumstances is a tool to protect the contents of the hard disk.
The only real way to accomplish this is to use a disk driver that encrypts the hard disk data.
One could use it either for all the data on the drive, for sensitive data folders only or
just for dedicated email folders.
Another approach is to use a driver that requires a password for allowing access to the
computer, either through a login process, or by locking the screen.
However, this approach can be circumvented more easily than true encryption.
Lastly, there are some Email clients that can use data encryption directly.
This deals on a per message basis both with storing and sending/receiving thus giving you a greater degree
of control about what is considered or not sensitive information.
The downsides are that the whole process is not very intuitive so it takes a certain determination to master
and also you and your secure communication partners are most likely confined to the same software
vendor due to the lack of interoperability standards.
|
|
Last Updated : Wednesday, January 31, 2007. |