1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
| 'use strict';
|
| var utils = require('../utils');
|
| var SHA512 = require('./512');
|
| function SHA384() {
| if (!(this instanceof SHA384))
| return new SHA384();
|
| SHA512.call(this);
| this.h = [
| 0xcbbb9d5d, 0xc1059ed8,
| 0x629a292a, 0x367cd507,
| 0x9159015a, 0x3070dd17,
| 0x152fecd8, 0xf70e5939,
| 0x67332667, 0xffc00b31,
| 0x8eb44a87, 0x68581511,
| 0xdb0c2e0d, 0x64f98fa7,
| 0x47b5481d, 0xbefa4fa4 ];
| }
| utils.inherits(SHA384, SHA512);
| module.exports = SHA384;
|
| SHA384.blockSize = 1024;
| SHA384.outSize = 384;
| SHA384.hmacStrength = 192;
| SHA384.padLength = 128;
|
| SHA384.prototype._digest = function digest(enc) {
| if (enc === 'hex')
| return utils.toHex32(this.h.slice(0, 12), 'big');
| else
| return utils.split32(this.h.slice(0, 12), 'big');
| };
|
|