Multi-Collision Resistance: a Paradigm for Keyless Hash Functions

Total Page:16

File Type:pdf, Size:1020Kb

Multi-Collision Resistance: a Paradigm for Keyless Hash Functions Multi-collision Resistance: A Paradigm for Keyless Hash Functions Nir Bitansky∗ Yael Tauman Kalai† Omer Paneth‡ August 6, 2018 Abstract We introduce a new notion of multi-collision resistance for keyless hash functions. This is a natural relaxation of collision resistance where it is hard to find multiple inputs with the same hash in the following sense. The number of colliding inputs that a polynomial-time non-uniform adversary can find is not much larger than its advice. We discuss potential candidates for this notion and study its applications. Assuming the existence of such hash functions, we resolve the long-standing question of the round complexity of zero knowledge protocols — we construct a 3-message zero knowledge argument against arbitrary polynomial-size non-uniform adversaries. We also improve the round complexity in several other central applications, including a 3-message succinct argument of knowledge for NP, a 4-message zero-knowledge proof, and a 5-message public-coin zero-knowledge argument. Our techniques can also be applied in the keyed setting, where we match the round complexity of known protocols while relaxing the underlying assumption from collision-resistance to keyed multi-collision resistance. The core technical contribution behind our results is a domain extension transformation from multi- collision-resistant hash functions for a fixed input length to ones with an arbitrary input length and a local opening property. The transformation is based on a combination of classical domain extension techniques, together with new information-theoretic tools. In particular, we define and construct a new variant of list-recoverable codes, which may be of independent interest. ∗Tel Aviv University, email [email protected]. Member of the Check Point Institute of Information Security. Supported by the Alon Young Faculty Fellowship and by Len Blavatnik and the Blavatnik Family foundation. Part of this research was done while at MIT. Supported by NSF Grants CNS-1350619 and CNS-1414119 and DARPA and ARO under Contract No. W911NF- 15-C-0236. Any opinions, findings and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the DARPA and ARO. †Microsoft Research, email [email protected]. ‡MIT, email [email protected] Supported by NSF Grants CNS-1350619 and CNS-1414119, and the Defense Advanced Research Projects Agency (DARPA) and the U.S. Army Research Office under contracts W911NF-15-C-0226 and W911NF-15-C-0236. Contents 1 Introduction 1 1.1 Results...................................................2 1.1.1 Round Reduction.........................................2 1.1.2 More Applications........................................3 1.1.3 The Core Technical Result....................................4 1.2 Candidates for Multi-collision-Resistance................................4 1.3 More on Multi-collision Resistance....................................5 1.4 Technical Overview............................................7 1.5 Concurrent and Independent Work.................................... 12 2 Preliminaries 12 2.1 Zero-Knowledge Protocols........................................ 13 3 Multi-collision-resistant Hash Functions 13 4 Multi-collision-resistant Hash with Local Opening 14 4.1 Ingredient I: Hash Trees......................................... 16 4.2 Ingredient II: Collision-Free Code.................................... 20 4.2.1 Construction........................................... 21 4.3 Construction................................................ 23 4.4 Proof of Theorem 4.6........................................... 25 4.4.1 The Extractor........................................... 26 4.4.2 Analysis.............................................. 27 5 3-Message Succinct Arguments for NP 30 5.1 Succinct Arguments for Non-Deterministic Computations........................ 30 5.2 Probabilistically-Checkable Proofs.................................... 31 5.3 Construction................................................ 32 6 3-Message Zero Knowledge via Weak Memory Delegation 34 6.1 Weak Memory Delegation........................................ 35 6.2 Oracle Memory Delegation........................................ 37 6.3 Construction................................................ 38 7 1-Message Statistically-Hiding Commitments with Weak Binding 42 7.1 Definition................................................. 43 7.2 Construction................................................ 43 8 4-Message Zero-Knowledge Proofs 44 8.1 Construction................................................ 45 8.2 Analysis.................................................. 45 A Multi-collision Resistance in the Auxiliary-Input Random Oracle Model 54 B Construction of 3-Round Zero-Knowledge Argument 55 B.1 Witness Indistinguishability with First-Message-Dependent Instances................. 55 B.2 1-Hop Homomorphic Encryption..................................... 57 B.3 A 3-Round Zero-Knowledge Argument................................. 57 C Achieving Local Opening Generically in Fully-Binding Commitments 58 C.1 Overview................................................. 58 C.2 Interactive Commitments......................................... 60 C.3 Transformation.............................................. 61 C.4 Analysis.................................................. 63 1 Introduction Collision-resistant hash functions are central to cryptography. They are used everywhere to compress communication and storage, from simple applications such as hash-and-sign to advanced applications like reliable delegation of data and computation [Mer89, Dam89, DPP93, BEG+94]. They also have strong implications to foundational concepts in the theory of cryptography and complexity, including succinctness of proofs, non-black-box techniques, and hardness of total search problems [Kil94, Bar01, MP91, KNY17b]. In this work, we study a natural relaxation of collision resistance called multi-collision resistance. Roughly speaking, a shrinking hash function is multi-collision-resistant if finding many (rather than two) inputs that hash to the same output is intractable. We formalize this notion, explore its applications, and develop techniques for robust composition of multi-collision-resistant hash functions. Keyless Hash Functions. Our main motivation for studying multi-collision resistance comes from the setting of keyless hash functions. It is well-known that (full) collision resistance cannot be satisfied by any single (fixed) function. Indeed, for any shrinking function, there exist algorithms that can efficiently find collisions, by simply having such collisions hardwired in their code. Accordingly, in the theoretical treatment of collision-resistance, we consider keyed families of hash functions, requiring that efficient algorithms cannot find collisions when the key is chosen at random. Due to this modeling, applications often require additional trust assumptions or rounds of communication (to set up the key). Furthermore, this model does not align with practice, where fixed cryptographic hash functions such as SHA-2 are widely used. In light of the above, a common approach to analyzing keyless hash functions is to consider restricted adversarial models, for example, the class of uniform adversaries whose description is smaller than the size of the hash function’s inputs. In practice, however, for any reasonable choice of hash function, the adversary’s description may very well be larger than the input size. Other common paradigms for dealing with keyless hash functions include the random oracle methodology [BR93] and the human ignorance approach of Rogaway [Rog06]. (See further details in the related work section.) We suggest a new paradigm for the treatment of keyless hash functions based on multi-collision resistance. The paradigm aims to guarantee security in the standard model against adversaries with arbitrary (polynomial-size) non- uniform description, based on a well-defined simple hardness assumption on hash functions. We observe that while keyless hash functions cannot be collision resistant, they may satisfy multi-collision-resistance if we only require that the number of collisions that the adversary can find is not much larger the adversary’s description (including the size of its non-uniform advice). More formally, consider any fixed hash function H : f0; 1g2λ ! f0; 1gλ ; λ2N where λ is a security parameter, and note that multi-collisions of size 2λ always exist. We will say that H is K-collision resistant, for a polynomial K(·), if for any two polynomials ζ(·) and T (·), no adversary with non-uniform advice of size ζ(λ) and running-time T (λ) can find K(ζ) distinct inputs: X1;:::;XK such that H(X1) = ::: = H(XK ) : Crucially, the same collision bound K(ζ) holds regardless of the (polynomial) running time T , and depends only on the size ζ of the non-uniform advice. The larger K is the weaker the notion is, and our results throughout can be based on any polynomial K. (For concreteness, the reader may think of K as a specific polynomial, say quadratic.) The Keyed Setting: Relaxing Collision Resistance. Another motivation for studying multi-collision resistance comes from the setting of keyed hash functions, which is fundamentally different from the keyless setting. In the keyed setting, multi-collision resistance is a natural relaxation of standard collision resistance, and may potentially be based on weaker assumptions. Here the collision bound K does not have to depend on the size of non-uniform
Recommended publications
  • Hash Functions and Thetitle NIST of Shapresentation-3 Competition
    The First 30 Years of Cryptographic Hash Functions and theTitle NIST of SHAPresentation-3 Competition Bart Preneel COSIC/Kath. Univ. Leuven (Belgium) Session ID: CRYP-202 Session Classification: Hash functions decoded Insert presenter logo here on slide master Hash functions X.509 Annex D RIPEMD-160 MDC-2 SHA-256 SHA-3 MD2, MD4, MD5 SHA-512 SHA-1 This is an input to a crypto- graphic hash function. The input is a very long string, that is reduced by the hash function to a string of fixed length. There are 1A3FD4128A198FB3CA345932 additional security conditions: it h should be very hard to find an input hashing to a given value (a preimage) or to find two colliding inputs (a collision). Hash function history 101 DES RSA 1980 single block ad hoc length schemes HARDWARE MD2 MD4 1990 SNEFRU double MD5 block security SHA-1 length reduction for RIPEMD-160 factoring, SHA-2 2000 AES permu- DLOG, lattices Whirlpool SOFTWARE tations SHA-3 2010 Applications • digital signatures • data authentication • protection of passwords • confirmation of knowledge/commitment • micropayments • pseudo-random string generation/key derivation • construction of MAC algorithms, stream ciphers, block ciphers,… Agenda Definitions Iterations (modes) Compression functions SHA-{0,1,2,3} Bits and bytes 5 Hash function flavors cryptographic hash function this talk MAC MDC OWHF CRHF UOWHF (TCR) Security requirements (n-bit result) preimage 2nd preimage collision ? x ? ? ? h h h h h h(x) h(x) = h(x‘) h(x) = h(x‘) 2n 2n 2n/2 Informal definitions (1) • no secret parameters
    [Show full text]
  • Hash Functions
    11 Hash Functions Suppose you share a huge le with a friend, but you are not sure whether you both have the same version of the le. You could send your version of the le to your friend and they could compare to their version. Is there any way to check that involves less communication than this? Let’s call your version of the le x (a string) and your friend’s version y. The goal is to determine whether x = y. A natural approach is to agree on some deterministic function H, compute H¹xº, and send it to your friend. Your friend can compute H¹yº and, since H is deterministic, compare the result to your H¹xº. In order for this method to be fool-proof, we need H to have the property that dierent inputs always map to dierent outputs — in other words, H must be injective (1-to-1). Unfortunately, if H is injective and H : f0; 1gin ! f0; 1gout is injective, then out > in. This means that sending H¹xº is no better/shorter than sending x itself! Let us call a pair ¹x;yº a collision in H if x , y and H¹xº = H¹yº. An injective function has no collisions. One common theme in cryptography is that you don’t always need something to be impossible; it’s often enough for that thing to be just highly unlikely. Instead of saying that H should have no collisions, what if we just say that collisions should be hard (for polynomial-time algorithms) to nd? An H with this property will probably be good enough for anything we care about.
    [Show full text]
  • The First Cryptographic Hash Workshop
    Workshop Report The First Cryptographic Hash Workshop Gaithersburg, MD Oct. 31-Nov. 1, 2005 Report prepared by Shu-jen Chang and Morris Dworkin Information Technology Laboratory, National Institute of Standards and Technology, Gaithersburg, MD 20899 Available online: http://csrc.nist.gov/groups/ST/hash/documents/HashWshop_2005_Report.pdf 1. Introduction On Oct. 31-Nov. 1, 2005, 180 members of the global cryptographic community gathered in Gaithersburg, MD to attend the first Cryptographic Hash Workshop. The workshop was organized in response to a recent attack on the NIST-approved Secure Hash Algorithm SHA-1. The purpose of the workshop was to discuss this attack, assess the status of other NIST-approved hash algorithms, and discuss possible near-and long-term options. 2. Workshop Program The workshop program consisted of two days of presentations of papers that were submitted to the workshop and panel discussion sessions that NIST organized. The main topics for the discussions included the SHA-1 and SHA-2 hash functions, future research of hash functions, and NIST’s strategy. The program is available at http://csrc.nist.gov/groups/ST/hash/first_workshop.html. This report only briefly summarizes the presentations, because the above web site for the program includes links to the speakers' slides and papers. The main ideas of the discussion sessions, however, are described in considerable detail; in fact, the panelists and attendees are often paraphrased very closely, to minimize misinterpretation. Their statements are not necessarily presented in the order that they occurred, in order to organize them according to NIST's questions for each session. 3.
    [Show full text]
  • Constructing Secure Hash Functions by Enhancing Merkle-Damgård
    Constructing Secure Hash Functions by Enhancing Merkle-Damg˚ard Construction Praveen Gauravaram1, William Millan1,EdDawson1, and Kapali Viswanathan2 1 Information Security Institute (ISI) Queensland University of Technology (QUT) 2 George Street, GPO Box 2434, Brisbane QLD 4001, Australia [email protected], {b.millan, e.dawson}@qut.edu.au 2 Technology Development Department, ABB Corporate Research Centre ABB Global Services Limited, 49, Race Course Road, Bangalore - 560 001, India [email protected] Abstract. Recently multi-block collision attacks (MBCA) were found on the Merkle-Damg˚ard (MD)-structure based hash functions MD5, SHA-0 and SHA-1. In this paper, we introduce a new cryptographic construction called 3C devised by enhancing the MD construction. We show that the 3C construction is at least as secure as the MD construc- tion against single-block and multi-block collision attacks. This is the first result of this kind showing a generic construction which is at least as resistant as MD against MBCA. To further improve the resistance of the design against MBCA, we propose the 3C+ design as an enhance- ment of 3C. Both these constructions are very simple adjustments to the MD construction and are immune to the straight forward extension attacks that apply to the MD hash function. We also show that 3C resists some known generic attacks that work on the MD construction. Finally, we compare the security and efficiency features of 3C with other MD based proposals. Keywords: Merkle-Damg˚ard construction, MBCA, 3C, 3C+. 1 Introduction In 1989, Damg˚ard [2] and Merkle [13] independently proposed a similar iter- ative structure to construct a collision resistant cryptographic hash function H : {0, 1}∗ →{0, 1}t using a fixed length input collision resistant compression function f : {0, 1}b ×{0, 1}t →{0, 1}t.
    [Show full text]
  • Hash Functions
    Lecture 21 Hashing 6.046J Spring 2015 Lecture 21: Cryptography: Hashing In this lecture, we will be studying some basics of cryptography. Specifically, we will be covering • Hash functions • Random oracle model • Desirable Properties • Applications to security 1 Hash Functions A hash function h maps arbitrary strings of data to fixed length output. The function is deterministic and public, but the mapping should look “random”. In other words, ∗ d h : {0, 1} →{0, 1} for a fixed d. Hash functions do not have a secret key. Since there are no secrets and the function itself is public, anyone can evaluate the function. To list some examples, Hash function MD4 MD5 SHA-1 SHA-256 SHA-512 d 128 128 160 256 512 In practice, hash functions are used for “digesting” large data. For example, if you want to check the validity of a large file (potentially much larger than a few megabytes), you can check the hash value of that file with the expected hash. There­ fore, it is desirable (especially for cryptographic hash functions covered here) that the function is collision resistant. That is, it should be “hard” to find two inputs m1 and m2 for hash function h such that h(m1)= h(m2). Most modern hash functions hope to achieve security level of 264 or better, which means that the attacker needs to test more than 264 different inputs to find a collision. Unfortunately, MD4 and MD5 aimed to provide 264 security, but has been shown to be broken using 26 and 237 inputs respectively. SHA-1 aimed to provide 280 security, but has been shown (at least theoretically) to be no more than 261 security.
    [Show full text]
  • Design and Analysis of Hash Functions What Is a Hash Function?
    Design and analysis of hash functions Coding and Crypto Course October 20, 2011 Benne de Weger, TU/e what is a hash function? • h : {0,1}* {0,1}n (general: h : S {{,}0,1}n for some set S) • input: bit string m of arbitrary length – length may be 0 – in practice a very large bound on the length is imposed, such as 264 (≈ 2.1 million TB) – input often called the message • output: bit string h(m) of fixed length n – e.g. n = 128, 160, 224, 256, 384, 512 – compression – output often called hash value, message digest, fingerprint • h(m) is easy to compute from m • no secret information, no key October 20, 2011 1 1 non-cryptographic hash functions • hash table – index on database keys – use: efficient storage and lookup of data • checksum – Example: CRC – Cyclic Redundancy Check • CRC32 uses polynomial division with remainder • initialize: – p = 1 0000 0100 1100 0001 0001 1101 1011 0111 – append 32 zeroes to m • repeat until length (counting from first 1-bit) ≤ 32: – left-align p to leftmost nonzero bit of m – XOR p into m – use: error detection • but only of unintended errors! • non-cryptographic – extremely fast – not secure at all October 20, 2011 2 hash collision • m1, m2 are a collision for h if h(m1) = h(m2) while m1 ≠ m2 I owe you € 100 I owe you € 5000 different documents • there exist a lot of identical hash collisions = – pigeonhole principle collision (a.k.a. Schubladensatz) October 20, 2011 3 2 preimage • given h0, then m is a preimage of h0 if h(m) = h0 X October 20, 2011 4 second preimage • given m0, then m is a second preimage of m0 if h(m) = h(m0 ) while m ≠ m0 ? X October 20, 2011 5 3 cryptographic hash function requirements • collision resistance: it should be computationally infeasible to find a collision m1, m2 for h – i.e.
    [Show full text]
  • Cryptographic Hash Functions
    ECE458 Winter 2013 Cryptographic Hash Functions Vijay Ganesh University of Waterloo Previous Lecture: Public-key Cryptography ! Motivations for public-key cryptography ! Diffie-Hellman key exchange protocol x ! RSA public key encryption scheme ! RSA digital signature scheme Today’s Lecture: Cryptographic Hash Functions ! Basic definition of a hash function (MD2, MD4, MD5, SHA1, SHA256,…) ! Importantx properties of hash functions n" E.g., strong collision resistance ! Uses of hash functions ! How hash functions like SHA1 etc. work n" E.g., Merkle-Damagard construction Basic Definitions: Cryptographic Hash Functions Arbitrary x Cryptographic Fixed Length Length Input hash function Output (e.g., SHA1, MD5, Passwords, SHA256,…) Message digest files (e.g. 160 bits) §" Different from classic hash functions used in hash tables etc. §" Different from “provably-secure” cryptographic hash functions Uses of Cryptographic Hash Functions ! User Authentication (e.g., passwords) ! Message Authenticity (e.g., Hash MACs) ! Compact file identifiers (e.g., in Git,…) ! Used in digital signatures ! Certain obfuscation schemes rely on “provably- secure” hash functions Important Properties of Cryptographic Hash Functions ! Compression ! First pre-image resistance ! Second pre-image resistance ! Strong collision resistance ! Efficient ! Deterministic (?) Important Properties of Cryptographic Hash Functions ! Let h: X è Y denote a hash function ! First pre-image resistance: n" Given y in Y, it is “computationally infeasible” to compute a value x in X such that
    [Show full text]
  • Are Certificate Thumbprints Unique?
    Are Certificate Thumbprints Unique? Greg Zaverucha Dan Shumow Microsoft Research Microsoft Research [email protected] [email protected] October 3, 2019 Abstract A certificate thumbprint is a hash of a certificate, computed over all certificate data and its signature. Thumbprints are used as unique identifiers for certificates, in appli- cations when making trust decisions, in configuration files, and displayed in interfaces. In this paper we show that thumbprints are not unique in two cases. First, we demon- strate that creating two X.509 certificates with the same thumbprint is possible when the hash function is weak, in particular when chosen-prefix collision attacks are possi- ble. This type of collision attack is now practical for MD5, and expected to be practical for SHA-1 in the near future. Second, we show that certificates may be mauled in a way that they remain valid, but that they have different thumbprints. While these properties may be unexpected, we believe the scenarios where this could lead to a practical attack are limited and require very sophisticated attackers. We also checked the thumbprints of a large dataset of certificates used on the Internet, and found no evidence that would indicate thumbprints of certificates in use today are not unique. 1 Introduction A certificate thumbprint, also called a fingerprint, is a hash of a certificate, computed over all certificate data and its signature. Thumbprints are used as unique identifiers for cer- tificates, in applications when making trust decisions, in configuration files, and displayed in interfaces. Due to the variety of uses for thumbprints, it is not immediately clear what, if any, their security needs are.
    [Show full text]
  • Security This PDF Document Is an Inferior Version of an OER HTML Page
    OS11: Security * Including parts of Chapter 11 and Section 9.6.3 of [Hai19] Jens Lechtenbörger Computer Structures and Operating Systems 2021 1 Introduction 1.1 OS Plan OS Overview (Wk 23) OS Introduction (Wk 23) Interrupts and I/O (Wk 24) Threads (Wk 24) Thread Scheduling (Wk 25) Mutual Exclusion (MX) (Wk 25) MX in Java (Wk 26) MX Challenges (Wk 26) Virtual Memory I (Wk 27) Virtual Memory II (Wk 27) Figure 1: OS course plan, summer 2021 Processes (Wk 28) Security (Wk 28) Table of Contents 1.2 Today's Core Questions How can I ensure that my downloaded software has not been manipulated? What is e-mail self-defense? *This PDF document is an inferior version of an OER HTML page; free/libre Org mode source repository. 1 1.3 Learning Objectives Explain condentiality and integrity as security goals Discuss dierences between end-to-end and hop-by-hop goals Explain use of hash values and digital signatures for integrity protection and discuss their dierences Create and verify digital signatures (on e-mails and les/software) 1.4 Retrieval Practice Security So far Hardware building blocks * Kernel mode vs user mode: Restrict instruction set · Protect kernel data structures · Enable access control via system call API * Timer interrupts · Transfer control periodically back to OS Process as major OS abstraction * Virtual address spaces · Isolate processes from each other * Access rights 1.5 Information Security Safety: Protection against unintended/natural/random events (Not focus here; requires proper management, involves
    [Show full text]
  • International Journal of Engineering Sciences
    [Tyag, 3.(11.): November, 2014] ISSN: 2277-9655 Scientific Journal Impact Factor: 3.449 (ISRA), Impact Factor: 2.114 IJESRT INTERNATIONAL JOURNAL OF ENGINEERING SCIENCES & RESEARCH TECHNOLOGY Modifying SHA-512 using Padding, Tree structure and Permutation Boxes Sumita Tyagi * Computer Science & Engg., Babu Banarsi Das Institute of Technology, India Abstract In this age of technology internet has become a day to day necessity. With this growing usage of web data it has become very important to design some secure way to save this web data from various types of attacks. One of the ways to resolve this problem is hashing. Hashing takes variable length input and converts it into a fixed length output using various hash algorithms like MD4, MD5 and SHA. Despite of all these advances in the field of hashing these algorithms still have some weaknesses and many attacks on these algorithms have been discovered. In this paper we propose a new way of hashing applied to the traditional algorithms. The basic concept is same but we have modified the few steps involved in the process. We combine padding using SALT, tree structure and permutation boxes applied together in these algorithms. This helps to provide an output that is more secure and complicated making it more resistant to various collision attacks. Possibility of collision attacks, rainbow table attacks and birthday attacks is also mitigated by the complex structure of the algorithm. Keywords: SALT, Permutation Boxes, Rainbow Table Attack, Tree Structure Introduction The secure hash function algorithm (SHA) was attacks had been discovered on SHA-512. Many developed by the national institute of standard and modifications to SHA 512 have also been made to technology (NIST) in 1993.
    [Show full text]
  • Symmetric Cryptography
    CSE 484 / CSE M 584 (Spring 2012) Symmetric Cryptography Tadayoshi Kohno Thanks to Dan Boneh, Dieter Gollmann, Dan Halperin, John Manferdelli, John Mitchell, Vitaly Shmatikov, Bennet Yee, and many others for sample slides and materials ... Goals for Today Cryptography (Symmetric) Physical Security, Computer Security, and Cryptography Also • Lab due on Friday • 584 reading up, due next Tuesday • HW1 out Tues or Wed Broad Class of Hash Functions hash function H message message x. “digest” .y x’’. y’ x’. bit strings of any length n-bit bit strings H is a lossy compression function • Collisions: h(x)=h(x’) for distinct inputs x, x’ • Result of hashing should “look random” (make this precise later) – Intuition: half of digest bits are “1”; any bit in digest is “1” half the time Cryptographic hash function needs a few properties… One-Way Intuition: hash should be hard to invert • “Preimage resistance” • Let h(x’)=y∈{0,1}n for a random x’ • Given y, it should be hard to find any x such that h(x) =y How hard? • Brute-force: try every possible x, see if h(x)=y • SHA-1 (common hash function) has 160-bit output – Expect to try 2159 inputs before finding one that hashes to y. Collision Resistance Should be hard to find distinct x, x’ such that h(x)=h(x’) • Brute-force collision search is only O(2n/2), not O(2n) • For SHA-1, this means O(280) vs. O(2160) Birthday paradox (informal) • Let t be the number of values x,x’,x’’… we need to look at before finding the first pair x,x’ s.t.
    [Show full text]
  • VSH, an Efficient and Provable Collision Resistant Hash Function
    VSH, an efficient and provable collision resistant hash function Scott Contini1, Arjen K. Lenstra2, Ron Steinfeld1 1 Macquarie University 2 Lucent Technologies Bell Laboratories, Technical Univ. Eindhoven Outline • Factoring background • Our new hardness assumption: NMSRVS • Very Smooth Hash: VSH • Security argument • Variants • Efficiency in practice • Conclusion Factoring background • To factor n: collect ‘relations’ 2 e(i,v) v ≡∏0≤i≤u pi mod n (pi’s could be primes; most non-zero e(i,v)’s are odd) • In practice: more than u relations ⇒ factorization • Best method so far (NFS): factoring takes time L[n, 1.923…] = exp((1.923…+o(1))(logn)1/3(loglogn)2/3) asymptotically, for n →∞ Finding a single relation • For NFS: optimal u = L[n, 0.96…], finding a single relation takes time L[n, 0.96…], asymptotically, for n →∞ • For suboptimal u = O((logn)constant), finding a relation takes time > L[n, 1.923…], asymptotically for n →∞, unless factoring can be done faster: ⇒ asymptotically the same as the full factoring time Non-asymptotic estimate • For suboptimal u = O((logn)constant), finding a relation takes time > L[n, 1.923…], asymptotically for n →∞, unless factoring can be done faster: ⇒ asymptotically the same as the full factoring time • Non-asymptotic estimate for suboptimal u: finding a single relation at least as hard as factoring n’, where L[n’, 1.923 without o(1)] = L[n, 1.923 without o(1)]/u, unless faster factoring… (note: n’ smaller than n) Hardness assumption: NMSRVS (Nontrivial modular square root of very smooth number) Hard to factor
    [Show full text]