Blame view

app/services/DecryptServ.js 811 Bytes
2201e360   Geoffrey PREUD'HOMME   Le login se fait ...
1
2
3
  var ursa = require('ursa');
  var fs = require('fs');
  
63f92223   Geoffrey PREUD'HOMME   Fixé création de ...
4
  var DecryptServ = {
2201e360   Geoffrey PREUD'HOMME   Le login se fait ...
5
  
63f92223   Geoffrey PREUD'HOMME   Fixé création de ...
6
      decrypter: false,
2201e360   Geoffrey PREUD'HOMME   Le login se fait ...
7
  
63f92223   Geoffrey PREUD'HOMME   Fixé création de ...
8
9
10
11
12
      whenOk: function (cb) {
          if (this.encrypter) {
              cb();
          } else {
              this.prepare(cb);
2f593328   Geoffrey PREUD'HOMME   Linting
13
          }
63f92223   Geoffrey PREUD'HOMME   Fixé création de ...
14
      },
2201e360   Geoffrey PREUD'HOMME   Le login se fait ...
15
  
63f92223   Geoffrey PREUD'HOMME   Fixé création de ...
16
17
18
19
20
21
22
23
24
25
26
27
28
      prepare: function (cb) { // TODO Juste charger au lancement du script
          fs.readFile('config/ci_com.pem', function (err, data) {
              if (err) {
                  throw err;
              }
              this.decrypter = ursa.createPrivateKey(data);
              cb();
          });
      },
  
      preload: function (cb) {
          this.whenOk(cb);
      },
2201e360   Geoffrey PREUD'HOMME   Le login se fait ...
29
  
63f92223   Geoffrey PREUD'HOMME   Fixé création de ...
30
31
32
33
34
      decrypt: function (string, cb) {
          this.whenOk(function () {
              cb(this.decrypter.decrypt(string, 'base64', 'utf8', ursa.RSA_PKCS1_PADDING));
          });
      }
2201e360   Geoffrey PREUD'HOMME   Le login se fait ...
35
36
  };
  
7a1fe62d   Geoffrey PREUD'HOMME   Consistence des noms
37
  module.exports = DecryptServ;