argon2 2.3.0 → 2.3.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (86) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby.yml +2 -2
  3. data/Steepfile +1 -1
  4. data/argon2.gemspec +1 -1
  5. data/lib/argon2/version.rb +1 -1
  6. metadata +5 -88
  7. data/ext/argon2_wrap/argon_wrap.o +0 -0
  8. data/ext/phc-winner-argon2/.git +0 -1
  9. data/ext/phc-winner-argon2/.gitattributes +0 -10
  10. data/ext/phc-winner-argon2/.gitignore +0 -22
  11. data/ext/phc-winner-argon2/.travis.yml +0 -25
  12. data/ext/phc-winner-argon2/Argon2.sln +0 -158
  13. data/ext/phc-winner-argon2/CHANGELOG.md +0 -32
  14. data/ext/phc-winner-argon2/LICENSE +0 -314
  15. data/ext/phc-winner-argon2/Makefile +0 -255
  16. data/ext/phc-winner-argon2/Package.swift +0 -46
  17. data/ext/phc-winner-argon2/README.md +0 -303
  18. data/ext/phc-winner-argon2/appveyor.yml +0 -25
  19. data/ext/phc-winner-argon2/argon2-specs.pdf +0 -0
  20. data/ext/phc-winner-argon2/export.sh +0 -7
  21. data/ext/phc-winner-argon2/include/argon2.h +0 -437
  22. data/ext/phc-winner-argon2/kats/argon2d +0 -12304
  23. data/ext/phc-winner-argon2/kats/argon2d.shasum +0 -1
  24. data/ext/phc-winner-argon2/kats/argon2d_v16 +0 -12304
  25. data/ext/phc-winner-argon2/kats/argon2d_v16.shasum +0 -1
  26. data/ext/phc-winner-argon2/kats/argon2i +0 -12304
  27. data/ext/phc-winner-argon2/kats/argon2i.shasum +0 -1
  28. data/ext/phc-winner-argon2/kats/argon2i_v16 +0 -12304
  29. data/ext/phc-winner-argon2/kats/argon2i_v16.shasum +0 -1
  30. data/ext/phc-winner-argon2/kats/argon2id +0 -12304
  31. data/ext/phc-winner-argon2/kats/argon2id.shasum +0 -1
  32. data/ext/phc-winner-argon2/kats/argon2id_v16 +0 -12304
  33. data/ext/phc-winner-argon2/kats/argon2id_v16.shasum +0 -1
  34. data/ext/phc-winner-argon2/kats/check-sums.ps1 +0 -42
  35. data/ext/phc-winner-argon2/kats/check-sums.sh +0 -13
  36. data/ext/phc-winner-argon2/kats/test.ps1 +0 -50
  37. data/ext/phc-winner-argon2/kats/test.sh +0 -49
  38. data/ext/phc-winner-argon2/latex/IEEEtran.cls +0 -6347
  39. data/ext/phc-winner-argon2/latex/Makefile +0 -18
  40. data/ext/phc-winner-argon2/latex/argon2-specs.tex +0 -920
  41. data/ext/phc-winner-argon2/latex/pics/argon2-par.pdf +0 -0
  42. data/ext/phc-winner-argon2/latex/pics/compression.pdf +0 -0
  43. data/ext/phc-winner-argon2/latex/pics/generic.pdf +0 -0
  44. data/ext/phc-winner-argon2/latex/pics/power-distribution.jpg +0 -0
  45. data/ext/phc-winner-argon2/latex/tradeoff.bib +0 -822
  46. data/ext/phc-winner-argon2/libargon2.pc.in +0 -18
  47. data/ext/phc-winner-argon2/man/argon2.1 +0 -57
  48. data/ext/phc-winner-argon2/src/argon2.c +0 -452
  49. data/ext/phc-winner-argon2/src/bench.c +0 -111
  50. data/ext/phc-winner-argon2/src/blake2/blake2-impl.h +0 -156
  51. data/ext/phc-winner-argon2/src/blake2/blake2.h +0 -89
  52. data/ext/phc-winner-argon2/src/blake2/blake2b.c +0 -390
  53. data/ext/phc-winner-argon2/src/blake2/blamka-round-opt.h +0 -471
  54. data/ext/phc-winner-argon2/src/blake2/blamka-round-ref.h +0 -56
  55. data/ext/phc-winner-argon2/src/core.c +0 -648
  56. data/ext/phc-winner-argon2/src/core.h +0 -228
  57. data/ext/phc-winner-argon2/src/encoding.c +0 -463
  58. data/ext/phc-winner-argon2/src/encoding.h +0 -57
  59. data/ext/phc-winner-argon2/src/genkat.c +0 -213
  60. data/ext/phc-winner-argon2/src/genkat.h +0 -51
  61. data/ext/phc-winner-argon2/src/opt.c +0 -283
  62. data/ext/phc-winner-argon2/src/ref.c +0 -194
  63. data/ext/phc-winner-argon2/src/run.c +0 -337
  64. data/ext/phc-winner-argon2/src/test.c +0 -289
  65. data/ext/phc-winner-argon2/src/thread.c +0 -57
  66. data/ext/phc-winner-argon2/src/thread.h +0 -67
  67. data/ext/phc-winner-argon2/vs2015/Argon2Opt/Argon2Opt.vcxproj +0 -231
  68. data/ext/phc-winner-argon2/vs2015/Argon2Opt/Argon2Opt.vcxproj.filters +0 -69
  69. data/ext/phc-winner-argon2/vs2015/Argon2OptBench/Argon2OptBench.vcxproj +0 -231
  70. data/ext/phc-winner-argon2/vs2015/Argon2OptBench/Argon2OptBench.vcxproj.filters +0 -69
  71. data/ext/phc-winner-argon2/vs2015/Argon2OptDll/Argon2OptDll.vcxproj +0 -230
  72. data/ext/phc-winner-argon2/vs2015/Argon2OptDll/Argon2OptDll.vcxproj.filters +0 -66
  73. data/ext/phc-winner-argon2/vs2015/Argon2OptGenKAT/Argon2OptGenKAT.vcxproj +0 -244
  74. data/ext/phc-winner-argon2/vs2015/Argon2OptGenKAT/Argon2OptGenKAT.vcxproj.filters +0 -72
  75. data/ext/phc-winner-argon2/vs2015/Argon2OptTestCI/Argon2OptTestCI.vcxproj +0 -235
  76. data/ext/phc-winner-argon2/vs2015/Argon2OptTestCI/Argon2OptTestCI.vcxproj.filters +0 -69
  77. data/ext/phc-winner-argon2/vs2015/Argon2Ref/Argon2Ref.vcxproj +0 -243
  78. data/ext/phc-winner-argon2/vs2015/Argon2Ref/Argon2Ref.vcxproj.filters +0 -69
  79. data/ext/phc-winner-argon2/vs2015/Argon2RefBench/Argon2RefBench.vcxproj +0 -231
  80. data/ext/phc-winner-argon2/vs2015/Argon2RefBench/Argon2RefBench.vcxproj.filters +0 -69
  81. data/ext/phc-winner-argon2/vs2015/Argon2RefDll/Argon2RefDll.vcxproj +0 -230
  82. data/ext/phc-winner-argon2/vs2015/Argon2RefDll/Argon2RefDll.vcxproj.filters +0 -66
  83. data/ext/phc-winner-argon2/vs2015/Argon2RefGenKAT/Argon2RefGenKAT.vcxproj +0 -232
  84. data/ext/phc-winner-argon2/vs2015/Argon2RefGenKAT/Argon2RefGenKAT.vcxproj.filters +0 -72
  85. data/ext/phc-winner-argon2/vs2015/Argon2RefTestCI/Argon2RefTestCI.vcxproj +0 -231
  86. data/ext/phc-winner-argon2/vs2015/Argon2RefTestCI/Argon2RefTestCI.vcxproj.filters +0 -69
@@ -1,303 +0,0 @@
1
- # Argon2
2
-
3
- [![Build Status](https://travis-ci.org/P-H-C/phc-winner-argon2.svg?branch=master)](https://travis-ci.org/P-H-C/phc-winner-argon2)
4
- [![Build status](https://ci.appveyor.com/api/projects/status/8nfwuwq55sgfkele?svg=true)](https://ci.appveyor.com/project/P-H-C/phc-winner-argon2)
5
- [![codecov.io](https://codecov.io/github/P-H-C/phc-winner-argon2/coverage.svg?branch=master)](https://codecov.io/github/P-H-C/phc-winner-argon2?branch=master)
6
-
7
- This is the reference C implementation of Argon2, the password-hashing
8
- function that won the [Password Hashing Competition
9
- (PHC)](https://password-hashing.net).
10
-
11
- Argon2 is a password-hashing function that summarizes the state of the
12
- art in the design of memory-hard functions and can be used to hash
13
- passwords for credential storage, key derivation, or other applications.
14
-
15
- It has a simple design aimed at the highest memory filling rate and
16
- effective use of multiple computing units, while still providing defense
17
- against tradeoff attacks (by exploiting the cache and memory organization
18
- of the recent processors).
19
-
20
- Argon2 has three variants: Argon2i, Argon2d, and Argon2id. Argon2d is faster
21
- and uses data-depending memory access, which makes it highly resistant
22
- against GPU cracking attacks and suitable for applications with no threats
23
- from side-channel timing attacks (eg. cryptocurrencies). Argon2i instead
24
- uses data-independent memory access, which is preferred for password
25
- hashing and password-based key derivation, but it is slower as it makes
26
- more passes over the memory to protect from tradeoff attacks. Argon2id is a
27
- hybrid of Argon2i and Argon2d, using a combination of data-depending and
28
- data-independent memory accesses, which gives some of Argon2i's resistance to
29
- side-channel cache timing attacks and much of Argon2d's resistance to GPU
30
- cracking attacks.
31
-
32
- Argon2i, Argon2d, and Argon2id are parametrized by:
33
-
34
- * A **time** cost, which defines the amount of computation realized and
35
- therefore the execution time, given in number of iterations
36
- * A **memory** cost, which defines the memory usage, given in kibibytes
37
- * A **parallelism** degree, which defines the number of parallel threads
38
-
39
- The [Argon2 document](argon2-specs.pdf) gives detailed specs and design
40
- rationale.
41
-
42
- Please report bugs as issues on this repository.
43
-
44
- ## Usage
45
-
46
- `make` builds the executable `argon2`, the static library `libargon2.a`,
47
- and the shared library `libargon2.so` (or on macOS, the dynamic library
48
- `libargon2.dylib` -- make sure to specify the installation prefix when
49
- you compile: `make PREFIX=/usr`). Make sure to run `make test` to verify
50
- that your build produces valid results. `sudo make install PREFIX=/usr`
51
- installs it to your system.
52
-
53
- ### Command-line utility
54
-
55
- `argon2` is a command-line utility to test specific Argon2 instances
56
- on your system. To show usage instructions, run
57
- `./argon2 -h` as
58
- ```
59
- Usage: ./argon2 [-h] salt [-i|-d|-id] [-t iterations] [-m memory] [-p parallelism] [-l hash length] [-e|-r] [-v (10|13)]
60
- Password is read from stdin
61
- Parameters:
62
- salt The salt to use, at least 8 characters
63
- -i Use Argon2i (this is the default)
64
- -d Use Argon2d instead of Argon2i
65
- -id Use Argon2id instead of Argon2i
66
- -t N Sets the number of iterations to N (default = 3)
67
- -m N Sets the memory usage of 2^N KiB (default 12)
68
- -p N Sets parallelism to N threads (default 1)
69
- -l N Sets hash output length to N bytes (default 32)
70
- -e Output only encoded hash
71
- -r Output only the raw bytes of the hash
72
- -v (10|13) Argon2 version (defaults to the most recent version, currently 13)
73
- -h Print argon2 usage
74
- ```
75
- For example, to hash "password" using "somesalt" as a salt and doing 2
76
- iterations, consuming 64 MiB, using four parallel threads and an output hash
77
- of 24 bytes
78
- ```
79
- $ echo -n "password" | ./argon2 somesalt -t 2 -m 16 -p 4 -l 24
80
- Type: Argon2i
81
- Iterations: 2
82
- Memory: 65536 KiB
83
- Parallelism: 4
84
- Hash: 45d7ac72e76f242b20b77b9bf9bf9d5915894e669a24e6c6
85
- Encoded: $argon2i$v=19$m=65536,t=2,p=4$c29tZXNhbHQ$RdescudvJCsgt3ub+b+dWRWJTmaaJObG
86
- 0.188 seconds
87
- Verification ok
88
- ```
89
-
90
- ### Library
91
-
92
- `libargon2` provides an API to both low-level and high-level functions
93
- for using Argon2.
94
-
95
- The example program below hashes the string "password" with Argon2i
96
- using the high-level API and then using the low-level API. While the
97
- high-level API takes the three cost parameters (time, memory, and
98
- parallelism), the password input buffer, the salt input buffer, and the
99
- output buffers, the low-level API takes in these and additional parameters
100
- , as defined in [`include/argon2.h`](include/argon2.h).
101
-
102
- There are many additional parameters, but we will highlight three of them here.
103
-
104
- 1. The `secret` parameter, which is used for [keyed hashing](
105
- https://en.wikipedia.org/wiki/Hash-based_message_authentication_code).
106
- This allows a secret key to be input at hashing time (from some external
107
- location) and be folded into the value of the hash. This means that even if
108
- your salts and hashes are compromized, an attacker cannot brute-force to find
109
- the password without the key.
110
-
111
- 2. The `ad` parameter, which is used to fold any additional data into the hash
112
- value. Functionally, this behaves almost exactly like the `secret` or `salt`
113
- parameters; the `ad` parameter is folding into the value of the hash.
114
- However, this parameter is used for different data. The `salt` should be a
115
- random string stored alongside your password. The `secret` should be a random
116
- key only usable at hashing time. The `ad` is for any other data.
117
-
118
- 3. The `flags` parameter, which determines which memory should be securely
119
- erased. This is useful if you want to securly delete the `pwd` or `secret`
120
- fields right after they are used. To do this set `flags` to either
121
- `ARGON2_FLAG_CLEAR_PASSWORD` or `ARGON2_FLAG_CLEAR_SECRET`. To change how
122
- internal memory is cleared, change the global flag
123
- `FLAG_clear_internal_memory` (defaults to clearing internal memory).
124
-
125
- Here the time cost `t_cost` is set to 2 iterations, the
126
- memory cost `m_cost` is set to 2<sup>16</sup> kibibytes (64 mebibytes),
127
- and parallelism is set to 1 (single-thread).
128
-
129
- Compile for example as `gcc test.c libargon2.a -Isrc -o test`, if the program
130
- below is named `test.c` and placed in the project's root directory.
131
-
132
- ```c
133
- #include "argon2.h"
134
- #include <stdio.h>
135
- #include <string.h>
136
- #include <stdlib.h>
137
-
138
- #define HASHLEN 32
139
- #define SALTLEN 16
140
- #define PWD "password"
141
-
142
- int main(void)
143
- {
144
- uint8_t hash1[HASHLEN];
145
- uint8_t hash2[HASHLEN];
146
-
147
- uint8_t salt[SALTLEN];
148
- memset( salt, 0x00, SALTLEN );
149
-
150
- uint8_t *pwd = (uint8_t *)strdup(PWD);
151
- uint32_t pwdlen = strlen((char *)pwd);
152
-
153
- uint32_t t_cost = 2; // 2-pass computation
154
- uint32_t m_cost = (1<<16); // 64 mebibytes memory usage
155
- uint32_t parallelism = 1; // number of threads and lanes
156
-
157
- // high-level API
158
- argon2i_hash_raw(t_cost, m_cost, parallelism, pwd, pwdlen, salt, SALTLEN, hash1, HASHLEN);
159
-
160
- // low-level API
161
- argon2_context context = {
162
- hash2, /* output array, at least HASHLEN in size */
163
- HASHLEN, /* digest length */
164
- pwd, /* password array */
165
- pwdlen, /* password length */
166
- salt, /* salt array */
167
- SALTLEN, /* salt length */
168
- NULL, 0, /* optional secret data */
169
- NULL, 0, /* optional associated data */
170
- t_cost, m_cost, parallelism, parallelism,
171
- ARGON2_VERSION_13, /* algorithm version */
172
- NULL, NULL, /* custom memory allocation / deallocation functions */
173
- /* by default only internal memory is cleared (pwd is not wiped) */
174
- ARGON2_DEFAULT_FLAGS
175
- };
176
-
177
- int rc = argon2i_ctx( &context );
178
- if(ARGON2_OK != rc) {
179
- printf("Error: %s\n", argon2_error_message(rc));
180
- exit(1);
181
- }
182
- free(pwd);
183
-
184
- for( int i=0; i<HASHLEN; ++i ) printf( "%02x", hash1[i] ); printf( "\n" );
185
- if (memcmp(hash1, hash2, HASHLEN)) {
186
- for( int i=0; i<HASHLEN; ++i ) {
187
- printf( "%02x", hash2[i] );
188
- }
189
- printf("\nfail\n");
190
- }
191
- else printf("ok\n");
192
- return 0;
193
- }
194
- ```
195
-
196
- To use Argon2d instead of Argon2i call `argon2d_hash_raw` instead of
197
- `argon2i_hash_raw` using the high-level API, and `argon2d` instead of
198
- `argon2i` using the low-level API. Similarly for Argon2id, call `argon2id_hash_raw`
199
- and `argon2id`.
200
-
201
- To produce the crypt-like encoding rather than the raw hash, call
202
- `argon2i_hash_encoded` for Argon2i, `argon2d_hash_encoded` for Argon2d, and
203
- `argon2id_hash_encoded` for Argon2id
204
-
205
- See [`include/argon2.h`](include/argon2.h) for API details.
206
-
207
- *Note: in this example the salt is set to the all-`0x00` string for the
208
- sake of simplicity, but in your application you should use a random salt.*
209
-
210
-
211
- ### Benchmarks
212
-
213
- `make bench` creates the executable `bench`, which measures the execution
214
- time of various Argon2 instances:
215
-
216
- ```
217
- $ ./bench
218
- Argon2d 1 iterations 1 MiB 1 threads: 5.91 cpb 5.91 Mcycles
219
- Argon2i 1 iterations 1 MiB 1 threads: 4.64 cpb 4.64 Mcycles
220
- 0.0041 seconds
221
-
222
- Argon2d 1 iterations 1 MiB 2 threads: 2.76 cpb 2.76 Mcycles
223
- Argon2i 1 iterations 1 MiB 2 threads: 2.87 cpb 2.87 Mcycles
224
- 0.0038 seconds
225
-
226
- Argon2d 1 iterations 1 MiB 4 threads: 3.25 cpb 3.25 Mcycles
227
- Argon2i 1 iterations 1 MiB 4 threads: 3.57 cpb 3.57 Mcycles
228
- 0.0048 seconds
229
-
230
- (...)
231
-
232
- Argon2d 1 iterations 4096 MiB 2 threads: 2.15 cpb 8788.08 Mcycles
233
- Argon2i 1 iterations 4096 MiB 2 threads: 2.15 cpb 8821.59 Mcycles
234
- 13.0112 seconds
235
-
236
- Argon2d 1 iterations 4096 MiB 4 threads: 1.79 cpb 7343.72 Mcycles
237
- Argon2i 1 iterations 4096 MiB 4 threads: 2.72 cpb 11124.86 Mcycles
238
- 19.3974 seconds
239
-
240
- (...)
241
- ```
242
-
243
- ## Bindings
244
-
245
- Bindings are available for the following languages (make sure to read
246
- their documentation):
247
-
248
- * [Android (Java/Kotlin)](https://github.com/lambdapioneer/argon2kt) by [@lambdapioneer](https://github.com/lambdapioneer)
249
- * [Dart](https://github.com/tmthecoder/dargon2) by [@tmthecoder](https://github.com/tmthecoder)
250
- * [Elixir](https://github.com/riverrun/argon2_elixir) by [@riverrun](https://github.com/riverrun)
251
- * [Erlang](https://github.com/ergenius/eargon2) by [@ergenius](https://github.com/ergenius)
252
- * [Go](https://github.com/tvdburgt/go-argon2) by [@tvdburgt](https://github.com/tvdburgt)
253
- * [Haskell](https://hackage.haskell.org/package/argon2) by [@hvr](https://github.com/hvr)
254
- * [JavaScript (native)](https://github.com/ranisalt/node-argon2), by [@ranisalt](https://github.com/ranisalt)
255
- * [JavaScript (native)](https://github.com/jdconley/argon2themax), by [@jdconley](https://github.com/jdconley)
256
- * [JavaScript (ffi)](https://github.com/cjlarose/argon2-ffi), by [@cjlarose](https://github.com/cjlarose)
257
- * [JavaScript (browser)](https://github.com/antelle/argon2-browser), by [@antelle](https://github.com/antelle)
258
- * [JVM](https://github.com/phxql/argon2-jvm) by [@phXql](https://github.com/phxql)
259
- * [JVM (with keyed hashing)](https://github.com/kosprov/jargon2-api) by [@kosprov](https://github.com/kosprov)
260
- * [Lua (native)](https://github.com/thibaultCha/lua-argon2) by [@thibaultCha](https://github.com/thibaultCha)
261
- * [Lua (ffi)](https://github.com/thibaultCha/lua-argon2-ffi) by [@thibaultCha](https://github.com/thibaultCha)
262
- * [OCaml](https://github.com/Khady/ocaml-argon2) by [@Khady](https://github.com/Khady)
263
- * [Python (native)](https://pypi.python.org/pypi/argon2), by [@flamewow](https://github.com/flamewow)
264
- * [Python (ffi)](https://pypi.python.org/pypi/argon2_cffi), by [@hynek](https://github.com/hynek)
265
- * [Python (ffi, with keyed hashing)](https://github.com/thusoy/porridge), by [@thusoy](https://github.com/thusoy)
266
- * [Python (ffi, with keyed hashing)](https://github.com/ultrahorizon/pyargon2), by [@ultrahorizon](https://github.com/ultrahorizon)
267
- * [R](https://cran.r-project.org/package=argon2) by [@wrathematics](https://github.com/wrathematics)
268
- * [Ruby](https://github.com/technion/ruby-argon2) by [@technion](https://github.com/technion)
269
- * [Rust](https://github.com/quininer/argon2-rs) by [@quininer](https://github.com/quininer)
270
- * [Rust](https://docs.rs/argonautica/) by [@bcmyers](https://github.com/bcmyers/)
271
- * [C#/.NET CoreCLR](https://github.com/kmaragon/Konscious.Security.Cryptography) by [@kmaragon](https://github.com/kmaragon)
272
- * [Perl](https://github.com/Leont/crypt-argon2) by [@leont](https://github.com/Leont)
273
- * [mruby](https://github.com/Asmod4n/mruby-argon2) by [@Asmod4n](https://github.com/Asmod4n)
274
- * [Swift](https://github.com/ImKcat/CatCrypto) by [@ImKcat](https://github.com/ImKcat)
275
- * [Swift](https://github.com/tmthecoder/Argon2Swift) by [@tmthecoder](https://github.com/tmthecoder)
276
-
277
-
278
- ## Test suite
279
-
280
- There are two sets of test suites. One is a low level test for the hash
281
- function, the other tests the higher level API. Both of these are built and
282
- executed by running:
283
-
284
- `make test`
285
-
286
- ## Intellectual property
287
-
288
- Except for the components listed below, the Argon2 code in this
289
- repository is copyright (c) 2015 Daniel Dinu, Dmitry Khovratovich (main
290
- authors), Jean-Philippe Aumasson and Samuel Neves, and dual licensed under the
291
- [CC0 License](https://creativecommons.org/about/cc0) and the
292
- [Apache 2.0 License](https://www.apache.org/licenses/LICENSE-2.0). For more info
293
- see the LICENSE file.
294
-
295
- The string encoding routines in [`src/encoding.c`](src/encoding.c) are
296
- copyright (c) 2015 Thomas Pornin, and under
297
- [CC0 License](https://creativecommons.org/about/cc0).
298
-
299
- The BLAKE2 code in [`src/blake2/`](src/blake2) is copyright (c) Samuel
300
- Neves, 2013-2015, and under
301
- [CC0 License](https://creativecommons.org/about/cc0).
302
-
303
- All licenses are therefore GPL-compatible.
@@ -1,25 +0,0 @@
1
- os: Visual Studio 2015
2
-
3
- environment:
4
- matrix:
5
- - platform: x86
6
- configuration: Debug
7
- - platform: x86
8
- configuration: Release
9
- - platform: x64
10
- configuration: Debug
11
- - platform: x64
12
- configuration: Release
13
-
14
- matrix:
15
- fast_finish: false
16
-
17
- build:
18
- parallel: true
19
- project: Argon2.sln
20
- verbosity: minimal
21
-
22
- test_script:
23
- - ps: kats\test.ps1
24
- - ps: if ("Release" -eq $env:configuration) { vs2015\build\Argon2OptTestCI.exe }
25
- - ps: if ("Release" -eq $env:configuration) { vs2015\build\Argon2RefTestCI.exe }
Binary file
@@ -1,7 +0,0 @@
1
- #!/bin/sh
2
-
3
- FILE=`date "+%Y%m%d"`
4
- BRANCH=master
5
-
6
- git archive --format zip --output $FILE.zip $BRANCH
7
- git archive --format tar.gz --output $FILE.tar.gz $BRANCH