×

Efficient proof of knowledge of arbitrarily large data which remains unexposed

  • US 10,594,480 B2
  • Filed: 02/12/2018
  • Issued: 03/17/2020
  • Est. Priority Date: 05/13/2016
  • Status: Active Grant
First Claim
Patent Images

1. A method for a party regarded as a Prover sharing with another party regarded as a Verifier a secret S in a form of a bit string which is t bits long, to prove to the Verifier that the Prover is in possession of S by(i) the Prover applying a shared string-parceling algorithm, PARCEL, which will parcel string S to n≤

  • t sub strings s1, s2, . . . sn such that these n substrings concatenate to S;

    S=s1

    s2

    . . . ∥

    sn, then(ii) the Prover applying a source of randomness to transpose the n substrings into a different permutation, where si is placed in position j, and marked sij, for i,j=1,2, . . . n, then(iii) the Prover reassembling the n substrings according to the selected permutation, to create string S* comprised oft bits;

    S*=si1

    sk2

    . . . ∥

    sln, where i,k,l are integers from the set 1,2, . . . n, then(iv) the Prover communicating S* to the Verifier;

    (v) the Verifier applies PARCEL to S and generates the same n substrings s1, s2, . . . sn, then(vi) the Verifier performs, a re-arranging permutation, PUZZLE test, checking that these n substrings, (s1, s2, . . . sn) can be re-arranged in a different permutation such that when these strings are concatenated according to the new permutation, they form string S*;

    the test is regarded ‘

    successful’

    if such a permutation is found, and is regarded ‘

    failure’

    if no such permutation is found;

    then(vii) if the PUZZLE test is successful, the Verifier accepts the Prover, as the party which shares the possession of secret S, and when the PUZZLE test fails the Verifier rejects the Prover as possessing S.

View all claims
  • 0 Assignments
Timeline View
Assignment View
    ×
    ×