1 line
4.4 KiB
JSON
1 line
4.4 KiB
JSON
{"ast":null,"code":"'use strict';\n\nvar utils = require('./utils');\n\nvar assert = require('minimalistic-assert');\n\nfunction Hmac(hash, key, enc) {\n if (!(this instanceof Hmac)) return new Hmac(hash, key, enc);\n this.Hash = hash;\n this.blockSize = hash.blockSize / 8;\n this.outSize = hash.outSize / 8;\n this.inner = null;\n this.outer = null;\n\n this._init(utils.toArray(key, enc));\n}\n\nmodule.exports = Hmac;\n\nHmac.prototype._init = function init(key) {\n // Shorten key, if needed\n if (key.length > this.blockSize) key = new this.Hash().update(key).digest();\n assert(key.length <= this.blockSize); // Add padding to key\n\n for (var i = key.length; i < this.blockSize; i++) key.push(0);\n\n for (i = 0; i < key.length; i++) key[i] ^= 0x36;\n\n this.inner = new this.Hash().update(key); // 0x36 ^ 0x5c = 0x6a\n\n for (i = 0; i < key.length; i++) key[i] ^= 0x6a;\n\n this.outer = new this.Hash().update(key);\n};\n\nHmac.prototype.update = function update(msg, enc) {\n this.inner.update(msg, enc);\n return this;\n};\n\nHmac.prototype.digest = function digest(enc) {\n this.outer.update(this.inner.digest());\n return this.outer.digest(enc);\n};","map":{"version":3,"sources":["/Users/tylerkoenig/Code/personal/react-scss2/node_modules/hash.js/lib/hash/hmac.js"],"names":["utils","require","assert","Hmac","hash","key","enc","Hash","blockSize","outSize","inner","outer","_init","toArray","module","exports","prototype","init","length","update","digest","i","push","msg"],"mappings":"AAAA;;AAEA,IAAIA,KAAK,GAAGC,OAAO,CAAC,SAAD,CAAnB;;AACA,IAAIC,MAAM,GAAGD,OAAO,CAAC,qBAAD,CAApB;;AAEA,SAASE,IAAT,CAAcC,IAAd,EAAoBC,GAApB,EAAyBC,GAAzB,EAA8B;AAC5B,MAAI,EAAE,gBAAgBH,IAAlB,CAAJ,EACE,OAAO,IAAIA,IAAJ,CAASC,IAAT,EAAeC,GAAf,EAAoBC,GAApB,CAAP;AACF,OAAKC,IAAL,GAAYH,IAAZ;AACA,OAAKI,SAAL,GAAiBJ,IAAI,CAACI,SAAL,GAAiB,CAAlC;AACA,OAAKC,OAAL,GAAeL,IAAI,CAACK,OAAL,GAAe,CAA9B;AACA,OAAKC,KAAL,GAAa,IAAb;AACA,OAAKC,KAAL,GAAa,IAAb;;AAEA,OAAKC,KAAL,CAAWZ,KAAK,CAACa,OAAN,CAAcR,GAAd,EAAmBC,GAAnB,CAAX;AACD;;AACDQ,MAAM,CAACC,OAAP,GAAiBZ,IAAjB;;AAEAA,IAAI,CAACa,SAAL,CAAeJ,KAAf,GAAuB,SAASK,IAAT,CAAcZ,GAAd,EAAmB;AACxC;AACA,MAAIA,GAAG,CAACa,MAAJ,GAAa,KAAKV,SAAtB,EACEH,GAAG,GAAG,IAAI,KAAKE,IAAT,GAAgBY,MAAhB,CAAuBd,GAAvB,EAA4Be,MAA5B,EAAN;AACFlB,EAAAA,MAAM,CAACG,GAAG,CAACa,MAAJ,IAAc,KAAKV,SAApB,CAAN,CAJwC,CAMxC;;AACA,OAAK,IAAIa,CAAC,GAAGhB,GAAG,CAACa,MAAjB,EAAyBG,CAAC,GAAG,KAAKb,SAAlC,EAA6Ca,CAAC,EAA9C,EACEhB,GAAG,CAACiB,IAAJ,CAAS,CAAT;;AAEF,OAAKD,CAAC,GAAG,CAAT,EAAYA,CAAC,GAAGhB,GAAG,CAACa,MAApB,EAA4BG,CAAC,EAA7B,EACEhB,GAAG,CAACgB,CAAD,CAAH,IAAU,IAAV;;AACF,OAAKX,KAAL,GAAa,IAAI,KAAKH,IAAT,GAAgBY,MAAhB,CAAuBd,GAAvB,CAAb,CAZwC,CAcxC;;AACA,OAAKgB,CAAC,GAAG,CAAT,EAAYA,CAAC,GAAGhB,GAAG,CAACa,MAApB,EAA4BG,CAAC,EAA7B,EACEhB,GAAG,CAACgB,CAAD,CAAH,IAAU,IAAV;;AACF,OAAKV,KAAL,GAAa,IAAI,KAAKJ,IAAT,GAAgBY,MAAhB,CAAuBd,GAAvB,CAAb;AACD,CAlBD;;AAoBAF,IAAI,CAACa,SAAL,CAAeG,MAAf,GAAwB,SAASA,MAAT,CAAgBI,GAAhB,EAAqBjB,GAArB,EAA0B;AAChD,OAAKI,KAAL,CAAWS,MAAX,CAAkBI,GAAlB,EAAuBjB,GAAvB;AACA,SAAO,IAAP;AACD,CAHD;;AAKAH,IAAI,CAACa,SAAL,CAAeI,MAAf,GAAwB,SAASA,MAAT,CAAgBd,GAAhB,EAAqB;AAC3C,OAAKK,KAAL,CAAWQ,MAAX,CAAkB,KAAKT,KAAL,CAAWU,MAAX,EAAlB;AACA,SAAO,KAAKT,KAAL,CAAWS,MAAX,CAAkBd,GAAlB,CAAP;AACD,CAHD","sourcesContent":["'use strict';\n\nvar utils = require('./utils');\nvar assert = require('minimalistic-assert');\n\nfunction Hmac(hash, key, enc) {\n if (!(this instanceof Hmac))\n return new Hmac(hash, key, enc);\n this.Hash = hash;\n this.blockSize = hash.blockSize / 8;\n this.outSize = hash.outSize / 8;\n this.inner = null;\n this.outer = null;\n\n this._init(utils.toArray(key, enc));\n}\nmodule.exports = Hmac;\n\nHmac.prototype._init = function init(key) {\n // Shorten key, if needed\n if (key.length > this.blockSize)\n key = new this.Hash().update(key).digest();\n assert(key.length <= this.blockSize);\n\n // Add padding to key\n for (var i = key.length; i < this.blockSize; i++)\n key.push(0);\n\n for (i = 0; i < key.length; i++)\n key[i] ^= 0x36;\n this.inner = new this.Hash().update(key);\n\n // 0x36 ^ 0x5c = 0x6a\n for (i = 0; i < key.length; i++)\n key[i] ^= 0x6a;\n this.outer = new this.Hash().update(key);\n};\n\nHmac.prototype.update = function update(msg, enc) {\n this.inner.update(msg, enc);\n return this;\n};\n\nHmac.prototype.digest = function digest(enc) {\n this.outer.update(this.inner.digest());\n return this.outer.digest(enc);\n};\n"]},"metadata":{},"sourceType":"script"} |