sorcery-argon2 1.0.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (96) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/codeql.yml +74 -0
  3. data/.github/workflows/ruby.yml +13 -3
  4. data/.rubocop.yml +112 -2
  5. data/CHANGELOG.md +8 -0
  6. data/MAINTAINING.md +8 -3
  7. data/README.md +155 -14
  8. data/bin/setup +4 -0
  9. data/ext/argon2_wrap/{Makefile → Makefile.real} +1 -0
  10. data/ext/argon2_wrap/extconf.rb +4 -1
  11. data/ext/argon2_wrap/libargon2_wrap.so +0 -0
  12. data/ext/argon2_wrap/tests +0 -0
  13. data/ext/phc-winner-argon2/.git +1 -0
  14. data/ext/phc-winner-argon2/.gitattributes +10 -0
  15. data/ext/phc-winner-argon2/.gitignore +22 -0
  16. data/ext/phc-winner-argon2/.travis.yml +25 -0
  17. data/ext/phc-winner-argon2/Argon2.sln +158 -0
  18. data/ext/phc-winner-argon2/CHANGELOG.md +32 -0
  19. data/ext/phc-winner-argon2/LICENSE +314 -0
  20. data/ext/phc-winner-argon2/Makefile +255 -0
  21. data/ext/phc-winner-argon2/Package.swift +46 -0
  22. data/ext/phc-winner-argon2/README.md +303 -0
  23. data/ext/phc-winner-argon2/appveyor.yml +25 -0
  24. data/ext/phc-winner-argon2/argon2-specs.pdf +0 -0
  25. data/ext/phc-winner-argon2/export.sh +7 -0
  26. data/ext/phc-winner-argon2/include/argon2.h +437 -0
  27. data/ext/phc-winner-argon2/kats/argon2d +12304 -0
  28. data/ext/phc-winner-argon2/kats/argon2d.shasum +1 -0
  29. data/ext/phc-winner-argon2/kats/argon2d_v16 +12304 -0
  30. data/ext/phc-winner-argon2/kats/argon2d_v16.shasum +1 -0
  31. data/ext/phc-winner-argon2/kats/argon2i +12304 -0
  32. data/ext/phc-winner-argon2/kats/argon2i.shasum +1 -0
  33. data/ext/phc-winner-argon2/kats/argon2i_v16 +12304 -0
  34. data/ext/phc-winner-argon2/kats/argon2i_v16.shasum +1 -0
  35. data/ext/phc-winner-argon2/kats/argon2id +12304 -0
  36. data/ext/phc-winner-argon2/kats/argon2id.shasum +1 -0
  37. data/ext/phc-winner-argon2/kats/argon2id_v16 +12304 -0
  38. data/ext/phc-winner-argon2/kats/argon2id_v16.shasum +1 -0
  39. data/ext/phc-winner-argon2/kats/check-sums.ps1 +42 -0
  40. data/ext/phc-winner-argon2/kats/check-sums.sh +13 -0
  41. data/ext/phc-winner-argon2/kats/test.ps1 +50 -0
  42. data/ext/phc-winner-argon2/kats/test.sh +49 -0
  43. data/ext/phc-winner-argon2/latex/IEEEtran.cls +6347 -0
  44. data/ext/phc-winner-argon2/latex/Makefile +18 -0
  45. data/ext/phc-winner-argon2/latex/argon2-specs.tex +920 -0
  46. data/ext/phc-winner-argon2/latex/pics/argon2-par.pdf +0 -0
  47. data/ext/phc-winner-argon2/latex/pics/compression.pdf +0 -0
  48. data/ext/phc-winner-argon2/latex/pics/generic.pdf +0 -0
  49. data/ext/phc-winner-argon2/latex/pics/power-distribution.jpg +0 -0
  50. data/ext/phc-winner-argon2/latex/tradeoff.bib +822 -0
  51. data/ext/phc-winner-argon2/libargon2.pc.in +18 -0
  52. data/ext/phc-winner-argon2/man/argon2.1 +57 -0
  53. data/ext/phc-winner-argon2/src/argon2.c +452 -0
  54. data/ext/phc-winner-argon2/src/bench.c +111 -0
  55. data/ext/phc-winner-argon2/src/blake2/blake2-impl.h +156 -0
  56. data/ext/phc-winner-argon2/src/blake2/blake2.h +89 -0
  57. data/ext/phc-winner-argon2/src/blake2/blake2b.c +390 -0
  58. data/ext/phc-winner-argon2/src/blake2/blamka-round-opt.h +471 -0
  59. data/ext/phc-winner-argon2/src/blake2/blamka-round-ref.h +56 -0
  60. data/ext/phc-winner-argon2/src/core.c +648 -0
  61. data/ext/phc-winner-argon2/src/core.h +228 -0
  62. data/ext/phc-winner-argon2/src/encoding.c +463 -0
  63. data/ext/phc-winner-argon2/src/encoding.h +57 -0
  64. data/ext/phc-winner-argon2/src/genkat.c +213 -0
  65. data/ext/phc-winner-argon2/src/genkat.h +51 -0
  66. data/ext/phc-winner-argon2/src/opt.c +283 -0
  67. data/ext/phc-winner-argon2/src/ref.c +194 -0
  68. data/ext/phc-winner-argon2/src/run.c +337 -0
  69. data/ext/phc-winner-argon2/src/test.c +289 -0
  70. data/ext/phc-winner-argon2/src/thread.c +57 -0
  71. data/ext/phc-winner-argon2/src/thread.h +67 -0
  72. data/ext/phc-winner-argon2/vs2015/Argon2Opt/Argon2Opt.vcxproj +231 -0
  73. data/ext/phc-winner-argon2/vs2015/Argon2Opt/Argon2Opt.vcxproj.filters +69 -0
  74. data/ext/phc-winner-argon2/vs2015/Argon2OptBench/Argon2OptBench.vcxproj +231 -0
  75. data/ext/phc-winner-argon2/vs2015/Argon2OptBench/Argon2OptBench.vcxproj.filters +69 -0
  76. data/ext/phc-winner-argon2/vs2015/Argon2OptDll/Argon2OptDll.vcxproj +230 -0
  77. data/ext/phc-winner-argon2/vs2015/Argon2OptDll/Argon2OptDll.vcxproj.filters +66 -0
  78. data/ext/phc-winner-argon2/vs2015/Argon2OptGenKAT/Argon2OptGenKAT.vcxproj +244 -0
  79. data/ext/phc-winner-argon2/vs2015/Argon2OptGenKAT/Argon2OptGenKAT.vcxproj.filters +72 -0
  80. data/ext/phc-winner-argon2/vs2015/Argon2OptTestCI/Argon2OptTestCI.vcxproj +235 -0
  81. data/ext/phc-winner-argon2/vs2015/Argon2OptTestCI/Argon2OptTestCI.vcxproj.filters +69 -0
  82. data/ext/phc-winner-argon2/vs2015/Argon2Ref/Argon2Ref.vcxproj +243 -0
  83. data/ext/phc-winner-argon2/vs2015/Argon2Ref/Argon2Ref.vcxproj.filters +69 -0
  84. data/ext/phc-winner-argon2/vs2015/Argon2RefBench/Argon2RefBench.vcxproj +231 -0
  85. data/ext/phc-winner-argon2/vs2015/Argon2RefBench/Argon2RefBench.vcxproj.filters +69 -0
  86. data/ext/phc-winner-argon2/vs2015/Argon2RefDll/Argon2RefDll.vcxproj +230 -0
  87. data/ext/phc-winner-argon2/vs2015/Argon2RefDll/Argon2RefDll.vcxproj.filters +66 -0
  88. data/ext/phc-winner-argon2/vs2015/Argon2RefGenKAT/Argon2RefGenKAT.vcxproj +232 -0
  89. data/ext/phc-winner-argon2/vs2015/Argon2RefGenKAT/Argon2RefGenKAT.vcxproj.filters +72 -0
  90. data/ext/phc-winner-argon2/vs2015/Argon2RefTestCI/Argon2RefTestCI.vcxproj +231 -0
  91. data/ext/phc-winner-argon2/vs2015/Argon2RefTestCI/Argon2RefTestCI.vcxproj.filters +69 -0
  92. data/lib/argon2/ffi_engine.rb +4 -4
  93. data/lib/argon2/password.rb +28 -5
  94. data/lib/argon2/version.rb +1 -1
  95. data/sorcery-argon2.gemspec +3 -2
  96. metadata +91 -8
@@ -0,0 +1,822 @@
1
+ @article{hellman1980cryptanalytic,
2
+ title={A cryptanalytic time-memory trade-off},
3
+ author={Hellman, Martin E},
4
+ journal={Information Theory, IEEE Transactions on},
5
+ volume={26},
6
+ number={4},
7
+ pages={401--406},
8
+ year={1980},
9
+ publisher={IEEE}
10
+ }
11
+
12
+
13
+ @inproceedings{DworkN92,
14
+ author = {Cynthia Dwork and
15
+ Moni Naor},
16
+ title = {Pricing via Processing or Combatting Junk Mail},
17
+ booktitle = {CRYPTO'92},
18
+ series = {Lecture Notes in Computer Science},
19
+ volume = {740},
20
+ pages = {139--147},
21
+ publisher = {Springer},
22
+ year = {1992},
23
+ timestamp = {Fri, 18 Sep 2009 10:18:29 +0200},
24
+ biburl = {http://dblp.uni-trier.de/rec/bib/conf/crypto/DworkN92},
25
+ bibsource = {dblp computer science bibliography, http://dblp.org}
26
+ }
27
+
28
+ @article{Sudan97,
29
+ author = {Madhu Sudan},
30
+ title = {Decoding of {Reed Solomon} Codes beyond the Error-Correction Bound},
31
+ journal = {J. Complexity},
32
+ volume = {13},
33
+ number = {1},
34
+ pages = {180--193},
35
+ year = {1997},
36
+ url = {http://dx.doi.org/10.1006/jcom.1997.0439},
37
+ doi = {10.1006/jcom.1997.0439},
38
+ timestamp = {Thu, 10 Nov 2005 11:26:57 +0100},
39
+ biburl = {http://dblp.uni-trier.de/rec/bib/journals/jc/Sudan97},
40
+ bibsource = {dblp computer science bibliography, http://dblp.org}
41
+ }
42
+
43
+ @article{OorschotW99,
44
+ author = {Paul C. van Oorschot and
45
+ Michael J. Wiener},
46
+ title = {Parallel Collision Search with Cryptanalytic Applications},
47
+ journal = {J. Cryptology},
48
+ volume = {12},
49
+ number = {1},
50
+ pages = {1--28},
51
+ year = {1999},
52
+ url = {http://dx.doi.org/10.1007/PL00003816},
53
+ doi = {10.1007/PL00003816},
54
+ timestamp = {Tue, 24 May 2011 14:18:06 +0200},
55
+ biburl = {http://dblp.uni-trier.de/rec/bib/journals/joc/OorschotW99},
56
+ bibsource = {dblp computer science bibliography, http://dblp.org}
57
+ }
58
+
59
+ @inproceedings{JakobssonJ99,
60
+ author = {Markus Jakobsson and
61
+ Ari Juels},
62
+ editor = {Bart Preneel},
63
+ title = {Proofs of Work and Bread Pudding Protocols},
64
+ booktitle = {Secure Information Networks: Communications and Multimedia Security,
65
+ {IFIP} {TC6/TC11} Joint Working Conference on Communications and Multimedia
66
+ Security {(CMS} '99), September 20-21, 1999, Leuven, Belgium},
67
+ series = {{IFIP} Conference Proceedings},
68
+ volume = {152},
69
+ pages = {258--272},
70
+ publisher = {Kluwer},
71
+ year = {1999},
72
+ timestamp = {Mon, 14 Oct 2002 12:00:15 +0200},
73
+ biburl = {http://dblp.uni-trier.de/rec/bib/conf/cms/JakobssonJ99},
74
+ bibsource = {dblp computer science bibliography, http://dblp.org}
75
+ }
76
+
77
+
78
+
79
+ @MANUAL{FIPS-197,
80
+ TITLE = {{FIPS}-197: {Advanced Encryption Standard}},
81
+ organization = {{N}ational {I}nstitute of {S}tandards and {T}echnology ({NIST}), available at \url{http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf}},
82
+ month = {November},
83
+ year = {2001},
84
+ }
85
+
86
+
87
+
88
+ @BOOK{DR02,
89
+ AUTHOR = {Joan Daemen and Vincent Rijmen},
90
+ TITLE = {The Design of {Rijndael}. {AES}~--- the {Advanced Encryption Standard}},
91
+ PUBLISHER = {Springer},
92
+ YEAR = {2002}
93
+ }
94
+
95
+
96
+ @misc{back2002hashcash,
97
+ title={Hashcash -- a denial of service counter-measure},
98
+ author={Back, Adam},
99
+ year={2002},
100
+ note ={available at \url{http://www.hashcash.org/papers/hashcash.pdf}}
101
+ }
102
+
103
+
104
+ @inproceedings{DworkGN03,
105
+ author = {Cynthia Dwork and
106
+ Andrew Goldberg and
107
+ Moni Naor},
108
+ title = {On Memory-Bound Functions for Fighting Spam},
109
+ booktitle = {CRYPTO'03},
110
+ year = {2003},
111
+ pages = {426--444},
112
+ series = {Lecture Notes in Computer Science},
113
+ volume = {2729},
114
+ publisher = {Springer}
115
+ }
116
+
117
+
118
+ @MANUAL{sha3,
119
+ author = {NIST},
120
+ title = {SHA-3 competition},
121
+ year = {2007},
122
+ note = {\url{http://csrc.nist.gov/groups/ST/hash/sha-3/index.html‎}}
123
+ }
124
+
125
+ @book{robshaw2008new,
126
+ title={New stream cipher designs: the eSTREAM finalists},
127
+ author={Robshaw, Matthew and Billet, Olivier},
128
+ volume={4986},
129
+ year={2008},
130
+ publisher={Springer}
131
+ }
132
+
133
+
134
+
135
+ @misc{percival2009stronger,
136
+ title={Stronger key derivation via sequential memory-hard functions},
137
+ author={Percival, Colin},
138
+ note={\url{http://www.tarsnap.com/scrypt/scrypt.pdf}},
139
+ year={2009}
140
+ }
141
+
142
+
143
+ @misc{litecoin,
144
+ title = {Litecoin - Open source P2P digital currency},
145
+ author = {Charles Lee},
146
+ year = {2011},
147
+ note = {\url{https://litecoin.org/‎}},
148
+ howpublished = {\url{https://bitcointalk.org/index.php?topic=47417.0}}
149
+ }
150
+
151
+
152
+
153
+ @MANUAL{ietf-scrypt,
154
+ title = {IETF Draft: The scrypt Password-Based Key Derivation Function},
155
+ year = {2012},
156
+ note = {\url{
157
+ https://tools.ietf.org/html/draft-josefsson-scrypt-kdf-02}}
158
+ }
159
+
160
+
161
+ @MISC{story,
162
+ year=2012,
163
+ title = {Password security: past, present, future},
164
+ note = {\url{http://www.openwall.com/presentations/Passwords12-The-Future-Of-Hashing/}}
165
+ }
166
+
167
+ @article{DziembowskiFKP13,
168
+ author = {Stefan Dziembowski and
169
+ Sebastian Faust and
170
+ Vladimir Kolmogorov and
171
+ Krzysztof Pietrzak},
172
+ title = {Proofs of Space},
173
+ journal = {IACR Cryptology ePrint Archive 2013/796},
174
+ note = {to appear at Crypto'15}
175
+ }
176
+
177
+ @MISC{momentum,
178
+ year = {2013},
179
+ title = {Momentum: a memory-hard proof-of-work},
180
+ note = {\url{http://www.hashcash.org/papers/momentum.pdf}}
181
+ }
182
+
183
+
184
+ @MISC{ebay,
185
+ year = {2014},
186
+ title = {{eBay} hacked, requests all users change passwords},
187
+ note = {\url{http://www.cnet.com/news/ebay-hacked-requests-all-users-change-passwords/}}
188
+ }
189
+
190
+ @TECHREPORT{yescrypt,
191
+ author = {Alexander Peslyak },
192
+ title = {Yescrypt - a Password Hashing Competition submission},
193
+ year = {2014},
194
+ note = {available at \url{https://password-hashing.net/submissions/specs/yescrypt-v0.pdf}}
195
+ }
196
+
197
+
198
+
199
+
200
+
201
+
202
+ @MISC{bitasic,
203
+ title = {Avalon ASIC's 40nm Chip to Bring Hashing Boost for Less Power},
204
+ year = {2014},
205
+ note = {\url{ http://www.coindesk.com/avalon-asics-40nm-chip-bring-hashing-boost-less-power/}}
206
+ }
207
+
208
+ @MISC{comp,
209
+ title = {{Password Hashing Competition}},
210
+ year = 2015,
211
+ note = {\url{https://password-hashing.net/}}
212
+ }
213
+
214
+
215
+
216
+
217
+ @MANUAL{vertcoin,
218
+ title = {Vertcoin: Lyra2RE reference guide},
219
+ year = {2014},
220
+ note = {\url{https://vertcoin.org/downloads/Vertcoin_Lyra2RE_Paper_11292014.pdf}}
221
+ }
222
+
223
+
224
+
225
+ @MANUAL{FIPS-180-4,
226
+ TITLE = {{FIPS}-180-4: {Secure Hash Standard}},
227
+ organization = {{N}ational {I}nstitute of {S}tandards and {T}echnology ({NIST})},
228
+ note={available at \url{http://csrc.nist.gov/publications/fips/fips180-4/fips-180-4.pdf}},
229
+ month = {March},
230
+ year = {2012},
231
+ }
232
+
233
+
234
+
235
+
236
+
237
+ @article{gueronaes,
238
+ title={AES-GCM software performance on the current high end CPUs as a performance baseline for CAESAR competition},
239
+ author={Gueron, Shay},
240
+ year={2013},
241
+ note={\url{http://2013.diac.cr.yp.to/slides/gueron.pdf}}
242
+ }
243
+
244
+
245
+ @inproceedings{norwayTrade,
246
+ author = {Donghoon Chang and Arpan Jati and Sweta Mishra and Somitra Kumar Sanadhya},
247
+ title = {Time Memory Tradeoff Analysis of Graphs in Password
248
+ Hashing Constructions},
249
+ booktitle = {Preproceedings of PASSWORDS'14},
250
+ year = {2014},
251
+ pages = {256-266},
252
+ note={available at \url{http://passwords14.item.ntnu.no/Preproceedings_Passwords14.pdf}}
253
+ }
254
+
255
+
256
+ @inproceedings{BogdanovKLTVV11,
257
+ author = {Andrey Bogdanov and
258
+ Miroslav Knezevic and
259
+ Gregor Leander and
260
+ Deniz Toz and
261
+ Kerem Varici and
262
+ Ingrid Verbauwhede},
263
+ title = {Spongent: A Lightweight Hash Function},
264
+ booktitle = {CHES'11},
265
+ year = {2011},
266
+ pages = {312-325},
267
+ publisher = {Springer},
268
+ series = {Lecture Notes in Computer Science},
269
+ volume = {6917}
270
+ }
271
+
272
+ @misc{cryptoeprint:2014:881,
273
+ author = {Christian Forler and Eik List and Stefan Lucks and Jakob Wenzel},
274
+ title = {Overview of the Candidates for the Password Hashing Competition - And Their Resistance Against Garbage-Collector Attacks},
275
+ howpublished = {Cryptology ePrint Archive, Report 2014/881},
276
+ year = {2014},
277
+ note = {\url{http://eprint.iacr.org/}},
278
+ }
279
+
280
+ @TECHREPORT{Daemen13,
281
+ author = {Joan Daemen},
282
+ title = {Permutation-based symmetric cryptography
283
+ and
284
+ {Keccak}},
285
+ institution = {Ecrypt II, Crypto for 2020 Invited Talk},
286
+ year = {2013},
287
+ note={\url{https://www.cosic.esat.kuleuven.be/ecrypt/cryptofor2020/slides/KeccakEcryptTenerife.pdf}}
288
+ }
289
+
290
+ @inproceedings{AumassonHMN10,
291
+ author = {Jean-Philippe Aumasson and
292
+ Luca Henzen and
293
+ Willi Meier and
294
+ Mar\'{\i}a Naya-Plasencia},
295
+ title = {Quark: A Lightweight Hash},
296
+ booktitle = {CHES'10},
297
+ year = {2010},
298
+ pages = {1-15},
299
+ publisher = {Springer},
300
+ series = {Lecture Notes in Computer Science},
301
+ volume = {6225},
302
+ note= {\url{https://131002.net/quark/quark_full.pdf}}
303
+ }
304
+
305
+ @inproceedings{knudsen1998analysis,
306
+ title={Analysis methods for (alleged) {RC4}},
307
+ author={Knudsen, Lars R and Meier, Willi and Preneel, Bart and Rijmen, Vincent and Verdoolaege, Sven},
308
+ booktitle={Advances in Cryptology—ASIACRYPT’98},
309
+ pages={327--341},
310
+ year={1998},
311
+ organization={Springer}
312
+ }
313
+
314
+
315
+ @report{Keccak-ref,
316
+ author = {Guido Bertoni and
317
+ Joan Daemen and
318
+ Michael Peeters and
319
+ Gilles Van Assche},
320
+ title = {The {Keccak} reference, version 3.0},
321
+ year = {2011},
322
+ note = {\url{http://keccak.noekeon.org/Keccak-reference-3.0.pdf}}
323
+ }
324
+
325
+
326
+
327
+ @inproceedings{DworkNW05,
328
+ author = {Cynthia Dwork and
329
+ Moni Naor and
330
+ Hoeteck Wee},
331
+ title = {Pebbling and Proofs of Work},
332
+ booktitle = {{CRYPTO}'05},
333
+ year = {2005},
334
+ pages = {37--54},
335
+ series = {Lecture Notes in Computer Science},
336
+ volume = {3621},
337
+ publisher = {Springer}
338
+ }
339
+
340
+ @inproceedings{FiatS86,
341
+ author = {Amos Fiat and
342
+ Adi Shamir},
343
+ editor = {Andrew M. Odlyzko},
344
+ title = {How to Prove Yourself: Practical Solutions to Identification and Signature
345
+ Problems},
346
+ booktitle = {Advances in Cryptology - {CRYPTO} '86, Santa Barbara, California,
347
+ USA, 1986, Proceedings},
348
+ series = {Lecture Notes in Computer Science},
349
+ volume = {263},
350
+ pages = {186--194},
351
+ publisher = {Springer},
352
+ year = {1986},
353
+ url = {http://dx.doi.org/10.1007/3-540-47721-7_12},
354
+ doi = {10.1007/3-540-47721-7_12},
355
+ timestamp = {Fri, 18 Sep 2009 08:01:49 +0200},
356
+ biburl = {http://dblp.uni-trier.de/rec/bib/conf/crypto/FiatS86},
357
+ bibsource = {dblp computer science bibliography, http://dblp.org}
358
+ }
359
+
360
+
361
+ @article{HopcroftPV77,
362
+ author = {John E. Hopcroft and
363
+ Wolfgang J. Paul and
364
+ Leslie G. Valiant},
365
+ title = {On Time Versus Space},
366
+ journal = {J. ACM},
367
+ volume = {24},
368
+ number = {2},
369
+ year = {1977},
370
+ pages = {332-337},
371
+ ee = {http://doi.acm.org/10.1145/322003.322015},
372
+ bibsource = {DBLP, http://dblp.uni-trier.de}
373
+ }
374
+
375
+ @article{PaulTC77,
376
+ author = {Wolfgang J. Paul and
377
+ Robert Endre Tarjan and
378
+ James R. Celoni},
379
+ title = {Space Bounds for a Game on Graphs},
380
+ journal = {Mathematical Systems Theory},
381
+ volume = {10},
382
+ year = {1977},
383
+ pages = {239-251},
384
+ ee = {http://dx.doi.org/10.1007/BF01683275},
385
+ bibsource = {DBLP, http://dblp.uni-trier.de}
386
+ }
387
+
388
+ @article{LengauerT82,
389
+ author = {Thomas Lengauer and
390
+ Robert Endre Tarjan},
391
+ title = {Asymptotically tight bounds on time-space trade-offs in
392
+ a pebble game},
393
+ journal = {J. ACM},
394
+ volume = {29},
395
+ number = {4},
396
+ year = {1982},
397
+ pages = {1087-1130},
398
+ ee = {http://doi.acm.org/10.1145/322344.322354},
399
+ bibsource = {DBLP, http://dblp.uni-trier.de}
400
+ }
401
+
402
+ @article{AlwenS14,
403
+ author = {Jo{\"e}l Alwen and
404
+ Vladimir Serbinenko},
405
+ title = {High Parallel Complexity Graphs and Memory-Hard Functions},
406
+ journal = {IACR Cryptology ePrint Archive 2014/238}
407
+ }
408
+
409
+ @TECHREPORT{Bernstein05,
410
+ author = {Daniel J. Bernstein},
411
+ title = {Cache-timing
412
+ attacks
413
+ on
414
+ AES},
415
+ year = {2005},
416
+ note = {\url{http://cr.yp.to/antiforgery/cachetiming-20050414.pdf}}
417
+ }
418
+
419
+ @inproceedings{trade-att,
420
+ author = {Alex Biryukov and
421
+ Dmitry Khovratovich},
422
+ editor = {Tetsu Iwata and
423
+ Jung Hee Cheon},
424
+ title = {Tradeoff Cryptanalysis of Memory-Hard Functions},
425
+ booktitle = {Advances in Cryptology - {ASIACRYPT} 2015 },
426
+ series = {Lecture Notes in Computer Science},
427
+ volume = {9453},
428
+ pages = {633--657},
429
+ publisher = {Springer},
430
+ year = {2015},
431
+ }
432
+
433
+ @TECHREPORT{Argon2,
434
+ author = {Alex Biryukov and Daniel Dinu and Dmitry Khovratovich},
435
+ title = {Argon2},
436
+ year = {2015},
437
+ note = {\url{https://www.cryptolux.org/images/0/0d/Argon2.pdf}}
438
+ }
439
+
440
+ @MISC{BSTY,
441
+ title = {GlobalBoost announces a yescrypt-based cryptocurrency},
442
+ note = {\url{https://bitcointalk.org/index.php?topic=775289.0}}
443
+ }
444
+
445
+ @article{ForlerLW13,
446
+ author = {Christian Forler and
447
+ Stefan Lucks and
448
+ Jakob Wenzel},
449
+ title = {Catena: A Memory-Consuming Password Scrambler},
450
+ journal = {IACR Cryptology ePrint Archive, Report 2013/525},
451
+ year = {2013},
452
+ note = {non-tweaked version \url{http://eprint.iacr.org/2013/525/20140105:194859}}
453
+ }
454
+
455
+ @misc{broz15,
456
+ year = 2015,
457
+ author = {Milan Broz},
458
+ title = {PHC benchmarks},
459
+ note = {\url{https://github.com/mbroz/PHCtest/blob/master/output/phc\_round2.pdf}}
460
+ }
461
+
462
+ @inproceedings{ForlerLW14,
463
+ author = {Christian Forler and
464
+ Stefan Lucks and
465
+ Jakob Wenzel},
466
+ title = {Memory-Demanding Password Scrambling},
467
+ booktitle = {{ASIACRYPT}'14},
468
+ series = {Lecture Notes in Computer Science},
469
+ volume = {8874},
470
+ pages = {289--305},
471
+ publisher = {Springer},
472
+ year = {2014},
473
+ note = {tweaked version of \cite{ForlerLW13}}
474
+ }
475
+
476
+ @article{ParkPAFG15,
477
+ author = {Sunoo Park and
478
+ Krzysztof Pietrzak and
479
+ Jo{\"{e}}l Alwen and
480
+ Georg Fuchsbauer and
481
+ Peter Gazi},
482
+ title = {Spacecoin: {A} Cryptocurrency Based on Proofs of Space},
483
+ journal = {{IACR} Cryptology ePrint Archive},
484
+ volume = {2015},
485
+ pages = {528},
486
+ year = {2015},
487
+ url = {http://eprint.iacr.org/2015/528},
488
+ timestamp = {Fri, 26 Jun 2015 09:49:58 +0200},
489
+ biburl = {http://dblp.uni-trier.de/rec/bib/journals/iacr/ParkPAFG15},
490
+ bibsource = {dblp computer science bibliography, http://dblp.org}
491
+ }
492
+
493
+
494
+
495
+
496
+
497
+ @inproceedings{BiryukovS01,
498
+ author = {Alex Biryukov and
499
+ Adi Shamir},
500
+ title = {Structural Cryptanalysis of {SASAS}},
501
+ booktitle = {EUROCRYPT'01},
502
+ year = {2001}
503
+ }
504
+
505
+ @inproceedings{RistenpartTSS09,
506
+ author = {Thomas Ristenpart and
507
+ Eran Tromer and
508
+ Hovav Shacham and
509
+ Stefan Savage},
510
+ title = {Hey, you, get off of my cloud: exploring information leakage in third-party
511
+ compute clouds},
512
+ booktitle = {ACM {CCS}'09},
513
+ year = {2009},
514
+ pages = {199--212}
515
+ }
516
+
517
+ @MISC{bitcoin,
518
+ title = {Bitcoin: Mining hardware comparison},
519
+ year={2014},
520
+ note = {available at \url{https://en.bitcoin.it/wiki/Mining_hardware_comparison}. We compare $2^{32}$ hashes per joule on the best ASICs with $2^{17}$ hashes per joule on the most efficient x86-laptops.}
521
+ }
522
+
523
+
524
+ @MISC{litecoin-comp,
525
+ title = {Litecoin: Mining hardware comparison},
526
+ note = {\url{https://litecoin.info/Mining_hardware_comparison}}
527
+ }
528
+
529
+
530
+ @article{AbadiBMW05,
531
+ author = {Mart{\'{\i}}n Abadi and
532
+ Michael Burrows and
533
+ Mark S. Manasse and
534
+ Ted Wobber},
535
+ title = {Moderately hard, memory-bound functions},
536
+ journal = {{ACM} Trans. Internet Techn.},
537
+ year = {2005},
538
+ volume = {5},
539
+ number = {2},
540
+ pages = {299--327},
541
+ url = {http://doi.acm.org/10.1145/1064340.1064341},
542
+ doi = {10.1145/1064340.1064341},
543
+ timestamp = {Tue, 09 Sep 2014 16:27:47 +0200},
544
+ biburl = {http://dblp.uni-trier.de/rec/bib/journals/toit/AbadiBMW05},
545
+ bibsource = {dblp computer science bibliography, http://dblp.org}
546
+ }
547
+
548
+ @article{Pippenger77,
549
+ author = {Nicholas Pippenger},
550
+ title = {Superconcentrators},
551
+ journal = {{SIAM} J. Comput.},
552
+ year = {1977},
553
+ volume = {6},
554
+ number = {2},
555
+ pages = {298--304},
556
+ url = {http://dx.doi.org/10.1137/0206022},
557
+ doi = {10.1137/0206022},
558
+ timestamp = {Tue, 09 Sep 2014 16:52:40 +0200},
559
+ biburl = {http://dblp.uni-trier.de/rec/bib/journals/siamcomp/Pippenger77},
560
+ bibsource = {dblp computer science bibliography, http://dblp.org}
561
+ }
562
+
563
+ @TECHREPORT{lyra,
564
+ author = {Marcos A. Simplicio Jr and Leonardo C. Almeida and Ewerton R. Andrade and Paulo C. F. dos Santos and Paulo S. L. M. Barreto},
565
+ title = {The {Lyra2} reference guide, version 2.3.2},
566
+ year = {2014},
567
+ month = {april},
568
+ note = {available at \url{http://lyra-kdf.net/Lyra2ReferenceGuide_v1.pdf}},
569
+ }
570
+
571
+
572
+ @inproceedings{Thompson79,
573
+ author = {Clark D. Thompson},
574
+ title = {Area-Time Complexity for {VLSI}},
575
+ booktitle = {STOC'79},
576
+ pages = {81--88},
577
+ year = {1979},
578
+ publisher = {{ACM}}
579
+ }
580
+
581
+ @TECHREPORT{pomelo,
582
+ author = {Hongjun Wu},
583
+ title = {{POMELO}:
584
+ A Password Hashing Algorithm},
585
+ year = {2014},
586
+ note = {available at \url{https://password-hashing.net/submissions/specs/POMELO-v1.pdf}},
587
+ }
588
+
589
+
590
+ @inproceedings{knudsen1998analysis,
591
+ title={Analysis methods for (alleged) {RC4}},
592
+ author={Knudsen, Lars R and Meier, Willi and Preneel, Bart and Rijmen, Vincent and Verdoolaege, Sven},
593
+ booktitle={Advances in Cryptology—ASIACRYPT’98},
594
+ pages={327--341},
595
+ year={1998},
596
+ organization={Springer}
597
+ }
598
+
599
+ @MISC{fpga,
600
+ title = {Energy-efficient bcrypt cracking},
601
+ author={Katja Malvoni},
602
+ note = {Passwords'14 conference, available at \url{http://www.openwall.com/presentations/Passwords14-Energy-Efficient-Cracking/}}
603
+ }
604
+
605
+
606
+ @MISC{ripper,
607
+ title = {Software tool: {John the Ripper} password cracker},
608
+ note = {\url{http://www.openwall.com/john/}}
609
+ }
610
+
611
+ @MISC{sharcs,
612
+ title = {{SHARCS} -- Special-purpose Hardware for Attacking Cryptographic Systems},
613
+ note = {\url{http://www.sharcs.org/}}
614
+ }
615
+
616
+ @article{Wiener04,
617
+ author = {Michael J. Wiener},
618
+ title = {The Full Cost of Cryptanalytic Attacks},
619
+ journal = {J. Cryptology},
620
+ year = {2004},
621
+ volume = {17},
622
+ number = {2},
623
+ pages = {105--124},
624
+ url = {http://dx.doi.org/10.1007/s00145-003-0213-5},
625
+ doi = {10.1007/s00145-003-0213-5},
626
+ timestamp = {Sat, 27 Sep 2014 18:00:09 +0200},
627
+ biburl = {http://dblp.uni-trier.de/rec/bib/journals/joc/Wiener04},
628
+ bibsource = {dblp computer science bibliography, http://dblp.org}
629
+ }
630
+
631
+
632
+
633
+
634
+
635
+ @inproceedings{MukhopadhyayS06,
636
+ author = {Sourav Mukhopadhyay and
637
+ Palash Sarkar},
638
+ title = {On the Effectiveness of {TMTO} and Exhaustive Search Attacks},
639
+ booktitle = {{IWSEC} 2006},
640
+ year = {2006},
641
+ pages = {337--352},
642
+ series = {Lecture Notes in Computer Science},
643
+ volume = {4266},
644
+ publisher = {Springer}
645
+ }
646
+
647
+
648
+
649
+ @inproceedings{SprengerB12,
650
+ author = {Martijn Sprengers and Lejla Batina},
651
+ title = {Speeding up {GPU-based} password cracking},
652
+ booktitle = {SHARCS'12},
653
+ year = {2012},
654
+ note = {available at \url{http://2012.sharcs.org/record.pdf}}
655
+ }
656
+
657
+ @article{nakamoto2012bitcoin,
658
+ title={Bitcoin: A peer-to-peer electronic cash system},
659
+ author={Nakamoto, Satoshi},
660
+ note={\url{http://www. bitcoin.org/bitcoin.pdf}},
661
+ year={2009}
662
+ }
663
+
664
+
665
+
666
+ @inproceedings{BernsteinL13,
667
+ author = {Daniel J. Bernstein and
668
+ Tanja Lange},
669
+ title = {Non-uniform Cracks in the Concrete: The Power of Free Precomputation},
670
+ booktitle = {ASIACRYPT'13},
671
+ year = {2013},
672
+ pages = {321--340},
673
+ series = {Lecture Notes in Computer Science},
674
+ volume = {8270},
675
+ publisher = {Springer}
676
+ }
677
+
678
+
679
+
680
+ @inproceedings{AumassonNWW13,
681
+ author = {Jean{-}Philippe Aumasson and
682
+ Samuel Neves and
683
+ Zooko Wilcox{-}O'Hearn and
684
+ Christian Winnerlein},
685
+ title = {{BLAKE2:} Simpler, Smaller, Fast as {MD5}},
686
+ booktitle = {{ACNS}'13},
687
+ pages = {119--135},
688
+ series = {Lecture Notes in Computer Science},
689
+ year = {2013},
690
+ volume = {7954},
691
+ publisher = {Springer}
692
+ }
693
+
694
+
695
+ @article{liu2013parallel,
696
+ author = {Bin Liu and Bevan M. Baas},
697
+ title = {Parallel {AES} Encryption Engines for Many-Core Processor Arrays},
698
+ journal = {{IEEE} Transactions on Computers},
699
+ year = {2013},
700
+ volume = {62},
701
+ number = {3},
702
+ pages = {536--547},
703
+ month = mar,
704
+ }
705
+
706
+ @article{ForlerLLW14,
707
+ author = {Christian Forler and
708
+ Eik List and
709
+ Stefan Lucks and
710
+ Jakob Wenzel},
711
+ title = {Overview of the Candidates for the Password Hashing Competition -
712
+ And their Resistance against Garbage-Collector Attacks},
713
+ journal = {{IACR} Cryptology ePrint Archive},
714
+ volume = {2014},
715
+ pages = {881},
716
+ year = {2014},
717
+ url = {http://eprint.iacr.org/2014/881},
718
+ timestamp = {Sat, 02 Mar 4439591 14:05:04 +},
719
+ biburl = {http://dblp.uni-trier.de/rec/bib/journals/iacr/ForlerLLW14},
720
+ bibsource = {dblp computer science bibliography, http://dblp.org}
721
+ }
722
+
723
+ @inproceedings{gurkaynak2012sha3,
724
+ author = {Frank G{\"{u}}rkaynak and Kris Gaj and Beat Muheim and Ekawat Homsirikamol and Christoph Keller and Marcin Rogawski and Hubert Kaeslin and Jens-Peter Kaps},
725
+ title = {Lessons Learned from Designing a 65nm {ASIC} for Evaluating Third Round {SHA-3} Candidates},
726
+ booktitle = {Third SHA-3 Candidate Conference},
727
+ month = mar,
728
+ year = {2012}
729
+ }
730
+
731
+ @inproceedings{giridhar2013dram,
732
+ author = {Bharan Giridhar and Michael Cieslak and Deepankar Duggal and Ronald G. Dreslinski and Hsing Min Chen and Robert Patti and Betina Hold and Chaitali Chakrabarti and Trevor N. Mudge and David Blaauw},
733
+ title = {Exploring {DRAM} organizations for energy-efficient and resilient
734
+ exascale memories},
735
+ booktitle = {International Conference for High Performance Computing, Networking,
736
+ Storage and Analysis (SC 2013)},
737
+ year = {2013},
738
+ pages = {23--35},
739
+ publisher = {ACM},
740
+ }
741
+
742
+ @inproceedings{BertoniDPA11,
743
+ author = {Guido Bertoni and
744
+ Joan Daemen and
745
+ Michael Peeters and
746
+ Gilles Van Assche},
747
+ title = {Duplexing the Sponge: Single-Pass Authenticated Encryption and Other
748
+ Applications},
749
+ booktitle = {{SAC}'11,},
750
+ series = {Lecture Notes in Computer Science},
751
+ volume = {7118},
752
+ pages = {320--337},
753
+ publisher = {Springer},
754
+ year = {2011}
755
+ }
756
+
757
+ @inproceedings{Rig,
758
+ author = {Donghoon Chang and Arpan Jati and Sweta Mishra and Somitra Sanadhya},
759
+ title = {Rig: A simple, secure and flexible design for Password Hashing},
760
+ booktitle = {Inscrypt'14},
761
+ series = {Lecture Notes in Computer Science, to appear},
762
+ publisher = {Springer},
763
+ year = {2014}
764
+ }
765
+
766
+ @article{BiryukovP14,
767
+ author = {Alex Biryukov and
768
+ Ivan Pustogarov},
769
+ title = {Proof-of-Work as Anonymous Micropayment: Rewarding a {Tor} Relay},
770
+ journal = {{IACR} Cryptology ePrint Archive 2014/1011},
771
+ note= {to appear at Financial Cryptography 2015},
772
+ url = {http://eprint.iacr.org/2014/1011},
773
+ timestamp = {Mon, 19 Jan 2015 11:11:51 +0100},
774
+ biburl = {http://dblp.uni-trier.de/rec/bib/journals/iacr/BiryukovP14},
775
+ bibsource = {dblp computer science bibliography, http://dblp.org}
776
+ }
777
+
778
+
779
+ @misc{Andersen14,
780
+ author = {David Andersen},
781
+ title = {A Public Review of Cuckoo Cycle},
782
+ howpublished = {\url{http://www.cs.cmu.edu/~dga/crypto/cuckoo/analysis.pdf}},
783
+ year = {2014}
784
+ }
785
+
786
+ @misc{Tromp14,
787
+ author = {John Tromp},
788
+ title = {Cuckoo Cycle: a memory bound graph-theoretic proof-of-work},
789
+ howpublished = {Cryptology ePrint Archive, Report 2014/059},
790
+ year = {2014},
791
+ note = {\url{http://eprint.iacr.org/2014/059}, project webpage \url{https://github.com/tromp/cuckoo}},
792
+ }
793
+
794
+ @misc{cryptoeprint:2015:136,
795
+ author = {Marcos A. Simplicio Jr. and Leonardo C. Almeida and Ewerton R. Andrade and Paulo C. F. dos Santos and Paulo S. L. M. Barreto},
796
+ title = {Lyra2: Password Hashing Scheme with improved security against time-memory trade-offs},
797
+ howpublished = {Cryptology ePrint Archive, Report 2015/136},
798
+ year = {2015},
799
+ note = {\url{http://eprint.iacr.org/}},
800
+ }
801
+
802
+ @article{Corrigan-GibbsB16,
803
+ author = {Henry Corrigan{-}Gibbs and
804
+ Dan Boneh and
805
+ Stuart E. Schechter},
806
+ title = {Balloon Hashing: Provably Space-Hard Hash Functions with Data-Independent
807
+ Access Patterns},
808
+ journal = {{IACR} Cryptology ePrint Archive},
809
+ volume = {2016},
810
+ pages = {27},
811
+ year = {2016}
812
+ }
813
+
814
+
815
+ @article{AB16,
816
+ author = {Joel Alwen and Jeremiah Blocki},
817
+ title = {Efficiently Computing Data-Independent Memory-Hard Functions},
818
+ journal = {{IACR} Cryptology ePrint Archive},
819
+ volume = {2016},
820
+ pages = {115},
821
+ year = {2016}
822
+ }