US20080091951A1 - Comparison of documents possessed by two parties - Google Patents
Comparison of documents possessed by two parties Download PDFInfo
- Publication number
- US20080091951A1 US20080091951A1 US11/949,117 US94911707A US2008091951A1 US 20080091951 A1 US20080091951 A1 US 20080091951A1 US 94911707 A US94911707 A US 94911707A US 2008091951 A1 US2008091951 A1 US 2008091951A1
- Authority
- US
- United States
- Prior art keywords
- party
- document
- random data
- value
- hash function
- 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.)
- Abandoned
Links
- 238000000034 method Methods 0.000 claims abstract description 13
- 238000004590 computer program Methods 0.000 claims description 2
- 238000012790 confirmation Methods 0.000 claims 2
- 230000009471 action Effects 0.000 description 3
- 206010000210 abortion Diseases 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3218—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
Definitions
- the invention relates to the field of cryptography and more particularly to zero-knowledge methods for comparing documents between two parties.
- a zero-knowledge protocol is a protocol between two parties in which one party (the prover), tries to prove a fact to the other party (the verifier).
- the fact is typically secret information such as a password or, in cryptographic applications, the private key of a public key encryption algorithm.
- the prover can convince the verifier that he is in possession of the secret without revealing the secret itself.
- zero-knowledge protocols are cryptographic protocols in which: 1) the verifier cannot learn anything from the protocol—no knowledge is transferred; 2) the prover cannot cheat the verifier and vice versa; and 3) the verifier cannot pretend to be the prover to any third party.
- the Fiat-Shamir protocol was the first practical zero-knowledge cryptographic protocol.
- Hash functions are commonly used in cryptography.
- a one-way hash function is a function that takes a variable-length input string and converts it into a fixed-length output string.
- An example of such a hash function is the SHA-1 function. It is impossible to determine the input string from the hashed string.
- a and B are two distrustful parties, it may be necessary for the parties to learn whether two documents which are possessed by the respective parties are the same or substantially the same. For example, B may claim to have a copy of A's secret document and A's course of action may hinge on whether B's claim is true. Neither party however can disclose their respective document to the other in order to verify B's claim without destroying their secrecy. While the use of zero-knowledge protocols is known for exchanging secret keys it has not been used for comparing documents.
- the present invention therefore provides a method of securely comparing a first document in possession of a first party and a second document in possession of a second party, without revealing the contents of the first document to the second party or the contents of the second document to the first party, said method comprising the steps of:
- the invention further provides a computer program product and an article for carrying out the method.
- FIG. 1 is a schematic illustration of a computer network according to the present invention.
- FIG. 2 is a flow chart illustrating the method of the invention.
- a communications link such as a computer network
- 10 a communications link
- Parties A and B who distrust each other, communicate between their respective computers 12 and 14 , which have central processors and are capable of generating random numbers, and comparing numbers.
- A possesses a document containing information, in electronic form or otherwise, referred to as document 1 .
- B possesses a document containing information, in electronic form or otherwise, referred to as document 2 .
- Parties A and/or B would like to take some further action only if one or the other or both can be assured that they both have the same document. They may not care to know each other's identity.
- A sends B a collection of random bits, Ra, preferably incorporating a timestamp.
- B sends A a collection of random bits, Rb, preferably incorporating a timestamp.
- A compares Ra to Rb and aborts the comparison if they are the same, since the comparison will only work if the random numbers generated by A and B are different.
- B compares Rb to Ra and aborts the comparison if they are the same. They will then restart and generate fresh random numbers if they wish to continue.
- a and B have exchanged non-identical random strings Ra and Rb, and have agreed on one-way hash functions H 1 , H 2 , A computes first ValueA by concatenating document 1 with Ra and Rb, in that order, to form a string document 1 +Ra+Rb, in that order and then applying to that string a one-way hash function H 1 .
- Any suitable cryptographic one-way hash function such as the SHA-1 function, may be used.
- A then computes second ValueA by concatenating document 1 +Rb+Ra, in that order, and applying to it one-way hash function H 2 .
- B computes first ValueB by concatenating document 2 with Rb and Ra, in that order, to form a string document 2 +Rb+Ra, in that order, and then applying to that string one-way hash function H 2 .
- B then computes second ValueB by concatenating document 2 with Ra and Rb, in that order, to form a string document 2 +Ra+Rb, in that order, and then applying to that string a one-way hash function H 1 .
- Hash functions H 1 and H 2 may be the same.
- A will transmit the encrypted string first ValueA first to B, although the method will work regardless of which party sends the encrypted string to the other first.
- A sends B a message indicating that it has computed first ValueA and second ValueA, and either before, after, or at the same time as A sends that message, B sends A a message indicating that it has computed first ValueB and second ValueB.
- A then sends B first ValueA.
- B sends A first ValueB immediately upon receipt of A's first ValueA. If A does not receive B's first ValueB within a few milliseconds (in the absence of some other explanation such as a communication breakdown), A knows B did not have the same document and is trying to gain an advantage over A.
- a receives B's first ValueB in a timely way A compares the received first ValueB with its own second ValueA. B also compares the received first ValueA with its own second ValueB. If the comparisons fail, then A and B know they statistically have different documents, and if the comparison does not fail, then statistically they have the same document. With that knowledge they may then proceed with their intended actions, or not.
- Such comparisons may allow for a certain statistical dissimilarity in the strings or range of equivalence.
- a strict application of a hash function such as SHA-1 to a bit stream, such as a document will produce a value that is statistically impossible to produce by supplying a second different meaningful bit stream.
- a strict application of the hash function does not allow for variance resulting from transmission errors or conversion between formats. Such variances would typically result in different hash codes.
- a document may be normalized before being passed to a hash function, or a hash function could be constructed that handles the normalization internally as part of the implementation. In this way inconsequential differences in the documents such as case type and spacing can be ignored.
- the parties could agree that whitespace (such as spaces, tabs and carriage returns) and character case are insignificant.
- the document could then be converted to a normalized form where there is no whitespace and all the characters are lowercase.
- the other approach would be to make the hash function ignore whitespace and change characters to lowercase before injection into the rest of the algorithm.
- a and/or B cannot prove anything to a third party without revealing documents.
- a and B do not exchange the actual documents or hashed documents.
- a or B cannot fool another party C into thinking it has the document by mirroring, resending or replaying the hash received from the other party to the third party.
- B cannot assert computational delay as they have previously asserted a pre-computation.
- the present invention is described above as a computer-implemented method. It may also be embodied as a computer hardware apparatus, computer software code or a combination of same.
- the invention may also be embodied as a computer-readable storage medium embodying code for implementing the invention. Such storage medium may be magnetic or optical, hard or floppy disk, CD-ROM, firmware or other storage media.
- the invention may also be embodied on a computer readable modulated carrier signal.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
A method of zero-knowledge document comparison between two parties. Each party performs: exchanging a set of random data and a shared hash function, applying the hash function to concatenations of the document and the sets of random data, and comparing the hashes.
Description
- This application is a continuation application claiming priority to Ser. No. 10/621,731, filed Jul. 17, 2003.
- The invention relates to the field of cryptography and more particularly to zero-knowledge methods for comparing documents between two parties.
- A zero-knowledge protocol, as in other types of interactive proofs, is a protocol between two parties in which one party (the prover), tries to prove a fact to the other party (the verifier). The fact is typically secret information such as a password or, in cryptographic applications, the private key of a public key encryption algorithm. In zero-knowledge protocols, the prover can convince the verifier that he is in possession of the secret without revealing the secret itself. In particular, zero-knowledge protocols are cryptographic protocols in which: 1) the verifier cannot learn anything from the protocol—no knowledge is transferred; 2) the prover cannot cheat the verifier and vice versa; and 3) the verifier cannot pretend to be the prover to any third party. Thus in a zero-knowledge protocol the fact or secret itself, or any other useful information, is not revealed to the other party during the protocol, nor to any eavesdropper. The Fiat-Shamir protocol was the first practical zero-knowledge cryptographic protocol.
- Hash functions are commonly used in cryptography. A one-way hash function is a function that takes a variable-length input string and converts it into a fixed-length output string. An example of such a hash function is the SHA-1 function. It is impossible to determine the input string from the hashed string.
- In some situations where A and B are two distrustful parties, it may be necessary for the parties to learn whether two documents which are possessed by the respective parties are the same or substantially the same. For example, B may claim to have a copy of A's secret document and A's course of action may hinge on whether B's claim is true. Neither party however can disclose their respective document to the other in order to verify B's claim without destroying their secrecy. While the use of zero-knowledge protocols is known for exchanging secret keys it has not been used for comparing documents.
- There is a need therefore a strong zero-knowledge document comparison method between mutually distrustful parties.
- The present invention therefore provides a method of securely comparing a first document in possession of a first party and a second document in possession of a second party, without revealing the contents of the first document to the second party or the contents of the second document to the first party, said method comprising the steps of:
-
- i) said first and second parties each generating its own set of random data;
- ii) each party exchanging the set of random data and a shared hash function with the other party;
- iii) each party computing a first value consisting of the output of the shared hash function where the input to the hash function is the consecutive concatenation of the document in each party's possession, followed by that party's set of random data, followed by the other party's set of random data;
- iv) each party computing a second value consisting of the output of the shared hash function where the input to the hash function is the consecutive concatenation of the document in each party's possession, followed by the other party's set of random data, followed by that party's set of random data;
- v) each party sending its first value to the other party and receiving the other party's first value; and
- vi) each party comparing the other party's first value to its second value;
- vii) each party concluding that if the values are the same, then the two documents are the same, but that otherwise the two documents are different.
- The invention further provides a computer program product and an article for carrying out the method.
- In drawings which disclose a preferred embodiment of the invention:
-
FIG. 1 is a schematic illustration of a computer network according to the present invention; and -
FIG. 2 is a flow chart illustrating the method of the invention. - With reference to
FIG. 1 , a communications link, such as a computer network, is designated generally as 10. Parties A and B, who distrust each other, communicate between their 12 and 14, which have central processors and are capable of generating random numbers, and comparing numbers. A possesses a document containing information, in electronic form or otherwise, referred to asrespective computers document 1. B possesses a document containing information, in electronic form or otherwise, referred to asdocument 2. Parties A and/or B, would like to take some further action only if one or the other or both can be assured that they both have the same document. They may not care to know each other's identity. - If the respective documents,
document 1 anddocument 2, are not already in the form of a bit string, they are scanned or otherwise converted to that format. Next, A sends B a collection of random bits, Ra, preferably incorporating a timestamp. B sends A a collection of random bits, Rb, preferably incorporating a timestamp. A compares Ra to Rb and aborts the comparison if they are the same, since the comparison will only work if the random numbers generated by A and B are different. Similarly B compares Rb to Ra and aborts the comparison if they are the same. They will then restart and generate fresh random numbers if they wish to continue. - Once A and B have exchanged non-identical random strings Ra and Rb, and have agreed on one-way hash functions H1, H2, A computes first ValueA by
concatenating document 1 with Ra and Rb, in that order, to form astring document 1+Ra+Rb, in that order and then applying to that string a one-way hash function H1. Any suitable cryptographic one-way hash function, such as the SHA-1 function, may be used. A then computes second ValueA by concatenatingdocument 1+Rb+Ra, in that order, and applying to it one-way hash function H2. Similarly B computes first ValueB by concatenatingdocument 2 with Rb and Ra, in that order, to form astring document 2+Rb+Ra, in that order, and then applying to that string one-way hash function H2. B then computes second ValueB by concatenatingdocument 2 with Ra and Rb, in that order, to form astring document 2+Ra+Rb, in that order, and then applying to that string a one-way hash function H1. Hash functions H1 and H2 may be the same. - It has been agreed upon beforehand that A will transmit the encrypted string first ValueA first to B, although the method will work regardless of which party sends the encrypted string to the other first. Upon completion of the foregoing steps, A sends B a message indicating that it has computed first ValueA and second ValueA, and either before, after, or at the same time as A sends that message, B sends A a message indicating that it has computed first ValueB and second ValueB. A then sends B first ValueA. B sends A first ValueB immediately upon receipt of A's first ValueA. If A does not receive B's first ValueB within a few milliseconds (in the absence of some other explanation such as a communication breakdown), A knows B did not have the same document and is trying to gain an advantage over A.
- If A receives B's first ValueB in a timely way, A compares the received first ValueB with its own second ValueA. B also compares the received first ValueA with its own second ValueB. If the comparisons fail, then A and B know they statistically have different documents, and if the comparison does not fail, then statistically they have the same document. With that knowledge they may then proceed with their intended actions, or not.
- Such comparisons may allow for a certain statistical dissimilarity in the strings or range of equivalence. A strict application of a hash function such as SHA-1 to a bit stream, such as a document, will produce a value that is statistically impossible to produce by supplying a second different meaningful bit stream. A strict application of the hash function does not allow for variance resulting from transmission errors or conversion between formats. Such variances would typically result in different hash codes. However, it is possible to describe a process where minor variation in the source can be handled. A document may be normalized before being passed to a hash function, or a hash function could be constructed that handles the normalization internally as part of the implementation. In this way inconsequential differences in the documents such as case type and spacing can be ignored.
- For example, the parties could agree that whitespace (such as spaces, tabs and carriage returns) and character case are insignificant. The document could then be converted to a normalized form where there is no whitespace and all the characters are lowercase. The other approach would be to make the hash function ignore whitespace and change characters to lowercase before injection into the rest of the algorithm.
- Thus it will be seen that according to this method, A and/or B cannot prove anything to a third party without revealing documents. A and B do not exchange the actual documents or hashed documents. Further, A or B cannot fool another party C into thinking it has the document by mirroring, resending or replaying the hash received from the other party to the third party. B cannot assert computational delay as they have previously asserted a pre-computation.
- The present invention is described above as a computer-implemented method. It may also be embodied as a computer hardware apparatus, computer software code or a combination of same. The invention may also be embodied as a computer-readable storage medium embodying code for implementing the invention. Such storage medium may be magnetic or optical, hard or floppy disk, CD-ROM, firmware or other storage media. The invention may also be embodied on a computer readable modulated carrier signal.
- As will be apparent to those skilled in the art in the light of the foregoing disclosure, many alterations and modifications are possible in the practice of this invention without departing from the spirit or scope thereof. Accordingly, the scope of the invention is to be construed in accordance with the substance defined by the following claims.
- The embodiments of the invention in which an exclusive property or privilege is claimed are defined as follows:
Claims (1)
1. A computer program product comprising a computer usable storage medium having computer readable program code means embodied in said medium, said program code configured to perform a method of securely comparing a first document in possession of a first party and a second document in possession of a second party, without revealing the contents of the first document to the second party or the contents of the second document to the first party, said method comprising the steps of:
i) said first and second parties each generating its own set of random data;
ii) each party exchanging said set of random data and a shared hash function with the other party;
iii) each party computing a first value consisting of the output of said shared hash function where the input to the hash function is the consecutive concatenation of the document in each said party's possession, followed by that party's set of random data, followed by the other party's set of random data;
iv) each party computing a second value consisting of the output of said shared hash function where the input to the hash function is the consecutive concatenation of the document in each said party's possession, followed by the other party's set of random data, followed by that party's set of random data;
v) each party sending its first value to the other party and receiving the other party's first value;
vi) each party comparing said other party's first value to its second value;
vii) each party concluding that if the said values are the same, then the two documents are the same, but that otherwise said two documents are different;
viii) after computing said first and second values according to steps iii) and iv) above, each said first and second parties sending confirmation to the other party that each said party's first and second values have been computed, and waiting for said confirmation from said other party that each said party's first and second values have been computed before proceeding;
ix) after one party has sent its first value to the other party according to step v) above, aborting the comparison if the other party does not respond with its first value within a pre-determined length of time;
x) after step i) and before step ii), each party examining the other party's set of random data for suitability and aborting the comparison if suitability is not established, wherein said other party's random data is determined to be unsuitable if it is identical to said examining party's set of random data.
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US11/949,117 US20080091951A1 (en) | 2002-12-06 | 2007-12-03 | Comparison of documents possessed by two parties |
| US12/015,536 US8032747B2 (en) | 2002-12-06 | 2008-01-17 | Comparison of documents possessed by two parties |
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CA2,413,690 | 2002-12-06 | ||
| CA002413690A CA2413690A1 (en) | 2002-12-06 | 2002-12-06 | Zero knowledge document comparison between mutually distrustful parties |
| US10/621,731 US7337319B2 (en) | 2002-12-06 | 2003-07-17 | Method of comparing documents possessed by two parties |
| US11/949,117 US20080091951A1 (en) | 2002-12-06 | 2007-12-03 | Comparison of documents possessed by two parties |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US10/621,731 Continuation US7337319B2 (en) | 2002-12-06 | 2003-07-17 | Method of comparing documents possessed by two parties |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US12/015,536 Continuation US8032747B2 (en) | 2002-12-06 | 2008-01-17 | Comparison of documents possessed by two parties |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| US20080091951A1 true US20080091951A1 (en) | 2008-04-17 |
Family
ID=32399912
Family Applications (3)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US10/621,731 Expired - Lifetime US7337319B2 (en) | 2002-12-06 | 2003-07-17 | Method of comparing documents possessed by two parties |
| US11/949,117 Abandoned US20080091951A1 (en) | 2002-12-06 | 2007-12-03 | Comparison of documents possessed by two parties |
| US12/015,536 Expired - Fee Related US8032747B2 (en) | 2002-12-06 | 2008-01-17 | Comparison of documents possessed by two parties |
Family Applications Before (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US10/621,731 Expired - Lifetime US7337319B2 (en) | 2002-12-06 | 2003-07-17 | Method of comparing documents possessed by two parties |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US12/015,536 Expired - Fee Related US8032747B2 (en) | 2002-12-06 | 2008-01-17 | Comparison of documents possessed by two parties |
Country Status (2)
| Country | Link |
|---|---|
| US (3) | US7337319B2 (en) |
| CA (1) | CA2413690A1 (en) |
Families Citing this family (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB2419000A (en) * | 2004-10-06 | 2006-04-12 | Hewlett Packard Development Co | Proving relationships between data |
| US7596700B2 (en) * | 2004-12-22 | 2009-09-29 | Storage Technology Corporation | Method and system for establishing trusting environment for sharing data between mutually mistrusting entities |
| US8607335B1 (en) * | 2006-12-09 | 2013-12-10 | Gary Gang Liu | Internet file safety information center |
| US20080235176A1 (en) * | 2007-03-22 | 2008-09-25 | Microsoft Corporation | Data comparator |
| US8661082B2 (en) * | 2008-06-20 | 2014-02-25 | Microsoft Corporation | Extracting previous messages from a later message |
| US8942373B2 (en) * | 2010-11-29 | 2015-01-27 | Beijing Z & W Technology Consulting Co., Ltd. | Data encryption and decryption method and apparatus |
| CN101984574B (en) * | 2010-11-29 | 2012-09-05 | 北京卓微天成科技咨询有限公司 | Data encryption and decryption method and device |
| US9171163B2 (en) | 2013-03-15 | 2015-10-27 | Intel Corporation | Mutually assured data sharing between distrusting parties in a network environment |
| US9166964B2 (en) * | 2014-01-08 | 2015-10-20 | Google Inc. | Secure challenge system for verifying access rights to media content |
| US10104048B2 (en) | 2015-07-17 | 2018-10-16 | Robert Bosch Gmbh | Method and system for secure key generation over an insecure shared communication medium |
| US10839096B2 (en) | 2016-03-28 | 2020-11-17 | International Business Machines Corporation | Cryptographically provable zero-knowledge content distribution network |
| US10432400B2 (en) | 2016-10-25 | 2019-10-01 | Southern Methodist University | Method and system for privacy preserving disclosure of a shared, identity linked secret |
| GB2578408B (en) | 2017-08-29 | 2022-04-20 | Bosch Gmbh Robert | Methods and systems for linear key agreement with forward secrecy using an insecure shared communication medium |
| US20250225054A1 (en) * | 2024-01-05 | 2025-07-10 | INVISV, Inc. | Systems and methods for securely identifying deficiencies in software code |
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5651069A (en) * | 1994-12-08 | 1997-07-22 | International Business Machines Corporation | Software-efficient message authentication |
| US5790669A (en) * | 1996-07-01 | 1998-08-04 | Sun Microsystems, Inc. | Lightweight non-repudiation system and method |
| US6167521A (en) * | 1997-08-29 | 2000-12-26 | International Business Machines Corporation | Securely downloading and executing code from mutually suspicious authorities |
| US6681017B1 (en) * | 1997-09-03 | 2004-01-20 | Lucent Technologies Inc. | Simplified secure shared key establishment and data delivery protocols for electronic commerce |
| JPH11234263A (en) | 1998-02-12 | 1999-08-27 | Fuji Xerox Co Ltd | Method and device for mutual authentication |
| JPH11234259A (en) | 1998-02-13 | 1999-08-27 | Hitachi Ltd | Opponent authentication and key distribution method, device using the same, and encryption communication method and encryption communication system |
| US20020049601A1 (en) * | 1998-10-28 | 2002-04-25 | Nadarajah Asokan | Optimistic fair exchange protocols |
| GB9903124D0 (en) | 1999-02-11 | 1999-04-07 | Nokia Telecommunications Oy | An authentication method |
| US6389537B1 (en) | 1999-04-23 | 2002-05-14 | Intel Corporation | Platform and method for assuring integrity of trusted agent communications |
| KR100430147B1 (en) * | 2000-03-15 | 2004-05-03 | 인터내셔널 비지네스 머신즈 코포레이션 | Access Control for Computers |
| JP2001308851A (en) * | 2000-03-31 | 2001-11-02 | Internatl Business Mach Corp <Ibm> | User authenticating method, storage medium, device and system |
| US20030093680A1 (en) * | 2001-11-13 | 2003-05-15 | International Business Machines Corporation | Methods, apparatus and computer programs performing a mutual challenge-response authentication protocol using operating system capabilities |
-
2002
- 2002-12-06 CA CA002413690A patent/CA2413690A1/en not_active Abandoned
-
2003
- 2003-07-17 US US10/621,731 patent/US7337319B2/en not_active Expired - Lifetime
-
2007
- 2007-12-03 US US11/949,117 patent/US20080091951A1/en not_active Abandoned
-
2008
- 2008-01-17 US US12/015,536 patent/US8032747B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| US8032747B2 (en) | 2011-10-04 |
| US7337319B2 (en) | 2008-02-26 |
| US20080141030A1 (en) | 2008-06-12 |
| CA2413690A1 (en) | 2004-06-06 |
| US20040111617A1 (en) | 2004-06-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8032747B2 (en) | Comparison of documents possessed by two parties | |
| Di Crescenzo et al. | Efficient and non-interactive non-malleable commitment | |
| Canetti | Towards realizing random oracles: Hash functions that hide all partial information | |
| Katz et al. | Introduction to modern cryptography: principles and protocols | |
| Abdalla et al. | Simple password-based encrypted key exchange protocols | |
| US6578144B1 (en) | Secure hash-and-sign signatures | |
| Canetti et al. | On the random-oracle methodology as applied to length-restricted signature schemes | |
| Aumann et al. | Authentication, enhanced security and error correcting codes | |
| Black | The ideal-cipher model, revisited: An uninstantiable blockcipher-based hash function | |
| Katz et al. | Characterization of security notions for probabilistic private-key encryption | |
| US9882890B2 (en) | Reissue of cryptographic credentials | |
| Abdalla et al. | A scalable password-based group key exchange protocol in the standard model | |
| CN102263639A (en) | Authentication device, authentication method, program, and signature generation device | |
| US20020136401A1 (en) | Digital signature and authentication method and apparatus | |
| CN107592203A (en) | A kind of aggregate signature method and its system based on lattice | |
| US7894608B2 (en) | Secure approach to send data from one system to another | |
| CN103444128A (en) | Key PV signature | |
| CN115378611B (en) | Quantum security digital signature verification method and system | |
| Menezes et al. | Security arguments for the UM key agreement protocol in the NIST SP 800-56A standard | |
| Eslami et al. | Provably Secure Group Key Exchange Protocol in the Presence of Dishonest Insiders. | |
| US7831998B2 (en) | Changing states of communication links in computer networks in an authenticated manner | |
| CN114697029B (en) | Methods for exchanging secret keys in an untrusted communication environment | |
| US7551737B2 (en) | Cryptographic keys using random numbers instead of random primes | |
| CN114697028B (en) | A method for exchanging secret keys over an insecure channel | |
| Tang et al. | Delegateable signatures based on non-interactive witness indistinguishable and non-interactive witness hiding proofs |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO PAY ISSUE FEE |