Quantum cryptography is an effort to allow two users of a common communication channel to create a body of shared and secret information. Quantum cryptography can be shown to be secure in a very strong sense. Existing cryptographic techniques are usually identified as traditional'' or modern''
Quantum cryptography is an effort to allow two users of a common communication channel to create a body of shared and secret information. Quantum cryptography can be shown to be secure in a very strong sense. Existing cryptographic techniques are usually identified as traditional'' or modern''
Quantum cryptography is an effort to allow two users of a common communication channel to create a body of shared and secret information. Quantum cryptography can be shown to be secure in a very strong sense. Existing cryptographic techniques are usually identified as traditional'' or modern''
Quantum cryptography is an effort to allow two users of a common communication
channel to create a body of shared and secret information. This information, whi ch generally takes the form of a random string of bits, can then be used as a co nventional secret key for secure communication. It is useful to assume that the communicating parties initially share a small amount of secret information, whic h is used up and then renewed in the exchange process, but even without this ass umption exchanges are possible. The advantage of quantum cryptography over traditional key exchange methods is t hat the exchange of information can be shown to be secure in a very strong sense , without making assumptions about the intractability of certain mathematical pr oblems. Even when assuming hypothetical eavesdroppers with unlimited computing p ower, the laws of physics guarantee (probabilistically) that the secret key exch ange will be secure, given a few other assumptions. Cryptography is the art of devising codes and ciphers, and cryptoanalysis is th e art of breaking them. Cryptology is the combination of the two. In the literat ure of cryptology, information to be encrypted is known as plaintext, and the pa rameters of the encryption function that transforms are collectively called a ke y. Existing cryptographic techniques are usually identified as ``traditional'' or ` `modern.'' Traditional techniques date back for centuries, and are tied to the t he operations of transposition (reordering of plaintext) and substitution (alter ation of plaintext characters). Traditional techniques were designed to be simpl e, and if they were to be used with great secrecy extremely long keys would be n eeded. By contrast, modern techniques rely on convoluted algorithms or intractab le problems to achieve assurances of security. There are two branches of modern cryptographic techniques: public-key encryption and secret-key encryption. In public-key cryptography, messages are exchanged using keys that depend on the assumed difficulty of certain mathematical problems -- typically t he factoring of extremely large (100+ digits) prime numbers. Each participant ha s a ``public key'' and a ``private key''; the former is used by others to encryp t messages, and the latter by the participant to decrypt them. In secret-key encryption, a k-bit ``secret key'' is shared by two users, who use it to transform plaintext inputs to an encoded cipher. By carefully designing t ransformation algorithms, each bit of output can be made to depend on every bit of the input. With such an arrangement, a key of 128 bits used for encoding resu lts in a key space of two to the 128th (or about ten to the 38th power). Assumin g that brute force, along with some parallelism, is employed, the encrypted mess age should be safe: a billion computers doing a billion operations per second wo uld require a trillion years to decrypt it. In practice, analysis of the encrypt ion algorithm might make it more vulnerable, but increases in the size of the ke y can be used to offset this. The main practical problem with secret-key encryption is determining a secret ke y. In theory any two users who wished to communicate could agree on a key in adv ance, but in practice for many users this would require secure storage and organ ization of a awkwardly large database of agreed-on keys.