28:
102:
82:
36:
619:
133:
To the right a 5 node calendar cluster is shown where each node communicates with every other node in the cluster and there is no single point of failure. Although each node has a clock the clock is not used for setting the time directly but as a metronome to ensure that the nodes “beat” at the same
126:
The
Distributed hash calendar is a distributed network of hash calendar nodes. In order to ensure a high availability service it is possible to have multiple calendars in different physical locations all of which communicate with each other to ensure that each calendar contains identical hash
117:
The hash chains can then be extracted as from any hash tree. Since the hash calendar is built in a deterministic manner, the shape of the tree for any moment can be reconstructed knowing just the number of leaf nodes in the tree at that moment, which is one more than the number of seconds from
64:
and hash-linking based digital timestamping. Their design goal was to remove the need for a trusted third party i.e. that the time of the timestamp should be verifiable independently from the issuer of the timestamp.
97:
In the second phase, the multiple unconnected trees are turned into a single tree by merging the roots of the initial trees, but this time starting from the right and adding new parent nodes as needed (red nodes).
77:
per second. The easiest is to imagine the calendar being built in two phases. In the first phase, the leaves are collected into complete binary trees, starting from left, and making each tree as large as possible.
43:
The leaves are numbered left to right starting from zero and new leaves are always added to the right. By periodically publishing the root of the hash-tree is it possible to use a hash calendar as the basis of a
118:
1970‑01‑01 00:00:00 UTC to that moment. Therefore, given the time when the calendar tree was created and a hash chain extracted from it, the time value corresponding to each leaf node can be computed.
142:
A five node hash calendar cluster is a component of
Keyless Signature Infrastructure (KSI), each leaf in the hash calendar being the aggregate hash value of a globally distributed hash tree.
20:
is a data structure that is used to measure the passage of time by adding hash values to an append-only database with one hash value per elapsed second. It can be thought of special kind of
599:
429:
282:
206:
176:
1171:
27:
1176:
908:
1115:
251:
659:
275:
1186:
241:
775:
478:
101:
81:
24:, with the property that at any given moment, the tree contains a leaf node for each second since 1970‑01‑01 00:00:00 UTC.
268:
210:
151:
594:
549:
362:
61:
740:
473:
1125:
589:
681:
579:
569:
424:
574:
564:
367:
327:
320:
310:
305:
652:
315:
819:
668:
622:
468:
414:
809:
764:
584:
508:
252:
https://web.archive.org/web/20110625054822/http://csrc.nist.gov/groups/ST/toolkit/secure_hashing.html
923:
699:
347:
156:
45:
779:
35:
1090:
1049:
875:
865:
744:
453:
437:
384:
128:
248:
explanation of the original purpose of Merkle trees: To handle many
Lamport one-time signatures.
73:
There are different algorithms that can be used to build a hash calendar and extract a relevant
984:
685:
645:
513:
503:
374:
238:– Explains both the hash tree structure and the use of it to handle many one-time signatures.
1181:
1075:
448:
1019:
769:
972:
967:
850:
784:
523:
443:
404:
352:
337:
1165:
1120:
943:
832:
759:
604:
559:
518:
498:
394:
357:
332:
694:
1080:
1044:
860:
855:
837:
749:
554:
399:
389:
379:
342:
291:
245:
1130:
1095:
1085:
999:
933:
928:
918:
827:
676:
533:
171:
57:
21:
1140:
1110:
1070:
913:
842:
789:
709:
493:
463:
458:
419:
234:
194:
166:
74:
1145:
1105:
952:
880:
870:
483:
161:
1034:
724:
1150:
1024:
1004:
977:
962:
714:
528:
488:
60:
and Mart
Saarepera based on their research on the security properties of
1135:
1039:
1014:
957:
804:
734:
729:
704:
637:
195:
System and method for generating a digital certificate patent 8,312,528
1054:
1029:
1009:
994:
903:
794:
719:
409:
127:
values. Ensuring that the calendars remain in agreement is a form of
56:
The hash calendar construct was invented by
Estonian cryptographers
898:
799:
754:
100:
80:
34:
26:
31:
A hash tree with 8 leaf nodes and a hash calendar after 7 seconds
890:
641:
264:
207:"Educational Series on Hash Functions | Guardtime"
430:
Cryptographically secure pseudorandom number generator
256:
1063:
942:
889:
818:
675:
542:
298:
46:hash-linking based digital timestamping scheme
653:
276:
8:
177:Provably secure cryptographic hash function
660:
646:
638:
283:
269:
261:
257:
187:
7:
14:
618:
617:
69:Construction of a hash calendar
1172:Error detection and correction
479:Information-theoretic security
39:Hash calendar after 31 seconds
1:
242:Efficient Use of Merkle Trees
105:Compact hash calendar with 11
1177:Cryptographic hash functions
235:Merkle tree patent 4,309,569
152:Cryptographic hash functions
85:Sparse hash calendar with 11
62:cryptographic hash functions
595:Message authentication code
550:Cryptographic hash function
363:Cryptographic hash function
1203:
474:Harvest now, decrypt later
613:
590:Post-quantum cryptography
260:
129:Byzantine fault tolerance
122:Distributed hash calendar
1116:Left-child right-sibling
580:Quantum key distribution
570:Authenticated encryption
425:Random number generation
1187:Trees (data structures)
946:data partitioning trees
904:C-trie (compressed ADT)
575:Public-key cryptography
565:Symmetric-key algorithm
368:Key derivation function
328:Cryptographic primitive
321:Authentication protocol
311:Outline of cryptography
306:History of cryptography
316:Cryptographic protocol
114:
94:
40:
32:
469:End-to-end encryption
415:Cryptojacking malware
104:
84:
38:
30:
1126:Log-structured merge
669:Tree data structures
585:Quantum cryptography
509:Trusted timestamping
348:Cryptographic nonce
157:Linked Timestamping
22:Merkle or hash tree
1091:Fractal tree index
686:associative arrays
454:Subliminal channel
438:Pseudorandom noise
385:Key (cryptography)
115:
95:
41:
33:
1159:
1158:
635:
634:
631:
630:
514:Key-based routing
504:Trapdoor function
375:Digital signature
1194:
662:
655:
648:
639:
621:
620:
449:Insecure channel
285:
278:
271:
262:
258:
237:
222:
221:
219:
218:
209:. Archived from
203:
197:
192:
1202:
1201:
1197:
1196:
1195:
1193:
1192:
1191:
1162:
1161:
1160:
1155:
1059:
938:
885:
814:
810:Weight-balanced
765:Order statistic
679:
671:
666:
636:
627:
609:
538:
294:
289:
233:
230:
225:
216:
214:
205:
204:
200:
193:
189:
185:
148:
140:
124:
112:
108:
92:
88:
71:
54:
12:
11:
5:
1200:
1198:
1190:
1189:
1184:
1179:
1174:
1164:
1163:
1157:
1156:
1154:
1153:
1148:
1143:
1138:
1133:
1128:
1123:
1118:
1113:
1108:
1103:
1098:
1093:
1088:
1083:
1078:
1073:
1067:
1065:
1061:
1060:
1058:
1057:
1052:
1047:
1042:
1037:
1032:
1027:
1022:
1017:
1012:
1007:
1002:
997:
992:
975:
970:
965:
960:
955:
949:
947:
940:
939:
937:
936:
931:
926:
924:Ternary search
921:
916:
911:
906:
901:
895:
893:
887:
886:
884:
883:
878:
873:
868:
863:
858:
853:
848:
840:
835:
830:
824:
822:
816:
815:
813:
812:
807:
802:
797:
792:
787:
782:
772:
767:
762:
757:
752:
747:
737:
732:
727:
722:
717:
712:
707:
702:
697:
691:
689:
673:
672:
667:
665:
664:
657:
650:
642:
633:
632:
629:
628:
626:
625:
614:
611:
610:
608:
607:
602:
600:Random numbers
597:
592:
587:
582:
577:
572:
567:
562:
557:
552:
546:
544:
540:
539:
537:
536:
531:
526:
524:Garlic routing
521:
516:
511:
506:
501:
496:
491:
486:
481:
476:
471:
466:
461:
456:
451:
446:
444:Secure channel
441:
435:
434:
433:
422:
417:
412:
407:
405:Key stretching
402:
397:
392:
387:
382:
377:
372:
371:
370:
365:
355:
353:Cryptovirology
350:
345:
340:
338:Cryptocurrency
335:
330:
325:
324:
323:
313:
308:
302:
300:
296:
295:
290:
288:
287:
280:
273:
265:
255:
254:
249:
239:
229:
228:External links
226:
224:
223:
198:
186:
184:
181:
180:
179:
174:
169:
164:
159:
154:
147:
144:
139:
136:
123:
120:
110:
106:
90:
86:
70:
67:
53:
50:
13:
10:
9:
6:
4:
3:
2:
1199:
1188:
1185:
1183:
1180:
1178:
1175:
1173:
1170:
1169:
1167:
1152:
1149:
1147:
1144:
1142:
1139:
1137:
1134:
1132:
1129:
1127:
1124:
1122:
1119:
1117:
1114:
1112:
1109:
1107:
1104:
1102:
1101:Hash calendar
1099:
1097:
1094:
1092:
1089:
1087:
1084:
1082:
1079:
1077:
1074:
1072:
1069:
1068:
1066:
1062:
1056:
1053:
1051:
1048:
1046:
1043:
1041:
1038:
1036:
1033:
1031:
1028:
1026:
1023:
1021:
1018:
1016:
1013:
1011:
1008:
1006:
1003:
1001:
998:
996:
993:
990:
988:
982:
980:
976:
974:
971:
969:
966:
964:
961:
959:
956:
954:
951:
950:
948:
945:
941:
935:
932:
930:
927:
925:
922:
920:
917:
915:
912:
910:
907:
905:
902:
900:
897:
896:
894:
892:
888:
882:
879:
877:
876:van Emde Boas
874:
872:
869:
867:
866:Skew binomial
864:
862:
859:
857:
854:
852:
849:
847:
845:
841:
839:
836:
834:
831:
829:
826:
825:
823:
821:
817:
811:
808:
806:
803:
801:
798:
796:
793:
791:
788:
786:
783:
781:
777:
773:
771:
768:
766:
763:
761:
758:
756:
753:
751:
748:
746:
745:Binary search
742:
738:
736:
733:
731:
728:
726:
723:
721:
718:
716:
713:
711:
708:
706:
703:
701:
698:
696:
693:
692:
690:
687:
683:
678:
674:
670:
663:
658:
656:
651:
649:
644:
643:
640:
624:
616:
615:
612:
606:
605:Steganography
603:
601:
598:
596:
593:
591:
588:
586:
583:
581:
578:
576:
573:
571:
568:
566:
563:
561:
560:Stream cipher
558:
556:
553:
551:
548:
547:
545:
541:
535:
532:
530:
527:
525:
522:
520:
519:Onion routing
517:
515:
512:
510:
507:
505:
502:
500:
499:Shared secret
497:
495:
492:
490:
487:
485:
482:
480:
477:
475:
472:
470:
467:
465:
462:
460:
457:
455:
452:
450:
447:
445:
442:
439:
436:
431:
428:
427:
426:
423:
421:
418:
416:
413:
411:
408:
406:
403:
401:
398:
396:
395:Key generator
393:
391:
388:
386:
383:
381:
378:
376:
373:
369:
366:
364:
361:
360:
359:
358:Hash function
356:
354:
351:
349:
346:
344:
341:
339:
336:
334:
333:Cryptanalysis
331:
329:
326:
322:
319:
318:
317:
314:
312:
309:
307:
304:
303:
301:
297:
293:
286:
281:
279:
274:
272:
267:
266:
263:
259:
253:
250:
247:
243:
240:
236:
232:
231:
227:
213:on 2013-02-16
212:
208:
202:
199:
196:
191:
188:
182:
178:
175:
173:
170:
168:
165:
163:
160:
158:
155:
153:
150:
149:
145:
143:
137:
135:
131:
130:
121:
119:
103:
99:
83:
79:
76:
68:
66:
63:
59:
51:
49:
47:
37:
29:
25:
23:
19:
18:hash calendar
1100:
986:
978:
843:
776:Left-leaning
682:dynamic sets
677:Search trees
555:Block cipher
400:Key schedule
390:Key exchange
380:Kleptography
343:Cryptosystem
292:Cryptography
215:. Retrieved
211:the original
201:
190:
141:
138:Applications
132:
125:
116:
96:
72:
55:
42:
17:
15:
1076:Exponential
1064:Other trees
543:Mathematics
534:Mix network
172:Merkle tree
58:Ahto Buldas
1166:Categories
1020:Priority R
770:Palindrome
494:Ciphertext
464:Decryption
459:Encryption
420:Ransomware
217:2013-01-07
183:References
167:Hash table
75:hash chain
1106:iDistance
985:implicit
973:Hilbert R
968:Cartesian
851:Fibonacci
785:Scapegoat
780:Red–black
484:Plaintext
162:Hash list
1121:Link/cut
833:Binomial
760:Interval
623:Category
529:Kademlia
489:Codetext
432:(CSPRNG)
246:RSA labs
146:See also
1182:Hashing
1081:Fenwick
1045:Segment
944:Spatial
861:Pairing
856:Leftist
778:)
750:Dancing
743:)
741:Optimal
299:General
113:leaves.
52:History
1131:Merkle
1096:Fusion
1086:Finger
1010:Octree
1000:Metric
934:Y-fast
929:X-fast
919:Suffix
838:Brodal
828:Binary
410:Keygen
134:time.
109:= 1011
93:leaves
89:= 1011
1141:Range
1111:K-ary
1071:Cover
914:Radix
899:Ctrie
891:Tries
820:Heaps
800:Treap
790:Splay
755:HTree
710:(a,b)
700:2–3–4
440:(PRN)
1146:SPQR
1025:Quad
953:Ball
909:Hash
881:Weak
871:Skew
846:-ary
1151:Top
1005:MVP
963:BSP
715:AVL
695:2–3
1168::
1136:PQ
1050:VP
1040:R*
1035:R+
1015:PH
989:-d
981:-d
958:BK
805:UB
730:B*
725:B+
705:AA
244:–
107:10
87:10
48:.
16:A
1055:X
1030:R
995:M
991:)
987:k
983:(
979:k
844:d
795:T
774:(
739:(
735:B
720:B
688:)
684:/
680:(
661:e
654:t
647:v
284:e
277:t
270:v
220:.
111:2
91:2
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.