By using properties of pseudocomplements of vector Boolean algebra defined herein, a vector Boolean value which represents a plaintext of a message is converted to an enciphered text. The enciphered text consists of a pair of conjugate pseudocomplements of the plaintext with respect to a parameter which is a cipher key. In the deciphering process, the pair of the conjugate pseudocomplements is needed to recover the original plaintext. When a higher degree of message security is desired, both parties (a sender and a receiver) of a communication can establish two parameters (s,p) rather than one, and the sender can encipher a plaintext M into a pair of conjugate pseudocomplements (C1,C2) derived independently from the parameters where p is a pseudocomplement of a key c with respect to s. The derived conjugate pseudocomplements are C1 =TS *(M) and C2 =Tp+ (M) where Ts * and Tp+ represent the transformations of pseudocomplementing operations with respect to its suffixed parameters. The receiver performs a pseudocomplementing operation with respect to c on C1, namely Tc+ (C1)=Tc+ (Ts *(M))=Tp *(M)and recovers the original message M by deciphering Tp *(M) and Tp+ (M) with respect to p. An advantage of this method is an increase of information entropy in each enciphered pseudocomplement over the one in a plaintext. Another advantage is an increase of the message length of an enciphered text. The first advantage can be applied to quickly establish a transient cipher key between a sender and a receiver through an insecure communication medium. The second advantage can strengthen a combinational complexity in an enciphered text so that in cryptanalysis, a decryption of the enciphered text becomes more difficult. Furthermore, when the two keys used in this system are enciphered by the third key, the decipher key used is different from its corresponding encipher key and is difficult to retrieve from the encipher key, which may be announced to general public. Thus this system becomes a public key system.

Patent
   4703503
Priority
Oct 03 1986
Filed
Oct 03 1986
Issued
Oct 27 1987
Expiry
Oct 03 2006
Assg.orig
Entity
Small
9
5
EXPIRED
1. In a process for communicating securely over an insecure communication medium of the type which communicates a digital message A from a sender to a receiver by enciphering at said sender said digital massage with a secret enciphering/deciphering parameter p, by transmitting said enciphered massage from said sender to said receiver, and by deciphering at the receiver's end said enciphered message with said parameter, the process characterized in that
said sender means includes means for receiving and storing said enciphering/deciphering parameter, means for receiving and enciphering said digital message by applying a conjugate pseudocomplementing operation with respect to said parameter, and means for transmitting said enciphered message to said receiver;
said receiver means includes means for receiving and storing said enciphered message, means for deciphering said enciphered message into said original digital message by applying a desegregate pseudocomplementing operation with respect to said parameter, and means for storing said deciphered digital message in a plaintext register which is a row of flipflops;
said conjugate pseudocomplementing operation includes means for transforming said digital message received by said sender into a pair consisting of a star pseudocomplement of {A*,A**,A*p,A*'} by applying an operation of {X*,X**,X*p,A*'} and a plus pseudocomplement of {A+,A++,A+p,A+ '} by applying an operation of {X+,X++,X+p,X+ '} with respect to said parameter p, and
said desegregate pseudocomplementing operation includes means for transforming said enciphered message consisting of said star pseudocomplement and said plus pseudocomplement received by said receiver into a targeted pair of a star pseudocomplement and a plus pseudocomplement such as {(A*',A++),(A**,A+ '0,(A*p,A+),(A*,A+p),A*',A+),(A**,A+p), (A*p,A++),(A*,A+ ')} by performing necessary Boolean algebra operations of {Xp,X',Xp,I} with respect to said parameter, and means for combining the star pseudocomplement and the plus pseudocomplement of said targeted pair by a logical AND or a logical or operation performing A=A** AND A+ '=A*' or A++, A'=A* AND A+p =A*p or A+, Ap =A** AND A+p =A*' or A+ or Ap =A* AND A+ '=A*p or A++ in order to produce a deciphered message of {A,A',Ap,Ap } and to convert said deciphered message into said original digital message by applying an operation of {I,X',Xp,Xp }, respectively.
6. An apparatus for communicating securely over an insecure communication medium of the type which communicates a digital message A from a sender to a receiver by enciphering at said sender said digital message with a secret enciphering/deciphering parameter p, by transmitting said enciphered message from said sender to said receiver, and by deciphering at the receiver's end said enciphered message with said parameter comprising:
s-plaintext register means for receiving and storing a digital message,
s-p register means for receiving and storing a parameter p,
s-q register means for receiving and storing control bits u1 u0, v1 v0 and w0 of a component q,
s-ciphertext register means for receiving and transmitting an enciphered message of said digital message,
s-star operation means for performing a pseudocomplementing operation of {X*,X**,X*p,X*'} with respect to said parameter p on said digital message,
s-plus operation means for performing a pseudocomplementing operation of {X+,X++,X+p,X+ '} with respect to said parameter p on said digital message,
s-switch means for connecting two input terminals (a,b) to two output terminals (c,d) by alternatively switching said connection (a,b) to (c,d) and (a,b) to (d,c) respectively using said control bit w0,
first means, connect said s-p register means, said s-plaintext register means and said s-q register means to said s-star operation means in order to obtain a star pseudocomplement, which is specified by the bits u1 u0 of said s-q register means, of said digital message,
second means, connect said s-p register means, said s-plaintext register means and said s-q register means to said s-plus operation means in order to obtain a plus pseudocomplement, which is specified by the bits v1 v0 of said s-q register means, of said digital message,
third means, connect said s-star operation means to said s-ciphertext register means through said s-switch means using said w0 of said s-q register means in order to form said enciphered message with plus pseudocomplement and to transmit said enciphered message,
fourth means, connect said s-plus operation means to said s-ciphertext register means through said s-switch means using said w0 of said s-q register means in order to form said enciphered message with said star pseudocomplement and to transmit said enciphered message,
r-ciphertext register means for receiving and storing said enciphered message,
r-p register means for receiving and storing said parameter p,
r-plaintext register means for receiving and storing a deciphered message of said enciphered message,
r-q register means for receiving and storing said control bits u1 u0, v1 v0 and w0 of a component q,
r-switch means for connecting two input terminals (a,b) to two output terminals (c,d) by alternatively switching said connection (a,b) to (c,d) and (a,b) to (d,c) respectively using said control bit w0,
r-star operation means for performing a complementing operation of γX',Xp,Xp, I} with respect to said parameter p on said enciphered message,
r-plus operation means for performing a complementing operation of {Xp,I,X',Xp } with respect to said parameter p on said enciphered message,
fifth means, connect r-ciphertext register means to said r-star operation means through said r-switch means in order to obtain the pseudocomplement A*', where the applicable complementing operation is specified by the bits u1 u0, namely the applicable operations {X',Xp,Xp,I} for pseudocomplements {A*,A**,A*p,A*'} respectively,
sixth means, connect r-ciphertext register means to said r-plus operation means through said r-switch means in order to obtain the pseudocomplement A++, where the applicable complementing operation is specified by the bits v1 v0, namely the applicable operations {Xp,I,X',Xp } for pseudocomplements {A+,A++,A+p,A+ '} respectively.
seventh means, performing a logical or operation on said obtained pseudocomplements A*' and A++ forming A=I·(A*'+A++) and storing the result in said r-plaintext register means.
4. In a process for communication securely over an insecure communication medium of the type which communicates a digital message A from a sender to a receiver by enciphering at said sender said digital message using two secret enciphering/deciphering parameters pi and pj, by transmitting said enciphered message from said sender to said receiver, and by deciphering at the receiver's end said enciphered message using said two parameterrs, the process characterized in that
said sender means includes means for receiving and storing said two enciphering/deciphering parameters; means for procreating a compound parameter, a pseudocomplement pi with respect to pj denoted as pi (pj), of {pi *'--pj --, pi *--pj --, pi++ --pj --, pi+p --pj --, pi **--pj --, pi *p --pj --, pi+ '--pj 13 , pi+ --pj --} which appear in the third term or the fourth term of the equations (3-1) through (3-16); means for receiving and enciphering said digital message A by applying two pseudocomplementing operations on said message A (i) with respect to the parameter pi in order to choose a pseudocomplement of A (with respect to pi) which appears in the first term or the second term of an equation elected from the equations (3-1) through (3-16) where said compound parameter pi (pj) exists in the third term or the fourth term as a parameter and (ii) with respect to said compound parameter pi (pj) in order to produce a component of a conjugate psuedocomplement pair with respect to pi (pj) where said component is a buddy of said pseudocomplement existed in the third term or the fourth term of said elected equation that contains said chosen pseudocomplement of A with respect to pi in the first term or the second term,
__________________________________________________________________________
(A+p --(pi)--)+ '--(pj)--
= (A++ --(pi)--)+p --(pj)--
= A+p --(pi ++ --(pj)--
)-- = A*--(pi +p --(pj)
-- )-- (3-1)
(A+p --(pi)--)**--(pj)--
= (A++ --(pi)--)*--(pj --
= A+p --(pi *'--(pj)--
= A*--(pi *--(pj)-- )--
(3-2)
(A*--(pi)--)+ '--(pj)--
= (A*'--(pi)--)+p --(pj)--
= A+p --(pi + --(pj)--
= A*--(pi + '--(pj)--
)-- (3-3)
(A*--(pi)--)**--(pj)--
= (A*'--(pi)--)*--(pj)--
= A+p --(pi *p --(pj)--
)-- = A*--(pi **--(pj)--
(3-4)
(A+ '--(pi)--)+ '--(pj)--
= (A+ --(pi)--)+p --(pj)--
= A+ '--(pi ++ --(pj)----
= A**--(pi +p --(pj
)-- ) -- (3-5)
(A+ '--(pi --)**--(pj)--
= (A+ --(pi)--)*--(pj)--
= A+ '--(pi *'--(pj)-- )--
= A**--(pi *--(pj)--
(3-6)
(A**--(pi)--)+ '--(pj)--
= (A*p --(pi)--)+p --(pj)--
= A+ '--(pi+ --(pj)-- )--
= A**--(pi + '--(pj)--
)-- (3-7)
(A**--(pi)--)**--(pj)--
= (A*p --(pi)--)*--(pj)--
= A+ '--(pi *p --(pj)--
= A**--(pi **--(pj)--
(3-8)
(A*p --(pi)--)*'--(pj)--
= (A**--(pi)--)*p --(pj)--
= A+ --(pi *p --(pj)--
= A*p --(pi **--(pj)--
)-- (3-9)
(A*p --(pi)--)++ --(pj)--
= (A**--(pi)--)+ --(pj)--
= A+ --(pi±-(pj)-- )--
= A*p --(pi + '--(p
j)-- )-- (3-10)
(A+ --(pi)--)*'--(pj)--
= (A + '--(pi)--)*p --(pj)--
= A+ --(pi *'--(pj)-- )--
= A*p --(pi *--(pj)--
)-- (3-11)
(A+ --(pi)--)++--(pj)--
= (A+ '--(pi)--)+ --(pj)--
= A+ --(pi ++ --(pj)--
= A*p --(pi +p
--(pj)-- )--
(3-12)
(A*'--(pi)--)*'--(pj)--
= (A*--(pi)--)*p --(pj)--
= A++ --(pi *p --(pj)--
= A*'--(pi **--(pj)--
(3-13)
(A*'--(pi)--)++ --(pj)--
= (A*--(pi)--)+ --(pj)--
= A++ --(pi + --(pj)--
= A*'--(pi + '--(pj)--
)-- (3-14)
(A++ --(pi)--)*'--(pj)--
= (A+p --(pi)--)*p --(pj)--
= A++--(pi *'--(pj)-- )--
= A*'--(pi *--(pj)--
(3-15)
(A++ --(pi)--)++ --(pj)--
= (A+ p --(pi)--)+ --(pj)--
= A++ --(pi ++ --(pj)--
= A*'--(pi +p --(pj
)-- )-- (3-16)
__________________________________________________________________________
means for forming said enciphered message consisting of pseudocomplements of a conjugate pair constructed from said pseudocomplement obtained with respect to said parameter pi and said pseudocomplement with respect to said compound parameter pi (pj); and means for transmitting said enciphered message to said receiver;
said receiver means includes means for receiving and storing said enciphered message received by said receiver; means for taking receiver-pseudocomplementing operation with respect to pj defined in the first term or the second term in order to acquire the third term or the fourth in said elected equation; means for transforming a pair consisting of
(i) the conjugate component with respect to pi (pj), which is the third term or the fourth term of said elected equation, produced by said receiver-pseudocomplementing operation with respect to pj on said pseudocomplement with respect to pi of said enciphered message and (ii) the pseudocomplement with respect to said compound parameter pi (pj) of said enciphered message into a targeted pair of {(A*',A++),(A**,A+ '),(A*p,A+),(A*,A+ p),(A*',A+),(A**,A+p),(A*p,A++),(A*,A+ ')} with respect to said compound parameter pi (pj) by performing necessary Boolean algebra operations of {Xp,X',Xp,I}; and means for combining the star pseudocomplement and the plus pseudocomplement of said targeted pair by a logical AND or a logical or separation which achieves A=A**·A+ '=A*'+A++,A'=A*·A+p =A*p +A+, Ap =A**·A+ p =A*'+A+ or Ap =A*·A+ '=A*p +A++ in order to retrieve a deciphered message of {A,A',Ap,Ap } and to convert said deciphered message into said original digital message A by applying a respective operation of {I,X',Xp,Xp }, respectively;
said conjugate pseudocomplementing operations include means for transforming said digital message A received by said sender into two conjugate sets of a pair consisting of a star pseudocomplement of {A*,A**,A*p,A*'} by applying an operation of {X*,X**,X*p,X*'} and a plus pseudocomplement of {A+,A++,A+p,A+ '} by applying an operation of {X+,X++,X+p,X+ '}, respectively (i) with respect to said parameter pi and
(ii) with respect to said compound parameter pi (pj).
13. In a process for communicating securely over an insecure communication medium of the type which communicates a digital message A from a sender to a receiver by enciphering at said sender said digital message using two compound parameters q1 =Pj (pk) and q2 =Pi (pj), which are kept in secret or which are open to general public, constructed by pseudocomplementing operations from three parameters pi, pj and pk, by transmitting said enciphered message from said sender to said receiver, and by deciphering at the receiver's end said enciphered message using said parameter pi and a third compound parameter q3 =Pi (pk) constructed from said parameters pi and pk where applicable pseudocomplementing operations that define the pseudocomplements of q1 =Pj (pk), q2 =Pi (pj) and q3 =Pi (pk) as well as p1 (q1)=Q2 (q3)=Q1 (p1) and p1 =Pi are determined in first equation selected among the equations (6-1) through (6-16) which are
______________________________________
p1 (q1)
q2 (q3)
q1 (p1)
______________________________________
pi + --(pj +p --(pk)-- )-- =
(6-1)
(pi *p --(pj)--)**--(pi *p --(pk)-- )-- =
(pj +p --(pk)--)*'--(pi)--
pi + --(pj *--(pk)-- )-- =
(6-2)
(pi *p --(pj)--)**--(pi + --(pk)-- )-- =
(pj *--(pk)--)*'--(pi)--
pi + --(pj + '--(pk)-- )-- =
(6-3)
(pi + --(pj)-- )**--(pi *p --(pk)-- )-- =
(pj + '--(pk)--)*'--(pi)--
pi + --(pj **--(pk)-- )-- =
(6-4)
(pi + --(pj)--)**--(pi + --(pk)-- )-- =
(pj **--(pk)--)*'--(pi)--
pi ++ --(pj +p --(pk)-- )-- =
(6-5)
(pi *'--(pj)--)**--(pi *'--(pk)-- )-- =
(pj +p --(pk)--)++ --(pi)--
pi ++ --(pj *--(pk)-- )-- =
(6-6)
(pi *'--(pj)--)**--(pi ++ --(pk)-- )-- =
(pj *--(pk)--)++-- (pi)--
pi ++ --(pj + '--(pk)-- )-- =
(6-7)
(pi ++ --(pj)--)**--(pi *'--(pk)-- )-- =
(pj + '--(pk)--)++ --(pi)--
pi ++ --(pj **--(pk)-- )-- =
(6-8)
(pi ++ --(pj)--)**--(pi ++ --(pk)--)-- =
(pj **--(pk)--)++ -- (pi)--
pi *--(pj *p --(pk)-- )-- =
(6-9)
(pk+p --(pj)--)++ --(pi +p
--(pk)-- )-- =
(pj *p --(pk)--)+ '-- (pi)--
pi *--(pj + --(pk)-- )-- =
(6-10)
(pi +p --(pj)--)++ --(pi *--(pk)-- )--
(pj + --(pk)--)+ '--(pi)--
pi *--(pj *'--(pk)-- )-- =
(6-11)
(pi *--(pj)--)++ --(pi +p --(pk)-- )--
=
(pj *'--(pk)--)+ '--(pi)--
pi *--(pj ++ --(pk)-- )-- =
(6-12)
(pi *--(pj)--)++ --(pi *--(pk)-- )-- =
(pj ++ --(pk)--)+ '--(pi)--
pi **--(pj *p --(pk)-- =
(6-13)
(pi + '--(pj)--)++ --(pi + '--(pk)--
)-- =
(pj *p --(pk)--)**--(pi)--
pi **--(pj + --(pk)-- )-- =
(6-14)
(pi + '--(pj)--)++ --(pi **--(pk)-- )-- =
(pj + --(pk)--)**--(pi)--
pi **--(pj *'--(pk)-- )-- =
(6-15)
(pi **--(pj)--)++ --(pi + '--(pk)-- )-- =
(pj *'--(pk)--)**--(pi)--
pi **--(pj ++ --(pk)-- )-- =
(6-16)
(pi **--(pj)--)++ --(pi **--(pk)-- )-- =
(pj ++ --(pk)--)**--(pi)--
______________________________________
the process characterized in that
said sender means includes means for receiving and storing said two compound parameters q1 and q2 ; means for receiving and enciphering said digital message by applying two conjugate pseudocomplementing operations (i) with respect to said compound parameter q1 and (ii) with respect to said compound parameter q2 where by electing (i) second equation from four equations which are chosen from the equations (3-1) through (3-16) by collecting the pseudocomplement terms with respect to said parameter q1 (p1) (that is also appeared in said first equation) in the third term of the fourth term after substituting q1 and p1 in the places of pi and pj of the equations (3-1) through (3-16) and (ii) third equation from four equations which are chosen from the equations (3-1) through (3-16) by collecting the pseudocomplement terms with respect to said parameter q2 (q3) (that is also appeared in said first equation) in the third term or the fourth term after substituting q2 and q3 in the places of pi and pj of the equations (3-1) through (3-16), the first term or the second term of the pseudocomplement with respect to q1 of said second equation and the first term or the second term of the pseudocomplement with respect to q2 of said third equation specify said applicable two conjugate pseudocomplementing operations, respectively,
__________________________________________________________________________
(A+p --(pi)--)+ '--(pj)--
= (A++ --(pi)--)+p --(pj)--
= A+p --(pi ++ --(pj)--
)-- = A*--(pi +p --(pj)
-- )-- (3-1)
(A+p --(pi)--)**--(pj)--
= (A++ --(pi)--)*--(pj --
= A+p --(pi *'--(pj)--
= A*--(pi *--(pj)-- )--
(3-2)
(A*--(pi)--)+ '--(pj)--
= (A*'--(pi)--)+p --(pj)--
= A+p --(pi + --(pj)--
= A*--(pi + '--(pj)--
)-- (3-3)
(A*--(pi)--)**--(pj)--
= (A*'--(pi)--)*--(pj)--
= A+p --(pi *p --(pj)--
)-- = A*--(pi **--(pj)--
(3-4)
(A+ '--(pi)--)+ '--(pj)--
= (A+ --(pi)--)+p --(pj)--
= A+ '--(pi ++ --(pj)----
= A**--(pi +p --(pj
)-- ) -- (3-5)
(A+ '--(pi --)**--(pj)--
= (A+ --(pi)--)*--(pj)--
= A+ '--(pi *'--(pj)-- )--
= A**--(pi *--(pj)--
(3-6)
(A**--(pi)--)+ '--(pj)--
= (A*p --(pi)--)+p --(pj)--
= A+ '--(pi hu +--(pj)-- )--
= A**--(pi + '--(pj)--
)-- (3-7)
(A**--(pi)--)**--(pj)--
= (A*p --(pi)--)*--(pj)--
= A+ '--(pi *p --(pj)--
= A**--(pi **--(pj)--
(3-8)
(A*p --(pi)--)*'--(pj)--
= (A**--(pi)--)*p --(pj)--
= A+ --(pi *p --(pj)--
= A*p --(pi **--(pj)--
)-- (3-9)
(A*p --(pi)--)++ --(pj)--
= (A**--(pi)--)+ --(pj)--
= A+ --(pi±-(pj)-- )--
= A*p --(pi + '--(p
j)-- )-- (3-10)
(A+ --(pi)--)*'--(pj)--
= (A + '--(pi)--)*p --(pj)--
= A+ --(pi *'--(pj)-- )--
= A*p --(pi *--(pj)--
)-- (3-11)
(A+ --(pi)--)++--(pj)--
= (A+ '--(pi)--)+ --(pj)--
= A+ --(pi ++ --(pj)--
= A*p --(pi +p
--(pj)-- )--
(3-12)
(A*'--(pi)--)*'--(pj)--
= (A*--(pi)--)*p --(pj)--
= A++ --(pi *p --(pj)--
= A*'--(pi **--(pj)--
(3-13)
(A*'--(pi)--)++ --(pj)--
= (A*--(pi)--)+ --(pj)--
= A++ --(pi + --(pj)--
= A*'--(pi + '--(pj)--
)-- (3-14)
(A++ --(pi)--)*'--(pj)--
= (A+p --(pi)--)*p --(pj)--
= A++--(pi *'--(pj)-- )--
= A*'--(pi *--(pj)--
(3-15)
(A++ --(pi)--)++ --(pj)--
= (A+ p --(pi)--)+ --(pj)--
= A++ --(pi ++ --(pj)--
= A*'--(pi +p --(pj
)-- )-- (3-16);
__________________________________________________________________________
means for forming said enciphered message consisting of pseudocomplements of a conjugate pair constructed from (i) said pseudocomplement with respect to q1 in the first term or the second term of said second equation and (ii) said pseudocomplement with respect to q2 in the first term or the second term of said third equation by considering the conjugateness between (i) a star or plus pseudocomplement of A with respect to q1 (p1) appeared in the third term or the fourth term of said second equation and (ii) a star or plus pseudocomplement of A with respect to q2 (q3) appeared in the third term or the fourth term of said third equation; and means for transmitting said enciphered message to said receiver;
said receiver means includes means for receiving storing said enciphered message received by said receiver; means for performing two receiver-pseudocomplementing operations (i) with respect to p1 specified in the first term or the second term of said second equation in order to acquire the third term or the fourth term which is the pseudocomplement with respect to q1 (p1) and (ii) with respect to q3 specified in the first term or the second term of said third equation in order to acquire the third term or the fourth term which is the pseudocomplement with respect to q2 (q3); means for transforming a pair consisting of said acquired third term or fourth term of said second equation and said acquired third term or the fourth term of said third equation into a targeted pair of {(A*',A++), (A**,A+ '), (A*p,A+), (A*,A+p), (A*',A+), (A**,A+p), (A*p,A++), (A*,A+ ')} with respect to said parameter q1 (p1 )=Q2 (q3) by performing necessary Boolean algebra operations of {Xp X',Xp,I}; and means for combining the star pseudocomplement and the plus pseudocomplement of said targeted pair by a logical AND or a logical or operation which achieves A=A**·A+ =A*'+A++, A'=A*·A+p =A*p +A+, Ap =A**·A+p =A*'+A+, or Ap =A*·A+ '=A*p +A++ in order to retrieve a diciphered message of {A,A', Ap, Ap } and to convert said deciphered message into said original digital message A by applying a respective operation of {I,X',Xp,Xp }, respectively;
said conjugate pseudocomplementing operations include means for transforming a digital message received by said sender and an enciphered message received by said receiver into two conjugate sets of a pair consisting of a star pseudocomplement of {A*,A**,A*p,A*'} by applying an operation of {X*,X**,X*p,X*'} and a plus pseudocomplement of {A+,A++,A+p,A+ '} by applying an operation of {X+,X++,X+p,X+ '}, respectively, (i) with respect to said parameter q1 or p1 and (ii) with respect to said parameter q2 or q3.
10. An apparatus for communicating securely over an insecure communication medium of the type which communicates a digital message A from a sender to a receiver by enciphering at said sender said digital message with two secret enciphering/deciphering parameters pi and pj, by transmitting said enciphered message from said sender to said receiver, and by deciphering at the receiver's end said enciphered message with said two parameters comprising:
s-plaintext register means for receiving and storing a digital message A,
first generator means for receiving and storing (i) a parameter pi and (ii) (u1 u0)1, (v1 v0)1 and w01 of control bits q1, for receiving the content of said s-plaintext register means, for enciphering said received digital message into a pair of conjugate pseudocomplements by performing conjugate pseudocomplementing operations with respect to said parameter pi, and for outputting said pair of the conjugate pseudocomplements from its terminals M0 and M1,
second generator means for receiving and storing (i) a pseudocomplement of pi with respect to pj as a parameter denoted as pi (pj) and (ii) (u1 u0)2, (v1 v0)2 and w02 of control bits q2, for receiving the content of said s-plaintext register means, for enciphering said received digital message into a pair of conjugate pseudocomplements by performing conjugate pseudocomplementing operations with respect to said parameter pi (pj), and for outputting said pair of the conjugate pseudocomplements from its terminals M0 and M1,
s-selector means for receiving (i) two pairs of conjugate pseudocomplements and (ii) switching bits w3 and w2, and control bit w1, for selectively passing said received two pairs of conjugate pseudocomplements using said switching and control bits, and for outputting a selected pair of the pseudocomplements consisting of one pseudocomplement with respect to pi and the other pseudocomplement with respect to pi (pj),
s-ciphertext register means for receiving and transmitting an enciphered message,
first means, connect said s-plaintext register means to said first generator means and to said second generator means,
second means, connect said terminals M0 and M1 of each said generator means to said s-selector means, and for passing said selected pair of pseudocomplements to said s-ciphertext register means through said s-selector means selected by ssaid bits w3, w2 and w1,
r-ciphertext register means for receiving and storing an enciphered message,
r-selector means for receiving (i) said switching bits w3 and w2, and control bit w1, and (ii) an enciphered message, for selectively passing the conjugate pseudocomplements of said enciphered message received by using said switching and control bits w3, w2 and w1, and for outputting each of the condjugate pseudocomplements,
temporary register means for receiving and storing a pair of conjugate pseudocomplements with respect to pi (pj) obtained from said enciphered message,
third generator means for receiving and storing a parameter pj and (u1 u0)a, (v1 v0)a and (w0)a of control bits qa, for receiving and enciphering the pseudocomplement with respect to pi of the enciphered message by taking pseudocomplementing operations with respect to pj, which is specified by said bits (u1 u0)a and (v1 v0)a, and for outputting a produced pair of conjugate pseudocomplements with respect to pi (pj),
box means for receiving and passing the pseudocomplement with respect to pi (pj) of said enciphered message to its output terminals M0 and M1,
r-plaintext register means for receiving and storing a deciphered message as the original plaintext,
switcher means for connecting two input terminals (a,b) to two output terminals (c,d) by alternatively switching said connection (a,b) to (c,d) and (a,b) to (d,c) respectively using control bit wi where i denotes the suffix of said bits w0, w1, w2 and w3,
desegregator means for receiving and storing said parameter pi (pj) and control bits (u1 u0)b, (v1 v0)b and (w0)b of qb, for receiving and transforming said pair of conjugate pseudocomplements with respect to pi (pj), which is the content of said temporary register means, to a targeted pair of the conjugate pseudocomplements (A*',A++) by performing the applicable complementing operations of {X',Xp,Xp,I} specified by (u1 u0)b and of {Xp,I,X',Xp } specified by (v1 v0)b, for executing a logical or operation on said targeted pair, which has been transformed, in order to retrieve said original plaintext,
third means, connect said r-ciphertext register means to said third generator means through the first two switches of said r-selector means controlled by said bits w3 and w2 where said generator means generates said pair of conjugate pseudocomplements with respect to pj,
fourth means, connect said third generator means to said desegregator means through (i) the third switch of said r-selector means controlled by said bit w1 and (ii) said temporary register means where said desegregator means produces said targeted pair of conjugate pseudocomplements using said parameter pi (pj) and said qb,
fifth means, connect said r-ciphertext register means to said desegregator means through (i) the first two switches of ssaid r-selector means controlled by said bits w3 and w2, (ii) said box means, (iii) the third switch of said r-selector means controlled by said bit w1 and (iv) said temporary register means,
sixth means for transferring the deciphered message produced by executing said logical or operation into said ciphertext register means,
seventh means for obtaining (i) first pseudocomplement by performing said conjugate pseudocomplementing operations with respect to said parameter pi in said first generator means and (ii) second pseudocomplement by performing said conjugate pseudocomplementing operations with respect to said parameter pj in said third generator means where said first pseudocomplement and said second pseudocomplement are defined in the first term or the second term of an equation chosen from the equations (3-1) through (3-16), in order to acquire an objective term which is the third term or the fourth term of said chosen equation,
eighth means for obtaining third pseudocomplement by performing said conjugate pseudocomplementing operations with respect to said parameter pi (pj) in said second generator means where said third pseudocomplement with respect to said parameter pi (pj) constitutes a conjugate pair with said objective term,
where said equations (3-1) through (3-16) are ##EQU8##
16. An apparatus for communicating securely over an insecure communication medium of the type which communicates a digital message A from a sender to a receiver by enciphering at said sender said digital message with two compound parameters q1 =Pj (pk) and q2 =Pi (pj), which are kept in secret or which are open to general public, constructed from three parameters, pi, pj and pk, by transmitting said enciphered message from said sender to said receiver, by deciphering at the receiver's end said enciphered message using said parameter pi (=P1) and a third compound parameter q3 =Pi (pk), which are kept in secret, constructed from said three parameters where applicable pseudocomplementing operations that define the pseudocomplements of q1 =Pj (pk), q2 =Pi (pj) and q3 =Pi (pk) as well as relationships p1 (q1)=Q2 (q3)=Q1 (p1) and p1 =Pi are determined in first equation selected among the equations (6-1) through (6-16) which are
______________________________________
p1 (q1)
q2 (q3)
q1 (p1)
______________________________________
pi + --(pj +p --(pk)-- )-- =
(6-1)
(pi *p --(pj)--)**--(pi *p --(pk)-- )-- =
(pj +p --(pk)--)*'--(pi)--
pi + --(pj *--(pk)-- )-- =
(6-2)
(pi *p --(pj)--)**--(pi + --(pk)-- )-- =
(pj *--(pk)--)*'--(pi)--
pi + --(pj + '--(pk)-- )-- =
(6-3)
(pi + --(pj)-- )**--(pi *p --(pk)-- )-- =
(pj + '--(pk)--)*'--(pi)--
pi + --(pj **--(pk)-- )-- =
(6-4)
(pi + --(pj)--)**--(pi + --(pk)-- )-- =
(pj **--(pk)--)*'--(pi)--
pi ++ --(pj +p --(pk)-- )-- =
(6-5)
(pi *'--(pj)--)**--(pi *'--(pk)-- )-- =
(pj +p --(pk)--)++ --(pi)--
pi ++ --(pj *--(pk)-- )-- =
(6-6)
(pi *'--(pj)--)**--(pi ++ --(pk)-- )-- =
(pj *--(pk)--)++-- (pi)--
pi ++ --(pj + '--(pk)-- )-- =
(6-7)
(pi ++ --(pj)--)**--(pi *'--(pk)-- )-- =
(pj + '--(pk)--)++ --(pi)--
pi ++ --(pj **--(pk)-- )-- =
(6-8)
(pi ++ --(pj)--)**--(pi ++ --(pk)--)-- =
(pj **--(pk)--)++ -- (pi)--
pi *--(pj *p --(pk)-- )-- =
(6-9)
(pk+p --(pj)--)++ --(pi +p
--(pk)-- )-- =
(pj *p --(pk)--)+ '-- (pi)--
pi *--(pj + --(pk)-- )-- =
(6-10)
(pi +p --(pj)--)++ --(pi *--(pk)-- )--
(pj + --(pk)--)+ '--(pi)--
pi *--(pj *'--(pk)-- )-- =
(6-11)
(pi *--(pj)--)++ --(pi +p --(pk)-- )--
=
(pj *'--(pk)--)+ '--(pi)--
pi *--(pj ++ --(pk)-- )-- =
(6-12)
(pi *--(pj)--)++ --(pi *--(pk)-- )-- =
(pj ++ --(pk)--)+ '--(pi)--
pi **--(pj *p --(pk)-- =
(6-13)
(pi + '--(pj)--)++ --(pi + '--(pk)--
)-- =
(pj *p --(pk)--)**--(pi)--
pi **--(pj + --(pk)-- )-- =
(6-14)
(pi + '--(pj)--)++ --(pi **--(pk)-- )-- =
(pj + --(pk)--)**--(pi)--
pi **--(pj *'--(pk)-- )-- =
(6-15)
(pi **--(pj)--)++ --(pi + '--(pk)-- )-- =
(pj *'--(pk)--)**--(pi)--
pi **--(pj ++ --(pk)-- )-- =
(6-16)
(pi **--(pj)--)++ --(pi **--(pk)-- )-- =
(pj ++ --(pk)--)**--(pi)--
______________________________________
comprising:
s-plaintext register means for receiving and storing a digital message A,
first generator means for receiving and storing (i) said compound parameter q1 and (ii) (u1 u0)1, (v1 v0)1 and w01 of control bits q1, for receiving the content of said s-plaintext register means, for enciphering said received digital message into a pair of conjugate pseudocomplements by performing conjugate pseudocomplementing operations with respect to said parameter q1, and for outputting said pair of the conjugate pseudocomplements from its terminals M0 and M1,
second generator means for receiving and storing (i) said compound parameter q2 and (ii) (u1 u0)2, (v1 v0)2 and w02 of control bits q2, for receiving the content of said s-plaintext register means, for enciphering said received digital message into a pair of conjugate pseudocomplements by performing conjugate pseudocomplementing operations with respect to said parameter q2, and for outputting said pair of the conjugate pseudocomplements from its terminals M0 and M1,
s-selector means for receiving (i) two pairs of conjugate pseudocomplements and (ii) switching bits w3 and w2, and control bit w1, for selectively passing said received two pairs of conjugate pseudocomplements using said switching and control bits, and for outputting a selected pair of the pseudocomplements consisting of one pseudocomplement with respect to q1 and the other pseudocomplement with respect to q2,
s-ciphertext register means for receiving and transmitting an enciphered message,
first means, connect said s-plaintext register means to said first generator means and to said second generator means,
second means, connect said terminals M0 and M1 of each said generator means to said s-selector means, and for passing said selected pair of the pseudocomplements to said s-ciphertext register means through said s-selector means selected by said bits w3, w2 and w1,
r-ciphertext register means for receiving and storing an enciphered message,
r-selector means for receiving (i) said switching bits w3 and w2, and control bit w1, and (ii) an enciphered message, for selectively passing the conjugate pseudocomplements of said enciphered message received using said switching and control bits w3, w2 and w1, and for outputting each of the conjugate pseudocomplements,
temporary register means for receiving and storing a pair of conjugate pseudocomplements with respect to q2 (q3) obtained from said enciphered message,
third generator means for receiving and storing said parameter pi (=P1) and (u1 u0)a, (v1 v0)a and (w0)a of control bits qa, for receiving and enciphering the pseudocomplement with respect to q1 of said enciphered message by taking pseudocomplementing operations with respect to pi (=P1), which is specified by said bits (u1 u0)a, (v1 v0)a, and for outputting a produced pair of conjugate pseudocomplements with respect to q1 (p1)=Q2 (q3),
fourth generator means for receiving and storing said compound parameter q3 and (u1 u0)3, (v1 v0)3 and (w0)3 of control bits q3, for receiving and enciphering the pseudocomplement with respect to q2 of said enciphered message by taking pseudocomplementing operations with respect to q3, which is specified by said (u1 u0)3 and (v1 v0)3, and for outputting a produced pair of conjugate pseudocomplements with respect to q2 (q3)=Q1 (p1),
r-plaintext register means for receiving and storing a deciphered message as the original plaintext,
switcher means for connecting two input terminals (a,b) to two output terminals (c,d) by alternatively switching said connection (a,b) to (c,d) and (a,b) to (d,c) respectively using control bit wi where i denotes the suffix of said bits w0, w1, w2 and w3,
desegregator means for receiving and storing said compound parameter q2 (q3)=Q1 (p1) and control bits (u1 u0)b, (v1 v0)b and (w0)b of qb, for receiving and transforming said pair of conjugate pseudocomplements with respect to q2 (q3), which is the content of said temporary register means, to a targeted pair of the conjugate pseudocomplements (A*',A++) by performing the applicable complementing operations of {X',Xp,Xp,I} specified by (u1 u0)b and of {Xp,I,X',Xp } specified by (v1 v0)b, and for executing a logical or operation on said targeted pair, which has been transformed, in order to retrieve said digital message,
third means, connect said r-ciphertext register means to said third generator means through the first two switches of said r-selector means controlled by said bits w3 and w2 where said generator means generates said pair of conjugate pseudocomplements with respect to p1,
fourth means, connect said third generator means to said desegregator means through (i) the third switch of said r-selector means controlled by said bit w1 and (ii) said temporary register means where said desegregator means produces said targeted pair of conjugate pseudocomplements using said parameter q2 (q3)=Q1 (p1) and said qb,
fifth means, connect said fourth generator means to said desegregator means through (i) the third switch of said r-selector means controlled by said bit w1 and (ii) said temporary register means where said desegregator means produced said targeted pair of conjugate pseudocomplements using said parameter q2 (q3)=Q1 (p1) and said q3,
sixth means for transferring the deciphered message produced by executing said logical or operation into said ciphertext register means,
seventh means for obtaining (i) first pseudocomplement by performing said conjugate pseudocomplementing operations with respect to said compound parameter q1 in said first generator means and (ii) third pseudocomplement by performing said conjugate pseudocomplementing operations with respect to said parameter p1 in said third generator means where said first pseudocomplement and said third pseudocomplement are defined in the first term or the second term of said second equation chosen from the equations (3-1) through (3-16), in order to acquire first objective term which is the third term or the fourth term of said chosen second equation,
eighth means for obtaining (i) second pseudocomplement by performing said conjugate pseudocomplementing operations with respect to said compound parameter q2 in said second generator means and (ii) fourth pseudocomplement by performing said conjugate pseudocomplementing operations with respect to said compound parameter q3 in said fourth generator means where said second pseudocomplement and said fourth pseudocomplement are defined in the first term or the second term of said third equation chosen from the equations (3-1) through (3-16), in order to acquire second objective term which is the third term or the fourth term of said chosen third equation,
ninth means for obtaining said conjugate pair of pseudocomplements with respect to said compound parameter q2 (q3)=Q1 (p1) from said first objective term and said second objective term,
where said equations (3-1) through (3-16) are
(A(q1))(p1) or (A(q2))(q3) A(q1 (p1)) or A(q2 (q3)) ##EQU9##
2. The process for communicating securely over an insecure communication medium set forth in claim 1 including:
said necessary Boolean algebra operations for performing a transformation operation, which is indicated at the intersection of the table below, from a present pseudocomplement in the leftmost column to a targeted pseudocomplement in the top row,
______________________________________
star pseudocomplement
plus pseudocomplement
to to
from * ** *p
*' from + ++ +p
+'
______________________________________
* I Xp
Xp
X' + I Xp
Xp
X'
** Xp
I X' Xp
++ Xp
I X' Xp
*p
Xp
X' I Xp
+p
Xp
X' I Xp
*' X' Xp
Xp
I +' X' Xp
Xp
I
______________________________________
3. The process for communication securely over an insecure communication medium set forth in claim 1 including:
said conjugate psuedocomplementing operation means for forming said enciphered message from a single (a star or a plus) pseudocomplement derived from said digital message.
5. The process for communicating securely over an insecure communication medium set forth in claim 4 including:
said necessary Boolean algebra operations for performing a transformation operation, which is indicated at the intersection of the table below, from a present pseudocomplement in the leftmost column to a targeted pseudocomplement in the top row,
______________________________________
star pseudocomplement
plus pseudocomplement
to to
from * ** *p
*' from + ++ +p
+'
______________________________________
* I Xp
Xp
X' + I Xp
Xp
X'
** Xp
I X' Xp
++ Xp
I X' Xp
*p
Xp
X' I Xp
+p
Xp
X' I Xp
*' X' Xp
Xp
I +' X' Xp
Xp
I
______________________________________
7. The apparatus for communicating securely over an insecure communication medium set forth in claim 6 including:
alternative logical operations, which can result in the same logical values due to Boolean algebra operations, in three means listed below:
______________________________________
applicable applicable
said seventh means
operations in
operations in
performing said fifth means
said sixth means
______________________________________
A = I · (A*' + A++)
{X',Xp,Xp,I}
{Xp,I,X',Xp }
A = I · (A** · A+ ')
{Xp,I,X',Xp }
{X',Xp,Xp,I}
A = (A')' = (A*p + A+)'
{Xp,X',I,Xp }
{I,Xp,Xp,X'}
A = (A')' = (A* · A+p)'
{I,Xp,Xp,X'}
{Xp,X',I,Xp}
A = (Ap)p = (A*' + A+)p
{X',Xp,Xp,I}
{I,Xp,Xp,X'}
A = (Ap)p = (A** · A+p)p
{Xp,I,X',Xp }
{Xp,X',I,Xp }
A = (Ap)p = (A*p + A++)p
{Xp,X',I,Xp }
{Xp,I,X',Xp }
or A = (Ap)p = (A* · A+ ')p
{I,Xp,Xp,X'}
{X',Xp,Xp,I}.
______________________________________
8. The apparatus for communicating securely over an insecure communication medium set forth in claim 6 including:
physical wirings (hard wirings) of said control connections by choosing a configuration of a connecting arrangement designated by bits u1 u0, v1 v0 and w0, instead of said control connections by said control bits, u1 u0 in said first means, v1 v0 in said second means, w0 in said third means, w0 in said fourth means, u1 u0 in said fifth means, and v1 v0 in said sixth means.
9. The apparatus for communicating securely over an insecure communication medium set forth in claim 6 including:
said third means replacing said plus pseudocomplement with any other bits and said fourth means replacing said star pseudocomplement with any other bits.
11. The apparatus for communicating securely over an insecure communication medium set forth in claim 10 including:
alternative logical operations applicable to said complementations specified by u1 u0 and v1 v0 in said desegregator means can result in the same logical values due to Boolean algebra operations, these operations are
______________________________________
complementa-
complementa-
tion specified
tion specified
logical operation by u1 u0
by v1 v0
______________________________________
A = I · (A*' + A++)
{X',Xp,Xp,I}
{Xp,I,X',Xp }
A = I · (A** · A+ ')
{Xp,I,X',Xp }
{X',Xp,Xp,I}
A = (A')' = (A*p + A+)'
{Xp,X',I,Xp }
{I,Xp,Xp,X'}
A = (A')' = (A* · A+p)'
{I,Xp,Xp,X'}
{Xp,X',IXp }
A = (Ap)p = (A*'+ A+)p
{X',Xp,Xp I}
{I,,Xp,Xp,X'}
A = (Ap)p (A** · A+p)p
{Xp,I,X',Xp }
{Xp,X',I,Xp }
A = (Ap)p = (A*p + A++)p
{Xp,X',I,Xp }
{Xp,I,X',Xp }
or
A = (Ap)p = (A* · A+ ')p
{I,Xp,Xp,X'}
{X',Xp,Xp,I}
______________________________________
12. The apparatus for communicating securely over an insecure communication medium set forth in claim 10 including:
said parameters pi and pj are interchangeable, namely pi can be used in the place of pj and pj can be used in the place of pi.
14. The process for communicating securely over an insecure communication medium set forth in claim 13 including:
said necessary Boolean algebra operations for performing a transformation operation, which is indicated at the intersection of the table below, from a present pseudocomplement in the leftmost column to a targeted pseudocomplement in the top row,
______________________________________
star pseudocomplement
plus pseudocomplement
to to
from * ** *p
*' from + ++ +p
+'
______________________________________
* I Xp
Xp
X' + I Xp
Xp
X'
** Xp
I X' Xp
++ Xp
I X' Xp
*p
Xp
X' I Xp
+p
Xp
X' I Xp
*' X' Xp
Xp
I +' X' Xp
Xp
I
______________________________________
15. The process for communicating securely over an insecure communication medium set forth in claim 13 including:
said parameters pi, pj and pk are interchangeable, namely changing placed with each other.
17. The apparatus for communicating securely over an insecure communication medium set forth in claim 16 including:
alternative logical operations applicable to said complementations specified by u1 u0 and v1 v0 in said desegregator means can result in the same logical values due to Boolean algebra operations, these operations are
______________________________________
complementa-
complementa-
tion specified
tion specified
logical operation by u1 u0
by v1 v0
______________________________________
A = I · (A*'+ A++)
{X',Xp,Xp,I}
{Xp,I,X',Xp }
A = I · (A** · A+ ')
{Xp,I,X',Xp }
{X',Xp,Xp,I}
A = (A')' = (A*p + A+)'
{Xp,X',I,Xp }
{I,Xp,Xp,X'}
A = (A')' = (A* · A+p)'
{I,Xp,Xp,X'}
{Xp,X',I,Xp }
A = (Ap)p = (A*' + A+)p
{X',Xp,Xp,I}
{I,Xp,Xp,X'}
A = (Ap)p = (A** · A+p)p
{Xp,I,X',Xp }
{Xp,X',I,Xp }
A = (Ap)p = (A*p +A++)p
{Xp,X',I,Xp }
{Xp,I,X',Xp }
or A = (Ap)p = (A* · A+ ')p
{I,Xp,Xp,X'}
{X',Xp,Xp,I}.
______________________________________
18. The apparatus for communicating securely over an insecure communication medium set forth in claim 16 including:
said parameters pi, pj and pk are interchangeable, namely changing placed with each other.

This invention relates to a cryptographic system for enciphering and deciphering a digital signal conveying messages in data transmission networks. It is often necessary to protect stored and transmitted data from unauthorized parties or eavesdroppers. Cryptography offers the protection necessary for data privacy. However, as the required amount of privacy increases, the processing time for enciphering and deciphering a plaintext lengthens due to an increased complexity of the cryptography. It is desirable to have a simpler and faster cryptographic process and to provide a higher secrecy of data.

In the prior art, there are many cryptographic encipher/decipher techniques which are readily available to protect, to some degree, the secrecy of the stored and transmitted data. An example is the data encryption standard adopted by the National Bureau of Standards. See Federal Register, Mar. 17, 1975, Volume 40, No. 52 and Aug. 1, 1975, Volume 40, No. 149.

In general, cryptographic systems have three main components: (i) enciphering unit which transforms, by a mathematical one-to-one mapping, a plaintext and an encipher key(s) to a corresponding unintelligible ciphertext; (ii) an insecure medium for the storage or transmission of the ciphertext; (iii) deciphering unit which recovers the imbedded plaintext from the ciphertext by an inverse one-to-one mathematical mapping. This system includes at least two necessary parties utilizing the enciphering unit and the deciphering unit. These two parties are generally called the sender of the message and the authorized receiver of the message. A possible third party is generally referred as an unauthorized eavesdropper.

When the sender wants to secure his plaintext from the third party during transmission or storage, he can use enciphering unit using an enciphering key(s). An authorized receiver, who may be the sender, can retrieve the plaintext from the ciphertext in the medium by utilizing a deciphering key(s) on the deciphering unit. In an ideal situation, an eavesdropper trying to recover the plaintext from a ciphertext without knowing the deciphering key(s) will find the recovery computationally infeasible.

The effectiveness of a cryptographic system to protect against an attack by an eavesdropper depends on the computational complexity of the enciphering and deciphering processes and the sizes of the mathematical domains applicable to these processes. In other words, the effectiveness depends upon the capability to ensure that the eavesdropper is unable to decode any such ciphertexts. The sender and receiver arrange to have corresponding enciphering and deciphering keys which are kept secret from the eavesdropper, so that even if the eavesdropper knows the computational processes of the enciphering unit and the deciphering unit, he would not be able to decrypt the ciphertexts. A task is considered computationally infeasible if its cost, as measured by either the amount of memory used or the computing time, is finite but impractically large, for example 100 years computing time.

A byte is a string of n-bits, a word is a segment of m-bytes, a message to encipher or to decipher is a block of t-words, and a plaintext is a collection of messages. Since the enciphering and deciphering processes directed by a pair of chosen enciphering and deciphering keys are mathematically one-to-one mappings from plaintext-message domain to ciphertext-message domain and vice versa, the effectiveness of a cryptographic system can generally be measured by the computational complexity of the mapping functions (including the domain size of the keys) and the ratio of the size of the subdomain containing all meaningful messages over the size of the entire message domain. For example, when one considers twenty-six roman letters (bytes) and a blank letter (space) and words composed of five letters or less, the domain size of the words is 27×27×27×27×27=14348907 because there are twenty-seven choices for each byte (a letter) in the five letter-window. The size of the subdomain of all meaningful words of which the length of the words in English is less than six letters is much smaller than the domain 14348907.

An object of the present invention is to provide a cryptographic system which performs a simpler and faster process of an enciphering and deciphering computation based on pseudocomplements of vector-Boolean algebra described herein.

Another object of the present invention is to provide a cryptographic system which encodes a plaintext into a 2m -time longer ciphertext (m is greater than or equal to one) than the length of the plaintext and which decodes the ciphertext into the original plaintext. The longer ciphertext implies that an eavesdropper requires a larger domain of ciphertexts in order to retrieve the plaintext.

Another object of the present invention is to enable an enlargement of information entropy in a ciphertext to increase the difficulty of the deciphering process employed by an eavesdropper.

Another object of the present invention is to quickly and safely replace a cipher key through an insecure communication medium.

Another object of the present invention is to strengthen a combinational complexity in a ciphertext by a factor of a factorial operation when another cryptography (for example DES of National Bureau of Standard) is additionally used.

FIG. 1 is a state transition diagram from regular set {A,A',AP,Ap } to star set {A*,A**,A*P,A*'} or to plus set {A+,A++,A+P,A+ '} and from star set and plus set to trapped set {I,O,P,P'}. Remark: The passages from the regular set to the trapped set are one-way paths through two conjugate pseudocomplementing operations.

FIG. 2 is a block diagram of a cryptographic system having a conjugate pseudocomplement generator for enciphering and a conjugate pseudocomplement desegregator for deciphering in accordance with the present invention.

FIG. 3 is a chart illustrating a procedure to quickly and safely establish a transient key through an insecure communication medium in accordance with the present invention.

FIG. 4 is a block diagram of a conjugate pseudocomplement generator of an enciphering device.

FIG. 5 is a block diagram of a conjugate pseudocomplement desegregator of a deciphering device.

FIG. 6 is a block diagram of conjugate pseudocomplement generators using two keys composed by two parameters or three parameters.

FIG. 7 is a block diagram of conjugate pseudocomplement desegregators using the two keys composed by two parameters or three parameters.

A Boolean algebra consisting of exactly 2n elements for some integer n is represented by f(x1, x2, . . . ,xn): mapping from n-product space of b to b, namely bxbx . . . xb→b={0,1} and xi for i=1,2, . . . , n is a two-valued variable of b. The 2n elements can be denoted by binary vector forms having n components. Using such a notation, we execute the operations, join, meet and complement-negation, of the Boolean algebra componentwise by considering each component in a vector form as an independent two-valued element of Boolean algebra. In a vector form, the notation of the zero element and the unity element are 0=00 . . . 0 and I=11 . . . 1, respectively.

In the vector form of a variable X, the classic complement (negation) X' of X is defined under join and meet operations, i.e., X+X'=I and X·X'=O. By utilizing exclusive-OR, XP =X'P+XP', or coincidence, XP =XP+X'P', operations with respect to a parameter P, XP or XP may be considered as relative complements of a variable X. Since X+XP =X+P and X·XP =X·P' or X+XP =X+P' and X·XP =X·P, both become I and O when P=I or P'=I under exclusive-OR and coincidence operations respectively. In contrast, when P=O or P'=O, the relative complements results in X+XP =X+P=X and X·XP =XP'=X for exclusive-OR operation, and X+XP =X+P'=X and X·XP =XP=X for coincidence operation. Because of the exchangeability (described later) between X, X', XP and XP under these operations, these complements are called regular complements.

From a view point of information theory introduced by C. E. Shannon, a variable X in the vector form can carry a certain information. Similarly, X', XP and XP can carry the same information as X after repeating its respectively applied operation twice, i.e., (X')'=X, (XP)P =X and (Xp)p =X. In other words, information entropy carried by X, X', XP and XP is the same under these reciprocative operations. The information entropy is defined by ##EQU1## where pi and lg denote a probability of the ith event among 2n possible events (values) and logarithm with base 2, i.e., log2, respectively.

An increase of the information entropy in a variable indicates a magnification of vaguenesses of the context in X. In order to magnify the information entropy of an enciphered text, pseudocomplements X* and X+ are introduced by defining X+X*=I, X·X*=XP≦P, and P≦X+X+ =X+P, X·X+ =0, respectively where P is a parameter. From this definition, one can determine X*=X'+P and X+ =X'·P. Moreover, the pseudocomplementing operations X* and X+ are one-way operations to X* and X+ from X, X', XP and XP. In other words, there are no Boolearn operations to map from X* and X+ to X, X', XP and XP, namely X* and X+ operations are irreversible (magnification of the entropy). Table 1 illustrates the result of an operation applied on an argument A. For example, by choosing an operation from X+, XP, X', X P, X* and I in the top row, and an argument in the left column of table 1, the intersection of the column of the operation and the row of the argument displays the result of this operation on the argument. When an operation and an argument chosen are X* and AP respectively, the result A** of the operation X* on AP is found at the intersection of the column of X* and the row of AP.

Considering repeated applications of operations on an argument, one can find a successive result of the applications from table 1. The transitiveness of successive applications of operations are depicted in FIG. 1 which shows (i) four distinct sets: regular set, star set, plus set and trapped set, and (ii) irreversible courses of the X* and X+ operations from the regular set to the star and plus sets and then from these two sets to the trapped set.

Since the defined pseudocomplement of a variable A associates with a parameter P, the pseudocomplement with respect to the parameter must be denoted with the P. The notation --P-- is used after a pseudocomplement symbol to denote the respected parameter P. For example, X* and X+ with respect to the parameter P are now X*--P-- and X+ --P--. However, when a pseudocomplementation involves a single parameter then the pseudocomplement will be abbreviated by omitting the parameter notation --P--, otherwise, parameter notations indicate the pseudocomplements with respect to each parameter. For example, operations X* and XP applied on A with respect to P1 and X+ and X' applied on the subsequent result with respect to P2 result in (A*P --P1 --)+ '--P2 --.

TABLE 1
______________________________________
Operations
Arguments
X+ XP X' XP
X* I
______________________________________
A+ A++
A+P
A+
A++
I A+
A++ A+ A+ '
A+P
A+
I A++
A*' P A*P
A* A** A* A*'
A*P P A*' A** A* A** A*P
A A+ AP A' AP
A* A
A' A++
AP A AP
A** A'
AP A++
A' AP
A A* AP
AP A+ A AP
A' A** AP
A+ '
A+ A++
A+
A+P
P A+ '
A+P
A++
A+ A++
A+ '
P A+P
A* O A** A*' A*P
A** A*
A** O A* A*P
A*' A* A**
______________________________________

An increase of information entropy in pseudocomplements is computed as follows: For X* operation, there are ##EQU2## terms indicating the number of choices of pseudocomplements defined by a parameter pi which consists of i ones and (n-i) zeros in its vector form. These i ones in a pseudocomplement can mask i-bits among n-bits of a plaintext so that there are 2i varieties of the maskings. Therefore the sum: ##EQU3## represents the total message capacity of n-bits in a vector form with pi. Thus, the entropy is ##EQU4## which is larger than the entropy ##EQU5## without the pi. An increase of the entropy is signified by the ratio R,

R=n(lg3)/n=lg3=1.58496 . . .

where uniform distributions of the events are assumed. For X+ operation, the same result is obtained.

FIG. 1 illustrates the transition of pseudocomplements from the regular set to the trapped set by applying the pseudocomplementing operations X* and X+. There are four elements in the star set and four in the plus set which are derived from regular set elements. Since entropies of these eight elements have been increased, one cannot retrieve an element of the regular set from an element of these pseudocomplement sets. However, from the duality of Boolean algebra, a conjugate relationship between a star set element and a plus set element exists due to conjugate operations of join and meet. Therefore, one can recover an element of the regular set from a pair of conjugate pseudocomplements as follows: ##EQU6##

An encipher/decipher key K(n,P,q) consists of three components: (1) n=block size of a plaintext, (2) P=pseudocomplement parameter which masks the plaintext and (3) q=combinational identifier of a conjugate pair of pseudocomplements. FIG. 2 despicts the process of enciphering/deciphering a plaintext. A plaintext A and a key K are supplied to the input port 4 of the enciphering unit 1 and the key register 2, respectively. The three components of the key are transmitted to the conjugate pseudocomplement generator 3. Then the plaintext is transformed mathematically into a conjugate pair of pseudocomplements, (C1,C2)=Tk (A) by generator 3, and is stored in the ciphertext register 9. The content of the ciphertext register is transmitted to an authorized receiver through the communication line or medium 10 which is connected to an input port of the deciphering unit 11. If a repetition m is greater than one then the repetition control 6 shall control the looping operation of the enciphering through node 7 and the feedback line 8 until the number of repetitions is satisfied.

The authorized receiver who keeps key K in the key register 12 of the deciphering unit 11 shall exercise a reverse course of the enciphering process. The received ciphertext (C1,C2) in the ciphertext register 15 is converted into the plaintext by the conjugate pseudocomplement desegregator 13 using key K. The deciphered text which is the original plaintext appears at the plaintext register 19. When the repetition constant m is greater than one, the repetition control 16 shall perform the repeated loop-operation of the deciphering process through node 17 and the feedback path 18 until the specified looping is accomplished. The retrieved plaintext is sent out from the output port 20.

Before a sender sends a message to an authorized receiver, both parties must know the transient encipher/decipher key. FIG. 3 illustrates a process to establish such a key between the sender and the authorized receiver. An encipher/decipher key S stored in the register 31 is distributed to all authorized users of the cryptographic system. Also assume that an eavesdropper gets the key S. A sender initiates an inquiry to establish with an authorized receiver a transient key by sending a pseudocomplement Cs =TS (Ps) in box 36 of a parameter Ps stored in register 32 using the system key S where TS denotes a transformation. Remark: The sent inquiry consisting of half of a conjugate pair Ps is lengthened fully to 2n with padding bits.

The receiver does not decipher the received pseudocomplement Cs but he shall use the Cs as a parameter for his sending message, i.,e., transient encipher/decipher key Pr stored in register 33. The eavesdropper encounters difficulty in deciphering Ps from the Cs because of the missing half of the conjugate pair Ps and of a larger entropy of Cs. The receiver generates a conjugate pair, consisting of two components: (1) Cr1 =TCs (Pr) indicated in box 37 and (2) Crs =TS (Pr) indicated in box 38 of the Pr using two parameters Cs and S, respectively and transmits these to the sender.

The sender who has the parameters Cs and Ps receives the pair, Cr1 and Crs. Then, he generates the other conjugate pseudocomplement Cr2 of the Pr by Cr2 =TPs (Crs)=TPs (TS (Pr))=TPsxS (Pr)=TCs (Pr) using eq.s (3) and (4) below and deciphers the Pr from the conjugate pair of Cr1 and Cr2 with respect to the parameter Cs by Pr =TCs (Cr1,Cr2) using eq.s (2) where PsxS denotes Cs =TS (Ps).

__________________________________________________________________________
(A+P --(Pi)--)+ '--(Pj)--
= (A++ --(Pi)--)+P --(Pj)--
= A+P --(Pi ++ --(Pj)--
)-- = A*--(Pi +P --(Pj)
-- )-- (3-1)
(A+P --(Pi)--)**--(Pj)--
= (A++ --(Pi)--)*--(Pj --
= A+P --(Pi *'--(Pj)--
= A*--(Pi *--(Pj)-- )--
(3-2)
(A*--(Pi)--)+ '--(Pj)--
= (A*'--(Pi)--)+P --(Pj)--
= A+P --(Pi + --(Pj)--
= A*--(Pi + '--(Pj)--
)-- (3-3)
(A*--(Pi)--)**--(Pj)--
= (A*'--(Pi)--)*--(Pj)--
= A+P --(Pi *P --(Pj)--
)-- = A*--(Pi **--(Pj)--
(3-4)
(A+ '--(Pi)--)+ '--(Pj)--
= (A+ --(Pi)--)+P --(Pj)--
= A+ '--(Pi ++ --(Pj)----
= A**--(Pi +P --(Pj
)-- ) -- (3-5)
(A+ '--(Pi --)**--(Pj)--
= (A+ --(Pi)--)*--(Pj)--
= A+ '--(Pi *'--(Pj)-- )--
= A**--(Pi *--(Pj)--
(3-6)
(A**--(Pi)--)+ '--(Pj)--
= (A*P --(Pi)--)+P --(Pj)--
= A+ '--(Pi+ --(Pj)-- )--
= A**--(Pi + '--(Pj)--
)-- (3-7)
(A**--(Pi)--)**--(Pj)--
= (A*P --(Pi)--)*--(Pj)--
= A+ '--(Pi *P --(Pj)--
= A**--(Pi **--(Pj)--
(3-8)
(A*P --(Pi)--)*'--(Pj)--
= (A**--(Pi)--)*P --(Pj)--
= A+ --(Pi *P --(Pj)--
= A*P --(Pi **--(Pj)--
)-- (3-9)
(A*P --(Pi)--)++ --(Pj)--
= (A**--(Pi)--)+ --(Pj)--
= A+ --(Pi±-(Pj)-- )--
= A*P --(Pi + '--(P
j)-- )-- (3-10)
(A+ --(Pi)--)*'--(Pj)--
= (A + '--(Pi)--)*P --(Pj)--
= A+ --(Pi *'--(Pj)-- )--
= A*P --(Pi *--(Pj)--
)-- (3-11)
(A+ --(Pi)--)++--(Pj)--
= (A+ '--(Pi)--)+ --(Pj)--
= A+ --(Pi ++ --(Pj)--
= A*P --(Pi +P
--(Pj)-- )--
(3-12)
(A*'--(Pi)--)*'--(Pj)--
= (A*--(Pi)--)*P --(Pj)--
= A++ --(Pi *P --(Pj)--
= A*'--(Pi **--(Pj)--
(3-13)
(A*'--(Pi)--)++ --(Pj)--
= (A*--(Pi)--)+ --(Pj)--
= A++ --(Pi + --(Pj)--
= A*'--(Pi + '--(Pj)--
)-- (3-14)
(A++ --(Pi)--)*'--(Pj)--
= (A+P --(Pi)--)*P --(Pj)--
= A++--(Pi *'--(Pj)-- )--
= A*'--(Pi *--(Pj)--
(3-15)
(A++ --(Pi)--)++ --(Pj)--
= (A+ P --(Pi)--)+ --(Pj)--
= A++ --(Pi ++ --(Pj)--
= A*'--(Pi +P --(Pj
)-- )-- (3-16)
__________________________________________________________________________

Also the following relationships exist.

______________________________________
A+ --(P)-- = P*'--(A)--
(4-1)
A*--(P)-- = P+ '--(A)--
(4-2)
A+ '--(P)-- = P*--(A)--
(4-3)
A*'--(P)-- = P+ --(A)--
(4-4)
A++ --(P)-- = P++ --(A)--
(4-5)
A**--(P)-- = P**--(A)--
(4-6)
A*P --(P)-- = P*P --(A)--
(4-7)
A+P --(P)-- = P+P --(A)--
(4-8)
AP --(P)-- = PP --(A)--
(4-9)
AP --(P)-- = PP --(A)--
(4-10)
A+ --(P')-- = A*P --(P)--
(5-1)
A*--(P' )-- = A+P --(P)--
(5-2)
A++ --(P')-- = A*'--(P)--
(5-3)
A**--(P')-- = A+ '--(P)--
(5-4)
AP --(P')-- = AP --(P)--
(5-5)
______________________________________

In general, the eavesdropper knows Cs and S but not Ps when deciphering Pr from the intercepted Cr1 and Crs. The difficulty in retrieving Pr from Cr1 and Crs arises because (i) they are derived from two independent parameters Cs and S, and (ii) the halves of the conjugate pairs Pr with respect to Cs and S are missing. A similar difficulty occurs in retrieving Cr2 from Crs because the eavesdropper generally does not know Ps.

After the sender deciphers Pr, both the parties now have the transient key Pr. The sender can encipher a plaintext and can send the ciphertext indicated in box 39 to the receiver who is able to decipher it.

In FIG. 4 which illustrates the enciphering process, the three components (n,P,q) of a key are stored in the n register 41, the P register 42 and the q register 43, respectively. The length control 44 generates a row of n ones in the masking register 45 from the n of the key. Logical AND operation masks the P register 42 and the plaintext register 46 using the n ones generated. The content of the P register 42 is the parameter P for enciphering a plaintext.

The third component q of the key in the q register 43 denotes the pseudocomplementing operation applied on a plaintext to produce the ciphertext.

A pseudocomplement in the star set {A*,A**,A*P,A*'} can be coded with 2 bits u1 u0 taking on corresponding binary values 00 (=0), 01 (=1), 10 (=2) and 11 (=3), respectively. Similarly, a pseudocomplement in the plus set {A+,A++,A+P,A+ '} is coded with v1 v0 bits. The bits u1 u0 and v1 v0 are components of the q. For example, A*P and A+ ' are coded as u1 u0 =10 (=2) and v1 v0 =11 (=3). Further a single bit w0 of the q indicates the order of the two pseudocomplements of a conjugate pair in a ciphertext. When this bit is on (=1) or off (=0), it may express the plus-star sequence or the star-plus sequence in a ciphertext.

After a block of plaintext is loaded in the plaintext register 46 through the input port 47, the block is enciphered by the star operation 48 and the plus operation 49 using the bits w0, u1 u0 and v1 v0 of the q register 43. The bits u1 u0 and v1 v0 designate the star pseudocomplement operation of {X*,X**,X*P,X*'} and the plus pseudocomplement operation of {X+,X++,X+P,X+ '} to apply on the content of the plaintext register using the parameter P in the P register. The two pseudocomplements, produced by the star operation and by the plus operation using the bits u1 u0 and v1 v0, are transmitted to the M0 register 51 and the M1 register 52 through switch 50 dictated by bit w0 where a,b terminals are connected to c,d terminals if w0 =0 (off) or to d,c terminals if w0 =1 (on). Then a ciphertext is dispatched to the output port 54 after concatenating the contents of the registers M1 and M0. The M1 content is placed in the right half of the ciphertext and the M0 content in the left half.

In FIG. 5 which illustrates the deciphering process using OR version of eq. (2-1), the three components (n,P,q) of a key are stored in the n register 61, the P register 62, and the q register 63, respectively. The length control 64 generates a row of n ones in the masking register 65 from the n component of the key. Logical AND operation masks the P register 62 and the ciphertext register 73 using the n ones generated.

The third component q, consisting of the bits w0, u1 u0 and v1 v0, of the key in the q register 63 is used in the deciphering process. After a ciphertext is loaded in the ciphertext register 73 through the input port 67, the left half and the right half of the ciphertext are forwarded to the star operation 68 and the plus operation 69 respectively through switch 70 where the switching position depends upon bit wO in the q register. The bits u1 u0 and v1 v0 in the q register 63, connected directly to the star operation 68 and the plus operation 69 respectively, select one of the operations {X',XP,XP,I} and one of the operations {XP,I,X',XP }. The respective operations applied on the star pseudocomplement and the plus pseudocomplement of the ciphertext produce A*' and A++, respectively. The A*' and A++ generated by these operations are stored in registers M0 71 and M1 72, respectively. Then the contents of the registers M1 and M0 are joined by logical OR operation 74, and the result of the OR operation is forwarded to the plaintext register 66 and dispatched through the output port 75.

Similarly, one can arrange another deciphering process like the one in FIG. 5 using the other equation in eq.s (2). For example, when using the AND version of eq. (2-1) in order to obtain the quantity A, one can determine by referncing table 1 the process required to transform the star pseudocomplement in a ciphertext (designated by the u1 u0 in the q component) into the term A** that appears in eq. (2-1) and also the process required to transform the plus pseudocomplement in the ciphertext (designated by the v1 v0 in the q component) into the term A+, that appears in eq. (2-1). The found processes are as follows: The transformation from a star pseudocomplement of set {A* (when u1 u0 =00), A** (when u1 u0 =01), A*P (when u1 u0 =10), A*' (when u1 u0 =11)} to A** can be accomplished by applying a respective operation of set {XP ,I,X',XP } on it, and the transformation from a plus pseudocomplement of set {A+ (when v1 v0 =00), A++ (when v1 v0 =01), A+P (when v1 v0 =10), A+ ' (when v1 v0 =11)} to A+ ' can be accomplished by applying a respective operation of set {X',XP,XP,I}. Thus an AND operation on the terms A** and A+ ' results in the quantity A which represents the plaintext as shown in eq. (2-1).

When a sender initiates an inquiry for a new transient key by sending an authorized receiver a Cs (for example, Cs =Ps *--S--) which is a half of a conjugate pseudocomplement pair of a parameter Ps with respect to a system key S, the receiver uses the parameters S and Cs as P1 and P2 (P1) for enciphering the transient key Pr as his message (a plaintext A) in the enciphering process illustrated in FIG. 6. And he transmits the enciphered message (for example, Pr *'--S-- and Pr+ '--Cs --) to the sender. The sender who receives the enciphered message firstly enciphers Pr *'--S-- to (Pr *'--S--)+P --Ps --=Pr *--S+ '--Ps ----=Pr *--Ps *--S---- based on eq. (3-3) by using an encipher device shown in FIG. 4 where S and Ps are equivalent to Pi and Pj of eq. (3-3), respectively, and secondly deciphers Pr *--Ps *--S---- and Pr+ '--Ps *--S----(=Pr+ '--Cs --) into Pr by using a decipher device shown in FIG. 5 where the parameter used is Ps *--S--.

In FIG. 5, suppose that Pr *--Ps *--S---- and Pr+ '--Ps *--S---- are loaded in the right half and in the left half of the cipher register 73, respectively. Since, in this case, the order in the cipher register is the plus-star sequence (from the left to the right) of the pseudocomplements, the w0 is on, namely w0 =1 in switch 70. The bits u1 u0 and v1 v0 are u1 u0 =00 and v1 v0 =11 due to the pseudocomplement symbols * and + ', respectively. Accordingly to the operations discussed above, the applied deciphering operations are X' on Pr *--Ps *--S---- and Xp on Pr+ '--Ps *--S---- usig the parameter Ps *--S-- through the star operation 68 and the plus operation 69, respectively. And the applied operations result in Pr *'--Ps *--S-- -- at the M0 register 71 and in Pr++ --Ps *--S---- at the M1 register 72, respectively.

The contents of the two registers M0 and M1 are ORed to produce the plaintext Pr in the plaintext register 66. Note: The terms Pr, Ps and S are equivalent to A, Pj and Pi in eq. (3-3) respectively and S+ '--Ps --=Ps *--S-- of eq. (4-2) is used here.

When a higher degree of message security, like an establishment of a new ciphering transient key discussed in the preceding section, is desired, both parties in communication can establish two keys rather then one, and the sender can encipher a plaintext into a pair of conjugate pseudocomplements derived independently from the two parameters. Generally, the parties choose an equation among eq.s (3-1) through (3-16), for example, eq. (3-3), i.e., ##EQU7## Furthermore, suppose that the sender takes a plus pseudocomplement of the message A with respect to Pi+ '--Pj --, for example A+P --Pi+ '--Pj---- as a buddy of A*--Pi+ '--Pj ---- of the conjugate pair (A*,A+P) with respect to Pi+ '(--Pj -- where the A* pseudocomplement is underlined in the equation above, then he must encipher his message A by A*'--Pi -- (or A*--Pi --) according to the first (or the second) term of eq. (3-3) and send a pair of pseudocomplements A+P --Pi+ '--Pj ---- and A*'--Pi -- (or A*--Pi --) to the receiver. The receiver shall encipher his received pseudocomplement A*'--Pi -- (or A*--Pi --) by taking the specified pseudocomplementing operation ()+P --Pj -- appeared in the first term (or ()+ '--Pj -- appeared in the second term) of eq. (3-3) in order to acquire the fourth term A*--Pi+ 'Pj ---- of eq. (3-3). Since he has the pair of the conjugate pseudocomplements A*--Pi+ '--Pj ---- and A+P --Pi+ '--Pj ---- of the message A with respect to the parameter Pi+ '--Pj --, the plaintext A can be recovered by performing (A')'=(A+P ·A*)'=A++ +A*' which is eq. (2-1) by the receiver.

FIG. 6 depicts an enciphering process using two parameters where P1 and P2 are equivalent to Pi and Pj of eq.s (3). A plaintext A is loaded in the plaintext register 80 and two keys, (n,P1,q1) and (n,P2 (P1),q2), are set in the two conjugate complement generators 81 and 82 respectively where P2 (P1) denotes a pseudocomplement P2 with respect to P1. Each generator produces a star pseudocomplement and a plus pseudocomplement at the M0 and M1 terminals of the generator from the plaintext A and its key where the M0 and M1 terminals are the M0 register 51 and the M1 register 52 in FIG. 4. The switches, 83 and 84, which are a part of selector 90 named with w1, negates the effect of switch 50, which is w0, in FIG. 4 at the exit of each generator, specifically it restores the order of the star pseudocomplement and the plus pseudocomplement, namely w0 =0 providing the star-plus sequence. Note: In order to negate the effect of the switch w0, the control bit of w1 must be the same as the bit of w0 in this restoring process. Selector 90 consisting of the four additional switches 85,86,87 and 88, which are w2 and w3, selects a star pseudocomplement and a plus pseudocomplement with respect to two parameters P1 and P2 (P1), respectively, and arranges the order of the selected two pseudocomplements in the ciphertext register 89 depending upon the switch control bit w2 and w3 where selector 90 may be a part of the q component of the key.

An example of a sequential event, which illustrates how to choose these switch control bits w1, w2 and w3, and the q components of the keys, is described here. In other words, it is assumed that two transient keys and the bits w1, w2 and w3, which may be a part of the q component of the keys, are being established between a sender and a receiver. The sender sets the two parameters, P1 and P2 (P1), in the two generators 81 and 82 respectively. For example, he choose the pseudocomplments *' and +P by placing u1 u0 =11 and v1 v0 =10 in the corresponding q1 and q2 of the two keys, respectively when the keys are eatablished. Note: The bits v1 v0 of q1 and the bits of u1 u0 of q2 are "don't care" of Boolean algebra. Each generator proceduces the star and plus pseudocomplements specified by the bits u1 u0 and v1 v0 in each key. Remark: The other halves of the two conjugate pairs generated by the two "don't care" codes are not in this case. Thus, the bits w1 (=w0), w2 and w3 that are used in the switches 83 through 88, must be chosen properly in order to purposely place the *' pseudocomplement and the +P pseudocomplement in the ciphertext register 89. For example, by setting w1 =0, w2 =0 and w3 =1, the pseudocomplements A*'--P1 -- and A+P --P2 (P1)-- are placed in the left half and in the right half of the ciphertext register 89 from the M0 terminal of generator 81 and from the M1 terminal of generator 82, respectively.

A deciphering process of this example is illustrated next. The receiver obtains the ciphertext in the ciphertext register 100 in FIG. 7. Then, in this example, the conjugate pseudocomplement generator 110 performs the pseudocomplementing operation with respect to P2, i.e., ( )+P --P2 -- on A*'--P1 -- passing via the switches w3 and w2, which are a part of selector 101, from the ciphertext register. The result of the pseudocomplementation (A*'--P1 --)+P --P2 -- appeared at the M0 terminal of generator 110 is equivalent to A*--P2 *--P1 ----(=A*--P1+ '--P2 ---- according to eq. (4-2)) where the bits u1 u0, v1 v0 and w0 of qa in the key (n,P2,qa) used by generator 110 are "don't care", 10 and 1, respectively. Remark: The control bit of w0 in switch 50 is different from the control bit of w1 in switches 106 and 107 because eq. (3-3) indicates that the 30 P pseudocomplement on A*'--Pi -- with respect to Pj is equivalent to the * pseudocomplement on A with respect to Pi+ '--Pj --, i.e., (A*'--Pi --)+P --Pj --=A*--Pi+ '--Pj ----. In other words, the resultant of the +P pseudocomplementation on A*'--Pi -- must be treated as the * pseudocomplement of A with respect to Pi+ '--Pj --. Therefore, the bit of w0 must be on (=1).

The pseudocomplement A+P --P1+ '--P2 ---- in the ciphertext register 100 reaches at the M1 terminal (and at the M0 terminal) of box 111 passing via the switches w3 and w2. Subsequently, the pseudocomplements A*--P1+ '--P2 ---- appeared at the M0 terminal of generator 110 and A+P --P1+ '--P1 ---- appeared at the M1 terminal of box 111 are stored in the left half and in the right half of register 108, respectively. From the discussion above, the control bits of w3, w2 and w1 are set with w3 =1, w2 =0 and w1 =0, respectively. The conjugate pseudocomplement desegregator 109 which is the same as the desegregator described in FIG. 5 receives a key (n,P2 (P1),qb) and the content of register 108, and produces the pseudocomplement of a targeted pair (A*',A+ +) from (A*,A+P) with respect to P1+ '--P2 -- specified by the control bits of the qb component of the key. In this example, node 74 of the desegregator in FIG. 5 performs OR operation on the targeted pair (A*',A++) specified in eq. (2-1) which concludes the deciphering process by storing the plaintext A in the plaintext register 114.

Relationships between these chosen pseudocomplements and the bits w0, u1 u0 and v1 v0 of q1, q2, qa and qb, which are derived from eq.s (3-3) and (4-2), are summarized here by assuming w1 =0, w2 =0 and w3 =1 in the example. For the q1 of P1 in generator 81, the bits w0 =0 (this means the star-plus sequence), u1 u0 =11 and v1 v0 =(-- --) are determined from A*'--P1 -- appeared at the M0 terminal of generator 81 and stored in the left half of the ciphertext register 89; for the q2 of P2 (P1) in generator 82, the bits w0 =0 (this means the star-plus sequence), u1 u0 =(-- --) and v1 v0 =10 are determined from A+P --P1+ '--P2 ----=A+P --P2 *--P1 ---- appeared at the M1 terminal of generator 82 and stored in the right half of the ciphertext register 89; for the qa of P2 in generator 110, the bits w0 =1, (see the remark above), u1 u0 =(-- --) and v1 v0 =10 are determined from (A*'--P1 --)+P --P2 --=A*--P1+ '--P2 ----=A*--P2 *--P1 ---- appeared at the M0 terminal of generator 110 and stored in the left half of register 108; for the qb of P2 (P1) in desegregator 109, the bits w0 =0 (this means the star-plus sequence), u1 u0 =00 and v1 v0 =10 are determined from A*--P2 *--P1 ---- stored in the left half and A+P --P2 *--P1 ---- stored in the right half of register 108 which is connected to the star operation 68 and to the plus operation 69 of the desegregator (see FIG. 5), respectively where bars (-- --) indicate "don't care" bits. Similarly, one can determine the bits w0, u1 u0 and v1 v0 as well as the bits w1, w2 and w3 in other cases.

When P1 =01101011, P2 =10101100 and A (message)=11011011 in the discussion above, the sender produces P2 *--P1 --=01111011, A*'--P1 --=10010000 and A+P --P2 *--P1 ----=10100100, and transmits the ciphertext 1001000010100100 (in the star-plus sequence) to the receiver who shall find it in the ciphertext register 100. Since w3 =1, w2 =0 and w1 =0 in selector 101 (and in selector 90), the A*--P2 *--p1 ---- pseudocomplement and the A+P --P2 *--P1 ---- pseudocomplement are in the left half and in the right half of register 108, respectively where generator 110 performs the pseudocomplementing operation +P on A*'--P1 --, i.e., (A*'--P1 --)+P --P2 --=A*--P2 *--P1 ----=01111111 and produces it at the M0 terminal of the generator and where the half of the ciphertext, which is A+P --P2 *--P1 ----, appears at the M1 terminal of box 111 through node 113. The content of register 108 are now a pair of the conjugate pseudocomplements of A with respect to P2 *--P1 --. Desegregator 109 retrieves the plaintext A from (A*--P2 *--P1 ----'=10000000 and (A+P --P2 *--P1 ----)'=01011011 by accomplishing the logical OR operation of 10000000+01011011=11011011 at node 74 shown in FIG. 5. The ORed result, which is the bit string of the message A, appears in the plaintext register 114.

If an encipher key, which is known to general public, is different from its corresponding decipher key, which is kept in secret and which is difficult to derive from the encipher key, then this cryptographic system is called a public key system. When the two keys used in the preceding discussion of this invention are enciphered by a third key, the conditon of a public key system is satisfied. Namely, the condition is that a decipher key is different from its corresponding encipher key and is difficult to derive from the encipher key. In this case, the following relationships of three keys, Pi, Pj and Pk exist:

______________________________________
P1 (Q1)
Q2 (Q3)
Q1 (P1)
______________________________________
Pi + --(Pj +P --(Pk)-- )-- =
(6-1)
(Pi *P --(Pj)--)**--(Pi *P --(Pk)-- )-- =
(Pj +P --(Pk)--)*'--(Pi)--
Pi + --(Pj *--(Pk)-- )-- =
(6-2)
(Pi *P --(Pj)--)**--(Pi + --(Pk)-- )-- =
(Pj *--(Pk)--)*'--(Pi)--
Pi + --(Pj + '--(Pk)-- )-- =
(6-3)
(Pi + --(Pj)-- )**--(Pi *P --(Pk)-- )-- =
(Pj + '--(Pk)--)*'--(Pi)--
Pi + --(Pj **--(Pk)-- )-- =
(6-4)
(Pi + --(Pj)--)**--(Pi + --(Pk)-- )-- =
(Pj **--(Pk)--)*'--(Pi)--
Pi ++ --(Pj +P --(Pk)-- )-- =
(6-5)
(Pi *'--(Pj)--)**--(Pi *'--(Pk)-- )-- =
(Pj +P --(Pk)--)++ --(Pi)--
Pi ++ --(Pj *--(Pk)-- )-- =
(6-6)
(Pi *'--(Pj)--)**--(Pi ++ --(Pk)-- )-- =
(Pj *--(Pk)--)++-- (Pi)--
Pi ++ --(Pj + '--(Pk)-- )-- =
(6-7)
(Pi ++ --(Pj)--)**--(Pi *'--(Pk)-- )-- =
(Pj + '--(Pk)--)++ --(Pi)--
Pi ++ --(Pj **--(Pk)-- )-- =
(6-8)
(Pi ++ --(Pj)--)**--(Pi ++ --(Pk)--)-- =
(Pj **--(Pk)--)++ -- (Pi)--
Pi *--(Pj *P --(Pk)-- )-- =
(6-9)
(Pk+P --(Pj)--)++ --(Pi +P
--(Pk)-- )-- =
(Pj *P --(Pk)--)+ '-- (Pi)--
Pi *--(Pj + --(Pk)-- )-- =
(6-10)
(Pi +P --(Pj)--)++ --(Pi *--(Pk)-- )--
(Pj + --(Pk)--)+ '--(Pi)--
Pi *--(Pj *'--(Pk)-- )-- =
(6-11)
(Pi *--(Pj)--)++ --(Pi +P --(Pk)-- )--
=
(Pj *'--(Pk)--)+ '--(Pi)--
Pi *--(Pj ++ --(Pk)-- )-- =
(6-12)
(Pi *--(Pj)--)++ --(Pi *--(Pk)-- )-- =
(Pj ++ --(Pk)--)+ '--(Pi)--
Pi **--(Pj *P --(Pk)-- =
(6-13)
(Pi + '--(Pj)--)++ --(Pi + '--(Pk)--
)-- =
(Pj *P --(Pk)--)**--(Pi)--
Pi **--(Pj + --(Pk)-- )-- =
(6-14)
(Pi + '--(Pj)--)++ --(Pi **--(Pk)-- )-- =
(Pj + --(Pk)--)**--(Pi)--
Pi **--(Pj *'--(Pk)-- )-- =
(6-15)
(Pi **--(Pj)--)++ --(Pi + '--(Pk)-- )-- =
(Pj *'--(Pk)--)**--(Pi)--
Pi **--(Pj ++ --(Pk)-- )-- =
(6-16)
(Pi **--(Pj)--)++ --(Pi **--(Pk)-- )-- =
(Pj ++ --(Pk)--)**--(Pi)--
______________________________________

By using eq.s (6) eq.s (3) (also eq.s (4) and eq.s (5) if these are needed), one can determine applicable pseudocomplementing operations on a plaintext A employing the three parameters by parties of a sender and a receiver. For simplicity in the following presentation, three compound parameters Q1, Q2 and Q3 are defined: Q1 =Pj (Pk), Q2 =Pi (Pj) and Q3 =Pi (Pk) where P(Q) denotes a pseudocomplement of P with respect to Q. Firstly, by choosing an equation among eq.s (6-1) through (6-16), one can determine two applicable pseudocomplementing operations on Q1 with respect to P1, which is equivalent to P1 in this case, and on Q2 with respect to Q3. Next, by considering the paired terms of the pseudocomplementing operations on Q1 (P1) and Q2 (Q3), one selects two equations from eq.s (3-1) through (3-16) which include the pseudocomplements of a message A with respect to the paired terms, i.e., A--Q1 (P1)-- and A--Q2 (Q3)-- (an example is presented later). Finally, from three chosen equations and the pseudocomplements of the two paired terms, one can find the applicable enciphering pseudocomplements by the sender and the applicable deciphering pseudocomplements by the receiver.

An example: Firstly, by choosing an equation such as eq. (6-3), Pi+ --Pj+ '--Pk ----=(Pi+ --Pi --)**--Pi *P --Pk ----=(Pj+ '--Pk --)*'--Pi --, which is equivalent to Pi+ --Q1 --=Q2 **--Q3 --=Q1 *'--Pi -- after substituting Q1 =Pj+ '--Pk --, Q2 =Pi+ --Pj -- and Q3 =Pi *P --Pk --, one can determine P1 =Pi and the pseudocomplements + ', + and *P of Pj, Pi and Pj with respect to Pk, Pj and Pk, respectively. Next, by considering the pseudocomplements *' and ** of the paired terms Q1 (P 1) and Q2 (Q3), which are underlined in the equation above, one can find eq.s (3-2), (3-6), (3-11) and (3-15) which include the pseudocomplement *' of Pi (Pj) in the third terms where Pi and Pj are now equivalent to Q1 and P1 respectively, and eq.s (3-4), (3-8), (3-9) and (3-13) which include the pseudocomplement ** of Pi (Pj) in the fourth terms where Pi and Pj are now equivalent to Q2 and Q3 respectively. Finally, suppose that one takes eq.s (3-11) and (3-4) arbitrarily. Then the two equations become (A+ --Q1 --)*'--P1 --=(A+ '--Q1 --)*P --P1 --=A+ --Q1 *'--P1 ----=A*P --Q1 *--P1 ---- and (A*--Q2 --)**--Q3 --=(A*'--Q2 --)*13q3 --=A+P --Q2 *P --Q3 ----=A*--Q2 **--Q3 ---- after substituting the equivalent terms in each equation. The underlines of the terms Q1 *'--P1 -- and Q2 **--Q3 -- indicate the paired pseudocomplement terms considered according to eq. (6-3).

Lastly, the applicable pseudocomplementing operations to a message A by the sender are betokened from the two chosen eq.s (3-11) and (3-4). The necessary operations applicable to the message A by the sender are A+ --Q1 -- (or A+ '--Q1 --) and A*--Q2 -- (or A*'--Q2 --) which are the first terms (or the second terms) of each equation that was taken. Then the sender transmits these generated plus and star pseudocomplements to the receiver as a ciphertext from the ciphertext register 89. The necessary operations applicable to the received ciphertext by the receiver are ()*'--P1 -- (or ()*P --P1 --) and ()**--Q3 -- (or ()*--Q3 --) which are the first terms (or the second terms) of each equation that was taken. After performing these pseudocomplementing operations, the receiver now has a pair of conjugate pseudocomplements A+ --Q1 *'--P1 ---- and A*--Q2 **--Q3 ---- where the term Q1 *'--P1 -- is equal to the term Q2 **--Q3 -- according to eq. (6-3). Thus he can decipher the pair into the plaintext A with respect to the parameter Q2 **--Q3 -- (=Q1 *'--P1 --).

In conclusion, the encipher parameters Q1 =Pj+ '--Pk -- (=Pk *--Pj --) and Q2 =Pi + --Pj -- (=Pj *'--Pi --) are two single components of pseuodocomplements of two conjugate pairs with respect to two parameters Pk and Pj generated independently. The decipher parameters P1 (=Pi) and Q3 =Pi *P --Pk -- are different from the encipher parameters Q1 and Q2. A retrieval of Pi and Pk from the eccipher parameters for an attempting restoration of the decipher parameters is difficult without knowing Pj because of the single components of the pseudocomplements generated independently.

This example of the invented public key system using the chosen pseudocomplements for the enciphering process by the sender and the deciphering process by the receiver is depicted in FIGS. 6 and 7 where the definition of the key (n,P,q) consisting of three components: (i) n=block size of a plaintext, (ii) P=pseudocomplement parameter and (iii) q=combinational identifier of a conjugate pair of pseudocomplements is used. The encipher keys (n,Q1,q1) and (n,Q2,q2) are supplied to generators 81 and 82, respectively. Each generator illustrated in FIG. 4. The pseudocomplements, A+ --Q1 -- appeared at the M0 terminal of generator 81 and A*--Q2 -- appeared at the M1 terminal of generator 82, are designated by two bit-pairs of the switch control bits (u1 u0), (v1 v0) and w0 which are (u1 u0 =don't care), (v1 v0 =00) and w0 =1 in q1, and (u1 u0 =00), (v1 v0 =don't care) and w0 =1 in q2. The bit w0 =1 means that one selects the order of the plus-star sequence in the ciphertext register 89. Namely, the plus pseudocomplement A+ --Q1 -- is in the left half and the star pseudocomplement A*--Q2 -- is in the right half of the ciphertext register 89. Therefore, the control switch bits w1 (=w0), w2 and w3 of selector 90 must be 1, 1 and 0, respectively. When a plaintext A enters in the plaintext register 80 and an enciphering process starts, the enciphering device in FIG. 6 produces the ciphertext in the ciphertext register 89 which contains A+ --Q1 -- and A*--Q2 -- from the left to the right.

In a deciphering process after receiving the ciphertext in the ciphertext register 100, the control switch bits w3 =0, w2 =1 and w1 =1 in selector 101 are the same as these in selector 90. Thus, the plus pseudocomplement A+ --Q1 -- appeared at node 112 and the star pseudocomplement A*--Q2 -- appeared node 113 are the inputs to generators 110 and 111, respectively. When the keys (n,P1, qa) and (n,Q3,q3) are supplied to generators 110 and 111, respectively, the generators apply pseudocomplementing operations ( )*'--P1 -- on the input A+ --P1 -- and ()**--Q3 -- on the input A*--Q2 -- to produce A+ --Q1 *'--P1 ---- at the M1 terminal of generator 110 and A*--Q2 **--Q3 ---- at the M0 terminal of generator 111 according to eq.s (3-11) and (3-4), respectively.

Since there are (A+ --Q1 --)*'--P1 --=A+ --Q1 *'--P1 ----=A+ --Q2 **--Q3 ---- in eq. (3-11) and (A*--Q2 --)**--Q3 --=A*--Q2 **--Q3 ---- in eq. (3-4), the two switch control bits w0 's (referencing switch 50 in FIG. 4) of qa and of q3 must be 1 (on) and 0 (off) respectively due to the correspondences between the applied pseudocomplementing operation ()*' and its resultant pseudocomplement A+ --Q2 **--Q3 ---- and between the applied operation ()** and its resultant pseudocomplement A*--Q2 **--Q3 ----, i.e., a change from a star *' to a plus + of the pseudocomplements in the former and no change from a (double) star ** to a star * of the pseudocomplements in the latter.

Consequently, the paired conjugate pseudocomplements A+ and A* with respect to Q2 **--Q3 --(=Q1 *'--P1 --) appear in the left half and in the right half of the temporary register 108 through the control switches 106 and 107, respectively. Note: The order of the pseudocomplements in the temporary register is the plus-star sequence. Furthermore, these pseudocomplementing operations ()*' with respect to P1 and ()** with respect to Q3 are specified by setting (u1 u0 =11) and v1 v0 =don't care) in qa, and (u1 u0 =01) and v1 v0 =don;t care) in q3, respectively.

The conjugate pseudocomplement desegregator 109, which is depicted in FIG. 5, retrieves the plaintext A from the conjugate psuedocomplements with respect to Q2 **--Q3 -- by obtaining a targeted pair of pseudocomplements utilizing the key (n,Q2 (Q3),qb) and by performing an OR operation on the targeted pair, and stores the retieved plaintext A in the plaintext register 114. The control bits (u1 u0), (v1 v0) and w0 of qb are (u1 u0 =00), (v1 v2 =00) and w0 =1. These are derived from the fact: the pseudocomplements A+ and A*, and the plus-star sequence in the temporary register 108.

Consider the following bit strings for P1 =Pi =01101011, P2 =Pj =10101100, P3 =Pk =01111101 and A(=plaintext message)=11011011 in the above example where Q1 =P2+ '--P3 --=10101110, Q2 =P1+ --P2 --=10000100, Q3 =P1 *P --P3 --=10000000 and Q2 **--Q3 --=10000100. The sender produces the pseudocomplements A+ --Q1 --=00100100 and A*--Q2 --=10100100 and stores these in the left half and in the right half of the ciphertext register 89, respectively. Then he transmits the ciphertext to the receiver.

When the receiver finds the content of the ciphertext register 100, the deciphering process starts. Generators 110 and 111 produce the pseudocomplements (A+ --Q1 --)*'--P1 --, which is equivalent to A+ --Q1 *'--P1 ----=A+ --Q2 **--Q3 ----=00000100, appearing at the M1 terminal of generator 110 and (A*--Q2 --)**--Q3 --, which is equivalent to A*--Q2 **--Q3 ----=10100100, appearing at the M0 terminal of generator 111. Subsequently, these pseudocomplements A+ and A* with respect to Q2 **--Q3 -- are stored in the left half and in the right half of the temporary register, respectively. The conjugate pseudocomplement desegregator 109 performs the complementing operations ()P and ()', i.e., (A+ --Q2 **--Q3 ----)P --Q2 **--Q3 ----=10000000 and (A*--Q2 **--Q3 ----)'=01011011 and an OR operation on the results of the complementing operations to make 10010000+01001011=11011011 (=plaintext). Finally, the plaintext bit string appears in the plaintext register 114.

Similar to the feedback loops, which are controlled by the repetition controls 6 and 16 in the figures in FIG. 2 respectively, from the ciphertext register to the plaintext register in the enciphering process shown in the former figure and from the plaintext register to the ciphertext register in the deciphering process shown in the latter figure, one can install the feedback loops in the enciphering process shown in FIG. 6 and in the deciphering process shown in FIG. 7 where both the processes use multiple parameters. When a repetition (control) constant m (=2), that may be a part of a key, is supplied to the repitition controls 95 and 120, the previous example becomes as follows.

In the enciphering process, the generated ciphertext, A+ --Q1 --=00100100 in the left half and A*--Q2 --=10100100 in the right half, is feedbacked to the plaintext register 80 through the feedback path 97 in order to encipher one more time, namely (A+ --Q1 --)+ --Q1 --=10001010, (A+ --Q1 --)* --Q2 --=11011111, (A*--Q2 --)+ --Q1 --=00001010 and (A*--Q2 --)*--Q2 --=11011111. The ciphertext is 10001010110111110000101011011111 in the nested plus-star sequence. In the deciphering process, the rightmost 16 bits of the ciphertext are deciphered as (((A*--Q2 --0+ --Q1 --)*'--P1 --)P --Q2 **--Q3 ----=11111111·10000100+00000000·01111011=10000100, (((A*--Q2 --)*--Q2 --)**--Q3 --)'=(00100000)'=00100000 and OR operation on these results 10000100+00100000=10100100. The leftmost 16 bits of the ciphertext are deciphered as (((A+ --Q1 --)+ --Q1 --)*'--P1 --)P --Q2 **--Q3 ----=01111111·10000100+10000000·01111011=00000100, (((A+ --Q1 --)*--Q2 --)**--Q3 --)'=(11011111)'=00100000 and OR operation on these results 00000100+00100000=00100100. The repetition control directs one more deciphering process for the current ciphertext 0010010010100100, which is the plus-star sequence of A+ --Q1 -- and A*--Q2 -- as shown in the previous discussion, to retrieve the plaintext 11011011.

Since the length of an enciphered message (an enciphertext) is 2m longer than the length of an original plaintext (m≧1), one can utilize this advantage of the 2m longer length in order to increase cryptanalysis complexity. For example, by transmitting 2m -original length messages in 2m independent communication passages from sender to receiver, the complexity of an decoding process can be increased. Also message scramble algorithms such as byte permutation may be applicable to ciphertext.

Asai, Hitohisa

Patent Priority Assignee Title
5003596, Aug 17 1989 MOAB ARCHES LLC Method of cryptographically transforming electronic digital data from one form to another
5600724, May 23 1995 Method for the protection of messages transmitted using public communication lines
7499541, May 11 2004 National Institute of Information and Communications Technology Cipher strength evaluation apparatus
8322610, Mar 13 2009 ASSA ABLOY AB Secure access module for integrated circuit card applications
8332498, Mar 13 2009 ASSA ABLOY AB Synchronized relay messaging and coordinated network processing using SNMP
8447969, Mar 13 2009 ASSA ABLOY AB Transfer device for sensitive material such as a cryptographic key
8474026, Mar 13 2009 ASSA ABLOY AB Realization of access control conditions as boolean expressions in credential authentications
9032058, Mar 13 2009 ASSA ABLOY AB Use of SNMP for management of small footprint devices
9056161, Sep 29 2006 Roche Diabetes Care, Inc Fluid delivery system with electrochemical sensing of analyte concentration levels
Patent Priority Assignee Title
4399323, Feb 09 1981 Bell Telephone Laboratories, Incorporated Fast real-time public key cryptography
4405829, Dec 14 1977 Massachusetts Institute of Technology Cryptographic communications system and method
4408093, Jun 05 1981 ITT CORPORATION A DE CORP Cryptographic encoder-decoder
4424414, May 01 1978 Board of Trustees of the Leland Stanford Junior University Exponentiation cryptographic apparatus and method
4431865, Oct 10 1979 Telediffusion de France Digital signal enciphering and deciphering apparatus and system
Executed onAssignorAssigneeConveyanceFrameReelDoc
Date Maintenance Fee Events
Apr 18 1991M273: Payment of Maintenance Fee, 4th Yr, Small Entity, PL 97-247.
Apr 30 1991ASPN: Payor Number Assigned.
Jun 06 1995REM: Maintenance Fee Reminder Mailed.
Oct 29 1995EXP: Patent Expired for Failure to Pay Maintenance Fees.


Date Maintenance Schedule
Oct 27 19904 years fee payment window open
Apr 27 19916 months grace period start (w surcharge)
Oct 27 1991patent expiry (for year 4)
Oct 27 19932 years to revive unintentionally abandoned end. (for year 4)
Oct 27 19948 years fee payment window open
Apr 27 19956 months grace period start (w surcharge)
Oct 27 1995patent expiry (for year 8)
Oct 27 19972 years to revive unintentionally abandoned end. (for year 8)
Oct 27 199812 years fee payment window open
Apr 27 19996 months grace period start (w surcharge)
Oct 27 1999patent expiry (for year 12)
Oct 27 20012 years to revive unintentionally abandoned end. (for year 12)