summaryrefslogtreecommitdiff
path: root/src/lib/libc/crypt
diff options
context:
space:
mode:
authortedu <>2015-01-12 03:20:04 +0000
committertedu <>2015-01-12 03:20:04 +0000
commit707bceb580955f7866f1d89a76676269505ea501 (patch)
tree00763f2e784032a8c8e1d26eec5cd01fee04d9d8 /src/lib/libc/crypt
parent78e14d851752a1a303981a71b71c1a9801d72b49 (diff)
downloadopenbsd-707bceb580955f7866f1d89a76676269505ea501.tar.gz
openbsd-707bceb580955f7866f1d89a76676269505ea501.tar.bz2
openbsd-707bceb580955f7866f1d89a76676269505ea501.zip
rename blocks to words. bcrypt "blocks" are unrelated to blowfish blocks,
nor are they the same size.
Diffstat (limited to 'src/lib/libc/crypt')
-rw-r--r--src/lib/libc/crypt/bcrypt.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/lib/libc/crypt/bcrypt.c b/src/lib/libc/crypt/bcrypt.c
index f6ff29b234..8bf0995043 100644
--- a/src/lib/libc/crypt/bcrypt.c
+++ b/src/lib/libc/crypt/bcrypt.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: bcrypt.c,v 1.50 2015/01/07 16:05:28 tedu Exp $ */ 1/* $OpenBSD: bcrypt.c,v 1.51 2015/01/12 03:20:04 tedu Exp $ */
2 2
3/* 3/*
4 * Copyright (c) 2014 Ted Unangst <tedu@openbsd.org> 4 * Copyright (c) 2014 Ted Unangst <tedu@openbsd.org>
@@ -47,7 +47,7 @@
47 47
48#define BCRYPT_VERSION '2' 48#define BCRYPT_VERSION '2'
49#define BCRYPT_MAXSALT 16 /* Precomputation is just so nice */ 49#define BCRYPT_MAXSALT 16 /* Precomputation is just so nice */
50#define BCRYPT_BLOCKS 6 /* Ciphertext blocks */ 50#define BCRYPT_WORDS 6 /* Ciphertext words */
51#define BCRYPT_MINLOGROUNDS 4 /* we have log2(rounds) in salt */ 51#define BCRYPT_MINLOGROUNDS 4 /* we have log2(rounds) in salt */
52 52
53#define BCRYPT_SALTSPACE (7 + (BCRYPT_MAXSALT * 4 + 2) / 3 + 1) 53#define BCRYPT_SALTSPACE (7 + (BCRYPT_MAXSALT * 4 + 2) / 3 + 1)
@@ -96,9 +96,9 @@ bcrypt_hashpass(const char *key, const char *salt, char *encrypted,
96 u_int16_t j; 96 u_int16_t j;
97 size_t key_len; 97 size_t key_len;
98 u_int8_t salt_len, logr, minor; 98 u_int8_t salt_len, logr, minor;
99 u_int8_t ciphertext[4 * BCRYPT_BLOCKS] = "OrpheanBeholderScryDoubt"; 99 u_int8_t ciphertext[4 * BCRYPT_WORDS] = "OrpheanBeholderScryDoubt";
100 u_int8_t csalt[BCRYPT_MAXSALT]; 100 u_int8_t csalt[BCRYPT_MAXSALT];
101 u_int32_t cdata[BCRYPT_BLOCKS]; 101 u_int32_t cdata[BCRYPT_WORDS];
102 102
103 if (encryptedlen < BCRYPT_HASHSPACE) 103 if (encryptedlen < BCRYPT_HASHSPACE)
104 goto inval; 104 goto inval;
@@ -166,14 +166,14 @@ bcrypt_hashpass(const char *key, const char *salt, char *encrypted,
166 166
167 /* This can be precomputed later */ 167 /* This can be precomputed later */
168 j = 0; 168 j = 0;
169 for (i = 0; i < BCRYPT_BLOCKS; i++) 169 for (i = 0; i < BCRYPT_WORDS; i++)
170 cdata[i] = Blowfish_stream2word(ciphertext, 4 * BCRYPT_BLOCKS, &j); 170 cdata[i] = Blowfish_stream2word(ciphertext, 4 * BCRYPT_WORDS, &j);
171 171
172 /* Now do the encryption */ 172 /* Now do the encryption */
173 for (k = 0; k < 64; k++) 173 for (k = 0; k < 64; k++)
174 blf_enc(&state, cdata, BCRYPT_BLOCKS / 2); 174 blf_enc(&state, cdata, BCRYPT_WORDS / 2);
175 175
176 for (i = 0; i < BCRYPT_BLOCKS; i++) { 176 for (i = 0; i < BCRYPT_WORDS; i++) {
177 ciphertext[4 * i + 3] = cdata[i] & 0xff; 177 ciphertext[4 * i + 3] = cdata[i] & 0xff;
178 cdata[i] = cdata[i] >> 8; 178 cdata[i] = cdata[i] >> 8;
179 ciphertext[4 * i + 2] = cdata[i] & 0xff; 179 ciphertext[4 * i + 2] = cdata[i] & 0xff;
@@ -186,7 +186,7 @@ bcrypt_hashpass(const char *key, const char *salt, char *encrypted,
186 186
187 snprintf(encrypted, 8, "$2%c$%2.2u$", minor, logr); 187 snprintf(encrypted, 8, "$2%c$%2.2u$", minor, logr);
188 encode_base64(encrypted + 7, csalt, BCRYPT_MAXSALT); 188 encode_base64(encrypted + 7, csalt, BCRYPT_MAXSALT);
189 encode_base64(encrypted + 7 + 22, ciphertext, 4 * BCRYPT_BLOCKS - 1); 189 encode_base64(encrypted + 7 + 22, ciphertext, 4 * BCRYPT_WORDS - 1);
190 explicit_bzero(&state, sizeof(state)); 190 explicit_bzero(&state, sizeof(state));
191 explicit_bzero(ciphertext, sizeof(ciphertext)); 191 explicit_bzero(ciphertext, sizeof(ciphertext));
192 explicit_bzero(csalt, sizeof(csalt)); 192 explicit_bzero(csalt, sizeof(csalt));