{"id":"node_modules/public-encrypt/publicEncrypt.js","dependencies":[{"name":"/www/ml-classifier/example/package.json","includedInParent":true,"mtime":1551949031632},{"name":"/www/ml-classifier/example/.babelrc","includedInParent":true,"mtime":1551703756168},{"name":"/www/ml-classifier/example/node_modules/public-encrypt/package.json","includedInParent":true,"mtime":1542583798549},{"name":"parse-asn1","loc":{"line":1,"column":24},"parent":"/www/ml-classifier/example/node_modules/public-encrypt/publicEncrypt.js","resolved":"/www/ml-classifier/example/node_modules/parse-asn1/index.js"},{"name":"randombytes","loc":{"line":2,"column":26},"parent":"/www/ml-classifier/example/node_modules/public-encrypt/publicEncrypt.js","resolved":"/www/ml-classifier/example/node_modules/randombytes/browser.js"},{"name":"create-hash","loc":{"line":3,"column":25},"parent":"/www/ml-classifier/example/node_modules/public-encrypt/publicEncrypt.js","resolved":"/www/ml-classifier/example/node_modules/create-hash/browser.js"},{"name":"./mgf","loc":{"line":4,"column":18},"parent":"/www/ml-classifier/example/node_modules/public-encrypt/publicEncrypt.js","resolved":"/www/ml-classifier/example/node_modules/public-encrypt/mgf.js"},{"name":"./xor","loc":{"line":5,"column":18},"parent":"/www/ml-classifier/example/node_modules/public-encrypt/publicEncrypt.js","resolved":"/www/ml-classifier/example/node_modules/public-encrypt/xor.js"},{"name":"bn.js","loc":{"line":6,"column":17},"parent":"/www/ml-classifier/example/node_modules/public-encrypt/publicEncrypt.js","resolved":"/www/ml-classifier/example/node_modules/bn.js/lib/bn.js"},{"name":"./withPublic","loc":{"line":7,"column":25},"parent":"/www/ml-classifier/example/node_modules/public-encrypt/publicEncrypt.js","resolved":"/www/ml-classifier/example/node_modules/public-encrypt/withPublic.js"},{"name":"browserify-rsa","loc":{"line":8,"column":18},"parent":"/www/ml-classifier/example/node_modules/public-encrypt/publicEncrypt.js","resolved":"/www/ml-classifier/example/node_modules/browserify-rsa/index.js"},{"name":"safe-buffer","loc":{"line":9,"column":21},"parent":"/www/ml-classifier/example/node_modules/public-encrypt/publicEncrypt.js","resolved":"/www/ml-classifier/example/node_modules/safe-buffer/index.js"}],"generated":{"js":"\nvar parseKeys = require('parse-asn1')\nvar randomBytes = require('randombytes')\nvar createHash = require('create-hash')\nvar mgf = require('./mgf')\nvar xor = require('./xor')\nvar BN = require('bn.js')\nvar withPublic = require('./withPublic')\nvar crt = require('browserify-rsa')\nvar Buffer = require('safe-buffer').Buffer\n\nmodule.exports = function publicEncrypt (publicKey, msg, reverse) {\n  var padding\n  if (publicKey.padding) {\n    padding = publicKey.padding\n  } else if (reverse) {\n    padding = 1\n  } else {\n    padding = 4\n  }\n  var key = parseKeys(publicKey)\n  var paddedMsg\n  if (padding === 4) {\n    paddedMsg = oaep(key, msg)\n  } else if (padding === 1) {\n    paddedMsg = pkcs1(key, msg, reverse)\n  } else if (padding === 3) {\n    paddedMsg = new BN(msg)\n    if (paddedMsg.cmp(key.modulus) >= 0) {\n      throw new Error('data too long for modulus')\n    }\n  } else {\n    throw new Error('unknown padding')\n  }\n  if (reverse) {\n    return crt(paddedMsg, key)\n  } else {\n    return withPublic(paddedMsg, key)\n  }\n}\n\nfunction oaep (key, msg) {\n  var k = key.modulus.byteLength()\n  var mLen = msg.length\n  var iHash = createHash('sha1').update(Buffer.alloc(0)).digest()\n  var hLen = iHash.length\n  var hLen2 = 2 * hLen\n  if (mLen > k - hLen2 - 2) {\n    throw new Error('message too long')\n  }\n  var ps = Buffer.alloc(k - mLen - hLen2 - 2)\n  var dblen = k - hLen - 1\n  var seed = randomBytes(hLen)\n  var maskedDb = xor(Buffer.concat([iHash, ps, Buffer.alloc(1, 1), msg], dblen), mgf(seed, dblen))\n  var maskedSeed = xor(seed, mgf(maskedDb, hLen))\n  return new BN(Buffer.concat([Buffer.alloc(1), maskedSeed, maskedDb], k))\n}\nfunction pkcs1 (key, msg, reverse) {\n  var mLen = msg.length\n  var k = key.modulus.byteLength()\n  if (mLen > k - 11) {\n    throw new Error('message too long')\n  }\n  var ps\n  if (reverse) {\n    ps = Buffer.alloc(k - mLen - 3, 0xff)\n  } else {\n    ps = nonZero(k - mLen - 3)\n  }\n  return new BN(Buffer.concat([Buffer.from([0, reverse ? 1 : 2]), ps, Buffer.alloc(1), msg], k))\n}\nfunction nonZero (len) {\n  var out = Buffer.allocUnsafe(len)\n  var i = 0\n  var cache = randomBytes(len * 2)\n  var cur = 0\n  var num\n  while (i < len) {\n    if (cur === cache.length) {\n      cache = randomBytes(len * 2)\n      cur = 0\n    }\n    num = cache[cur++]\n    if (num) {\n      out[i++] = num\n    }\n  }\n  return out\n}\n","map":{"mappings":[{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":1,"column":0},"generated":{"line":2,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":2,"column":0},"generated":{"line":3,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":3,"column":0},"generated":{"line":4,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":4,"column":0},"generated":{"line":5,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":5,"column":0},"generated":{"line":6,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":6,"column":0},"generated":{"line":7,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":7,"column":0},"generated":{"line":8,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":8,"column":0},"generated":{"line":9,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":9,"column":0},"generated":{"line":10,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":10,"column":0},"generated":{"line":11,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":11,"column":0},"generated":{"line":12,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":12,"column":0},"generated":{"line":13,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":13,"column":0},"generated":{"line":14,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":14,"column":0},"generated":{"line":15,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":15,"column":0},"generated":{"line":16,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":16,"column":0},"generated":{"line":17,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":17,"column":0},"generated":{"line":18,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":18,"column":0},"generated":{"line":19,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":19,"column":0},"generated":{"line":20,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":20,"column":0},"generated":{"line":21,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":21,"column":0},"generated":{"line":22,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":22,"column":0},"generated":{"line":23,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":23,"column":0},"generated":{"line":24,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":24,"column":0},"generated":{"line":25,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":25,"column":0},"generated":{"line":26,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":26,"column":0},"generated":{"line":27,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":27,"column":0},"generated":{"line":28,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":28,"column":0},"generated":{"line":29,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":29,"column":0},"generated":{"line":30,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":30,"column":0},"generated":{"line":31,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":31,"column":0},"generated":{"line":32,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":32,"column":0},"generated":{"line":33,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":33,"column":0},"generated":{"line":34,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":34,"column":0},"generated":{"line":35,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":35,"column":0},"generated":{"line":36,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":36,"column":0},"generated":{"line":37,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":37,"column":0},"generated":{"line":38,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":38,"column":0},"generated":{"line":39,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":39,"column":0},"generated":{"line":40,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":40,"column":0},"generated":{"line":41,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":41,"column":0},"generated":{"line":42,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":42,"column":0},"generated":{"line":43,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":43,"column":0},"generated":{"line":44,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":44,"column":0},"generated":{"line":45,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":45,"column":0},"generated":{"line":46,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":46,"column":0},"generated":{"line":47,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":47,"column":0},"generated":{"line":48,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":48,"column":0},"generated":{"line":49,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":49,"column":0},"generated":{"line":50,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":50,"column":0},"generated":{"line":51,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":51,"column":0},"generated":{"line":52,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":52,"column":0},"generated":{"line":53,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":53,"column":0},"generated":{"line":54,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":54,"column":0},"generated":{"line":55,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":55,"column":0},"generated":{"line":56,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":56,"column":0},"generated":{"line":57,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":57,"column":0},"generated":{"line":58,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":58,"column":0},"generated":{"line":59,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":59,"column":0},"generated":{"line":60,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":60,"column":0},"generated":{"line":61,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":61,"column":0},"generated":{"line":62,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":62,"column":0},"generated":{"line":63,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":63,"column":0},"generated":{"line":64,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":64,"column":0},"generated":{"line":65,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":65,"column":0},"generated":{"line":66,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":66,"column":0},"generated":{"line":67,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":67,"column":0},"generated":{"line":68,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":68,"column":0},"generated":{"line":69,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":69,"column":0},"generated":{"line":70,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":70,"column":0},"generated":{"line":71,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":71,"column":0},"generated":{"line":72,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":72,"column":0},"generated":{"line":73,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":73,"column":0},"generated":{"line":74,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":74,"column":0},"generated":{"line":75,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":75,"column":0},"generated":{"line":76,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":76,"column":0},"generated":{"line":77,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":77,"column":0},"generated":{"line":78,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":78,"column":0},"generated":{"line":79,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":79,"column":0},"generated":{"line":80,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":80,"column":0},"generated":{"line":81,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":81,"column":0},"generated":{"line":82,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":82,"column":0},"generated":{"line":83,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":83,"column":0},"generated":{"line":84,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":84,"column":0},"generated":{"line":85,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":85,"column":0},"generated":{"line":86,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":86,"column":0},"generated":{"line":87,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":87,"column":0},"generated":{"line":88,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":88,"column":0},"generated":{"line":89,"column":0}},{"source":"node_modules/public-encrypt/publicEncrypt.js","original":{"line":89,"column":0},"generated":{"line":90,"column":0}}],"sources":{"node_modules/public-encrypt/publicEncrypt.js":"var parseKeys = require('parse-asn1')\nvar randomBytes = require('randombytes')\nvar createHash = require('create-hash')\nvar mgf = require('./mgf')\nvar xor = require('./xor')\nvar BN = require('bn.js')\nvar withPublic = require('./withPublic')\nvar crt = require('browserify-rsa')\nvar Buffer = require('safe-buffer').Buffer\n\nmodule.exports = function publicEncrypt (publicKey, msg, reverse) {\n  var padding\n  if (publicKey.padding) {\n    padding = publicKey.padding\n  } else if (reverse) {\n    padding = 1\n  } else {\n    padding = 4\n  }\n  var key = parseKeys(publicKey)\n  var paddedMsg\n  if (padding === 4) {\n    paddedMsg = oaep(key, msg)\n  } else if (padding === 1) {\n    paddedMsg = pkcs1(key, msg, reverse)\n  } else if (padding === 3) {\n    paddedMsg = new BN(msg)\n    if (paddedMsg.cmp(key.modulus) >= 0) {\n      throw new Error('data too long for modulus')\n    }\n  } else {\n    throw new Error('unknown padding')\n  }\n  if (reverse) {\n    return crt(paddedMsg, key)\n  } else {\n    return withPublic(paddedMsg, key)\n  }\n}\n\nfunction oaep (key, msg) {\n  var k = key.modulus.byteLength()\n  var mLen = msg.length\n  var iHash = createHash('sha1').update(Buffer.alloc(0)).digest()\n  var hLen = iHash.length\n  var hLen2 = 2 * hLen\n  if (mLen > k - hLen2 - 2) {\n    throw new Error('message too long')\n  }\n  var ps = Buffer.alloc(k - mLen - hLen2 - 2)\n  var dblen = k - hLen - 1\n  var seed = randomBytes(hLen)\n  var maskedDb = xor(Buffer.concat([iHash, ps, Buffer.alloc(1, 1), msg], dblen), mgf(seed, dblen))\n  var maskedSeed = xor(seed, mgf(maskedDb, hLen))\n  return new BN(Buffer.concat([Buffer.alloc(1), maskedSeed, maskedDb], k))\n}\nfunction pkcs1 (key, msg, reverse) {\n  var mLen = msg.length\n  var k = key.modulus.byteLength()\n  if (mLen > k - 11) {\n    throw new Error('message too long')\n  }\n  var ps\n  if (reverse) {\n    ps = Buffer.alloc(k - mLen - 3, 0xff)\n  } else {\n    ps = nonZero(k - mLen - 3)\n  }\n  return new BN(Buffer.concat([Buffer.from([0, reverse ? 1 : 2]), ps, Buffer.alloc(1), msg], k))\n}\nfunction nonZero (len) {\n  var out = Buffer.allocUnsafe(len)\n  var i = 0\n  var cache = randomBytes(len * 2)\n  var cur = 0\n  var num\n  while (i < len) {\n    if (cur === cache.length) {\n      cache = randomBytes(len * 2)\n      cur = 0\n    }\n    num = cache[cur++]\n    if (num) {\n      out[i++] = num\n    }\n  }\n  return out\n}\n"},"lineCount":90}},"hash":"cec4851207cc7d9f57a94eff7d111cd0","cacheData":{"env":{}}}