|
28 | 28 |
|
29 | 29 | from hashlib import md5 |
30 | 30 | from hashlib import sha1 |
| 31 | +from hashlib import sha224 |
| 32 | +from hashlib import sha384 |
| 33 | +from hashlib import sha512 |
31 | 34 | from Queue import Queue |
32 | 35 |
|
33 | 36 | from lib.core.common import Backend |
@@ -216,6 +219,35 @@ def sha1_generic_passwd(password, uppercase=False): |
216 | 219 |
|
217 | 220 | return retVal.upper() if uppercase else retVal.lower() |
218 | 221 |
|
| 222 | +def sha224_generic_passwd(password, uppercase=False): |
| 223 | + """ |
| 224 | + >>> sha224_generic_passwd(password='testpass', uppercase=False) |
| 225 | + '648db6019764b598f75ab6b7616d2e82563a00eb1531680e19ac4c6f' |
| 226 | + """ |
| 227 | + |
| 228 | + retVal = sha224(password).hexdigest() |
| 229 | + |
| 230 | + return retVal.upper() if uppercase else retVal.lower() |
| 231 | + |
| 232 | +def sha384_generic_passwd(password, uppercase=False): |
| 233 | + """ |
| 234 | + >>> sha384_generic_passwd(password='testpass', uppercase=False) |
| 235 | + '6823546e56adf46849343be991d4b1be9b432e42ed1b4bb90635a0e4b930e49b9ca007bc3e04bf0a4e0df6f1f82769bf' |
| 236 | + """ |
| 237 | + |
| 238 | + retVal = sha384(password).hexdigest() |
| 239 | + |
| 240 | + return retVal.upper() if uppercase else retVal.lower() |
| 241 | + |
| 242 | +def sha512_generic_passwd(password, uppercase=False): |
| 243 | + """ |
| 244 | + >>> sha512_generic_passwd(password='testpass', uppercase=False) |
| 245 | + '78ddc8555bb1677ff5af75ba5fc02cb30bb592b0610277ae15055e189b77fe3fda496e5027a3d99ec85d54941adee1cc174b50438fdc21d82d0a79f85b58cf44' |
| 246 | + """ |
| 247 | + |
| 248 | + retVal = sha512(password).hexdigest() |
| 249 | + |
| 250 | + return retVal.upper() if uppercase else retVal.lower() |
219 | 251 |
|
220 | 252 | def crypt_generic_passwd(password, salt, uppercase=False): |
221 | 253 | """ |
@@ -297,6 +329,9 @@ def _encode64(input_, count): |
297 | 329 | HASH.ORACLE_OLD: oracle_old_passwd, |
298 | 330 | HASH.MD5_GENERIC: md5_generic_passwd, |
299 | 331 | HASH.SHA1_GENERIC: sha1_generic_passwd, |
| 332 | + HASH.SHA224_GENERIC: sha224_generic_passwd, |
| 333 | + HASH.SHA384_GENERIC: sha384_generic_passwd, |
| 334 | + HASH.SHA512_GENERIC: sha512_generic_passwd, |
300 | 335 | HASH.CRYPT_GENERIC: crypt_generic_passwd, |
301 | 336 | HASH.WORDPRESS: wordpress_passwd, |
302 | 337 | } |
|
0 commit comments