Linking-based time-stamping is a type of trusted timestamping where issued time-stamps are related to each other.
Linking-based time-stamping creates time-stamp tokens which are dependent on each other, entangled into some authenticated data structure. Later modification of issued time-stamps would invalidate this structure. Temporal order of issued time-stamps is also protected by this data structure, making backdating of the issued time-stamps impossible, even by the issuing server itself.
Top of the authenticated data structure is generally published in some hard-to-modify and widely witnessed media like printed newspaper. There are no (long-term) private keys in use, avoiding PKI-related risks.
Suitable candidates for authenticated data structure are:
Simplest linear hash chain based time-stamping is illustrated on following drawing:
The linking-based time-stamping authority (TSA) usually performs the following distinct functions:
- For increased scalability TSA might group time-stamping requests arriving within a short timeframe. These requests will be aggregated together without retaining their temporal order and then assigned the same time value. Aggregation creates cryptographic connection between all involved requests; authenticating aggregate value will be used as input for the linking operation.
- Linking creates verifiable and ordered cryptographic link between current and already issued time-stamp tokens.
- TSA publishes periodically some links, so that all previously issued time-stamp tokens depend on the published link and that it is practically impossible to forge the published values. By publishing widely witnessed links the TSA creates unforgeable verification points for validating all previously issued time-stamps.
Linking-based time-stamping is inherently more secure than the usual, public-key signature based time-stamping. All consequential time-stamps "seal" previously issued ones - hash chain (or other authenticated dictionary in use) could be built only in one way; modifying issued time-stamps is nearly as hard as finding a preimage for the used cryptographic hash function. Continuity of operation is observable by users; periodic publications in widely-witnessed media provide extra transparency.
Tampering with absolute time values could be detected by users, whose time-stamps are relatively comparable by system design.
Linking-based time-stamping scales well - hashing is much faster than public key cryptography. There is no need for specific cryptographic hardware with its limitations.
The common technology for guaranteeing long-term attestation value of the issued time-stamps (and digitally signed data) is periodic over-time-stamping of the time-stamp token. Because of missing key-related risks and of the plausible safety margin of the reasonably chosen hash function this over-time-stamping period of hash-linked token could be an order of magnitude longer than of public-key signed token.
Haber and Stornetta proposed in 1990 to link issued time-stamps together into linear hash-chain, using a collision-resistant hash function. The main rationale was to diminish TSA trust requirements.
Benaloh and de Mare constructed a one-way accumulator in 1994 and proposed its use in time-stamping. When used for aggregation, one-way accumulator requires only one constant-time computation for round membership verification.
Security proof for hash-function based time-stamping schemes was presented by Buldas, Saarepera in 2004. There is an explicit upper bound for the number of time stamps issued during the aggregation period; it is suggested that it is probably impossible to prove the security without this explicit bound - the so-called black-box reductions will fail in this task. Considering that all known practically relevant and efficient security proofs are black-box, this negative result is quite strong.
Next, in 2005 it was shown that bounded time-stamping schemes with a trusted audit party (who periodically reviews the list of all time-stamps issued during an aggregation period) can be made universally composable - they remain secure in arbitrary environments (compositions with other protocols and other instances of the time-stamping protocol itself).
Buldas, Laur showed in 2007 that bounded time-stamping schemes are secure in a very strong sense - they satisfy the so-called "knowledge-binding" condition. The security guarantee offered by Buldas, Saarepera in 2004 is improved by diminishing the security loss coefficient from to .
The hash functions used in the secure time-stamping schemes do not necessarily have to be collision-resistant or even one-way; secure time-stamping schemes are probably possible even in the presence of a universal collision-finding algorithm (i.e. universal and attacking program that is able to find collisions for any hash function). This suggests that it is possible to find even stronger proofs based on some other properties of the hash functions.
At the illustration above hash tree based time-stamping system works in rounds (, , , ...), with one aggregation tree per round. Capacity of the system () is determined by the tree size (, where denotes binary tree depth). Current security proofs work on the assumption that there is a hard limit of the aggregation tree size, possibly enforced by the subtree length restriction.
ISO 18014 part 3 covers 'Mechanisms producing linked tokens'.
OpenKSI working group is working on a set of specifications for Keyless Signature Infrastructure, an infrastructure used for generating keyless signatures, which are a combination of linking-based timestamps and server-based signatures .
- "Series of mini-lectures about cryptographic hash functions"; includes application in time-stamping and provable security; by A. Buldas, 2011.
Some free implementations:
Some commercial implementations:
- Buchmann, J.; Dahmen, E.; Szydlo, M. (2009). "Hash-based Digital Signature Schemes". Post-Quantum Cryptography. p. 35. doi:10.1007/978-3-540-88702-7_3. ISBN 978-3-540-88701-0.
- See ISO/IEC 18014-1:2002 Chapter 4.2
- For example see XAdES-A.
- Haber, S.; Stornetta, W. S. (1991). "How to time-stamp a digital document". Journal of Cryptology 3 (2). doi:10.1007/BF00196791.
- Benaloh, Josh; de Mare, Michael (1991). "Efficient Broadcast Time-Stamping". Technical Report 1. Clarkson University Department of Mathematics and Computer Science.
- Bayer, Dave; Stuart A., Haber; Wakefield Scott, Stornetta (1992). "Improving the Efficiency And Reliability of Digital Time-Stamping". Sequences II: Methods in Communication, Security and Computer Science (Springer-Verlag): 329–334.
- Benaloh, J.; Mare, M. (1994). "One-Way Accumulators: A Decentralized Alternative to Digital Signatures". Advances in Cryptology — EUROCRYPT '93. Lecture Notes in Computer Science 765. p. 274. doi:10.1007/3-540-48285-7_24. ISBN 978-3-540-57600-6.
- Haber, S.; Stornetta, W. S. (1997). "Secure names for bit-strings". Proceedings of the 4th ACM conference on Computer and communications security - CCS '97. p. 28. doi:10.1145/266420.266430. ISBN 0897919122.
- Buldas, A.; Laud, P.; Lipmaa, H.; Villemson, J. (1998). "Time-stamping with binary linking schemes". LNCS. Lecture Notes in Computer Science 1462: 486. doi:10.1007/BFb0055749. ISBN 3-540-64892-5.
- Buldas, Ahto; Lipmaa, Helger; Schoenmakers, Berry (2000). "Optimally Efficient Accountable Time-Stamping". LNCS 1751: 293–305. doi:10.1007/b75033.
- Blibech, K.; Gabillon, A. (2006). "A New Timestamping Scheme Based on Skip Lists". Computational Science and Its Applications - ICCSA 2006 (PDF). Lecture Notes in Computer Science 3982. p. 395. doi:10.1007/11751595_43. ISBN 978-3-540-34075-1.
- Buldas, Ahto; Saarepera, Märt (2004). "On Provably Secure Time-Stamping Schemes". LNCS 3329: 500–514. doi:10.1007/b104116.
- Buldas, A.; Laud, P.; Saarepera, M. �R.; Willemson, J. (2005). "Universally Composable Time-Stamping Schemes with Audit.". LNCS 3650: 359–373. doi:10.1007/11556992+26.
- Buldas, A.; Laur, S. (2007). "Knowledge-Binding Commitments with Applications in Time-Stamping". LNCS. Lecture Notes in Computer Science 4450: 150–165. doi:10.1007/978-3-540-71677-8_11. ISBN 978-3-540-71676-1.
- Buldas, A.; Jürgenson, A. (2007). "Does Secure Time-Stamping Imply Collision-Free Hash Functions?". LNCS. Lecture Notes in Computer Science 4784: 138–150. doi:10.1007/978-3-540-75670-5_9. ISBN 978-3-540-75669-9.
- Buldas, A.; Laur, S. (2006). "Do Broken Hash Functions Affect the Security of Time-Stamping Schemes?" (PDF). LNCS. Lecture Notes in Computer Science 3989: 50–65. doi:10.1007/11767480_4. ISBN 978-3-540-34703-3.