US11637694B2 - Secret material exchange and authentication cryptography operations - Google Patents

Secret material exchange and authentication cryptography operations Download PDF

Info

Publication number
US11637694B2
US11637694B2 US17/040,949 US201917040949A US11637694B2 US 11637694 B2 US11637694 B2 US 11637694B2 US 201917040949 A US201917040949 A US 201917040949A US 11637694 B2 US11637694 B2 US 11637694B2
Authority
US
United States
Prior art keywords
computing device
result
cryptographic function
encrypted result
encrypted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active, expires
Application number
US17/040,949
Other versions
US20210028929A1 (en
Inventor
Rustam Islamov
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Winkk Inc
Original Assignee
Winkk Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Winkk Inc filed Critical Winkk Inc
Priority to US17/040,949 priority Critical patent/US11637694B2/en
Assigned to WINKK, INC. reassignment WINKK, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: ISLAMOV, Rustam
Publication of US20210028929A1 publication Critical patent/US20210028929A1/en
Application granted granted Critical
Publication of US11637694B2 publication Critical patent/US11637694B2/en
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3093Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving Lattices or polynomial equations, e.g. NTRU scheme

Definitions

  • Cryptography is related to the study of protocols, techniques, and approaches that prevent third parties from accessing, reading, and/or interpreting secret data.
  • Cryptography can be applied to various processes in information security, such as data integrity and encryption, confidentiality, authentication, verification, and non-repudiation.
  • cryptography has several applications in various fields, including data encryption and privacy, computer network communications and transaction processing, and computing system security and integrity.
  • Modern cryptography often relies upon computational hardness in mathematical theory. In other words, it might be theoretically possible to break certain cryptographic systems, but the time required to do so makes such cryptographic-defeating processes intractable. Typically, computationally-secure cryptography processes are preferable to those which are easier to defeat. At the same time, however, computationally-secure cryptography processes might be more computationally-intensive to implement and, thus, more time consuming and costly. In that context, although some cryptographic processes, such as a one time pad, cannot be broken or defeated even with unlimited computing power, those schemes are more difficult to implement than a good, theoretically-breakable but computationally secure approach. As such, modern computing devices may exchange secret data using cryptographic processes having security problems (e.g., the processes are susceptible to brute force attack). At the same time, those cryptographic processes may be resource intensive (e.g., the processes are computationally-intensive to implement).
  • FIG. 1 illustrates a process of secret text transfer using asymmetric keys.
  • FIG. 2 illustrates a representative process of secret key transfer using cryptography processes according to various embodiments described herein.
  • FIG. 3 A illustrates an example distribution function of variables resulting from the white noise associative cryptography key operations according to various embodiments described herein.
  • FIG. 3 B illustrates example probability distribution functions of variables resulting from the white noise associative cryptography key operations according to various embodiments described herein.
  • FIG. 4 illustrates example user interfaces of a program to perform cryptography key operations according to various embodiments described herein.
  • FIG. 5 illustrates a more particular example of a secret key transfer process according to the concepts described herein.
  • FIG. 6 illustrates an example of a secret key transfer process using authentication according to the concepts described herein.
  • cryptography is related to the study of protocols, techniques, and approaches that prevent third parties from accessing, reading, and/or interpreting secret data.
  • RSA Rivest-Shamir-Adleman
  • ECC elliptic curve cryptography
  • Those cryptosystems are based on complexity and can, theoretically, be decrypted.
  • the cryptographic processes described herein is more immune to cryptanalysis and permits the sharing of secret data, such as symmetric keys and other secret data, over public networks.
  • the cryptographic system can also be used for authentication. No known methods of traditional or quantum computing can be used to circumvent the cryptographic approaches described herein.
  • the cryptographic system described herein was developed to achieve a number of goals including (1) securely exchanging cryptographic keys over public networks, (2) information ciphering, authentication, and (4) encryption for public networks that is secure against standard and quantum computing.
  • white noise can be defined as (or can include) a sequence of independent random variables (e.g., discrete numbers) with a uniform probability distribution.
  • Polynomial white noise can be defined as (or can include) a sequence of polynomial function values composed by independent random variables (e.g., discrete numbers) with a uniform probability distribution.
  • No known algorithm can decrypt the operations described herein due, at least in part, to the use of white noise randomization.
  • the unknown independent variables appear to third parties as random white noise and, thus, there is no correlation between those variables and any information being transferred.
  • the key exchange method or process described herein can be shown as an exchange of matrices with a corresponding number of different unknown independent variables and visible values.
  • the number of unknown independent variables always exceeds the number of visible independent values in any combination of subsets of matrices.
  • the number of unknown variables exceeds the number of publically visible polynomial functions.
  • no inverse polynomial functions can be determined without information about the secret key—even if the plain text of the secret key is known by a third party.
  • FIG. 1 illustrates a process of secret text transfer using asymmetric keys.
  • Alice wishes to communicate secret text to Bob over a public network, such as the Internet
  • Eve is the eavesdropper.
  • the secret text which can be a symmetric key or any other secret information
  • Alice and Bob use asymmetric cryptography.
  • Asymmetric cryptography relies upon a key pair including a public key that can be disseminated to third parties (e.g., Alice) and a private key which is kept private (e.g., by Bob).
  • any person can encrypt a message using the public key, and that encrypted message can only be decrypted using the private key.
  • the strength of asymmetric cryptography relies on the degree of difficulty (e.g., computational impracticality) for a private key to be determined from its associated public key.
  • Asymmetric cryptography also depends on keeping the private key private.
  • Alice obtains a copy of a public key from Bob (or any other source).
  • Alice encrypts the secret text using the public key to produce the encrypted secret text and communicates it to Bob over the public network.
  • Bob then decrypts the encrypted secret text using the private key to obtain the secret key.
  • Eve can only see the encrypted secret text. Even if Eve obtains a copy of the encrypted secret text and the public key used to create it, Eve cannot obtain the secret text from the encrypted secret text using the public key. Instead, only the private key, which is securely held and protected by Bob, can be used to decrypt the encrypted secret text to obtain the secret text from Alice.
  • asymmetric cryptography there are drawbacks and limitations to using asymmetric cryptography. For example, it is algorithmically possible to estimate (or determine) the private key in a key pair from the publicly available public key. Additionally, asymmetric key pairs are relatively difficult and time consuming to create, typically depending upon the identification of large prime numbers. Further, asymmetric cryptography can be vulnerable in that it may produce the same predictable encrypted output when the same secret text is encrypted.
  • a first cryptographic function is applied to secret data.
  • the first cryptographic function operates as a type of cryptographic key and encrypts or ciphers the secret data to produce a first encrypted result.
  • the first encrypted result can be securely transmitted by a first device to a second device.
  • the second device applies a second cryptographic function to the first encrypted result.
  • the second cryptographic function operates as a cryptographic key and further (or doubly) encrypts or ciphers the first encrypted result to produce a second (or doubly) encrypted result.
  • the secret data has been encrypted by two different cryptographic functions, each of them being sufficient to secure the secret data.
  • the two different cryptographic functions can then be inversed or removed, in any order, to reveal the secret data.
  • FIG. 2 illustrates a representative process 20 of secret key transfer using cryptography processes according to various embodiments described herein.
  • the process described below can be performed by any suitable computing device(s) including a processor and memory, without limitation.
  • Alice wants to securely pass the secret key X to Bob over a public network. To do so, Alice should first encrypt the secret key X before sending it to Bob.
  • the cryptographic function F A can be embodied as any suitable mathematical function having an inverse which cannot be determined without knowledge of a certain set of parameters of the mathematical function.
  • the function F A can be embodied as a polynomial function or multivariate polynomial function defined in part by one or more variables, combinations of variables, combinations of variables at various powers, and coefficients.
  • Alice also holds a first inverse cryptographic function F ⁇ 1 A.
  • the process 20 includes Alice generating, with a first computing device, a first random lock X A .
  • the first random lock X A can be embodied as an array or vector of random scalar integers, for example, or another suitable organized structure of random numbers.
  • the first random lock X A can operate as a type of initialization vector upon which the cryptographic function F A is applied in combination with the secret key X.
  • the first random lock X A helps to randomize the application of the cryptographic function F A creating, in effect, a new random cryptographic function F A for each different random lock X A .
  • the first random lock X 4 helps to achieve semantic security, so that repeated usage of the cryptographic function F A with the same operand does not produce the same ciphered result and does not allow an attacker to infer any information.
  • the process 20 includes Alice applying, with the first computing device, the first cryptographic function F A to a combination of the secret key X and the first random lock X A to produce a first encrypted result R 1 .
  • Alice's secret key X which can include letters, numbers, American Standard Code for Information Interchange (ASCII) characters, etc.
  • ASCII American Standard Code for Information Interchange
  • the cryptographic function F A can be embodied as any suitable mathematical function, such as a polynomial or multivariate polynomial function.
  • the cryptographic function F A can be embodied as a polynomial function F(CX k ) of kth order written as:
  • Alice's secret key X which may include letters, numbers, American Standard Code for Information Interchange (ASCII) characters, etc.
  • ASCII American Standard Code for Information Interchange
  • FIG. 3 A a distribution function of the variables in the results R 1 , R 2 , and R 3 is shown in FIG. 3 A
  • probability distribution functions of the variables in the results R 1 , R 2 , and R 3 is shown in FIG. 3 B .
  • the structure of the polynomial function F(CX k ) and the coefficients can be known to others (although they generally are not) from the formalization of the algorithm. However, even if the structure of the polynomial function F and values of the coefficients C, k are known to a third party, the third party still cannot decrypt the transferred information.
  • the process 20 includes Alice transmitting, with the first computing device, the first encrypted result R 1 to Bob's second computing device.
  • the process 20 includes Bob generating, with the second computing device, a second random lock X B .
  • the second random lock X B can be embodied as an array or vector of random scalar integers, for example, or another suitable organized structure of random numbers.
  • the second random lock Xs can also operate as a type of initialization vector for the cryptographic function F B .
  • the second random lock X B helps to randomize the application of Bob's cryptographic function F B creating, in effect, a new random cryptographic function F B for each different random lock XB .
  • the second random lock X B helps to achieve semantic security, so that repeated usage of the cryptographic function F B with the same operand does not produce the same ciphered result and does not allow an attacker to infer any information.
  • the process includes Bob applying, with the second computing device, Bob's cryptographic function F B to a combination of the first encrypted result R 1 and the second random lock X B to produce a second encrypted result R 2 .
  • the first encrypted result R 1 e.g., F A (X,X A )
  • the cryptographic function F B can be embodied as any suitable mathematical function, such as a polynomial or multivariate polynomial function.
  • the cryptographic function F B can be embodied as a polynomial function F(CX k ) of kth order according to that shown above in Equation (1).
  • Alice's secret key X has been encrypted or ciphered by two different cryptographic functions F A and F B , each of them being sufficient to secure the secret key X from others.
  • the two different cryptographic functions can then be inversed or removed, in any order, to reveal the secret key X.
  • decrypt the secret key X from the second encrypted result R 2 i.e., to undo the effects of the cryptographic functions F A and Fa
  • the order in which the second encrypted result R 2 is applied to the inverse cryptographic functions F ⁇ 1 A and F ⁇ 1 B . does not impact the results of the decryption of secret key X from the second encrypted result R 2 .
  • any number of cryptographic functions to F 1 . . . F N can be applied to encrypt secret data in any order to produce an encrypted result R N , and that encrypted result R N can be decrypted in any order using the inverse cryptographic functions F ⁇ 1 1 . . . F ⁇ 1 N .
  • the process 20 includes Bob transmitting, with the second computing device, the second encrypted result R 2 to the first computing device.
  • the process 20 includes Alice applying, with the first computing device, the first inverse cryptographic function F ⁇ 1 A to the second encrypted result R 2 to produce the result R 3 .
  • the first inverse cryptographic function F ⁇ 1 A unlocks or removes the effect of both the first random lock X A and the first cryptographic function F A .
  • the result R 3 is what remains of the second encrypted result R 2 after the effect of the first random lock X A and the first cryptographic function F A are undone or unlocked (e.g., F B (X,X B )).
  • the result R 3 is still encrypted, but only by Bob's second random lock X B and the second cryptographic function F B , and the result R 3 can be securely transmitted over the public network.
  • the process 20 includes Alice transmitting, with the first computing device, the result R 3 to the second computing device.
  • the process 20 includes Bob applying, with the second computing device, the second inverse cryptographic function F ⁇ 1 B to the result R 3 to arrive at the secret key X.
  • the secret key X has been securely communicated from Alice to Bob.
  • key pairs are not used in the process 20 .
  • the method is cryptanalysis resistant. To obtain the only solution x 1 , .
  • the third party e.g., outsider Eve
  • plain text (as a letter or ASCII code of 256 numbers) is represented in ciphered text by three corresponding random numbers r 1 , r 2 and r 3 which are calculated by a random generator.
  • Table 2 shows an example of how the plain text “This is a plain text” appears in ciphered numbers.
  • Ciphered text text r 1 r 2 r 3 T 0.001251 0.563585 0.003585 h 0.193304 0.808741 0.158307 i 0.585009 0.479873 0.28051 s 0.350291 0.895962 0.313555 0.82284 0.746605 0.614412 i 0.174108 0.858943 0.151801 s 0.710501 0.513535 0.363394 0.303995 0.014985 0.006167 a 0.091403 0.364452 0.035009 0.147313 0.165899 0.02575 p 0.988525 0.445692 0.438709 1 0.119083 0.004669 0.001204 i a 0.00891 1 0.37788 0.005292 i 0.531663 0.571184 0.303183 n 0.601764 0.607166 0.363988 0.166234 0.663045 0.113037 t 0.450789 0.352123 0.159469 e 0.057039 0.
  • Uniform distribution is called “white noise” due to its informative features.
  • the correlation function between any two variables x and y is estimated as follows:
  • corr ( x , y ) ⁇ ⁇ ( x - x _ ) ⁇ ( y - y _ ) ⁇ ⁇ ( x - x _ ) 2 ⁇ ⁇ ⁇ ( y - y _ ) 2 .
  • the results of correlation function evaluation for pairs (r 1 , r 2 ), (r 2 , r 3 ) and (r 1 , r 3 ) are given in Table 3 below.
  • the correlation is negligibly small, which means that ciphered information is encapsulated into white noise and is not analyzable by a third party. There are no known algorithms to decrypt the ciphered information without the encryption key.
  • a computer program was developed to implement the method described herein. As shown in FIG. 4 , Alice securely sends her secret text “Hello bob” to Bob using the three pass transaction. In FIG. 4 , random values appear to a third party during the three pass transaction (specially shown in the blue box).
  • the processes described herein can be used to achieve unbreakable (or nearly unbreakable) encryption over wireless, wired, and public networks, and against quantum computing attacks. It requires relatively little processing power for encrypting and decrypting and, thus, can be used for rapid verification and transactions. A practically limitless number of new keys can be generated on the fly. Thus, the keys can be changed on every transaction. Encryption and decryption can also occur on individual devices due to the high speed of encryption and low processing requirements. Further, there is no single point of compromise because every individual party has their own key. If a key is compromised, it is the one compromised and can be renewed or replaced.
  • FIG. 5 illustrates a more particular example of a secret key transfer process 30 according to the concepts described herein. While an example using square matrices of a certain size is provided below, the concepts described herein can be extended to use with square matrices of any size. Further, although the example below is presented in certain cases as steps between “Alice” and “Bob,” the process is conducted by computing systems or devices.
  • X ⁇ x 1 x 2 x 3 x 4 ⁇ ⁇ ... ⁇ ⁇ x m - 3 x m - 2 x m - 1 x m ⁇
  • the last matrix is not fully filled in. In this case, the rest of the matrix members can be generated and added as any random numbers without influencing the algorithm.
  • X Z 1 ⁇ Z 2
  • ⁇ Z 1 ⁇ Z 1 Z 2 Z 3 Z 2 ⁇ Z 3 Z 1 ⁇
  • Z 2 ⁇ Z 4 Z 5 Z 6 Z 4 ⁇ Z 5 Z 6 ⁇
  • the inverse of matrix X, or X ⁇ 1 does not exist (see properties of singular matrices and matrix determinants in APPENDIX).
  • the matrix X represents a portion of the secret key K, ⁇ k 1 , k 2 , k 3 ⁇ .
  • the process further includes generating a uniformly distributed random matrices Y 1 , Y 2 and inverse matrices Y 1 ⁇ 1 , Y 2 ⁇ 1 , as follows:
  • Y 1 ⁇ y 1 y 2 y 3 y 4 ⁇
  • ⁇ Y 1 - 1 ⁇ y 4 - y 2 - y 3 y 1 ⁇ y 1 ⁇ y 4 - y 2 ⁇ y 3 , y i ⁇ R , y 1 ⁇ y 4 ⁇ y 2 ⁇ y 3
  • ⁇ Y 2 ⁇ y 5 y 6 y 7 y 8 ⁇
  • Y 2 - 1 ⁇ y 8 - y 6 - y 7 y 5 ⁇ y 5 ⁇ y 8 - y 6 ⁇ y 7 , y i ⁇ R , y 5 ⁇ y 8 ⁇ y 6 ⁇ y 7 .
  • the process also includes generating uniformly distributed random centrosymmetric A 1 , A 2 , B 1 , B 2 , and inverse A 1 ⁇ 1 , A 2 ⁇ 1 , B 1 ⁇ 1 , B 2 ⁇ 1 matrices as follows:
  • the process includes Alice generating and sending matrices M 1 and M 2 to Bob, as follows:
  • M 1 ⁇ m 1 ( 1 ) m 2 ( 1 ) m 3 ( 1 ) m 4 ( 1 ) ⁇
  • ⁇ M 2 ⁇ m 1 ( 2 ) m 2 ( 2 ) m 3 ( 2 ) m 4 ( 2 ) ⁇
  • ⁇ M 3 ⁇ m 1 ( 3 ) m 2 ( 3 ) m 3 ( 3 ) m 4 ( 3 ) ⁇
  • Alice sends to Bob fourteen publicly visible values (m 1 (1) , m 2 (1) , m 3 (1) , m 4 (1) , m 1 (2) , m 2 (2) , m 3 (2) , m 1 (3) , m 2 (3) , m 3 (3) , m 4 (3) , m 1 (4) , m 2 (4) , m 3 (4) ) of matrices M 1 , M 2 , M 3 , and M 4 that are calculated from twenty-two independent unknown (for the third party) variables (a 1 , a 2 , a 3 , a 4 , b 1 , b 2 , b 3 , b 4 , y 1 , y 2 , y 3 , y 4 , y 5 , y 6 , y 7 , y 8 , z 1 , z 2 , z 3 , z 4 , z 5 , z 6 ) known by Alice only,
  • ⁇ m 1 ( 1 ) a 1 ⁇ y 1 + a 2 ⁇ y 2
  • ⁇ m 2 ( 1 ) a 2 ⁇ y 1 + a 1 ⁇ y 2
  • ⁇ m 3 ( 1 ) a 1 ⁇ y 3 + a 2 ⁇ y 4
  • ⁇ m 4 ( 1 ) a 2 ⁇ y 3 + a 1 ⁇ y 4
  • ⁇ m 1 ( 2 ) b 1 ⁇ ( x 1 ⁇ y 4 - x 3 ⁇ y 2 ) + b 2 ⁇ ( x 3 ⁇ y 1 - x 1 ⁇ y 3 ) y 1 ⁇ y 4 - y 2 ⁇ y 3
  • ⁇ m 2 ( 2 ) b 1 ⁇ ( x 2 ⁇ y 4 - y 2 ⁇ x 2 ⁇ / ⁇ x 1 ) + b 2 ⁇ (
  • the process includes Bob receiving the M 1 and M 2 matrices from Alice.
  • the process includes generating uniformly distributed random centrosymmetric matrices C 1 , C 2 and inverse C 1 ⁇ 1 , C 2 ⁇ 1 matrices, as follows:
  • C 1 ⁇ c 1 c 2 c 2 c 1 ⁇
  • ⁇ C 2 ⁇ c 3 c 4 c 4 c 3 ⁇
  • ⁇ C 1 - 1 ⁇ c 1 - c 2 - c 2 c 1 ⁇ c 1 2 - c 2 2 , c i ⁇ R , c 1 2 ⁇ c 2 2
  • C 2 - 1 ⁇ c 3 - c 4 - c 4 c 3 ⁇ c 3 2 - c 4 2 , c i ⁇ R , c 3 2 ⁇ c 4 2 .
  • the process at step 306 also includes generating uniformly distributed random matrices D and H, as follows:
  • D ⁇ d 1 d d 3 d 4 ⁇
  • H ⁇ h 1 h 2 h 3 h 4 ⁇ , d i ⁇ h i ⁇ R , d 1 ⁇ d 4 ⁇ d 2 ⁇ d 3 , h 1 ⁇ h 4 ⁇ h 2 ⁇ h 3 .
  • the process at step 306 also includes generating corresponding inverse matrices D ⁇ 1 and H ⁇ 1 , as follows:
  • D - 1 ⁇ d 1 d 2 d 3 d 4 ⁇ d 1 ⁇ d 4 - d 2 ⁇ d 3
  • H - 1 ⁇ h 1 h 2 h 3 h 4 ⁇ h 1 ⁇ h 4 - h 2 ⁇ h 3 .
  • the process at step 306 also includes generating the matrices M 5 , M 6 , M 7 and M 8 , as follows:
  • M 5 ⁇ m 1 ( 5 ) m 2 ( 5 ) m 3 ( 5 ) m 4 ( 5 ) ⁇
  • ⁇ M 6 ⁇ m 1 ( 6 ) m 2 ( 6 ) m 3 ( 6 ) m 4 ( 6 ) ⁇
  • ⁇ M 7 ⁇ m 1 ( 7 ) m 2 ( 7 ) m 3 ( 7 ) m 4 ( 7 ) ⁇
  • M 8 ⁇ m 1 ( 8 ) m 2 ( 8 ) m 3 ( 8 ) m 4 ( 8 ) ⁇ as a result of the following calculations:
  • the process includes Bob sending to Alice fourteen publicly visible values (m 1 (5) , m 2 (5) , m 3 (5) , m 1 (6) , m 2 (6) , m 3 (6) , m 1 (7) , m 2 (7) , m 3 (7) , m 4 (7) , m 1 (8) , m 2 (8) , m 3 (8) ) of matrices M 3 and M 4 that are calculated from sixteen independent unknown (for the third party) variables (c 1 , c 2 , c 3 , c 4 , d 1 , d 2 , d 3 , d 4 , e 1 , e 2 , e 3 , e 4 , h 1 , h 2 , h 3 , h 4 ) which are known by Bob only, as follows:
  • the process includes multiplying the results of those together to arrive at the matrix M 5 , as follows:
  • the entire scheme of the key exchange process can be performed using an exchange of matrices with a corresponding number of different unknown independent variables (underlined in Table 6) and visible (by the third party) values (bolded in Table 6).
  • This scheme demonstrates that the number of unknown independent variables always exceeds the number of visible independent values in any combination of subsets of matrices.
  • M 2 B 1 Y 1 ⁇ 1 Z 1
  • M 4 B 2 Y 2 ⁇ 1 Z 2
  • M 6 C 1 B 1 Y 1 ⁇ 1 Z 1 E
  • M 6 C 2 B 2 Y 2 ⁇ 1 Z 2 H
  • M 9 DZ 1 Z 2 H
  • FIG. 6 illustrates an example secret material or key exchanging process using authentication according to the concepts described herein.
  • the process 40 includes Alice generating uniformly distributed random matrices Y 1 , Y 2 and inverse matrices Y 1 ⁇ 1 , Y 2 ⁇ 1 , as follows:
  • Y 1 ⁇ " ⁇ [LeftBracketingBar]” y 1 y 2 y 3 y 4 ⁇ " ⁇ [RightBracketingBar]”
  • Y 1 - 1 ⁇ " ⁇ [LeftBracketingBar]” y 1 - y 2 - y 3 y 4 ⁇ " ⁇ [RightBracketingBar]” y 1 ⁇ y 4 - y 2 ⁇ y 3 , y i ⁇ R , y 1 ⁇ y 4 ⁇ y 2 ⁇ y 3
  • Y 2 ⁇ " ⁇ [LeftBracketingBar]” y 5 y 6 y 7 y 8 ⁇ " ⁇ [RightBracketingBar]”
  • ⁇ Y 2 - 1 ⁇ " ⁇ [LeftBracketingBar]” y 8 - y 6 - y 7 y 5 ⁇ " ⁇ [RightBracketingBar]” y 5 ⁇ y 8 - y 6
  • Alice also generates uniformly distributed random centrosymmetric matrices A and B, as follows:
  • a 1 ⁇ " ⁇ [LeftBracketingBar]” a 1 a 2 a 2 a 1 ⁇ " ⁇ [RightBracketingBar]”
  • a 2 ⁇ " ⁇ [LeftBracketingBar]” a 3 a 4 a 4 a 3 ⁇ " ⁇ [RightBracketingBar]”
  • a 1 - 1 ⁇ " ⁇ [LeftBracketingBar]” a 1 - a 2 - a 2 a 1 ⁇ " ⁇ [RightBracketingBar]” a 1 2 - a 2 2
  • the process includes Alice sending to Bob results as matrices M 1 and M 2 , as follows:
  • M 1 ⁇ " ⁇ [LeftBracketingBar]” m 1 ( 1 ) m 2 ( 1 ) m 3 ( 1 ) m 4 ( 1 ) ⁇ " ⁇ [RightBracketingBar]”
  • M 2 ⁇ " ⁇ [LeftBracketingBar]” m 1 ( 2 ) m 2 ( 2 ) m 3 ( 2 ) m 4 ( 2 ) ⁇ " ⁇ [RightBracketingBar]”
  • M 3 ⁇ " ⁇ [LeftBracketingBar]” m 1 ( 3 ) m 2 ( 3 ) m 3 ( 3 ) m 4 ( 3 ) ⁇ " ⁇ [RightBracketingBar]”
  • ⁇ M 4 ⁇ " ⁇ [LeftBracketingBar]” m 1 ( 4 ) m 2 ( 4 ) m 3 ( 4 ) ⁇ " ⁇ [RightBracketingBar]”
  • ⁇ M 4 ⁇ " ⁇ [LeftBracketingBar]” m 1 ( 4
  • Bob receives M 1 and M 2 from Alice.
  • Bob generates uniformly distributed random centrosymmetric matrices C 1 , C 2 and inverse C 1 ⁇ 1 , C 2 ⁇ 1 matrices, as follows:
  • D ⁇ " ⁇ [LeftBracketingBar]” d 1 d 2 d 3 d 4 ⁇ " ⁇ [RightBracketingBar]”
  • ⁇ H ⁇ " ⁇ [LeftBracketingBar]” h 1 h 2 h 3 h 4 ⁇ " ⁇ [RightBracketingBar]” , d i , h i ⁇ R , d 1 ⁇ d 4 ⁇ d 2 ⁇ d 3 , h 1 ⁇ h 4 ⁇ h 2 ⁇ h 3 , and correspondent inverse matrices D ⁇ 1 and H ⁇ 1 , as follows:
  • Bob also obtains the matrices M 5 , M 6 , M 7 and M 8 , defined as follows:
  • M 5 ⁇ " ⁇ [LeftBracketingBar]” m 1 ( 5 ) m 2 ( 5 ) m 3 ( 5 ) m 4 ( 5 ) ⁇ " ⁇ [RightBracketingBar]”
  • M 6 ⁇ " ⁇ [LeftBracketingBar]” m 1 ( 6 ) m 2 ( 6 ) m 3 ( 6 ) m 4 ( 6 ) ⁇ " ⁇ [RightBracketingBar]”
  • M 7 ⁇ " ⁇ [LeftBracketingBar]” m 1 ( 7 ) m 2 ( 7 ) m 3 ( 7 ) m 4 ( 7 ) ⁇ " ⁇ [RightBracketingBar]”
  • the process includes Alice generating a uniformly distributed random matrix G, as follows:
  • G ⁇ " ⁇ [LeftBracketingBar]” g 1 g 2 g 3 g 4 ⁇ " ⁇ [RightBracketingBar]” , g i ⁇ R .
  • the process also includes Alice multiplying both the matrices M 5 , M 6 , M 7 and M 8 with the inverse matrices which are known to her, A 1 ⁇ 1 , A 2 ⁇ 1 , B 1 ⁇ 1 and B 2 ⁇ 1 , respectively, as follows:
  • the process includes Alice sending three publicly visible values to Bob, including (m 1 (9) , m 2 (9) , m 3 (9) ).
  • Alice also sends four publicly visible values to Ed (m 1 (6) , m 2 (6) , m 3 (6) , m 4 (6) ) of the matrix M 10 , defined as:
  • M 10 ⁇ " ⁇ [LeftBracketingBar]” m 1 ( 10 ) m 2 ( 10 ) m 3 ( 10 ) m 4 ( 10 ) ⁇ " ⁇ [RightBracketingBar]” , as a result of the following calculations: M 10 ⁇ N A G. (9B)
  • Ed receives the matrix M6 from Alice.
  • Bob also receives the matrix M 9 from Alice at step 410 .
  • the embodiments described herein can be implemented by either a method or process or as a system or device.
  • the method can be performed using any suitable computing device, and the system can be embodied as any suitable computing device.
  • the computing device can include at least one processing system, for example, having one or more processors and memories electrically and communicatively coupled together using a local interface.
  • the local interface can be embodied as a data bus with an accompanying address/control bus or other addressing, control, and/or command lines.
  • the memory can store data and software or executable code components executable by the processor.
  • the memory can store executable-code components associated with cryptographic operations for execution by the processor.
  • the software or executable-code components can be developed using or embodied in various programming languages, such as, for example, C, C++, C#, Objective C, JAVA®, JAVASCRIPT®, Perl, PHP, VISUAL BASIC®, PYTHON®, RUBY, FLASH®, or other programming languages.
  • executable or “for execution” refer to software forms that can ultimately be run or executed by a processor, whether in source, object, machine, or other form.
  • executable programs include, for example, a compiled program that can be translated into a machine code format and loaded into a random access portion of memory and executed by a processor, source code that can be expressed in an object code format and loaded into a random access portion of the memory and executed by the processor, or source code that can be interpreted by another executable program to generate instructions in a random access portion of the memory and executed by the processor, etc.
  • An executable program can be stored in any portion or component of the memory including, for example, a random access memory (RAM), read-only memory (ROM), magnetic or other hard disk drive, solid-state, semiconductor, or similar drive, universal serial bus (USB) flash drive, memory card, optical disc (e.g., compact disc (CD)) or digital versatile disc (DVD)), floppy disk, magnetic tape, or other memory component.
  • RAM random access memory
  • ROM read-only memory
  • magnetic or other hard disk drive solid-state, semiconductor, or similar drive
  • USB universal serial bus
  • memory card e.g., compact disc (CD)) or digital versatile disc (DVD)
  • CD compact disc
  • DVD digital versatile disc
  • FIGS. 2 and 5 illustrate a certain order, it is understood that the order can differ from that which is depicted. For example, an order of execution of two or more blocks can be scrambled relative to the order shown. Also, two or more blocks shown in succession can be executed concurrently or with partial concurrence. Further, in some embodiments, one or more of the blocks can be skipped or omitted. In addition, any number of counters, state variables, warning semaphores, or messages might be added to the logical flow described herein, for purposes of enhanced utility, accounting, performance measurement, or providing troubleshooting aids, etc. It is understood that all such variations are within the scope of the present disclosure.
  • any algorithm, method, process, or logic described herein that are embodied, at least in part, by software or executable-code components can be embodied or stored in any tangible or non-transitory computer-readable medium or device for execution by an instruction execution system such as a general purpose processor.
  • the logic can be embodied as, for example, software or executable-code components that can be fetched from the computer-readable medium and executed by the instruction execution system.
  • the instruction execution system can be directed by execution of the instructions to perform certain processes such as those illustrated in FIG. 2 .
  • a “computer-readable medium” can be any tangible medium that can contain, store, or maintain any logic, application, software, or executable-code component described herein for use by or in connection with an instruction execution system.
  • the computer-readable medium can include any physical media such as, for example, magnetic, optical, or semiconductor media. More specific examples of suitable computer-readable media include, but are not limited to, magnetic tapes, magnetic floppy diskettes, magnetic hard drives, memory cards, solid-state drives, USB flash drives, or optical discs. Also, the computer-readable medium can include a RAM including, for example, an SRAM, DRAM, or MRAM. In addition, the computer-readable medium can include a ROM, a PROM, an EPROM, an EEPROM, or other similar memory device.
  • Disjunctive language such as the phrase “at least one of X, Y, or Z,” unless specifically stated otherwise, is to be understood with the context as used in general to present that an item, term, etc., can be either X, Y, or Z, or any combination thereof (e.g., X, Y, and/or Z). Thus, such disjunctive language is not generally intended to, and should not, imply that certain embodiments require at least one of X, at least one of Y, or at least one of Z to be each present.
  • centrosymmetric matrix A is a matrix which is symmetric about its center.
  • a centrosymmetric matrix A has the following form:
  • a square matrix is singular if and only if its determinant is 0. Because a square matrix formed from a random distribution of values will almost never be singular, singular matrices are rare.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

Aspects of associative cryptography key operations are described. In one embodiment, a first cryptographic function is applied to secret data to produce a first encrypted result. The first encrypted result is transmitted by a first device to a second device. The second device applies a second cryptographic function to the first encrypted result to produce a second encrypted result. At this point, the secret data has been encrypted by two different cryptographic functions, each of them being sufficient to secure the secret data from others. The two different cryptographic function can be inversed or removed, in any order, to reveal the secret data. Thus, the first device can apply a first inverse cryptographic function to the second encrypted result to produce a first result, and the second device can apply a second inverse cryptographic function to the first result to decrypt the secret data.

Description

CROSS-REFERENCE TO RELATED APPLICATION(S)
This application claims priority to PCT Application No. PCT/US2019/041871, filed on Jul. 15, 2019, and titled “SECRET MATERIAL EXCHANGE AND AUTHENTICATION CRYPTOGRAPHY OPERATIONS,” which is hereby incorporated by reference in its entirety for all purposes.
BACKGROUND
Cryptography is related to the study of protocols, techniques, and approaches that prevent third parties from accessing, reading, and/or interpreting secret data. Cryptography can be applied to various processes in information security, such as data integrity and encryption, confidentiality, authentication, verification, and non-repudiation. Thus, cryptography has several applications in various fields, including data encryption and privacy, computer network communications and transaction processing, and computing system security and integrity.
Modern cryptography often relies upon computational hardness in mathematical theory. In other words, it might be theoretically possible to break certain cryptographic systems, but the time required to do so makes such cryptographic-defeating processes intractable. Typically, computationally-secure cryptography processes are preferable to those which are easier to defeat. At the same time, however, computationally-secure cryptography processes might be more computationally-intensive to implement and, thus, more time consuming and costly. In that context, although some cryptographic processes, such as a one time pad, cannot be broken or defeated even with unlimited computing power, those schemes are more difficult to implement than a good, theoretically-breakable but computationally secure approach. As such, modern computing devices may exchange secret data using cryptographic processes having security problems (e.g., the processes are susceptible to brute force attack). At the same time, those cryptographic processes may be resource intensive (e.g., the processes are computationally-intensive to implement).
BRIEF DESCRIPTION OF THE DRAWINGS
Many aspects of the present disclosure can be better understood with reference to the following drawings. The components in the drawings are not necessarily to scale, with emphasis instead being placed upon clearly illustrating the principles of the disclosure. Moreover, in the drawings, like reference numerals designate corresponding parts throughout the several views.
FIG. 1 illustrates a process of secret text transfer using asymmetric keys.
FIG. 2 illustrates a representative process of secret key transfer using cryptography processes according to various embodiments described herein.
FIG. 3A illustrates an example distribution function of variables resulting from the white noise associative cryptography key operations according to various embodiments described herein.
FIG. 3B illustrates example probability distribution functions of variables resulting from the white noise associative cryptography key operations according to various embodiments described herein.
FIG. 4 illustrates example user interfaces of a program to perform cryptography key operations according to various embodiments described herein.
FIG. 5 illustrates a more particular example of a secret key transfer process according to the concepts described herein.
FIG. 6 illustrates an example of a secret key transfer process using authentication according to the concepts described herein.
DETAILED DESCRIPTION
As noted above, cryptography is related to the study of protocols, techniques, and approaches that prevent third parties from accessing, reading, and/or interpreting secret data. In the context of cryptography, the Rivest-Shamir-Adleman (RSA) cryptosystem, elliptic curve cryptography (ECC) cryptosystem, and other asymmetrical (and symmetrical) methods of secure key exchange have security problems. Those cryptosystems are based on complexity and can, theoretically, be decrypted.
In contrast to the RSA, ECC, and other cryptosystems, the cryptographic processes described herein is more immune to cryptanalysis and permits the sharing of secret data, such as symmetric keys and other secret data, over public networks. The cryptographic system can also be used for authentication. No known methods of traditional or quantum computing can be used to circumvent the cryptographic approaches described herein. The cryptographic system described herein was developed to achieve a number of goals including (1) securely exchanging cryptographic keys over public networks, (2) information ciphering, authentication, and (4) encryption for public networks that is secure against standard and quantum computing.
In the context described herein, white noise can be defined as (or can include) a sequence of independent random variables (e.g., discrete numbers) with a uniform probability distribution. Polynomial white noise can be defined as (or can include) a sequence of polynomial function values composed by independent random variables (e.g., discrete numbers) with a uniform probability distribution.
No known algorithm can decrypt the operations described herein due, at least in part, to the use of white noise randomization. The unknown independent variables appear to third parties as random white noise and, thus, there is no correlation between those variables and any information being transferred. As one example, the key exchange method or process described herein can be shown as an exchange of matrices with a corresponding number of different unknown independent variables and visible values. The number of unknown independent variables always exceeds the number of visible independent values in any combination of subsets of matrices. Further, the number of unknown variables exceeds the number of publically visible polynomial functions. Additionally, no inverse polynomial functions can be determined without information about the secret key—even if the plain text of the secret key is known by a third party.
Turning to the drawings, FIG. 1 illustrates a process of secret text transfer using asymmetric keys. In the example shown in FIG. 1 , Alice wishes to communicate secret text to Bob over a public network, such as the Internet, and Eve is the eavesdropper. To communicate the secret text, which can be a symmetric key or any other secret information, Alice and Bob use asymmetric cryptography. Asymmetric cryptography relies upon a key pair including a public key that can be disseminated to third parties (e.g., Alice) and a private key which is kept private (e.g., by Bob). In an asymmetric cryptography system, any person can encrypt a message using the public key, and that encrypted message can only be decrypted using the private key. The strength of asymmetric cryptography relies on the degree of difficulty (e.g., computational impracticality) for a private key to be determined from its associated public key. Asymmetric cryptography also depends on keeping the private key private.
Referring back to FIG. 1 , Alice obtains a copy of a public key from Bob (or any other source). Alice encrypts the secret text using the public key to produce the encrypted secret text and communicates it to Bob over the public network. Bob then decrypts the encrypted secret text using the private key to obtain the secret key. Over the public network, Eve can only see the encrypted secret text. Even if Eve obtains a copy of the encrypted secret text and the public key used to create it, Eve cannot obtain the secret text from the encrypted secret text using the public key. Instead, only the private key, which is securely held and protected by Bob, can be used to decrypt the encrypted secret text to obtain the secret text from Alice.
There are drawbacks and limitations to using asymmetric cryptography. For example, it is algorithmically possible to estimate (or determine) the private key in a key pair from the publicly available public key. Additionally, asymmetric key pairs are relatively difficult and time consuming to create, typically depending upon the identification of large prime numbers. Further, asymmetric cryptography can be vulnerable in that it may produce the same predictable encrypted output when the same secret text is encrypted.
To be distinguished from other cryptographic systems, various cryptography processes or operations are described herein. In one embodiment, a first cryptographic function is applied to secret data. The first cryptographic function operates as a type of cryptographic key and encrypts or ciphers the secret data to produce a first encrypted result. The first encrypted result can be securely transmitted by a first device to a second device. The second device then applies a second cryptographic function to the first encrypted result. Similar to the first cryptographic function, the second cryptographic function operates as a cryptographic key and further (or doubly) encrypts or ciphers the first encrypted result to produce a second (or doubly) encrypted result. At this point, the secret data has been encrypted by two different cryptographic functions, each of them being sufficient to secure the secret data. The two different cryptographic functions can then be inversed or removed, in any order, to reveal the secret data.
Turning to the embodiments, FIG. 2 illustrates a representative process 20 of secret key transfer using cryptography processes according to various embodiments described herein. The process described below can be performed by any suitable computing device(s) including a processor and memory, without limitation. In the example shown in FIG. 2 , Alice wants to securely pass the secret key X to Bob over a public network. To do so, Alice should first encrypt the secret key X before sending it to Bob.
To encrypt the secret key X, Alice holds a first cryptographic function FA. In various embodiments, the cryptographic function FA can be embodied as any suitable mathematical function having an inverse which cannot be determined without knowledge of a certain set of parameters of the mathematical function. In one embodiment, the function FA can be embodied as a polynomial function or multivariate polynomial function defined in part by one or more variables, combinations of variables, combinations of variables at various powers, and coefficients. To undo or unlock (e.g., decrypt) the effect of the cryptographic function FA, Alice also holds a first inverse cryptographic function F−1A.
To start, at step 202, the process 20 includes Alice generating, with a first computing device, a first random lock XA. The first random lock XA can be embodied as an array or vector of random scalar integers, for example, or another suitable organized structure of random numbers. In the process 20, the first random lock XA can operate as a type of initialization vector upon which the cryptographic function FA is applied in combination with the secret key X. For example, the first random lock XA helps to randomize the application of the cryptographic function FA creating, in effect, a new random cryptographic function FA for each different random lock XA. In that context, the first random lock X4 helps to achieve semantic security, so that repeated usage of the cryptographic function FA with the same operand does not produce the same ciphered result and does not allow an attacker to infer any information.
At step 204, the process 20 includes Alice applying, with the first computing device, the first cryptographic function FA to a combination of the secret key X and the first random lock XA to produce a first encrypted result R1. Here, Alice's secret key X, which can include letters, numbers, American Standard Code for Information Interchange (ASCII) characters, etc., is ciphered with random numbers (i.e., the first random lock XA) using the cryptographic operation or function FA. The cryptographic function FA can be embodied as any suitable mathematical function, such as a polynomial or multivariate polynomial function. For example, the cryptographic function FA can be embodied as a polynomial function F(CXk) of kth order written as:
F ( CX k ) = i k = 1 k i k = 1 k C i 1 , i 2 i k X i 1 X i 2 X i k , ( 1 )
where Ci . . . k are coefficients of the polynomial function F(CXk), and Xi . . . k are combinations of the operand X, which can include a combination of a random lock and secret data.
Thus, at step 204, Alice's secret key X, which may include letters, numbers, American Standard Code for Information Interchange (ASCII) characters, etc., are ciphered with random numbers based on the first random lock XA and the first cryptographic function FA. As an example, a distribution function of the variables in the results R1, R2, and R3 is shown in FIG. 3A, and probability distribution functions of the variables in the results R1, R2, and R3 is shown in FIG. 3B.
The structure of the polynomial function F(CXk) and the coefficients can be known to others (although they generally are not) from the formalization of the algorithm. However, even if the structure of the polynomial function F and values of the coefficients C, k are known to a third party, the third party still cannot decrypt the transferred information.
At step 206, the process 20 includes Alice transmitting, with the first computing device, the first encrypted result R1 to Bob's second computing device. At step 208, the process 20 includes Bob generating, with the second computing device, a second random lock XB. Similar to the first random lock XA, the second random lock XB can be embodied as an array or vector of random scalar integers, for example, or another suitable organized structure of random numbers. In the process 20, the second random lock Xs can also operate as a type of initialization vector for the cryptographic function FB. For example, the second random lock XB helps to randomize the application of Bob's cryptographic function FB creating, in effect, a new random cryptographic function FB for each different random lockXB. In that context, the second random lock XB helps to achieve semantic security, so that repeated usage of the cryptographic function FB with the same operand does not produce the same ciphered result and does not allow an attacker to infer any information.
At step 210, the process includes Bob applying, with the second computing device, Bob's cryptographic function FB to a combination of the first encrypted result R1 and the second random lock XB to produce a second encrypted result R2. Here, the first encrypted result R1 (e.g., FA(X,XA)) is (doubly) ciphered with random numbers (i.e., the second random lock XB) using the cryptographic operation or function FB. The cryptographic function FB can be embodied as any suitable mathematical function, such as a polynomial or multivariate polynomial function. For example, the cryptographic function FB can be embodied as a polynomial function F(CXk) of kth order according to that shown above in Equation (1).
At this point, Alice's secret key X has been encrypted or ciphered by two different cryptographic functions FA and FB, each of them being sufficient to secure the secret key X from others. The two different cryptographic functions can then be inversed or removed, in any order, to reveal the secret key X. In other words, to decrypt the secret key X from the second encrypted result R2 (i.e., to undo the effects of the cryptographic functions FA and Fa) it is possible to either apply the inverse F−1 A function to FA or the inverse F−1 B function to FB first. Thus, according to one aspect of associative cryptography key operations described herein, the order in which the second encrypted result R2 is applied to the inverse cryptographic functions F−1 A and F−1 B. does not impact the results of the decryption of secret key X from the second encrypted result R2. Further, any number of cryptographic functions to F1 . . . FN can be applied to encrypt secret data in any order to produce an encrypted result RN, and that encrypted result RN can be decrypted in any order using the inverse cryptographic functions F−1 1 . . . F−1 N.
At step 212, the process 20 includes Bob transmitting, with the second computing device, the second encrypted result R2 to the first computing device. At step 214, the process 20 includes Alice applying, with the first computing device, the first inverse cryptographic function F−1 A to the second encrypted result R2 to produce the result R3. The first inverse cryptographic function F−1 A unlocks or removes the effect of both the first random lock XA and the first cryptographic function FA. Thus, the result R3 is what remains of the second encrypted result R2 after the effect of the first random lock XA and the first cryptographic function FA are undone or unlocked (e.g., FB(X,XB)). Thus the result R3 is still encrypted, but only by Bob's second random lock XB and the second cryptographic function FB, and the result R3 can be securely transmitted over the public network.
At step 216, the process 20 includes Alice transmitting, with the first computing device, the result R3 to the second computing device. Finally, at step 218, the process 20 includes Bob applying, with the second computing device, the second inverse cryptographic function F−1 B to the result R3 to arrive at the secret key X.
At the end of the process 20, the secret key X has been securely communicated from Alice to Bob. In contrast to the asymmetric key process described above with reference to FIG. 1 , key pairs are not used in the process 20.
The general idea embodied in the process 20 is based on certain features of the publically unknown vectors X and the publically available (potentially visible) vectors R. Particularly, the number of variables “n” of the vectors X {x1, . . . , xn} is always more than the number of variables “m” of the vectors R={r1, . . . , rm}, i.e., n>m. Thus, there are no known algorithms which give a definite decryption solution of the secret key X, based only on visible values of the vectors R in the public networks. From this point of view, the method is cryptanalysis resistant. To obtain the only solution x1, . . . , xn from the values r1, . . . , rm of the polynomial functions FA and FB, the third party (e.g., outsider Eve) should have additional information about the structure of the random vectors XA and XB, which are available for Alice and Bob only. For instance, from x1+x2+x3=r1, it is not possible for a third party to arrive at a single solution for x1 with only the value of the variable r1 being publically visible, because the additional information about the values of the variables x2+x3 are not known.
A comparison of the features of asymmetrical methods and the method described herein is give in Table 1 below.
TABLE 1
Public-Private Key
Asymmetrical PWN Three
Features (RSA, ECC) Pass Method
Numbers Prime Numbers Any Random
Numbers
Time to Develop New Relatively More Costly Negligible
Key
Processing Time Relatively More Costly Negligible
Inverse Function From Relatively Complex Inverse Function
Public Key Does Not Exist
Third Party Defeat Possible Never
Public Network Output Constant, predictable Random,
For Constant Input unpredictable
An example of the use of the method described herein is provided below. Using the method, plain text (as a letter or ASCII code of 256 numbers) is represented in ciphered text by three corresponding random numbers r1, r2 and r3 which are calculated by a random generator. Table 2 shows an example of how the plain text “This is a plain text” appears in ciphered numbers.
TABLE 2
Plain
text Ciphered text
text r1 r2 r3
T 0.001251 0.563585 0.003585
h 0.193304 0.808741 0.158307
i 0.585009 0.479873 0.28051
s 0.350291 0.895962 0.313555
0.82284 0.746605 0.614412
i 0.174108 0.858943 0.151801
s 0.710501 0.513535 0.363394
0.303995 0.014985 0.006167
a 0.091403 0.364452 0.035009
0.147313 0.165899 0.02575
p 0.988525 0.445692 0.438709
1 0.119083 0.004669 0.001204 i
a 0.00891 1 0.37788 0.005292
i 0.531663 0.571184 0.303183
n 0.601764 0.607166 0.363988
0.166234 0.663045 0.113037
t 0.450789 0.352123 0.159469
e 0.057039 0.607685 0.037377
x 0.783319 0.802606 0.623152
t 0.519883 0.30195 0.157851
Uniform distribution is called “white noise” due to its informative features. For the letter ‘A’ (ASCII code 65), as one example, the random numbers may appear over the public net as r1=0.001251, r2=0.563585, r3=0.560746 or r1=0.585009, r2=0.479873, r3=0.105796 and every time the random variables r1, r2, r3 will be unpredictable. The correlation function between any two variables x and y is estimated as follows:
corr ( x , y ) = Σ ( x - x _ ) ( y - y _ ) Σ ( x - x _ ) 2 Σ ( y - y _ ) 2 . ( 2 )
The results of correlation function evaluation for pairs (r1, r2), (r2, r3) and (r1, r3) are given in Table 3 below.
TABLE 3
corr (r1, r2) corr (r2, r3) corr (r1, r3)
−0.013927 −0.002873 −0.010771
The correlation is negligibly small, which means that ciphered information is encapsulated into white noise and is not analyzable by a third party. There are no known algorithms to decrypt the ciphered information without the encryption key.
In the approaches described herein, there are neither restrictions nor requirements on the encryption key number and length. All keys are equal in terms of crypt analysis resistance. Additionally, there are no correlations between the plain text and the ciphered random numbers (r1, r2, r3), as the combinations of them are unpredictable. There are no known algorithms which can decrypt ciphered random numbers (r1, r2, r3) into plain text without the key. There are no known algorithms which can recalculate the encryption key using visible ciphered random numbers (r1, r2, r3) and visible plain text. There is no need for rotation of encryption keys if a physical, completely unpredictable random number generator is used. The series repetition period of real random numbers (r1, r2, r3) is infinite.
Computational time needed to encrypt and decrypt data by the method described herein is significantly smaller than commonly used algorithms. Since the method uses polynomial functions, the transaction of numbers (or ASCII) should be controlled by calculation procedures. The analysis of 25,600,000 transactions demonstrates that the final error of the secret key value estimate does not exceed 0.001%. This means that, for example, the transaction of the letter ‘A,’ which is represented by the integer number 65 (ASCII), after all transformations from client to server could be calculated to be a number about 64.9999 (and depends in part on the random generator variables during the transaction).
A comparison of the features of a standard symmetrical method and the method described herein are given in Table 4 below.
TABLE 4
WNT One Pass Transaction
Symmetrical (in combination with Three
Features FIPS Pub 197 Pass Transaction)
Encryption Key Rotation Must Have Not Needed
Processing time Costly Negligible
Security resistance and key Strong relation No Relation
length
Hack Costly Never (Potentially
Impossible)
Public net output for Constant, Random, Unpredictable
constant input (without key Predictable
rotation)
A computer program was developed to implement the method described herein. As shown in FIG. 4 , Alice securely sends her secret text “Hello bob” to Bob using the three pass transaction. In FIG. 4 , random values appear to a third party during the three pass transaction (specially shown in the blue box).
Among other benefits, the processes described herein can be used to achieve unbreakable (or nearly unbreakable) encryption over wireless, wired, and public networks, and against quantum computing attacks. It requires relatively little processing power for encrypting and decrypting and, thus, can be used for rapid verification and transactions. A practically limitless number of new keys can be generated on the fly. Thus, the keys can be changed on every transaction. Encryption and decryption can also occur on individual devices due to the high speed of encryption and low processing requirements. Further, there is no single point of compromise because every individual party has their own key. If a key is compromised, it is the one compromised and can be renewed or replaced.
An outline of various problems encountered and solutions that can be provided by the cryptographic systems described herein are given in Table 5 below.
TABLE 5
Problem Solution
Establishing a secure and Digital ID system in the cloud
reliable ID for all transactions for processing Ids
ID system only used for
registration and verification
Information unhackable
Having a secure payment Payment system using ID
system that eliminates fraud Email, internet banking, wireless
transaction
Cryptocurrency that is secure Absolutely secure, stable, and
and stable based on verifiable IDs
Fast enough and secure trading Rapid trading and verification
system for cryptocurrencies Trading exchanges connected to
Exchange
Mobile Payments Integrity over wireless signals
and public net
Transactions cannot be defrauded
via screening or copying
Key Management System Cloud key management service
ID system to outsource all key
management responsibilities
People forget passwords and Pass eliminates the use of
passwords are a weak point passwords using ID center
in security
FIG. 5 illustrates a more particular example of a secret key transfer process 30 according to the concepts described herein. While an example using square matrices of a certain size is provided below, the concepts described herein can be extended to use with square matrices of any size. Further, although the example below is presented in certain cases as steps between “Alice” and “Bob,” the process is conducted by computing systems or devices.
At the outset, consider the key to be exchanged, K, as a sequence of m bytes, each including one of the ASCII codes from 0 to 255, as follows:
K={k 1 ,k 2 , . . . ,k m},0≤k i≤255.
For example, the key string “ABCD” can be presented as ASCII codes K={65, 66, 67, 68}. A sequence of real numbers X can then be defined as a transformation of the key numbers (i.e., k1, k2, . . . , km), which are integers, into real ones, as follows:
X=Φ(K),Φ:N m →R m and
X={x 1 ,x 2 , . . . ,x m },x i ϵR.
The sequence of real numbers is put into set of second order square matrices, as follows:
X = x 1 x 2 x 3 x 4 x m - 3 x m - 2 x m - 1 x m
If the number of real key numbers is not multiple of four, the last matrix is not fully filled in. In this case, the rest of the matrix members can be generated and added as any random numbers without influencing the algorithm.
Now, assume that Alice wants to pass the secret key K to Bob. For simplicity, however, consider one square matrix X, as follows:
X = x 1 x 2 x 3 x 4
The matrix X decomposes into two singular matrices Z1 and Z2
X = Z 1 Z 2 , Z 1 = Z 1 Z 2 Z 3 Z 2 Z 3 Z 1 , and Z 2 = Z 4 Z 5 Z 6 Z 4 Z 5 Z 6
At step 302, the process includes forming the matrix X as a singular matrix using a number of the real key numbers of the secret key K based on the following relationship x4=x2x3/x1. In that case, the inverse of matrix X, or X−1, does not exist (see properties of singular matrices and matrix determinants in APPENDIX). In that case, the matrix X represents a portion of the secret key K, {k1, k2, k3}.
As part of a first pass transaction, at step 302, the process further includes generating a uniformly distributed random matrices Y1, Y2 and inverse matrices Y1 −1, Y2 −1, as follows:
Y 1 = y 1 y 2 y 3 y 4 , Y 1 - 1 = y 4 - y 2 - y 3 y 1 y 1 y 4 - y 2 y 3 , y i R , y 1 y 4 y 2 y 3 , Y 2 = y 5 y 6 y 7 y 8 , and Y 2 - 1 = y 8 - y 6 - y 7 y 5 y 5 y 8 - y 6 y 7 , y i R , y 5 y 8 y 6 y 7 .
At step 302, the process also includes generating uniformly distributed random centrosymmetric A1, A2, B1, B2, and inverse A1 −1, A2 −1, B1 −1, B2 −1 matrices as follows:
A 1 = a 1 a 2 a 2 a 1 , A 2 = a 3 a 4 a 4 a 3 , A 1 - 1 = a 1 - a 2 - a 2 a 1 a 1 2 - a 2 2 , A 2 - 1 = a 3 a 4 a 4 a 3 a 3 2 - a 4 2 , a i R , a 1 2 a 2 2 , a 3 2 a 4 2 , B 1 = b 1 b 2 b 2 b 1 , B 2 = b 3 b 4 b 4 b 3 , B 1 - 1 = b 1 - b 2 - b 2 b 1 b 1 2 - b 2 2 , B 2 - 1 = b 3 - b 4 - b 4 b 3 , b i R , b 1 2 b 2 2 , b 3 2 b 4 2 .
Centrosymmetric square matrices A and B are always of the form AB=BA.
At step 304, the process includes Alice generating and sending matrices M1 and M2 to Bob, as follows:
M 1 = m 1 ( 1 ) m 2 ( 1 ) m 3 ( 1 ) m 4 ( 1 ) , M 2 = m 1 ( 2 ) m 2 ( 2 ) m 3 ( 2 ) m 4 ( 2 ) , M 3 = m 1 ( 3 ) m 2 ( 3 ) m 3 ( 3 ) m 4 ( 3 ) , and M 4 = m 1 ( 4 ) m 2 ( 4 ) m 3 ( 4 ) m 4 ( 4 ) ,
which are generated according to the following calculations:
M 1 =Y 1 A 1,  (3)
M 2 =B 1 Y 1 −1 Z 1,  (4)
M 3 =Y 2 A 2, and  (5)
M 4 =B 2 Y 2 −1 Z 3.  (6)
Thus, at step 304, Alice sends to Bob fourteen publicly visible values (m1 (1), m2 (1), m3 (1), m4 (1), m1 (2), m2 (2), m3 (2), m1 (3), m2 (3), m3 (3), m4 (3), m1 (4), m2 (4), m3 (4)) of matrices M1, M2, M3, and M4 that are calculated from twenty-two independent unknown (for the third party) variables (a1, a2, a3, a4, b1, b2, b3, b4, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6) known by Alice only, as follows:
m 1 ( 1 ) = a 1 y 1 + a 2 y 2 , m 2 ( 1 ) = a 2 y 1 + a 1 y 2 , m 3 ( 1 ) = a 1 y 3 + a 2 y 4 , m 4 ( 1 ) = a 2 y 3 + a 1 y 4 , m 1 ( 2 ) = b 1 ( x 1 y 4 - x 3 y 2 ) + b 2 ( x 3 y 1 - x 1 y 3 ) y 1 y 4 - y 2 y 3 , m 2 ( 2 ) = b 1 ( x 2 y 4 - y 2 x 2 x 3 / x 1 ) + b 2 ( y 1 x 2 x 3 / x 1 - x 2 y 3 ) y 1 y 4 - y 2 y 3 , m 3 ( 2 ) = b 2 ( x 1 y 4 - x 3 y 2 ) + b 1 ( x 3 y 1 - x 1 y 3 ) y 1 y 4 - y 2 y 3 m 1 ( 3 ) = a 3 y 5 + a 4 y 6 , m 2 ( 3 ) = a 4 y 5 + a 3 y 6 , m 3 ( 3 ) = a 3 y 7 + a 4 y 8 , m 4 ( 3 ) = a 4 y 7 + a 3 y 8 , m 1 ( 4 ) = b 3 ( x 4 y 8 - x 6 y 6 ) + b 4 ( x 6 y 5 - x 4 y 7 ) y 5 y 4 - y 6 y 3 , m 2 ( 4 ) = b 3 ( x 5 y 6 - y 6 x 5 x 6 x 4 ) + b 4 ( y 5 x 5 x 6 x 4 - x 5 y 7 ) y 5 y 8 - y 6 y 7 , and m 3 ( 4 ) = b 4 ( x 6 y 8 - x 6 y 6 ) + b 3 ( x 6 y 5 - x 4 y 7 ) y 5 y 8 - y 6 y 7 .
The variable m4 (2) and m4 (4) of the singular matrices M2 and M2 are used as m4 (2)=m 2 (2)m3 (2)/m1 (2) and m4 (2)=m2 (2)m3 (2)/m1 (2).
As a second pass transaction, at step 306, the process includes Bob receiving the M1 and M2 matrices from Alice. At step 306, the process includes generating uniformly distributed random centrosymmetric matrices C1, C2 and inverse C1 −1, C2 −1 matrices, as follows:
C 1 = c 1 c 2 c 2 c 1 , C 2 = c 3 c 4 c 4 c 3 , C 1 - 1 = c 1 - c 2 - c 2 c 1 c 1 2 - c 2 2 , c i R , c 1 2 c 2 2 , and C 2 - 1 = c 3 - c 4 - c 4 c 3 c 3 2 - c 4 2 , c i R , c 3 2 c 4 2 .
The process at step 306 also includes generating uniformly distributed random matrices D and H, as follows:
D = d 1 d d 3 d 4 , and H = h 1 h 2 h 3 h 4 , d i h i R , d 1 d 4 d 2 d 3 , h 1 h 4 h 2 h 3 .
The process at step 306 also includes generating corresponding inverse matrices D−1 and H−1, as follows:
D - 1 = d 1 d 2 d 3 d 4 d 1 d 4 - d 2 d 3 , and H - 1 = h 1 h 2 h 3 h 4 h 1 h 4 - h 2 h 3 .
The process at step 306 also includes generating the matrices M5, M6, M7 and M8, as follows:
M 5 = m 1 ( 5 ) m 2 ( 5 ) m 3 ( 5 ) m 4 ( 5 ) , M 6 = m 1 ( 6 ) m 2 ( 6 ) m 3 ( 6 ) m 4 ( 6 ) , M 7 = m 1 ( 7 ) m 2 ( 7 ) m 3 ( 7 ) m 4 ( 7 ) , and M 8 = m 1 ( 8 ) m 2 ( 8 ) m 3 ( 8 ) m 4 ( 8 )
as a result of the following calculations:
M 5 =DM 1 C 1 −1 =D 1 Y 1 A 1 C 1 −1,  (7)
M 6 =C 1 M 2 E=C 1 B 1 Y 1 −1 Z 1 E,  (8)
M 7 =E −1 M 3 C 2 −1 =E −1 YA 2 C 2 −1, and  (9)
M 8 =C 2 M 4 H=C 2 B 2 Y 2 −1 Z 2 H.  (10)
At step 308, the process includes Bob sending to Alice fourteen publicly visible values (m1 (5), m2 (5), m3 (5), m1 (6), m2 (6), m3 (6), m1 (7), m2 (7), m3 (7), m4 (7), m1 (8), m2 (8), m3 (8)) of matrices M3 and M4 that are calculated from sixteen independent unknown (for the third party) variables (c1, c2, c3, c4, d1, d2, d3, d4, e1, e2, e3, e4, h1, h2, h3, h4) which are known by Bob only, as follows:
m 1 ( 5 ) = c 1 ( d 1 m 1 ( 1 ) + d 2 m 3 ( 1 ) ) - c 2 ( d 1 m 2 ( 1 ) + d 2 m 4 ( 1 ) ) c 1 2 - c 2 2 , m 2 ( 5 ) = c 1 ( d 1 m 2 ( 1 ) + d 2 m 4 ( 1 ) ) - c 2 ( d 1 m 1 ( 1 ) + d 2 m 4 ( 1 ) ) c 1 2 - c 2 2 , m 3 ( 5 ) = c 1 ( d 3 m 1 ( 1 ) + d 4 m 3 ( 1 ) ) - c 2 ( d 1 m 2 ( 1 ) + d 4 m 4 ( 1 ) ) c 1 2 - c 2 2 , m 4 ( 5 ) = c 1 ( d 3 m 2 ( 1 ) + d 4 m 4 ( 1 ) ) - c 2 ( d 3 m 1 ( 1 ) + d 4 m 3 ( 1 ) ) c 1 2 - c 2 2 , m 1 ( 6 ) = ( c 1 m 1 ( 2 ) + c 2 m 3 ( 2 ) ) e 1 + ( c 1 m 2 ( 2 ) + c 2 m 4 ( 2 ) ) e 3 , m 2 ( 6 ) = ( c 1 m 1 ( 2 ) + c 2 m 3 ( 2 ) ) e 2 + ( c 1 m 2 ( 2 ) + c 2 m 4 ( 2 ) ) e 4 , m 3 ( 6 ) = ( c 2 m 1 ( 2 ) + c 1 m 3 ( 2 ) ) e 1 + ( c 2 m 2 ( 2 ) + c 1 m 4 ( 2 ) ) e 3 , m 4 ( 6 ) = m 2 ( 6 ) m 3 ( 6 ) / m 1 ( 6 ) , m 1 ( 7 ) = c 3 ( e 4 m 1 ( 3 ) - e 2 m 1 ( 3 ) ) - c 4 ( e 1 m 2 ( 3 ) - e 2 m 4 ( 3 ) ) ( c 3 2 - c 4 2 ) ( e 1 e 4 - e 2 e 3 ) , m 2 ( 7 ) = c 3 ( e 4 m 2 ( 3 ) - e 3 m 4 ( 3 ) ) - c 4 ( e 4 m 1 ( 3 ) - e 2 m 1 ( 3 ) ) ( c 3 3 - c 4 3 ) ( e 1 e 4 - e 2 e 3 ) , m 3 ( 7 ) = c 3 ( e 1 m 3 ( 3 ) - e 2 m 1 ( 3 ) ) - c 4 ( e 1 m 4 ( 3 ) - e 2 m 3 ( 3 ) ) ( c 3 2 - c 4 2 ) ( e 1 e 4 - e 2 e 3 ) , m 4 ( 7 ) = c 3 ( e 1 m 1 ( 3 ) - e 3 m 2 ( 3 ) ) - c 4 ( e 4 m 3 ( 3 ) - e 2 m 1 ( 3 ) ) ( c 3 2 - c 4 2 ) ( e 1 e 4 - e 2 e 3 ) , m 1 ( 8 ) = ( c 3 m 1 ( 4 ) + c 4 m 3 ( 4 ) ) h 1 + ( c 3 m 2 ( 4 ) + c 4 m 4 ( 4 ) ) h 3 , m 2 ( 8 ) = ( c 3 m 1 ( 4 ) + c 4 m 3 ( 4 ) ) h 2 + ( c 3 m 2 ( 4 ) + c 4 m 4 ( 4 ) ) h 4 , m 3 ( 8 ) = ( c 4 m 1 ( 4 ) + c 3 m 3 ( 4 ) ) h 1 + ( c 4 m 2 ( 4 ) + c 3 m 4 ( 4 ) ) h 3 , and
As a third pass transaction, at step 310, the process includes Alice receiving from Bob the matrices M5, M6, M7, and M8 as follows:
M 5 =DY 1 A 1 C 1 −1,
M 6 =C 1 B 1 Y 1 −1 Z 1 E,
M 7 =E −1 Y 2 A 2 C 2 −1, and
M 8 =CBY −1 XH.
Note that centrosymmetric matrices satisfy the following conditions:
AC −1 =C −1 A and
CB=BC,
meaning that the matrices M5, M6, M7, and M8 can be transformed into:
M 5 =DY 1 A 1 C 1 −1 =DY 1 C 1 −1 A 1,
M 6 =C 1 B 1 Y 1 −1 Z 1 E=B 1 C 1 Y 1 −1 Z 1 E,
M 7 =E −1 Y 2 A 2 C 2 −1 =E −1 Y 2 C 2 −1 A 2, and
M 8 =C 2 B 2 Y 2 −1 Z 2 H=B 2 C 2 Y 2 −1 Z 2 H,
Thus, at step 312, the process includes multiplying the matrices M5, M6, M7 and M8 with the known inverse matrices A1 −1, A2 −1, B1 −1 and B2 −1, respectively, as follows:
M 5 A 1 −1 =DY 1 C 1 −1 A 1 A 1 −1 =DY 1 C 1 −1,
B 1 −1 M 6 =B 1 −1 B 1 C 1 Y 1 −1 Z 1 E=C 1 Y 1 −1 Z 1 E,
M 7 A 2 −1 =E −1 Y 2 C 2 −1 A 2 A 2 −1 =E −1 Y 2 C 2 −1, and
B 2 −1 M 8 =B 2 −1 B 2 C 2 Y 2 −1 Z 2 H=C 2 Y 2 −1 Z 2 H.
Further, at step 314, the process includes multiplying the results of those together to arrive at the matrix M5, as follows:
M 9 = M 5 A 1 - 1 B 1 - 1 M 6 M 7 A 2 - 1 B 2 - 1 M 8 , M 9 = DY 1 C 1 - 1 C 1 C 1 - 1 Z 1 EE - 1 Y 2 C 2 - 1 C 2 Y 2 - 1 Z 2 H = DZ 1 Z 2 H , such that M 9 = DXH , and M 9 = m 1 ( 9 ) m 2 ( 9 ) m 3 ( 9 ) m 4 ( 9 ) . ( 11 )
At step 316, the process includes Alice sending the following three publicly visible values to Bob (m1 (9), m2 (9), m3 (9)), as follows:
m 1 (9)=(d 1 x 1 +d 2 x 3)h 1+(d 1 x 2 +d 2 x 4)h 3,
m 2 (9)=(d 1 x 1 +d 2 x 3)h 2+(d 1 x 2 +d 2 x 4)h 4,
m 3 (9)=(d 3 x 1 +d 4 x 3)h 1+(d 3 x 2 +d 4 x 4)h 3, and
m 4 (9) =m 3 (9) m 2 (9) /m 1 (9).
Thus, as part of the final key restoration at step 316, Bob receives the matrix M9 from Alice, as follows:
M 9 =DXH.
At step 318, the process includes Bob restoring the key X from Alice by using inverse matrices D−1 and H−1, which are known to Bob, and the matrix M5, as follows:
D −1 M 9 H −1 =D −1 DXHH −1 =X.
As shown in Table 6 below, the entire scheme of the key exchange process can be performed using an exchange of matrices with a corresponding number of different unknown independent variables (underlined in Table 6) and visible (by the third party) values (bolded in Table 6). This scheme demonstrates that the number of unknown independent variables always exceeds the number of visible independent values in any combination of subsets of matrices.
This means that the system of nonlinear equations is an indeterminate system. There are no algorithms for the third party to obtain unknown independent variables including the secret key X using the visible independent values.
TABLE 6
Independent
Variables Variables Values
1 Alice Y1A1 A1[2], Y1[4] 22 M1[4] 4 14
B1Y1 −1Z1 B1[2], Z1[3] M2[4] 3
Y2A2 A2[2], Y2[4] M3[4] 4
B2Y2 −1Z2 B2[2], Z2[3] M4[4] 3
2 Bob DY1A1C1 −1 D [4], C1[2] 16 M5[4] 4 14
C1B1Y1 −1 Z1E E [4] M6[4] 3
E−1Y2A2C2 −1 M7[4] 4
C2B2Y2 −1 Z2H C2[2], H [4] M8[4] 3
3 Alice DXH M9[3] 3 3
Total 38 31
The direct restoration of the matrix X (using formula transformations of Eqs. 3-11 is also impossible. Note that the matrix X is singular. It leads to several features, which are used to perform the key exchange algorithm resistant against the third party decryption (see APPENDIX):
The matrices M2, M4, M6, M8, and M9
M 2 =B 1 Y 1 −1 Z 1,
M 4 =B 2 Y 2 −1 Z 2,
M 6 =C 1 B 1 Y 1 −1 Z 1 E,
M 6 =C 2 B 2 Y 2 −1 Z 2 H, and
M 9 =DZ 1 Z 2 H
are also singular (due to the matrices Z1 and Z2 being singular).
Thus, the equation M5L1M6M7L2M8=M9 (from the Eqs. 7-10) can not be resolved in regards to centrosymmetric matrices L1=A1 −1B1 −1 and L2=A2 −1B2 −1 by the third party as far as the matrix M9 is singular so, the direct calculation X=M1L1M2M3L2M4 is not possible.
The concepts described herein can be used for other cryptographic operations, such as key exchanging using authentication. FIG. 6 illustrates an example secret material or key exchanging process using authentication according to the concepts described herein.
As shown in FIG. 6 , Alice wants to pass the secret key K to Bob. They use Ed as an independent party for authentication. In the transaction, the square singular matrix
X = x 1 x 2 x 3 x 4
is used to represent key K={k1, k2, k3}, where x4=x2x3/x1.
It is assumed that Alice and Bob both have passed the authentication procedure and both have got corresponding session numbers N1 A, N2 A and N1 B, N2 B from Ed according to the concepts described above.
Alice and Bob form centrosymmetric matrices NA and NB correspondently, as follows:
N A = N 1 A N 2 A N 3 A N 4 A and N AB = N 1 B N 2 B N 3 B N 4 B .
As part of a first pass transaction, at step 402, the process 40 includes Alice generating uniformly distributed random matrices Y1, Y2 and inverse matrices Y1 −1, Y2 −1, as follows:
Y 1 = "\[LeftBracketingBar]" y 1 y 2 y 3 y 4 "\[RightBracketingBar]" , Y 1 - 1 = "\[LeftBracketingBar]" y 1 - y 2 - y 3 y 4 "\[RightBracketingBar]" y 1 y 4 - y 2 y 3 , y i R , y 1 y 4 y 2 y 3 , Y 2 = "\[LeftBracketingBar]" y 5 y 6 y 7 y 8 "\[RightBracketingBar]" , and Y 2 - 1 = "\[LeftBracketingBar]" y 8 - y 6 - y 7 y 5 "\[RightBracketingBar]" y 5 y 8 - y 6 y 7 , y i R , y 5 y 8 y 6 y 7 .
Alice also generates uniformly distributed random centrosymmetric matrices A and B, as follows:
A 1 = "\[LeftBracketingBar]" a 1 a 2 a 2 a 1 "\[RightBracketingBar]" , A 2 = "\[LeftBracketingBar]" a 3 a 4 a 4 a 3 "\[RightBracketingBar]" , A 1 - 1 = "\[LeftBracketingBar]" a 1 - a 2 - a 2 a 1 "\[RightBracketingBar]" a 1 2 - a 2 2 , A 2 - 1 = "\[LeftBracketingBar]" a 3 a 4 a 4 a 3 "\[RightBracketingBar]" a 3 2 - a 4 2 , a i R , a 1 2 a 2 2 , a 3 2 a 4 2 , B 1 = "\[LeftBracketingBar]" b 1 b 2 b 2 b 1 "\[RightBracketingBar]" , B 2 = "\[LeftBracketingBar]" b 3 b 4 b 4 b 3 "\[RightBracketingBar]" , B 2 - 1 = "\[LeftBracketingBar]" b 3 - b 4 - b 4 b 3 "\[RightBracketingBar]" , b i R , b 1 2 b 2 2 , b 3 2 b 4 2 .
Note that any centrosymmetric square matrices A and B always have the following feature: AB=BA. At step 404, the process includes Alice sending to Bob results as matrices M1 and M2, as follows:
M 1 = "\[LeftBracketingBar]" m 1 ( 1 ) m 2 ( 1 ) m 3 ( 1 ) m 4 ( 1 ) "\[RightBracketingBar]" , M 2 = "\[LeftBracketingBar]" m 1 ( 2 ) m 2 ( 2 ) m 3 ( 2 ) m 4 ( 2 ) "\[RightBracketingBar]" , M 3 = "\[LeftBracketingBar]" m 1 ( 3 ) m 2 ( 3 ) m 3 ( 3 ) m 4 ( 3 ) "\[RightBracketingBar]" , and M 4 = "\[LeftBracketingBar]" m 1 ( 4 ) m 2 ( 4 ) m 3 ( 4 ) m 4 ( 4 ) "\[RightBracketingBar]" .
of the following calculations:
M 1 =Y 1 A 1,  (1B)
M 2 =B 1 Y 1 −1 Z 1,  (2B)
M 3 =Y 2 A 2,  (3B)
M 4 =B 2 Y 2 −1 Z 2.  (4B)
As part of a second pass transaction, at step 406, Bob receives M1 and M2 from Alice. Bob generates uniformly distributed random centrosymmetric matrices C1, C2 and inverse C1 −1, C2 −1 matrices, as follows:
C 1 = "\[LeftBracketingBar]" c 1 c 2 c 2 c 1 "\[RightBracketingBar]" , C 2 = "\[LeftBracketingBar]" c 3 c 4 c 4 c 3 "\[RightBracketingBar]" , C 1 - 1 = "\[LeftBracketingBar]" c 1 - c 2 - c 2 c 1 "\[RightBracketingBar]" c 1 2 - c 2 2 , c i R , c 1 2 c 2 2 , and C 2 - 1 = "\[LeftBracketingBar]" c 3 - c 4 - c 4 c 3 "\[RightBracketingBar]" c 3 2 - c 4 2 , c i R , c 3 2 c 4 2 .
and uniformly distributed random matrices D and H, as follows:
D = "\[LeftBracketingBar]" d 1 d 2 d 3 d 4 "\[RightBracketingBar]" , and H = "\[LeftBracketingBar]" h 1 h 2 h 3 h 4 "\[RightBracketingBar]" , d i , h i R , d 1 d 4 d 2 d 3 , h 1 h 4 h 2 h 3 ,
and correspondent inverse matrices D−1 and H−1, as follows:
D - 1 = "\[LeftBracketingBar]" d 1 d 2 d 3 d 4 "\[RightBracketingBar]" d 1 d 4 - d 2 d 3 , and H - 1 = "\[LeftBracketingBar]" h 1 h 2 h 3 h 4 "\[RightBracketingBar]" h 1 h 4 - h 2 h 3 ,
At step 406, Bob also obtains the matrices M5, M6, M7 and M8, defined as follows:
M 5 = "\[LeftBracketingBar]" m 1 ( 5 ) m 2 ( 5 ) m 3 ( 5 ) m 4 ( 5 ) "\[RightBracketingBar]" , M 6 = "\[LeftBracketingBar]" m 1 ( 6 ) m 2 ( 6 ) m 3 ( 6 ) m 4 ( 6 ) "\[RightBracketingBar]" , M 7 = "\[LeftBracketingBar]" m 1 ( 7 ) m 2 ( 7 ) m 3 ( 7 ) m 4 ( 7 ) "\[RightBracketingBar]" , and M 8 = "\[LeftBracketingBar]" m 1 ( 8 ) m 2 ( 8 ) m 3 ( 8 ) m 4 ( 8 ) "\[RightBracketingBar]"
as a result of the following calculations:
M 5 =DM 1 C 1 −1 =D 1 Y 1 A 1 C 1 −1,  (5B)
M 6 =C 1 M 2 E=C 1 B 1 Y 1 −1 Z 1 E,  (6B)
M 7 =E −1 M 3 C 2 −1 =E −1 YA 2 C 2 −1, and  (7B)
M 8 =C 2 M 4 H=C 2 B 2 Y 2 −1 Z 2 H,  (8B)
As part of a third pass transaction, at step 408, the process includes Alice generating a uniformly distributed random matrix G, as follows:
G = "\[LeftBracketingBar]" g 1 g 2 g 3 g 4 "\[RightBracketingBar]" , g i R .
Alice receives from Bob the matrices M5, M6, M7 and M8, as follows:
M 5 =DY 1 A 1 C 1 −1 =DY 1 C 1 −1 A 1,
M 6 =C 1 B 1 Y 1 −1 Z 1 E=B 1 C 1 Y 1 −1 Z 1 E,
M 7 =E −1 Y 2 A 2 C 2 −1 =E −1 Y 2 C 2 −1 A 2, and
M 8 =C 2 B 2 Y 2 −1 Z 2 H=B 2 C 2 Y 2 −1 Z 2 H,
At step 408, the process also includes Alice multiplying both the matrices M5, M6, M7 and M8 with the inverse matrices which are known to her, A1 −1, A2 −1, B1 −1 and B2 −1, respectively, as follows:
B 1 - 1 M 6 = B 1 - 1 B 1 C 1 Y 1 - 1 Z 1 E = C 1 Y 1 - 1 Z 1 E , B 1 - 1 M 6 = B 1 - 1 B 1 C 1 Y 1 - 1 Z 1 E = C 1 Y 1 - 1 Z 1 E , M 7 A 2 - 1 = E - 1 Y 2 C 2 - 1 A 2 A 2 - 1 = E - 1 Y 2 C 2 - 1 , and B 2 - 1 M 8 = B 2 - 1 B 2 C 2 Y 2 - 1 Z 2 H = C 2 Y 2 - 1 Z 2 H , M 5 = GM 5 A 1 - 1 B 1 - 1 M 6 M 7 A 2 - 1 B 2 - 1 M 8 = GDY 1 C 1 - 1 C 1 Y 1 - 1 Z 1 EE - 1 Y 2 C 2 - 1 Z 2 H , such M 9 = GDXH ( 9 B ) , where M 9 = "\[LeftBracketingBar]" m 1 ( 9 ) m 2 ( 9 ) m 3 ( 9 ) m 4 ( 9 ) "\[RightBracketingBar]" .
At step 410, the process includes Alice sending three publicly visible values to Bob, including (m1 (9), m2 (9), m3 (9)). The matrix M9 is singular and m4 (9)=m3 (9)m2 (9)/m1 (9). At step 412, Alice also sends four publicly visible values to Ed (m1 (6), m2 (6), m3 (6), m4 (6)) of the matrix M10, defined as:
M 10 = "\[LeftBracketingBar]" m 1 ( 10 ) m 2 ( 10 ) m 3 ( 10 ) m 4 ( 10 ) "\[RightBracketingBar]" ,
as a result of the following calculations:
M 10 −N A G.  (9B)
For authentication, Ed receives the matrix M6 from Alice. At step 414, Ed sends to Bob the matrix M11 using the inverse matrix (NA)−1 and the matrix NB, as follows:
M 11 =N B(N A)−1 N A G=N B G,
M 11 =N B G.  (10B).
As part of the final key restoration, at step 416, the process includes Bob receiving the matrix M11 from Ed and obtaining the matrix G using the inverse matrix (NB)−1, as follows:
G=(N B)−1 M 11=(N B)−1 N B G.
Bob also receives the matrix M9 from Alice at step 410. Using inverse matrices G−1, D−1, and H−1, which are known to Bob, he can restore the key X from the received matrix M5 as follows:
D −1 G −1 M 9 H −1 =D −1 G −1 GDXH H −1 =X.
The embodiments described herein can be implemented by either a method or process or as a system or device. The method can be performed using any suitable computing device, and the system can be embodied as any suitable computing device. The computing device can include at least one processing system, for example, having one or more processors and memories electrically and communicatively coupled together using a local interface. The local interface can be embodied as a data bus with an accompanying address/control bus or other addressing, control, and/or command lines.
In various embodiments, the memory can store data and software or executable code components executable by the processor. For example, the memory can store executable-code components associated with cryptographic operations for execution by the processor. The software or executable-code components can be developed using or embodied in various programming languages, such as, for example, C, C++, C#, Objective C, JAVA®, JAVASCRIPT®, Perl, PHP, VISUAL BASIC®, PYTHON®, RUBY, FLASH®, or other programming languages.
The embodiments can rely, in part, on executable instructions or instructions for execution by the computing device. The terms “executable” or “for execution” refer to software forms that can ultimately be run or executed by a processor, whether in source, object, machine, or other form. Examples of executable programs include, for example, a compiled program that can be translated into a machine code format and loaded into a random access portion of memory and executed by a processor, source code that can be expressed in an object code format and loaded into a random access portion of the memory and executed by the processor, or source code that can be interpreted by another executable program to generate instructions in a random access portion of the memory and executed by the processor, etc.
An executable program can be stored in any portion or component of the memory including, for example, a random access memory (RAM), read-only memory (ROM), magnetic or other hard disk drive, solid-state, semiconductor, or similar drive, universal serial bus (USB) flash drive, memory card, optical disc (e.g., compact disc (CD)) or digital versatile disc (DVD)), floppy disk, magnetic tape, or other memory component.
Although the process diagram shown in FIGS. 2 and 5 illustrate a certain order, it is understood that the order can differ from that which is depicted. For example, an order of execution of two or more blocks can be scrambled relative to the order shown. Also, two or more blocks shown in succession can be executed concurrently or with partial concurrence. Further, in some embodiments, one or more of the blocks can be skipped or omitted. In addition, any number of counters, state variables, warning semaphores, or messages might be added to the logical flow described herein, for purposes of enhanced utility, accounting, performance measurement, or providing troubleshooting aids, etc. It is understood that all such variations are within the scope of the present disclosure.
Also, any algorithm, method, process, or logic described herein that are embodied, at least in part, by software or executable-code components, can be embodied or stored in any tangible or non-transitory computer-readable medium or device for execution by an instruction execution system such as a general purpose processor. In this sense, the logic can be embodied as, for example, software or executable-code components that can be fetched from the computer-readable medium and executed by the instruction execution system. Thus, the instruction execution system can be directed by execution of the instructions to perform certain processes such as those illustrated in FIG. 2 . In the context of the present disclosure, a “computer-readable medium” can be any tangible medium that can contain, store, or maintain any logic, application, software, or executable-code component described herein for use by or in connection with an instruction execution system.
The computer-readable medium can include any physical media such as, for example, magnetic, optical, or semiconductor media. More specific examples of suitable computer-readable media include, but are not limited to, magnetic tapes, magnetic floppy diskettes, magnetic hard drives, memory cards, solid-state drives, USB flash drives, or optical discs. Also, the computer-readable medium can include a RAM including, for example, an SRAM, DRAM, or MRAM. In addition, the computer-readable medium can include a ROM, a PROM, an EPROM, an EEPROM, or other similar memory device.
Disjunctive language, such as the phrase “at least one of X, Y, or Z,” unless specifically stated otherwise, is to be understood with the context as used in general to present that an item, term, etc., can be either X, Y, or Z, or any combination thereof (e.g., X, Y, and/or Z). Thus, such disjunctive language is not generally intended to, and should not, imply that certain embodiments require at least one of X, at least one of Y, or at least one of Z to be each present.
It should be emphasized that the above-described embodiments of the present disclosure are merely possible examples of implementations set forth for a clear understanding of the principles of the disclosure. Many variations and modifications can be made to the above-described embodiment(s) without departing substantially from the spirit and principles of the disclosure. All such modifications and variations are intended to be included herein within the scope of this disclosure and protected by the following claims.
APPENDIX
Matrix Properties:
1. The inverse matrix X−1 of matrix
X = "\[LeftBracketingBar]" x 1 x 2 x 3 x 4 "\[RightBracketingBar]"
is defined as follows:
X - 1 = "\[LeftBracketingBar]" x 4 - x 2 - x 3 x 1 "\[RightBracketingBar]" x 1 x 4 - x 2 x 3 , and XX - 1 = X - 1 X = I ,
where I is the identity matrix,
I = "\[LeftBracketingBar]" 1 0 0 1 "\[RightBracketingBar]" .
2. In linear algebra and matrix mathematics, a centrosymmetric matrix is a matrix which is symmetric about its center. A centrosymmetric matrix A has the following form:
A = "\[LeftBracketingBar]" a 1 a 2 a 2 a 1 "\[RightBracketingBar]" .
Centrosymmetric matrices A and B satisfy the following conditions:
AB=BA.
3. A square matrix is singular if and only if its determinant is 0. Because a square matrix formed from a random distribution of values will almost never be singular, singular matrices are rare. The matrix
X = "\[LeftBracketingBar]" x 1 x 2 x 3 x 4 "\[RightBracketingBar]"
is singular if the determinant of the matrix X, det(X)=0 (i.e., x4x1−x2x3=0). In this case, the inverse X−1 of the singular matrix X does not exist (division by zero). If the matrix X is singular, the matrix B=AX is also singular.
Singular Matrix Features:
Consider a singular matrix S and an invertable, nondegenerate, or non-singular matrix V. The matrix W is also singular as a result of SV=W. The singular matrix S can be obtained if the matrices V and W are known, because S=WV−1, but the non-singular matrix V=S−1W can not be obtained even if matrices S and W are known because the inverse matrix S−1 does not exist (division by zero). In this sense, “can not be obtained” means there is no unique solution of the equation (ambiguity).

Claims (6)

Therefore, at least the following is claimed:
1. A method of cryptography using associative cryptography key operations, comprising:
generating, with a first computing device, a first random lock;
applying, with the first computing device, a first cryptographic function to a combination of secret data and the first random lock to produce a first encrypted result;
transmitting, with the first computing device, the first encrypted result to a second computing device;
generating, with the second computing device, a second random lock;
applying, with the second computing device, a second cryptographic function to a combination of the first encrypted result and the second random lock to produce a second encrypted result, wherein the second random lock operates as an initialization vector for the second cryptographic function;
transmitting, with the second computing device, the second encrypted result to the first computing device;
applying, with the first computing device, a first inverse cryptographic function to the second encrypted result to produce a first result;
transmitting, with the first computing device, the first result to the second computing device; and
applying, with the second computing device, a second inverse cryptographic function to the first result to decrypt the secret data at the second computing device.
2. A system, comprising:
at least one computing device; and
memory storing a plurality of computer instructions that, when executed, cause the at least one computing device to at least:
transmit, using the at least one computing device, a first encrypted result to a second computing device, wherein the first encrypted result is based on at least a first cryptographic function applied to a combination of secret data and a first random lock;
receive, with the at least one computing device, a second encrypted result from the second computing device, wherein the second encrypted result is based on at least a second cryptographic function applied to a combination of the first encrypted result and a second random lock, wherein the second random lock operates as an initialization vector for the second cryptographic function; and
transmit, with the at least one computing device, a first result to the second computing device.
3. The system according to claim 2, wherein the first result is based on at least a first inverse cryptographic function applied to the second encrypted result to produce a first result, wherein the first result is such that a second inverse cryptographic function applied, by the second computing device, to the first result produces the secret data.
4. A method of cryptography, comprising:
receiving, with a computing device, a first encrypted result based on at least a first cryptographic function applied to a combination of secret data and a first random lock;
applying, with the computing device, a second cryptographic function to a combination of the first encrypted result and a second random lock to produce a second encrypted result, wherein the second random lock operates as an initialization vector for the second cryptographic function;
transmitting, with the computing device, the second encrypted result;
receiving, with the computing device, a first result based on at least a first inverse cryptographic function applied to the second encrypted result; and
applying, with the computing device, a second inverse cryptographic function to the first result to decrypt the secret data.
5. A device, comprising:
a memory configured for storing an application, the application configured for:
transmitting a first encrypted result to a second computing device, wherein the first encrypted result is based on at least a first cryptographic function applied to a combination of secret data and a first random lock;
receiving a second encrypted result from the second computing device, wherein the second encrypted result is based on at least a second cryptographic function applied to a combination of the first encrypted result and a second random lock, wherein the second random lock operates as an initialization vector for the second cryptographic function; and
transmitting a first result to the second computing device; and
a processor configured for processing the application.
6. The device according to claim 5, wherein the first result is based on at least a first inverse cryptographic function applied to the second encrypted result to produce a first result, wherein the first result is such that a second inverse cryptographic function applied, by the second computing device, to the first result produces the secret data.
US17/040,949 2018-07-16 2019-07-15 Secret material exchange and authentication cryptography operations Active 2039-08-25 US11637694B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/040,949 US11637694B2 (en) 2018-07-16 2019-07-15 Secret material exchange and authentication cryptography operations

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862698644P 2018-07-16 2018-07-16
PCT/US2019/041871 WO2020018454A1 (en) 2018-07-16 2019-07-15 Cryptography operations for secure post-quantum communications
US17/040,949 US11637694B2 (en) 2018-07-16 2019-07-15 Secret material exchange and authentication cryptography operations

Related Parent Applications (2)

Application Number Title Priority Date Filing Date
PCT/US2019/041871 A-371-Of-International WO2020018454A1 (en) 2018-07-16 2019-07-15 Cryptography operations for secure post-quantum communications
US17/542,156 Continuation-In-Part US20220094545A1 (en) 2018-07-16 2021-12-03 Low power encryption in motion

Related Child Applications (4)

Application Number Title Priority Date Filing Date
US17/542,156 Continuation-In-Part US20220094545A1 (en) 2018-07-16 2021-12-03 Low power encryption in motion
US18/136,177 Division US20230254121A1 (en) 2018-07-16 2023-04-18 Secret material exchange and authentication cryptography operations
US18/136,164 Division US20230254120A1 (en) 2018-07-16 2023-04-18 Secret material exchange and authentication cryptography operations
US18/136,187 Division US20230254122A1 (en) 2018-07-16 2023-04-18 Secret material exchange and authentication cryptography operations

Publications (2)

Publication Number Publication Date
US20210028929A1 US20210028929A1 (en) 2021-01-28
US11637694B2 true US11637694B2 (en) 2023-04-25

Family

ID=67480417

Family Applications (4)

Application Number Title Priority Date Filing Date
US17/040,949 Active 2039-08-25 US11637694B2 (en) 2018-07-16 2019-07-15 Secret material exchange and authentication cryptography operations
US18/136,164 Pending US20230254120A1 (en) 2018-07-16 2023-04-18 Secret material exchange and authentication cryptography operations
US18/136,187 Pending US20230254122A1 (en) 2018-07-16 2023-04-18 Secret material exchange and authentication cryptography operations
US18/136,177 Pending US20230254121A1 (en) 2018-07-16 2023-04-18 Secret material exchange and authentication cryptography operations

Family Applications After (3)

Application Number Title Priority Date Filing Date
US18/136,164 Pending US20230254120A1 (en) 2018-07-16 2023-04-18 Secret material exchange and authentication cryptography operations
US18/136,187 Pending US20230254122A1 (en) 2018-07-16 2023-04-18 Secret material exchange and authentication cryptography operations
US18/136,177 Pending US20230254121A1 (en) 2018-07-16 2023-04-18 Secret material exchange and authentication cryptography operations

Country Status (2)

Country Link
US (4) US11637694B2 (en)
WO (1) WO2020018454A1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11902777B2 (en) 2019-12-10 2024-02-13 Winkk, Inc. Method and apparatus for encryption key exchange with enhanced security through opti-encryption channel
US11928193B2 (en) 2019-12-10 2024-03-12 Winkk, Inc. Multi-factor authentication using behavior and machine learning
US11928194B2 (en) 2019-12-10 2024-03-12 Wiinkk, Inc. Automated transparent login without saved credentials or passwords
US11934514B2 (en) 2019-12-10 2024-03-19 Winkk, Inc. Automated ID proofing using a random multitude of real-time behavioral biometric samplings
US11936787B2 (en) 2019-12-10 2024-03-19 Winkk, Inc. User identification proofing using a combination of user responses to system turing tests using biometric methods
US12010511B2 (en) 2022-12-09 2024-06-11 Winkk, Inc. Method and apparatus for encryption key exchange with enhanced security through opti-encryption channel

Citations (112)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020099955A1 (en) 2001-01-23 2002-07-25 Vidius Inc. Method for securing digital content
US20030016844A1 (en) 2001-06-27 2003-01-23 Chisato Numaoka Image composition system and method thereof, image generation apparatus and method thereof, storage medium and computer program for image composition
US20040223616A1 (en) * 2003-04-07 2004-11-11 Stmicroelectronics S.R.I. Encryption process employing chaotic maps and digital signature process
US20060031301A1 (en) 2003-07-18 2006-02-09 Herz Frederick S M Use of proxy servers and pseudonymous transactions to maintain individual's privacy in the competitive business of maintaining personal history databases
US20060196950A1 (en) 2005-02-16 2006-09-07 Han Kiliccote Method and system for creating and using redundant and high capacity barcodes
US20080301057A1 (en) 2004-09-14 2008-12-04 Waterleaf Limited Online Commercial Transaction System and Method of Operation Thereof
US20090194592A1 (en) 2004-08-09 2009-08-06 Konica Minolta Systems Laboratory, Inc. Color Barcode Producing Method and Apparatus, Color Barcode Reading Method and Apparatus and Color Barcode Reproducing Method and Apparatus
US20090315671A1 (en) 2007-02-28 2009-12-24 Olympus Corporation Image acquisition system and method of authenticating image acquisition device in the image acquisition system
USD607009S1 (en) 2008-06-25 2009-12-29 BeeRaider Limited Display panel with graphical user interface
US20100079591A1 (en) 2008-09-10 2010-04-01 Apro Media Co., Ltd Window of infrared surveillance camera
USD614192S1 (en) 2008-07-22 2010-04-20 Hitachi High-Technologies Corporation Graphical user interface for a computer display
US7885635B2 (en) 1997-12-09 2011-02-08 Openwave Systems Inc. Mobile device for accessing a common database and a computing device
US20110167255A1 (en) * 2008-09-15 2011-07-07 Ben Matzkel System, apparatus and method for encryption and decryption of data transmitted over a network
US7992102B1 (en) 2007-08-03 2011-08-02 Incandescent Inc. Graphical user interface with circumferentially displayed search results
US20110187642A1 (en) 2009-11-25 2011-08-04 Patrick Faith Interaction Terminal
US20110233284A1 (en) 2010-03-28 2011-09-29 Christopher Brett Howard Apparatus and method for securement of two-dimensional bar codes with geometric symbology
US20110302405A1 (en) 2010-06-07 2011-12-08 Marlow William J Mobile workforce applications which are highly secure and trusted for the us government and other industries
US20120214442A1 (en) 2011-02-21 2012-08-23 Crawford Carmela R Systems, methods and apparatus for controlling access to mobile devices
US20120221859A1 (en) 2011-02-25 2012-08-30 Vasco Data Security, Inc. Strong authentication token with acoustic data input
US20120272058A1 (en) 2006-11-28 2012-10-25 Cisco Technology, Inc. Transparent proxy of encrypted sessions
US8363259B2 (en) 2008-05-24 2013-01-29 Activiews Ltd. Method for producing printed patches for optical and high-contrast guidance
US20130086625A1 (en) 2011-09-29 2013-04-04 Oracle International Corporation Enforcing security rules at runtime
US20130111208A1 (en) 2011-10-31 2013-05-02 Jason Allen Sabin Techniques for authentication via a mobile device
US8543834B1 (en) 2012-09-10 2013-09-24 Google Inc. Voice authentication and command
US8621209B1 (en) 2011-10-19 2013-12-31 Amazon Technologies, Inc. Confidence-based authentication
US8639785B2 (en) 2007-02-06 2014-01-28 5O9, Inc. Unsolicited cookie enabled contextual data communications platform
US20140039892A1 (en) 2012-08-02 2014-02-06 Microsoft Corporation Using the ability to speak as a human interactive proof
US20140040628A1 (en) 2012-08-03 2014-02-06 Vasco Data Security, Inc. User-convenient authentication method and apparatus using a mobile authentication application
US20140244514A1 (en) 2013-02-26 2014-08-28 Digimarc Corporation Methods and arrangements for smartphone payments and transactions
US20140278077A1 (en) 2013-03-12 2014-09-18 Tirosh Levin Using multiple sources of location-aid data to determine position information
US8892871B2 (en) 2008-10-06 2014-11-18 Olcorps Co., Ltd System and method for issuing digital certificate using encrypted image
USD719176S1 (en) 2012-12-27 2014-12-09 Jason M. Cohen Display screen or portion thereof with graphical user interface
USD719177S1 (en) 2012-12-27 2014-12-09 Jason M. Cohen Display screen or portion thereof with graphical user interface
USD723050S1 (en) 2012-08-06 2015-02-24 Samsung Electronics Co., Ltd. TV receiver displaying GI and GUI
US20150089568A1 (en) 2013-09-26 2015-03-26 Wave Systems Corp. Device identification scoring
US9112835B2 (en) 2006-02-27 2015-08-18 Kabushiki Kaisha Toshiba Transmitter, receiver, and transmitting method
US20150242601A1 (en) 2014-02-23 2015-08-27 Qualcomm Incorporated Trust broker authentication method for mobile devices
US20150242605A1 (en) 2014-02-23 2015-08-27 Qualcomm Incorporated Continuous authentication with a mobile device
US20150271679A1 (en) 2014-03-19 2015-09-24 Electronics And Telecommunications Research Institute System and method of verifying integrity of software
US20150278805A1 (en) 2012-10-01 2015-10-01 Acuity Systems, Inc. Authentication system
US20150294092A1 (en) 2011-12-22 2015-10-15 Abbvie Inc. Application security framework
US20150347734A1 (en) 2010-11-02 2015-12-03 Homayoon Beigi Access Control Through Multifactor Authentication with Multimodal Biometrics
US9210156B1 (en) 2014-06-16 2015-12-08 Lexisnexis Risk Solutions Inc. Systems and methods for multi-stage identity authentication
US20150356289A1 (en) 2014-06-04 2015-12-10 Qualcomm Incorporated Secure Current Movement Indicator
US9219732B2 (en) 2012-12-28 2015-12-22 Nok Nok Labs, Inc. System and method for processing random challenges within an authentication framework
US20150373007A1 (en) 2013-03-15 2015-12-24 Intel Corporation Continuous Authentication Confidence Module
US20160011224A1 (en) 2013-03-08 2016-01-14 Siemens Healthcare Diagnostics Inc. Surface markings for an optically guided device
US20160057623A1 (en) 2014-08-19 2016-02-25 Zighra Inc. System And Method For Implicit Authentication
US20160065570A1 (en) 2013-03-19 2016-03-03 Acuity Systems, Inc. Authentication system
US20160110528A1 (en) 2014-10-15 2016-04-21 Qualcomm Incorporated Methods and Systems for Using Behavioral Analysis Towards Efficient Continuous Authentication
US20160180078A1 (en) 2014-12-23 2016-06-23 Jasmeet Chhabra Technologies for enhanced user authentication using advanced sensor monitoring
US20160182503A1 (en) 2014-12-18 2016-06-23 Sri International Continuous authentication of mobile device users
US9392460B1 (en) 2016-01-02 2016-07-12 International Business Machines Corporation Continuous user authentication tool for mobile device communications
US20160227411A1 (en) 2015-02-03 2016-08-04 Qualcomm Incorporated Asset accessibility with continuous authentication for mobile devices
US9419951B1 (en) 2001-03-23 2016-08-16 St. Luke Technologies, Llc System and method for secure three-party communications
US20160239649A1 (en) 2015-02-13 2016-08-18 Qualcomm Incorporated Continuous authentication
US20160239657A1 (en) 2015-02-13 2016-08-18 Yoti Ltd Digital identity system
USD765669S1 (en) 2014-06-10 2016-09-06 Microsoft Corporation Display screen with graphical user interface
US20160283406A1 (en) 2015-03-25 2016-09-29 Vera Securing files
WO2016179433A1 (en) 2015-05-05 2016-11-10 Winkk, Inc. Palette-based optical recognition code generators and decoders
US20170013453A1 (en) 2015-07-12 2017-01-12 Qualcomm Incorporated Network architecture and security with encrypted client device contexts
US20170041309A1 (en) 2015-08-06 2017-02-09 International Business Machines Corporation Authenticating application legitimacy
US20170063528A1 (en) 2014-05-14 2017-03-02 Samsung Electronics Co., Ltd. Method and apparatus for encrypting data
US9706406B1 (en) 2013-01-22 2017-07-11 Amazon Technologies, Inc. Security measures for an electronic device
US20170272419A1 (en) 2016-03-21 2017-09-21 Ca, Inc. Identity authentication migration between different authentication systems
US20170289168A1 (en) 2016-03-31 2017-10-05 Microsoft Technology Licensing, Llc Personalized Inferred Authentication For Virtual Assistance
USD800764S1 (en) 2016-06-20 2017-10-24 Caterpillar Inc. Display screen or portion thereof with set of icons
US20170339118A1 (en) 2016-05-17 2017-11-23 Electronics And Telecommunications Research Institute Method and apparatus for authenticated key exchange using password and identity-based signature
US9852418B2 (en) 2008-06-06 2017-12-26 Paypal, Inc. Trusted service manager (TSM) architectures and methods
US20180005239A1 (en) 2016-06-29 2018-01-04 Paypal, Inc. Mobile devices enabling customer identity validation via central depository
US20180012003A1 (en) 2016-07-11 2018-01-11 International Business Machines Corporation Pointing device biometrics continuous user authentication
US20180025135A1 (en) 2012-04-06 2018-01-25 Wayne Odom System, method, and device for delivering communications and storing and delivering data
US20180039990A1 (en) 2016-08-05 2018-02-08 Nok Nok Labs, Inc. Authentication techniques including speech and/or lip movement analysis
USD813884S1 (en) 2016-06-01 2018-03-27 Innovation 360 Group AB Display screen with graphical user interface
US20180114221A1 (en) 2015-05-25 2018-04-26 Isx Ip Ltd. Secure payment
US9961547B1 (en) 2016-09-30 2018-05-01 EMC IP Holding Company LLC Continuous seamless mobile device authentication using a separate electronic wearable apparatus
US9959694B2 (en) 2006-04-24 2018-05-01 Jeffrey Dean Lindsay Security systems for protecting an asset
US20180135815A1 (en) 2014-05-10 2018-05-17 Vision Quest, Inc. External lighting cases for mobile digital camera devices
US20180167816A1 (en) 2015-01-13 2018-06-14 Collateral Opportunities, Llc System and method for preventing unauthorized access to restricted computer systems
US10019561B1 (en) 2013-12-04 2018-07-10 United Services Automobile Association (Usaa) Systems and methods for continuous biometric authentication
US20180285879A1 (en) 2015-10-17 2018-10-04 Banqu, Inc. Blockchain-based identity and transaction platform
US20180302416A1 (en) 2015-05-01 2018-10-18 Assa Abloy Ab Continuous authentication
US20180329857A1 (en) 2017-05-10 2018-11-15 Qualcomm Incorporated Hardware event priority sensitive programmable transmit wait-window for virtual gpio finite state machine
US10200364B1 (en) 2016-04-01 2019-02-05 Wells Fargo Bank, N.A. Enhanced secure authentication
USD847857S1 (en) 2016-10-31 2019-05-07 Agile Transformation, Inc. Display screen or portion thereof with icon
US20190207918A1 (en) 2018-01-02 2019-07-04 Bank Of America Corporation Validation system utilizing dynamic authentication
US20190268774A1 (en) 2015-01-13 2019-08-29 Collateral Opportunities, Llc Using a wireless transmitter and receiver to prevent unauthorized access to restricted computer systems
US10402800B2 (en) 2010-10-14 2019-09-03 Jpmorgan Chase Bank, N.A. Image authentication and security system and method
US20190281025A1 (en) 2018-12-07 2019-09-12 Intel Corporation Securing platform link with encryption
US20190281036A1 (en) 2016-09-09 2019-09-12 Trusona, Inc. Systems and methods for distribution of selected authentication information for a network of devices
US20190342092A1 (en) * 2018-05-07 2019-11-07 Cryptography Research, Inc. Generating a key at a device based on a memory of the device
US10521223B1 (en) 2017-08-22 2019-12-31 Wells Fargo Bank, N.A. Systems and methods of a metadata orchestrator augmenting application development
US20200042723A1 (en) 2018-08-03 2020-02-06 Verizon Patent And Licensing Inc. Identity fraud risk engine platform
US20200050745A1 (en) 2018-08-08 2020-02-13 Lg Electronics Inc. Mobile terminal
US20200053096A1 (en) 2018-08-09 2020-02-13 Cyberark Software Ltd. Adaptive and dynamic access control techniques for securely communicating devices
US20200162435A1 (en) 2017-08-09 2020-05-21 Omron Healthcare Co., Ltd. Data transmitting apparatus, data receiving apparatus, method and program
US20200175157A1 (en) 2018-12-03 2020-06-04 Salesforce.Com, Inc. Security engine for automated operations management
US10810290B2 (en) 2017-03-05 2020-10-20 Ronald H Minter Robust method and an apparatus for authenticating a client in non-face-to-face online interactions based on a combination of live biometrics, biographical data, blockchain transactions and signed digital certificates
US20200358787A1 (en) 2019-05-08 2020-11-12 International Business Machines Corporation Access Control Authentication Scheme Based On Continuous Authentication
US20200403992A1 (en) 2017-02-17 2020-12-24 Equifax, Inc. Universal Digital Identity Authentication Service
US20200403787A1 (en) 2019-06-21 2020-12-24 Verizon Patent And Licensing Inc. Quantum entropy distributed via software defined perimeter connections
US20210014314A1 (en) 2018-03-02 2021-01-14 Panasonic Intellectual Property Management Co., Ltd. Device management system and device management method
US10970607B2 (en) 2018-12-07 2021-04-06 Shanghai Jiao Tong University Secure QR code using nonlinearity of spatial frequency in light
USD916890S1 (en) 2018-12-31 2021-04-20 Andritz Inc. Display panel portion with a computer icon
US11005839B1 (en) 2018-03-11 2021-05-11 Acceptto Corporation System and method to identify abnormalities to continuously measure transaction risk
US11030618B1 (en) 2016-09-30 2021-06-08 Winkk, Inc. Authentication and personal data sharing for partner services using out-of-band optical mark recognition
US11038694B1 (en) * 2016-08-24 2021-06-15 Bruce Kleinman Devices, methods, and systems for cryptographic authentication and provenance of physical assets
USD925602S1 (en) 2017-03-31 2021-07-20 Tencent Technology (Shenzhen) Company Limited Portion of a display having a graphical user interface
US20210250759A1 (en) 2020-02-06 2021-08-12 Wiliot, LTD. System and method for providing secure and reliable communication over a low-energy wireless communication protocol
USD928820S1 (en) 2018-02-13 2021-08-24 Zap Surgical Systems, Inc. Display screen or portion thereof with graphical user interface for a radiation treatment
USD928803S1 (en) 2019-06-12 2021-08-24 Perceptive Automata, Inc. Display panel of a programmed computer system with a graphical user interface
US11121878B2 (en) 2019-10-11 2021-09-14 Accenture Global Solutions Limited Authentication using key distribution through segmented quantum computing environments

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002051126A2 (en) * 2000-12-21 2002-06-27 Eastman Kodak Company Method and system for trusted digital camera
US20020131592A1 (en) * 2001-03-16 2002-09-19 Harris Hinnant Entropy sources for encryption key generation
US20030021416A1 (en) * 2001-07-26 2003-01-30 International Business Machines Corporation Encrypting a messaging session with a symmetric key
GB0202431D0 (en) * 2002-02-02 2002-03-20 F Secure Oyj Method and apparatus for encrypting data
US7426752B2 (en) * 2004-01-05 2008-09-16 International Business Machines Corporation System and method for order-preserving encryption for numeric data
US8467535B2 (en) * 2005-01-18 2013-06-18 Certicom Corp. Accelerated verification of digital signatures and public keys
CA2783822C (en) * 2009-12-11 2018-05-15 Thomas H. Probert Steganographic messaging system using code invariants
RU2010110344A (en) * 2010-03-18 2011-09-27 ЭлЭсАй Корпорейшн (US) CRYPTOGRAPHIC PROCESSING USING A PROCESSOR
US8509426B1 (en) * 2010-12-01 2013-08-13 King Fahd University Of Petroleum And Minerals XZ-elliptic curve cryptography system and method
WO2016059870A1 (en) * 2014-10-14 2016-04-21 ソニー株式会社 Cipher processing apparatus, cipher processing method, and program
EP3116187B1 (en) * 2015-07-09 2019-12-04 Nxp B.V. Methods for facilitating secure communication
US9973334B2 (en) * 2015-09-03 2018-05-15 Cisco Technology, Inc. Homomorphically-created symmetric key
EP3467808B1 (en) * 2016-05-23 2020-04-08 Sony Corporation Encryption device, encryption method, decryption device, and decryption method
US20190287427A1 (en) * 2016-07-21 2019-09-19 Koninklijke Philips N.V. Device and method for performing obfuscated arithmetic
US10958424B1 (en) * 2017-11-02 2021-03-23 Amazon Technologies, Inc. Mechanism to allow third party to use a shared secret between two parties without revealing the secret
US10944566B2 (en) * 2017-11-15 2021-03-09 International Business Machines Corporation Methods and systems for supporting fairness in secure computations
US10454681B1 (en) * 2017-11-17 2019-10-22 ISARA Corporation Multi-use key encapsulation processes

Patent Citations (117)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7885635B2 (en) 1997-12-09 2011-02-08 Openwave Systems Inc. Mobile device for accessing a common database and a computing device
US20020099955A1 (en) 2001-01-23 2002-07-25 Vidius Inc. Method for securing digital content
US9419951B1 (en) 2001-03-23 2016-08-16 St. Luke Technologies, Llc System and method for secure three-party communications
US20030016844A1 (en) 2001-06-27 2003-01-23 Chisato Numaoka Image composition system and method thereof, image generation apparatus and method thereof, storage medium and computer program for image composition
US20110072142A1 (en) 2002-07-18 2011-03-24 Herz Frederick S M Use of proxy servers and pseudonymous transactions to maintain individual's privacy in the competitive business of maintaining personal history databases
US20040223616A1 (en) * 2003-04-07 2004-11-11 Stmicroelectronics S.R.I. Encryption process employing chaotic maps and digital signature process
US20060031301A1 (en) 2003-07-18 2006-02-09 Herz Frederick S M Use of proxy servers and pseudonymous transactions to maintain individual's privacy in the competitive business of maintaining personal history databases
US20090194592A1 (en) 2004-08-09 2009-08-06 Konica Minolta Systems Laboratory, Inc. Color Barcode Producing Method and Apparatus, Color Barcode Reading Method and Apparatus and Color Barcode Reproducing Method and Apparatus
US8417642B2 (en) 2004-09-14 2013-04-09 Cork Group Trading Ltd. Online commercial transaction system and method of operation thereof
US20080301057A1 (en) 2004-09-14 2008-12-04 Waterleaf Limited Online Commercial Transaction System and Method of Operation Thereof
US20060196950A1 (en) 2005-02-16 2006-09-07 Han Kiliccote Method and system for creating and using redundant and high capacity barcodes
US9112835B2 (en) 2006-02-27 2015-08-18 Kabushiki Kaisha Toshiba Transmitter, receiver, and transmitting method
US9959694B2 (en) 2006-04-24 2018-05-01 Jeffrey Dean Lindsay Security systems for protecting an asset
US20120272058A1 (en) 2006-11-28 2012-10-25 Cisco Technology, Inc. Transparent proxy of encrypted sessions
US8639785B2 (en) 2007-02-06 2014-01-28 5O9, Inc. Unsolicited cookie enabled contextual data communications platform
US20090315671A1 (en) 2007-02-28 2009-12-24 Olympus Corporation Image acquisition system and method of authenticating image acquisition device in the image acquisition system
US7992102B1 (en) 2007-08-03 2011-08-02 Incandescent Inc. Graphical user interface with circumferentially displayed search results
US8363259B2 (en) 2008-05-24 2013-01-29 Activiews Ltd. Method for producing printed patches for optical and high-contrast guidance
US9852418B2 (en) 2008-06-06 2017-12-26 Paypal, Inc. Trusted service manager (TSM) architectures and methods
USD607009S1 (en) 2008-06-25 2009-12-29 BeeRaider Limited Display panel with graphical user interface
USD614192S1 (en) 2008-07-22 2010-04-20 Hitachi High-Technologies Corporation Graphical user interface for a computer display
US20100079591A1 (en) 2008-09-10 2010-04-01 Apro Media Co., Ltd Window of infrared surveillance camera
US20110167255A1 (en) * 2008-09-15 2011-07-07 Ben Matzkel System, apparatus and method for encryption and decryption of data transmitted over a network
US8892871B2 (en) 2008-10-06 2014-11-18 Olcorps Co., Ltd System and method for issuing digital certificate using encrypted image
US20110187642A1 (en) 2009-11-25 2011-08-04 Patrick Faith Interaction Terminal
US20110233284A1 (en) 2010-03-28 2011-09-29 Christopher Brett Howard Apparatus and method for securement of two-dimensional bar codes with geometric symbology
US20110302405A1 (en) 2010-06-07 2011-12-08 Marlow William J Mobile workforce applications which are highly secure and trusted for the us government and other industries
US10402800B2 (en) 2010-10-14 2019-09-03 Jpmorgan Chase Bank, N.A. Image authentication and security system and method
US20150347734A1 (en) 2010-11-02 2015-12-03 Homayoon Beigi Access Control Through Multifactor Authentication with Multimodal Biometrics
US20120214442A1 (en) 2011-02-21 2012-08-23 Crawford Carmela R Systems, methods and apparatus for controlling access to mobile devices
US20120221859A1 (en) 2011-02-25 2012-08-30 Vasco Data Security, Inc. Strong authentication token with acoustic data input
US20130086625A1 (en) 2011-09-29 2013-04-04 Oracle International Corporation Enforcing security rules at runtime
US8621209B1 (en) 2011-10-19 2013-12-31 Amazon Technologies, Inc. Confidence-based authentication
US20130111208A1 (en) 2011-10-31 2013-05-02 Jason Allen Sabin Techniques for authentication via a mobile device
US20150294092A1 (en) 2011-12-22 2015-10-15 Abbvie Inc. Application security framework
US20180025135A1 (en) 2012-04-06 2018-01-25 Wayne Odom System, method, and device for delivering communications and storing and delivering data
US20140039892A1 (en) 2012-08-02 2014-02-06 Microsoft Corporation Using the ability to speak as a human interactive proof
US20140040628A1 (en) 2012-08-03 2014-02-06 Vasco Data Security, Inc. User-convenient authentication method and apparatus using a mobile authentication application
USD723050S1 (en) 2012-08-06 2015-02-24 Samsung Electronics Co., Ltd. TV receiver displaying GI and GUI
US8543834B1 (en) 2012-09-10 2013-09-24 Google Inc. Voice authentication and command
US20150278805A1 (en) 2012-10-01 2015-10-01 Acuity Systems, Inc. Authentication system
USD719176S1 (en) 2012-12-27 2014-12-09 Jason M. Cohen Display screen or portion thereof with graphical user interface
USD719177S1 (en) 2012-12-27 2014-12-09 Jason M. Cohen Display screen or portion thereof with graphical user interface
US9219732B2 (en) 2012-12-28 2015-12-22 Nok Nok Labs, Inc. System and method for processing random challenges within an authentication framework
US9706406B1 (en) 2013-01-22 2017-07-11 Amazon Technologies, Inc. Security measures for an electronic device
US20140244514A1 (en) 2013-02-26 2014-08-28 Digimarc Corporation Methods and arrangements for smartphone payments and transactions
US20160011224A1 (en) 2013-03-08 2016-01-14 Siemens Healthcare Diagnostics Inc. Surface markings for an optically guided device
US20140278077A1 (en) 2013-03-12 2014-09-18 Tirosh Levin Using multiple sources of location-aid data to determine position information
US20150373007A1 (en) 2013-03-15 2015-12-24 Intel Corporation Continuous Authentication Confidence Module
US20160065570A1 (en) 2013-03-19 2016-03-03 Acuity Systems, Inc. Authentication system
US20150089568A1 (en) 2013-09-26 2015-03-26 Wave Systems Corp. Device identification scoring
US10019561B1 (en) 2013-12-04 2018-07-10 United Services Automobile Association (Usaa) Systems and methods for continuous biometric authentication
US20150242601A1 (en) 2014-02-23 2015-08-27 Qualcomm Incorporated Trust broker authentication method for mobile devices
US20150242605A1 (en) 2014-02-23 2015-08-27 Qualcomm Incorporated Continuous authentication with a mobile device
US20150271679A1 (en) 2014-03-19 2015-09-24 Electronics And Telecommunications Research Institute System and method of verifying integrity of software
US20180135815A1 (en) 2014-05-10 2018-05-17 Vision Quest, Inc. External lighting cases for mobile digital camera devices
US20170063528A1 (en) 2014-05-14 2017-03-02 Samsung Electronics Co., Ltd. Method and apparatus for encrypting data
US20150356289A1 (en) 2014-06-04 2015-12-10 Qualcomm Incorporated Secure Current Movement Indicator
USD765669S1 (en) 2014-06-10 2016-09-06 Microsoft Corporation Display screen with graphical user interface
US9210156B1 (en) 2014-06-16 2015-12-08 Lexisnexis Risk Solutions Inc. Systems and methods for multi-stage identity authentication
US20160057623A1 (en) 2014-08-19 2016-02-25 Zighra Inc. System And Method For Implicit Authentication
US20160110528A1 (en) 2014-10-15 2016-04-21 Qualcomm Incorporated Methods and Systems for Using Behavioral Analysis Towards Efficient Continuous Authentication
US20160182503A1 (en) 2014-12-18 2016-06-23 Sri International Continuous authentication of mobile device users
US20160180078A1 (en) 2014-12-23 2016-06-23 Jasmeet Chhabra Technologies for enhanced user authentication using advanced sensor monitoring
US20180167816A1 (en) 2015-01-13 2018-06-14 Collateral Opportunities, Llc System and method for preventing unauthorized access to restricted computer systems
US20190268774A1 (en) 2015-01-13 2019-08-29 Collateral Opportunities, Llc Using a wireless transmitter and receiver to prevent unauthorized access to restricted computer systems
US20160227411A1 (en) 2015-02-03 2016-08-04 Qualcomm Incorporated Asset accessibility with continuous authentication for mobile devices
US20160239649A1 (en) 2015-02-13 2016-08-18 Qualcomm Incorporated Continuous authentication
US20160239657A1 (en) 2015-02-13 2016-08-18 Yoti Ltd Digital identity system
US20160283406A1 (en) 2015-03-25 2016-09-29 Vera Securing files
US20180302416A1 (en) 2015-05-01 2018-10-18 Assa Abloy Ab Continuous authentication
WO2016179433A1 (en) 2015-05-05 2016-11-10 Winkk, Inc. Palette-based optical recognition code generators and decoders
CN107924475A (en) 2015-05-05 2018-04-17 温科股份有限公司 Optical identification code generator and decoder based on palette
US20160342873A1 (en) 2015-05-05 2016-11-24 Winkk, Inc. Palette-based optical recognition code generators and decoders
US20180114221A1 (en) 2015-05-25 2018-04-26 Isx Ip Ltd. Secure payment
US20170013453A1 (en) 2015-07-12 2017-01-12 Qualcomm Incorporated Network architecture and security with encrypted client device contexts
US20170041309A1 (en) 2015-08-06 2017-02-09 International Business Machines Corporation Authenticating application legitimacy
US20180285879A1 (en) 2015-10-17 2018-10-04 Banqu, Inc. Blockchain-based identity and transaction platform
US9392460B1 (en) 2016-01-02 2016-07-12 International Business Machines Corporation Continuous user authentication tool for mobile device communications
US20170193211A1 (en) 2016-01-02 2017-07-06 International Business Machines Corporation Continuous user authentication tool for mobile device communications
US20170272419A1 (en) 2016-03-21 2017-09-21 Ca, Inc. Identity authentication migration between different authentication systems
US20170289168A1 (en) 2016-03-31 2017-10-05 Microsoft Technology Licensing, Llc Personalized Inferred Authentication For Virtual Assistance
US10200364B1 (en) 2016-04-01 2019-02-05 Wells Fargo Bank, N.A. Enhanced secure authentication
US20170339118A1 (en) 2016-05-17 2017-11-23 Electronics And Telecommunications Research Institute Method and apparatus for authenticated key exchange using password and identity-based signature
USD813884S1 (en) 2016-06-01 2018-03-27 Innovation 360 Group AB Display screen with graphical user interface
USD800764S1 (en) 2016-06-20 2017-10-24 Caterpillar Inc. Display screen or portion thereof with set of icons
US20180005239A1 (en) 2016-06-29 2018-01-04 Paypal, Inc. Mobile devices enabling customer identity validation via central depository
US20180012003A1 (en) 2016-07-11 2018-01-11 International Business Machines Corporation Pointing device biometrics continuous user authentication
US20180039990A1 (en) 2016-08-05 2018-02-08 Nok Nok Labs, Inc. Authentication techniques including speech and/or lip movement analysis
US11038694B1 (en) * 2016-08-24 2021-06-15 Bruce Kleinman Devices, methods, and systems for cryptographic authentication and provenance of physical assets
US20190281036A1 (en) 2016-09-09 2019-09-12 Trusona, Inc. Systems and methods for distribution of selected authentication information for a network of devices
US9961547B1 (en) 2016-09-30 2018-05-01 EMC IP Holding Company LLC Continuous seamless mobile device authentication using a separate electronic wearable apparatus
US11030618B1 (en) 2016-09-30 2021-06-08 Winkk, Inc. Authentication and personal data sharing for partner services using out-of-band optical mark recognition
USD847857S1 (en) 2016-10-31 2019-05-07 Agile Transformation, Inc. Display screen or portion thereof with icon
US20200403992A1 (en) 2017-02-17 2020-12-24 Equifax, Inc. Universal Digital Identity Authentication Service
US10810290B2 (en) 2017-03-05 2020-10-20 Ronald H Minter Robust method and an apparatus for authenticating a client in non-face-to-face online interactions based on a combination of live biometrics, biographical data, blockchain transactions and signed digital certificates
USD925602S1 (en) 2017-03-31 2021-07-20 Tencent Technology (Shenzhen) Company Limited Portion of a display having a graphical user interface
US20180329857A1 (en) 2017-05-10 2018-11-15 Qualcomm Incorporated Hardware event priority sensitive programmable transmit wait-window for virtual gpio finite state machine
US20200162435A1 (en) 2017-08-09 2020-05-21 Omron Healthcare Co., Ltd. Data transmitting apparatus, data receiving apparatus, method and program
US10521223B1 (en) 2017-08-22 2019-12-31 Wells Fargo Bank, N.A. Systems and methods of a metadata orchestrator augmenting application development
US20190207918A1 (en) 2018-01-02 2019-07-04 Bank Of America Corporation Validation system utilizing dynamic authentication
USD928820S1 (en) 2018-02-13 2021-08-24 Zap Surgical Systems, Inc. Display screen or portion thereof with graphical user interface for a radiation treatment
US20210014314A1 (en) 2018-03-02 2021-01-14 Panasonic Intellectual Property Management Co., Ltd. Device management system and device management method
US11005839B1 (en) 2018-03-11 2021-05-11 Acceptto Corporation System and method to identify abnormalities to continuously measure transaction risk
US20190342092A1 (en) * 2018-05-07 2019-11-07 Cryptography Research, Inc. Generating a key at a device based on a memory of the device
US20200042723A1 (en) 2018-08-03 2020-02-06 Verizon Patent And Licensing Inc. Identity fraud risk engine platform
US20200050745A1 (en) 2018-08-08 2020-02-13 Lg Electronics Inc. Mobile terminal
US20200053096A1 (en) 2018-08-09 2020-02-13 Cyberark Software Ltd. Adaptive and dynamic access control techniques for securely communicating devices
US20200175157A1 (en) 2018-12-03 2020-06-04 Salesforce.Com, Inc. Security engine for automated operations management
US20190281025A1 (en) 2018-12-07 2019-09-12 Intel Corporation Securing platform link with encryption
US10970607B2 (en) 2018-12-07 2021-04-06 Shanghai Jiao Tong University Secure QR code using nonlinearity of spatial frequency in light
USD916890S1 (en) 2018-12-31 2021-04-20 Andritz Inc. Display panel portion with a computer icon
US20200358787A1 (en) 2019-05-08 2020-11-12 International Business Machines Corporation Access Control Authentication Scheme Based On Continuous Authentication
USD928803S1 (en) 2019-06-12 2021-08-24 Perceptive Automata, Inc. Display panel of a programmed computer system with a graphical user interface
US20200403787A1 (en) 2019-06-21 2020-12-24 Verizon Patent And Licensing Inc. Quantum entropy distributed via software defined perimeter connections
US11121878B2 (en) 2019-10-11 2021-09-14 Accenture Global Solutions Limited Authentication using key distribution through segmented quantum computing environments
US20210250759A1 (en) 2020-02-06 2021-08-12 Wiliot, LTD. System and method for providing secure and reliable communication over a low-energy wireless communication protocol

Non-Patent Citations (10)

* Cited by examiner, † Cited by third party
Title
Bywater Films. "Winkk: Emotion to Action." Vimeo, published Oct. 7, 2015 (Retrieved from the Internet Mar. 22, 2021). Internet URL: <https://vimeo.com/141695923> (Year:2015).
Erdem Alkim et al., "Post-Quantum key exchange—a new hope", International Association For Cryptologic Research, vol. 20161116:063839, Nov. 16, 2016, pp. 1-22.
International Report on Patentability from International Application No. PCT/US2020/064099, dated Jun. 23, 2022, 7 pages.
International Search Report and Written Report for the International Application No. PCT/US2020/064099 dated Mar. 16, 2021.
International Search Report dated Aug. 11, 2016, for PCT Application No. PCT/US2016/031055, filed May 5, 2016, five pages.
International Search Report dated Oct. 9, 2019, for PCT Application No. PCT/US2019/041871, filed Jul. 15, 2019 four pages.
Joppe W. Bos et al., "Post-quantum key exchange for the TLS protocol from the ring learning with errors problem", International Association for Cryptologic Research, vol. 20150316:235249, Mar. 17, 2015, pp. 1-28.
Li et al., "Addressable Metasurfaces for Dynamic Holography and Optical Information Encryption", Jun. 15, 2018, http://advances.sciencemag.org/content/advances/4/6/eaar6768.full.pdf.
Magoon, Owais, "iOS app." Behance, published Sep. 7, 2015 (Retrieved from the Internet Mar. 22, 2021). Internet URL: <https://www.behance.net/gallery/27383661/iOS-app> (Year: 2015).
Schiff, Eli, "Unofficial Apple Icon Design Awards." Eli Schiff Blog, published Jan. 5, 2016 (Retrieved from the Internet Mar. 22, 2021), Internet URL: <www.elischiff.com/blog/2016/1/5/apple-icon-design-awards> (Year: 2016).

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11902777B2 (en) 2019-12-10 2024-02-13 Winkk, Inc. Method and apparatus for encryption key exchange with enhanced security through opti-encryption channel
US11928193B2 (en) 2019-12-10 2024-03-12 Winkk, Inc. Multi-factor authentication using behavior and machine learning
US11928194B2 (en) 2019-12-10 2024-03-12 Wiinkk, Inc. Automated transparent login without saved credentials or passwords
US11934514B2 (en) 2019-12-10 2024-03-19 Winkk, Inc. Automated ID proofing using a random multitude of real-time behavioral biometric samplings
US11936787B2 (en) 2019-12-10 2024-03-19 Winkk, Inc. User identification proofing using a combination of user responses to system turing tests using biometric methods
US12010511B2 (en) 2022-12-09 2024-06-11 Winkk, Inc. Method and apparatus for encryption key exchange with enhanced security through opti-encryption channel

Also Published As

Publication number Publication date
US20210028929A1 (en) 2021-01-28
WO2020018454A1 (en) 2020-01-23
US20230254121A1 (en) 2023-08-10
US20230254120A1 (en) 2023-08-10
US20230254122A1 (en) 2023-08-10

Similar Documents

Publication Publication Date Title
US11637694B2 (en) Secret material exchange and authentication cryptography operations
US8688973B2 (en) Securing communications sent by a first user to a second user
US8171289B2 (en) Method and apparatus to provide authentication and privacy with low complexity devices
EP3583739B1 (en) Key exchange devices and method
JP4216475B2 (en) Cryptographic indexed key update method and device having leakage resistance
US10944566B2 (en) Methods and systems for supporting fairness in secure computations
US20220094545A1 (en) Low power encryption in motion
US9648026B2 (en) Cryptographic method for securely exchanging messages and device and system for implementing this method
JPWO2005041474A1 (en) Authentication system and remote distributed storage system
CA2639649A1 (en) Cryptography method and system
Lamrani Alaoui et al. A highly efficient ECC-based authentication protocol for RFID
CN113158143A (en) Key management method and device based on block chain digital copyright protection system
Ali et al. RFID authentication scheme based on hyperelliptic curve signcryption
CN105339995B (en) Decrypt device, decryption capabilities provide device, its method and recording medium
CN110098925B (en) Quantum communication service station key negotiation method and system based on asymmetric key pool pair and random number
CN117708887B (en) Longitudinal logistic regression-based federal learning model acquisition method and system
Wang Public key cryptography standards: PKCS
Edelev et al. A secure minimalist RFID authentication and an ownership transfer protocol compliant to EPC C1G2
Malina et al. Assessment of cryptography support and security on programmable smart cards
Al-Adhami et al. A 256 bit implementation of ECC-RFID based system using Shamir secret sharing scheme and Keccak hash function
CN110086627B (en) Quantum communication service station key negotiation method and system based on asymmetric key pool pair and time stamp
Hanzlik et al. Mutual chip authentication
Seo et al. Fuzzy vector signature and its application to privacy-preserving authentication
Jain Enhancing security in Tokenization using NGE for storage as a service
Abduljabbar et al. Towards efficient authentication scheme with biometric key management in cloud environment

Legal Events

Date Code Title Description
AS Assignment

Owner name: WINKK, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ISLAMOV, RUSTAM;REEL/FRAME:053864/0698

Effective date: 20200922

FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY

FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO SMALL (ORIGINAL EVENT CODE: SMAL); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY

STPP Information on status: patent application and granting procedure in general

Free format text: APPLICATION DISPATCHED FROM PREEXAM, NOT YET DOCKETED

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

STPP Information on status: patent application and granting procedure in general

Free format text: AWAITING TC RESP., ISSUE FEE NOT PAID

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

STCF Information on status: patent grant

Free format text: PATENTED CASE