MCPcopy
hub / github.com/dcodeIO/bcrypt.js / _key

Function _key

index.js:876–890  ·  view source on GitHub ↗

* @param {Array. } key * @param {Array. } P * @param {Array. } S * @inner

(key, P, S)

Source from the content-addressed store, hash-verified

874 * @inner
875 */
876function _key(key, P, S) {
877 var offset = 0,
878 lr = [0, 0],
879 plen = P.length,
880 slen = S.length,
881 sw;
882 for (var i = 0; i < plen; i++)
883 (sw = _streamtoword(key, offset)),
884 (offset = sw.offp),
885 (P[i] = P[i] ^ sw.key);
886 for (i = 0; i < plen; i += 2)
887 (lr = _encipher(lr, 0, P, S)), (P[i] = lr[0]), (P[i + 1] = lr[1]);
888 for (i = 0; i < slen; i += 2)
889 (lr = _encipher(lr, 0, P, S)), (S[i] = lr[0]), (S[i + 1] = lr[1]);
890}
891
892/**
893 * Expensive key schedule Blowfish.

Callers 1

nextFunction · 0.85

Calls 2

_streamtowordFunction · 0.85
_encipherFunction · 0.85

Tested by

no test coverage detected