proof of work certificates for high complexity
play

Proof-of-work Certificates for High Complexity Computations for - PowerPoint PPT Presentation

Proof-of-work Certificates for High Complexity Computations for Linear Algebra Erich L. Kaltofen NCSU , DUKE UNIVERSITY google->kaltofen 2 Computations for the Cloud: RSA Challenge RSA220 =


  1. Proof-of-work Certificates for High Complexity Computations for Linear Algebra Erich L. Kaltofen NCSU , DUKE UNIVERSITY google->kaltofen

  2. 2 Computations for the Cloud: RSA Challenge RSA220 = 22601385262034057849416540486101975135080389157197767183211 97768109445641817966676608593121306582577250631562886676970 44807000181114971186300211248792819948748206607013106658664 6083327982803560379205391980139946496955261 = 68636564122675662743823714992884378001308422399791648446212 449933215410614414642667938213644208420192054999687 × 329290743948634981204930154921293529191645519653623395246 2860511692903493094652463337824866390738191765712603 S. Bai, P. Gaudry, A. Kruppa, E. Thom´ e, P. Zimmermann [May 2014–May 2016] Verification on any tablet computer in under one second

  3. 3 Computations for the Cloud: Sparse Matrix GL7d19 Rank From K-Theory Conjectures [Elbaz-Vincent, Gangle, Soul´ e ’05] 1 , 911 , 130 × 1 , 955 , 309 matrix of rank 1 , 033 , 568 Computed by J.-G. Dumas et al. 2007 with LinBox in 1050 CPU days With Monte-Carlo randomized algorithm ... Do you believe the rank?

  4. 3 Computations for the Cloud: Sparse Matrix GL7d19 Rank From K-Theory Conjectures [Elbaz-Vincent, Gangle, Soul´ e ’05] 1 , 911 , 130 × 1 , 955 , 309 matrix of rank 1 , 033 , 568 Computed by J.-G. Dumas et al. 2007 with LinBox in 1050 CPU days With Monte-Carlo randomized algorithm ... Do you believe the rank? [Dumas-Kaltofen ISSAC 2014] construct a linear-time checkable interactive proof-of-work certificate

  5. 4 Theoretical Computer Science Landmark Result In order to verify a proof/computation, one does not need to check every step: exponential speed-up for verifier is possible

  6. 4 Theoretical Computer Science Landmark Result In order to verify a proof/computation, one does not need to check every step: exponential speed-up for verifier is possible Ingredients 1. Randomized identity testing [DeMillo-Lipton’78;Schwartz,Zippel’79] 2. Interactive protocols [Goldwasser-Micali-Rackoff’85] 3. Replacing interaction by cryptography [Fiat-Shamir 1986] 4. Exponential speed-up for verifier [Lund-Fortnow-Karloff-Nisan’92]

  7. 5 Randomization: Rusin Freivalds’s 1979 Check Let A , B , C ∈ K n × n , K a field Certify C = A · B via a random vector y ∈ { 0 , 1 } n , and check Cy = A ( By ) : randomized of O ( n 2 ) complexity Probability ( Cy � = ABy | C � = AB ) ≥ 1 2

  8. 5 Randomization: Rusin Freivalds’s 1979 Check Let A , B , C ∈ K n × n , K a field Certify C = A · B via a random vector y ∈ { 0 , 1 } n , and check Cy = A ( By ) : randomized of O ( n 2 ) complexity Probability ( Cy � = ABy | C � = AB ) ≥ 1 2 Application: O ( n 2 ) verification of determinant Prover: Run fastest determinant algorithm, eg, Storjohann’s For the matrix multiplications, record inputs and outputs Verifier: rerun algorithm and instead of the doing matrix multiplications, verify the AB = C by Freivalds’s algorithm It’s like running the det algorithm with a quadratic-time matrix multiplication procedure

  9. 5 Randomization: Rusin Freivalds’s 1979 Check Let A , B , C ∈ K n × n , K a field Certify C = A · B via a random vector y ∈ { 0 , 1 } n , and check Cy = A ( By ) : randomized of O ( n 2 ) complexity Probability ( Cy � = ABy | C � = AB ) ≥ 1 2 Application: O ( n 2 ) verification of determinant Prover: Run fastest determinant algorithm, eg, Storjohann’s For the matrix multiplications, record inputs and outputs Verifier: rerun algorithm and instead of the doing matrix multiplications, verify the AB = C by Freivalds’s algorithm Problem: proof-of-work certificate has O ( n 2 ) size

  10. 6 Interactive Proof Protocol: Dumas’s & Kaltofen’s 2014 CharPoly Certificate Prover “Peggy” must convince Verifier “Victor” that χ A ( λ ) = det ( λ I − A ) , A ∈ Z n × n Prover Commun. Verifier χ A ( λ ) χ A ( λ ) = det ( λ I − A ) − − − − − − − − → “commits” p a smallish random prime p , r ← − − − − − − − − r a smallish random integer Non-interactive certificate for ∆ = det ( rI − A ) mod p Checks ∆ ≡ χ A ( r ) ( mod p )

  11. 6 Interactive Proof Protocol: Dumas’s & Kaltofen’s 2014 CharPoly Certificate Prover “Peggy” must convince Verifier “Victor” that χ A ( λ ) = det ( λ I − A ) , A ∈ Z n × n Prover Commun. Verifier χ A ( λ ) χ A ( λ ) = det ( λ I − A ) − − − − − − − − → “commits” p a smallish random prime p , r ← − − − − − − − − r a smallish random integer Non-interactive certificate for ∆ = det ( rI − A ) mod p Checks ∆ ≡ χ A ( r ) ( mod p ) Verification bit complexity: essentially linear in input bit size

  12. 7 Replace Interaction by Crypto: Dumas’s & Kaltofen’s 2014 CharPoly Certificate Prover “Peggy” must convince Verifier “Victor” that χ A ( λ ) = det ( λ I − A ) , A ∈ Z n × n Prover Commun. Verifier χ A ( λ ) χ A ( λ ) = det ( λ I − A ) − − − − − − − − → p , r p , r = hash ( A , χ A ) − − − − − − − − → Non-interactive certificate for ∆ = det ( rI − A ) mod p Checks p , r = hash ( A , χ A ) Checks ∆ ≡ χ A ( r ) ( mod p )

  13. 7 Replace Interaction by Crypto: Dumas’s & Kaltofen’s 2014 CharPoly Certificate Prover “Peggy” must convince Verifier “Victor” that χ A ( λ ) = det ( λ I − A ) , A ∈ Z n × n Prover Commun. Verifier χ A ( λ ) χ A ( λ ) = det ( λ I − A ) − − − − − − − − → p , r p , r = hash ( A , χ A ) − − − − − − − − → Non-interactive certificate for ∆ = det ( rI − A ) mod p Checks p , r = hash ( A , χ A ) Checks ∆ ≡ χ A ( r ) ( mod p ) Yields sum-of-squares proofs in non-linear optimization with fastest verification [Kaltofen, Li, Yang, Zhi 2008]

  14. 8 Sparse Determinant Proof-of-Work Based on Cramer’s Rule [Dumas and Kaltofen 2015] � w 1 � � 0 � . . . . = = ⇒ A . . w n − 1 0 w n 1   a 1 , 1 ... a 1 , n − 1 0 . . .   . . .   . . . det     ... M a n − 1 , 1 a n − 1 , n − 1 0 � �� � ... a n , 1 a n , n − 1 1 = det ( A 1 ... n − 1 , 1 ... n − 1 ) w n =   det ( A ) a 1 , 1 ... a 1 , n − 1 a 1 , n  . . .  . . .   . . . det     ... a n − 1 , 1 a n − 1 , n − 1 a n − 1 , n ... a n , 1 a n , n − 1 a n , n

  15. 9 Prover Communication Verifier χ A 1. χ A ( λ ) = det ( λ I n − A ) − − → 2. M = [ a i , j ] 1 ≤ i , j ≤ n − 1 , χ M ( λ ) = det ( λ I n − 1 − M ) χ M → Checks GCD ( χ A , χ M ) = 1; − − r 1 − r 1 ∈ S ⊆ K random with χ A ( r 1 ) � = 0 ← − 3. 4. Computes w such that � 0 � . . w ( r 1 I n − A ) w = e n = . − − → Checks ( r 1 I n − A ) w = e n and 0 w n = χ A ( r 1 ) / χ M ( r 1 ) ; 1 Returns det ( A ) = ( − 1 ) n χ A ( 0 ) 5. Note: GCD ( χ A , χ M ) = 1 is achieved by preconditioning

  16. 9 Prover Communication Verifier χ A 1. χ A ( λ ) = det ( λ I n − A ) − − → 2. M = [ a i , j ] 1 ≤ i , j ≤ n − 1 , χ M ( λ ) = det ( λ I n − 1 − M ) χ M → Checks GCD ( χ A , χ M ) = 1; − − r 1 − r 1 ∈ S ⊆ K random with χ A ( r 1 ) � = 0 ← − 3. 4. Computes w such that � 0 � . . w ( r 1 I n − A ) w = e n = . − − → Checks ( r 1 I n − A ) w = e n and 0 w n = χ A ( r 1 ) / χ M ( r 1 ) ; 1 Returns det ( A ) = ( − 1 ) n χ A ( 0 ) 5. Note: GCD ( χ A , χ M ) = 1 is achieved by preconditioning Prover cheats by sending monic h , H with GCD ( h , H )= 1 , h / H � = χ M / χ A Then with high probab.: w n = χ A ( r 1 ) / χ M ( r 1 ) � = h ( r 1 ) / H ( r 1 )

  17. 9 Prover Communication Verifier χ A 1. χ A ( λ ) = det ( λ I n − A ) − − → 2. M = [ a i , j ] 1 ≤ i , j ≤ n − 1 , χ M ( λ ) = det ( λ I n − 1 − M ) χ M → Checks GCD ( χ A , χ M ) = 1; − − r 1 − r 1 ∈ S ⊆ K random with χ A ( r 1 ) � = 0 ← − 3. 4. Computes w such that � 0 � . . w ( r 1 I n − A ) w = e n = . − − → Checks ( r 1 I n − A ) w = e n and 0 w n = χ A ( r 1 ) / χ M ( r 1 ) ; 1 Returns det ( A ) = ( − 1 ) n χ A ( 0 ) 5. Note: GCD ( χ A , χ M ) = 1 is achieved by preconditioning Protocol communication: O ( n ) scalars Prover complexity: fast by Block Wiedemann Algorithm

  18. 10 Our 2015 Preconditioner   τ − 1 0 ... 0   . ...   . − 1 . 0 τ     . ... ... A ) = det ( A ) ( τ n + σ ) �   det ( � . A = A , .  0 0    ...    τ − 1  0 σ 0 ... 0 τ ⇒ χ � A ( λ ) is irreducible for variables σ , τ det ( A ) � = 0 = ⇒ GCD ( χ � A , χ � M ) = 1 with high probability = for random scalars σ , τ

  19. 11 The Rank Profile Matrix [Dumas, Pernet, Sultan 2015] Definition: Let A ∈ K m × n ; the rank profile matrix R A = [ r A i , j ] ∈ { 0 , 1 } m × n satisfies: 1. all rows and columns have at most one 1 2. the ranks of all upper-left submatrices are the same: ∀ i , j : rank ([ a µ , ν ] 1 ≤ µ ≤ i , 1 ≤ ν ≤ j ) = rank ([ r A µ , ν ] 1 ≤ µ ≤ i , 1 ≤ ν ≤ j )     2 0 3 0 1 0 0 0     1 0 0 0 0 0 1 0 ⇒ R A =     Example: A =  =    0 0 4 0 0 0 0 0 0 2 0 1 0 1 0 0

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend