In
cryptography
Cryptography, or cryptology (from grc, , translit=kryptós "hidden, secret"; and ''graphein'', "to write", or ''-logia'', "study", respectively), is the practice and study of techniques for secure communication in the presence of adve ...
, a three-pass protocol for sending messages is a framework which allows one party to securely send a message to a second party without the need to exchange or distribute
encryption keys. Such message protocols should not be confused with various other algorithms which use 3 passes for
authentication
Authentication (from ''authentikos'', "real, genuine", from αὐθέντης ''authentes'', "author") is the act of proving an assertion, such as the identity of a computer system user. In contrast with identification, the act of indicat ...
.
It is called a ''three-pass protocol'' because the sender and the receiver exchange three encrypted messages. The first three-pass protocol was developed by
Adi Shamir
Adi Shamir ( he, עדי שמיר; born July 6, 1952) is an Israeli cryptographer. He is a co-inventor of the Rivest–Shamir–Adleman (RSA) algorithm (along with Ron Rivest and Len Adleman), a co-inventor of the Feige–Fiat–Shamir identifica ...
circa 1980, and is described in more detail in a later section. The basic concept of the three-pass protocol is that each party has a private encryption key and a private decryption key. The two parties use their keys independently, first to encrypt the message, and then to decrypt the message.
The protocol uses an
encryption function ''E'' and a decryption function ''D''. The encryption function uses an
encryption key
A key in cryptography is a piece of information, usually a string of numbers or letters that are stored in a file, which, when processed through a cryptographic algorithm, can encode or decode cryptographic data. Based on the used method, the key ...
''e'' to change a
plaintext
In cryptography, plaintext usually means unencrypted information pending input into cryptographic algorithms, usually encryption algorithms. This usually refers to data that is transmitted or stored unencrypted.
Overview
With the advent of com ...
message ''m'' into an encrypted message, or
ciphertext
In cryptography, ciphertext or cyphertext is the result of encryption performed on plaintext using an algorithm, called a cipher. Ciphertext is also known as encrypted or encoded information because it contains a form of the original plaintext ...
, . Corresponding to each encryption key ''e'' there is a decryption key ''d'' which allows the message to be recovered using the decryption function, . Sometimes the encryption function and decryption function are the same.
In order for the encryption function and decryption function to be suitable for the ''three-pass protocol'' they must have the property that for any message ''m'', any encryption key ''e'' with corresponding decryption key ''d'' and any independent encryption key ''k'', . In other words, it must be possible to remove the first encryption with the key ''e'' even though a second encryption with the key ''k'' has been performed. This will always be possible with a commutative encryption. A commutative encryption is an encryption that is order-independent, i.e. it satisfies for all encryption keys ''a'' and ''b'' and all messages ''m''. Commutative encryptions satisfy .
The three-pass protocol works as follows:
# The sender chooses a private encryption key ''s'' and a corresponding decryption key ''t''. The sender encrypts the message ''m'' with the key ''s'' and sends the encrypted message to the receiver.
# The receiver chooses a private encryption key ''r'' and a corresponding decryption key ''q'' and
super-encrypts the first message with the key ''r'' and sends the doubly encrypted message back to the sender.
# The sender decrypts the second message with the key ''t''. Because of the commutativity property described above which is the message encrypted with only the receiver's private key. The sender sends this to the receiver.
The receiver can now decrypt the message using the key ''q'', namely the original message.
Notice that all of the operations involving the sender's private keys ''s'' and ''t'' are performed by the sender, and all of the operations involving the receiver's private keys ''r'' and ''q'' are performed by the receiver, so that neither party needs to know the other party's keys.
Shamir three-pass protocol
The first three-pass protocol was the
Shamir three-pass protocol developed circa in 1980. It is also called the ''Shamir No-Key Protocol'' because the sender and the receiver do not exchange any keys, however the protocol requires the sender and receiver to have two private keys for encrypting and decrypting messages. The Shamir algorithm uses
exponentiation
Exponentiation is a mathematical operation, written as , involving two numbers, the '' base'' and the ''exponent'' or ''power'' , and pronounced as " (raised) to the (power of) ". When is a positive integer, exponentiation corresponds to re ...
modulo a large
prime
A prime number (or a prime) is a natural number greater than 1 that is not a product of two smaller natural numbers. A natural number greater than 1 that is not prime is called a composite number. For example, 5 is prime because the only way ...
as both the encryption and decryption functions. That is ''E''(''e'',''m'') = ''m''
''e'' mod ''p'' and ''D''(''d'',''m'') = ''m''
''d'' mod ''p'' where ''p'' is a large prime. For any encryption exponent ''e'' in the range 1..''p''-1 with gcd(''e'',''p''-1) = 1. The corresponding decryption exponent ''d'' is chosen such that ''de'' ≡ 1 (mod ''p''-1). It follows from
Fermat's Little Theorem that ''D''(''d'',''E''(''e'',''m'')) = ''m''
''de'' mod ''p'' = ''m''.
The Shamir protocol has the desired commutativity property since ''E''(''a'',''E''(''b'',''m'')) = ''m''
''ab'' mod ''p'' = ''m''
''ba'' mod ''p'' = ''E''(''b'',''E''(''a'',''m'')).
Massey–Omura cryptosystem
The Massey–Omura Cryptosystem was proposed by
James Massey
James Lee Massey (February 11, 1934 – June 16, 2013) was an American information theorist and
cryptographer, Professor Emeritus of Digital Technology at ETH Zurich. His notable work includes the application of the Berlekamp–Massey algorithm t ...
and
Jim K. Omura
Jimmy K. Omura (born September 8, 1940 in San Jose, California) is an electrical engineer and information theorist.
Omura received his B.S. and M.S. from MIT, and his Ph.D. from Stanford University, all in electrical engineering. He was a pro ...
in 1982 as a possible improvement over the Shamir protocol. The Massey–Omura method uses
exponentiation
Exponentiation is a mathematical operation, written as , involving two numbers, the '' base'' and the ''exponent'' or ''power'' , and pronounced as " (raised) to the (power of) ". When is a positive integer, exponentiation corresponds to re ...
in the
Galois field
In mathematics, a finite field or Galois field (so-named in honor of Évariste Galois) is a field that contains a finite number of elements. As with any field, a finite field is a set on which the operations of multiplication, addition, subt ...
GF(2
''n'') as both the encryption and decryption functions. That is ''E''(''e,m'')=''m
e'' and ''D''(''d,m'')=''m
d'' where the calculations are carried out in the Galois field. For any encryption exponent ''e'' with 0<''e''<2
''n''-1 and gcd(''e'',2
''n''-1)=1 the corresponding decryption exponent is ''d'' such that ''de'' ≡ 1 (mod 2
''n''-1). Since the multiplicative group of the Galois field GF(2
''n'') has order 2
''n''-1
Lagrange's theorem implies that ''m''
''de''=''m'' for all ''m'' in GF(2
''n'')
* .
Each element of the Galois field GF(2
''n'') is represented as a
binary
Binary may refer to:
Science and technology Mathematics
* Binary number, a representation of numbers using only two digits (0 and 1)
* Binary function, a function that takes two arguments
* Binary operation, a mathematical operation that ta ...
vector
Vector most often refers to:
*Euclidean vector, a quantity with a magnitude and a direction
*Vector (epidemiology), an agent that carries and transmits an infectious pathogen into another living organism
Vector may also refer to:
Mathematic ...
over a
normal basis In mathematics, specifically the algebraic theory of fields, a normal basis is a special kind of basis for Galois extensions of finite degree, characterised as forming a single orbit for the Galois group. The normal basis theorem states that an ...
in which each
basis vector
In mathematics, a set of vectors in a vector space is called a basis if every element of may be written in a unique way as a finite linear combination of elements of . The coefficients of this linear combination are referred to as componen ...
is the square of the preceding one. That is, the basis vectors are ''v''
1, ''v''
2, ''v''
4, ''v''
8, ... where ''v'' is a field element of maximum
order
Order, ORDER or Orders may refer to:
* Categorization, the process in which ideas and objects are recognized, differentiated, and understood
* Heterarchy, a system of organization wherein the elements have the potential to be ranked a number of ...
. By using this representation, exponentiations by powers of 2 can be accomplished by
cyclic shifts. This means that raising ''m'' to an arbitrary power can be accomplished with at most ''n'' shifts and ''n'' multiplications. Moreover, several multiplications can be performed in parallel. This allows faster hardware realizations at the cost of having to implement several multipliers.
Security
A necessary condition for a three-pass algorithm to be secure is that an attacker cannot determine any information about the message ''m'' from the three transmitted messages , and .
For the encryption functions used in the Shamir algorithm and the Massey–Omura algorithm described above, the security relies on the difficulty of computing
discrete logarithm
In mathematics, for given real numbers ''a'' and ''b'', the logarithm log''b'' ''a'' is a number ''x'' such that . Analogously, in any group ''G'', powers ''b'k'' can be defined for all integers ''k'', and the discrete logarithm log' ...
s in a finite field. If an attacker could compute discrete logarithms in GF(''p'') for the Shamir method or GF(2
''n'') for the Massey–Omura method then the protocol could be broken. The key ''s'' could be computed from the messages ''m
r'' and ''m
rs''. When ''s'' is known, it is easy to compute the decryption exponent ''t''. Then the attacker could compute ''m'' by raising the intercepted message ''m
s'' to the ''t'' power. K. Sakurai and H. Shizuya show that under certain assumptions breaking Massey–Omura cryptosystem is equivalent to the
Diffie–Hellman assumption.
Authentication
The three-pass protocol as described above does not provide any
authentication
Authentication (from ''authentikos'', "real, genuine", from αὐθέντης ''authentes'', "author") is the act of proving an assertion, such as the identity of a computer system user. In contrast with identification, the act of indicat ...
. Hence, without any additional authentication the protocol is susceptible to a
man-in-the-middle attack
In cryptography and computer security, a man-in-the-middle, monster-in-the-middle, machine-in-the-middle, monkey-in-the-middle, meddler-in-the-middle, manipulator-in-the-middle (MITM), person-in-the-middle (PITM) or adversary-in-the-middle (AiTM) ...
if the opponent has the ability to create false messages, or to intercept and replace the genuine transmitted messages.
References
* , U.S. patent on the Massey–Omura cryptosystem
*
*
*
{{Cryptography navbox , public-key
Asymmetric-key algorithms