Built motion from commit 44b1f254.|2.6.26
[motion2.git] / server / components / encryptor / index.js
index e79338a..90b6659 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xe876=['base64','decryptString','lodash','../../config/environment','../../config/logger','app','secrets','session','aes-256-ctr','encrypt','algorithm','join','is\x20not\x20a\x20supported\x20algorithm.\x20Your\x20system\x20supports\x20the\x20following\x20algorithms:','getCiphers','filter','indexOf','hasOwnProperty','encryptFile','createCipher','data','update','binary','write','end','final','close','unlink','createReadStream','createWriteStream','createDecipher','encryptString','secret','utf8'];(function(_0x59d424,_0x2ce287){var _0x12641c=function(_0x498c06){while(--_0x498c06){_0x59d424['push'](_0x59d424['shift']());}};_0x12641c(++_0x2ce287);}(_0xe876,0x1f1));var _0x6e87=function(_0x308f8c,_0x4eb53c){_0x308f8c=_0x308f8c-0x0;var _0x2e8ace=_0xe876[_0x308f8c];return _0x2e8ace;};'use strict';var crypto=require('crypto');var fs=require('fs');var BPromise=require('bluebird');var _=require(_0x6e87('0x0'));var config=require(_0x6e87('0x1'));var logger=require(_0x6e87('0x2'))(_0x6e87('0x3'));const AES_SUPPORTED_RX=/^aes(-)?\d{3}(-(cbc|cfb|ctr)(1|8)?){0,1}$/;const stringOptions={'secret':config[_0x6e87('0x4')][_0x6e87('0x5')],'algorithm':_0x6e87('0x6')};const fileOptions={'algorithm':'aes192'};if(config[_0x6e87('0x7')]&&config[_0x6e87('0x7')][_0x6e87('0x8')]){var isSupported=isAlgorithmSupported(config[_0x6e87('0x7')][_0x6e87('0x8')]);if(isSupported){fileOptions[_0x6e87('0x8')]=config[_0x6e87('0x7')][_0x6e87('0x8')];}else{var supportedAlgorithms=getSupportedCiphers()[_0x6e87('0x9')](',\x20');logger['error'](config['encrypt'][_0x6e87('0x8')],_0x6e87('0xa'),supportedAlgorithms);}}function isASupportedCipher(_0x19d153){return AES_SUPPORTED_RX['test'](_0x19d153);}function getSupportedCiphers(){return crypto[_0x6e87('0xb')]()[_0x6e87('0xc')](isASupportedCipher);}function isAlgorithmSupported(_0x2e5bd7){return getSupportedCiphers()[_0x6e87('0xd')](_0x2e5bd7)>-0x1;}function combineOptions(_0x3dcc2b){var _0x45bd24={};for(var _0x2db2a2 in fileOptions){if(fileOptions['hasOwnProperty'](_0x2db2a2)){_0x45bd24[_0x2db2a2]=fileOptions[_0x2db2a2];}}if(_0x3dcc2b){for(var _0x1a5ac6 in _0x3dcc2b){if(_0x3dcc2b[_0x6e87('0xe')](_0x1a5ac6)){_0x45bd24[_0x1a5ac6]=_0x3dcc2b[_0x1a5ac6];}}}return _0x45bd24;}exports[_0x6e87('0xf')]=function(_0xd54c16,_0x348147,_0xb54986,_0x448c65){return new BPromise(function(_0x1eb264,_0xdbe853){_0x448c65=combineOptions(_0x448c65);var _0x26c639=new Buffer(_0xb54986);var _0x41a306=fs['createReadStream'](_0xd54c16);var _0x5c6ce8=fs['createWriteStream'](_0x348147);var _0x40606a=crypto[_0x6e87('0x10')](_0x448c65['algorithm'],_0x26c639);_0x41a306['on'](_0x6e87('0x11'),function(_0x5c2d5c){var _0x44416d=new Buffer(_0x40606a[_0x6e87('0x12')](_0x5c2d5c),_0x6e87('0x13'));_0x5c6ce8[_0x6e87('0x14')](_0x44416d);});_0x41a306['on'](_0x6e87('0x15'),function(){try{var _0x42836e=new Buffer(_0x40606a[_0x6e87('0x16')]('binary'),_0x6e87('0x13'));_0x5c6ce8[_0x6e87('0x14')](_0x42836e);_0x5c6ce8['end']();_0x5c6ce8['on'](_0x6e87('0x17'),function(){return _0x1eb264(_0x348147);});}catch(_0x5ae738){fs[_0x6e87('0x18')](_0x348147);return _0xdbe853(_0x5ae738);}});});};exports['decryptFile']=function(_0x3d68e7,_0x1de0a7,_0x20968d,_0x40c05a){return new BPromise(function(_0x202497,_0x9344d3){_0x40c05a=combineOptions(_0x40c05a);var _0x3c18e4=new Buffer(_0x20968d);var _0x599ea4=fs[_0x6e87('0x19')](_0x3d68e7);var _0x1ff530=fs[_0x6e87('0x1a')](_0x1de0a7);var _0x129c2b=crypto[_0x6e87('0x1b')](_0x40c05a[_0x6e87('0x8')],_0x3c18e4);_0x599ea4['on'](_0x6e87('0x11'),function(_0x58b29c){var _0x507911=new Buffer(_0x129c2b[_0x6e87('0x12')](_0x58b29c),'binary');_0x1ff530[_0x6e87('0x14')](_0x507911);});_0x599ea4['on'](_0x6e87('0x15'),function(){try{var _0x82f6=new Buffer(_0x129c2b['final']('binary'),_0x6e87('0x13'));_0x1ff530[_0x6e87('0x14')](_0x82f6);_0x1ff530[_0x6e87('0x15')]();_0x1ff530['on']('close',function(){return _0x202497(_0x1de0a7);});}catch(_0x3976db){fs['unlink'](_0x1de0a7);return _0x9344d3(_0x3976db);}});});};exports[_0x6e87('0x1c')]=function(_0xd2c89e,_0x49f93a,_0x53a3f0){var _0x14bae3=_0x53a3f0||stringOptions[_0x6e87('0x8')];var _0x35192a=_0x49f93a||stringOptions[_0x6e87('0x1d')];var _0x458021=crypto['createCipher'](_0x14bae3,_0x35192a);var _0x2bf174=_0x458021[_0x6e87('0x12')](_0xd2c89e,_0x6e87('0x1e'),_0x6e87('0x1f'));_0x2bf174+=_0x458021[_0x6e87('0x16')](_0x6e87('0x1f'));return _0x2bf174;};exports[_0x6e87('0x20')]=function(_0x4b2240,_0x246dbc,_0x216de7){var _0x3a7eda=_0x216de7||stringOptions['algorithm'];var _0x29d80f=_0x246dbc||stringOptions['secret'];var _0x51466c=crypto['createDecipher'](_0x3a7eda,_0x29d80f);var _0x37384b=_0x51466c[_0x6e87('0x12')](_0x4b2240,_0x6e87('0x1f'),_0x6e87('0x1e'));_0x37384b+=_0x51466c[_0x6e87('0x16')](_0x6e87('0x1e'));return _0x37384b;};
\ No newline at end of file
+var _0xc9cd=['getCiphers','indexOf','hasOwnProperty','encryptFile','createReadStream','createCipher','data','update','final','binary','write','end','unlink','decryptFile','createWriteStream','createDecipher','encryptString','utf8','base64','crypto','lodash','../../config/environment','app','session','aes-256-ctr','aes192','encrypt','algorithm','is\x20not\x20a\x20supported\x20algorithm.\x20Your\x20system\x20supports\x20the\x20following\x20algorithms:','test'];(function(_0x3bdb5a,_0x39528d){var _0x3914ec=function(_0xcfab35){while(--_0xcfab35){_0x3bdb5a['push'](_0x3bdb5a['shift']());}};_0x3914ec(++_0x39528d);}(_0xc9cd,0x199));var _0xdc9c=function(_0x4b5c23,_0x101faa){_0x4b5c23=_0x4b5c23-0x0;var _0x262cfd=_0xc9cd[_0x4b5c23];return _0x262cfd;};'use strict';var crypto=require(_0xdc9c('0x0'));var fs=require('fs');var BPromise=require('bluebird');var _=require(_0xdc9c('0x1'));var config=require(_0xdc9c('0x2'));var logger=require('../../config/logger')(_0xdc9c('0x3'));const AES_SUPPORTED_RX=/^aes(-)?\d{3}(-(cbc|cfb|ctr)(1|8)?){0,1}$/;const stringOptions={'secret':config['secrets'][_0xdc9c('0x4')],'algorithm':_0xdc9c('0x5')};const fileOptions={'algorithm':_0xdc9c('0x6')};if(config['encrypt']&&config[_0xdc9c('0x7')][_0xdc9c('0x8')]){var isSupported=isAlgorithmSupported(config[_0xdc9c('0x7')][_0xdc9c('0x8')]);if(isSupported){fileOptions[_0xdc9c('0x8')]=config[_0xdc9c('0x7')][_0xdc9c('0x8')];}else{var supportedAlgorithms=getSupportedCiphers()['join'](',\x20');logger['error'](config['encrypt'][_0xdc9c('0x8')],_0xdc9c('0x9'),supportedAlgorithms);}}function isASupportedCipher(_0x2fba56){return AES_SUPPORTED_RX[_0xdc9c('0xa')](_0x2fba56);}function getSupportedCiphers(){return crypto[_0xdc9c('0xb')]()['filter'](isASupportedCipher);}function isAlgorithmSupported(_0x48f6b1){return getSupportedCiphers()[_0xdc9c('0xc')](_0x48f6b1)>-0x1;}function combineOptions(_0x9b2bfa){var _0x38657f={};for(var _0x5887bc in fileOptions){if(fileOptions['hasOwnProperty'](_0x5887bc)){_0x38657f[_0x5887bc]=fileOptions[_0x5887bc];}}if(_0x9b2bfa){for(var _0x1a4196 in _0x9b2bfa){if(_0x9b2bfa[_0xdc9c('0xd')](_0x1a4196)){_0x38657f[_0x1a4196]=_0x9b2bfa[_0x1a4196];}}}return _0x38657f;}exports[_0xdc9c('0xe')]=function(_0x336590,_0xbe2c7d,_0x451594,_0x1b6b3a){return new BPromise(function(_0x412ba4,_0x5ca32b){_0x1b6b3a=combineOptions(_0x1b6b3a);var _0x41bbb1=new Buffer(_0x451594);var _0xbc95b2=fs[_0xdc9c('0xf')](_0x336590);var _0x4e846b=fs['createWriteStream'](_0xbe2c7d);var _0x33bd44=crypto[_0xdc9c('0x10')](_0x1b6b3a['algorithm'],_0x41bbb1);_0xbc95b2['on'](_0xdc9c('0x11'),function(_0x2de16b){var _0x2acfe1=new Buffer(_0x33bd44[_0xdc9c('0x12')](_0x2de16b),'binary');_0x4e846b['write'](_0x2acfe1);});_0xbc95b2['on']('end',function(){try{var _0x45e6e5=new Buffer(_0x33bd44[_0xdc9c('0x13')](_0xdc9c('0x14')),_0xdc9c('0x14'));_0x4e846b[_0xdc9c('0x15')](_0x45e6e5);_0x4e846b[_0xdc9c('0x16')]();_0x4e846b['on']('close',function(){return _0x412ba4(_0xbe2c7d);});}catch(_0x45673f){fs[_0xdc9c('0x17')](_0xbe2c7d);return _0x5ca32b(_0x45673f);}});});};exports[_0xdc9c('0x18')]=function(_0x5dc86d,_0x3015aa,_0x1dc14e,_0x169fa1){return new BPromise(function(_0x1c30a7,_0x1f6195){_0x169fa1=combineOptions(_0x169fa1);var _0x494bea=new Buffer(_0x1dc14e);var _0x40cc88=fs['createReadStream'](_0x5dc86d);var _0x10288c=fs[_0xdc9c('0x19')](_0x3015aa);var _0x5c8dd3=crypto[_0xdc9c('0x1a')](_0x169fa1['algorithm'],_0x494bea);_0x40cc88['on'](_0xdc9c('0x11'),function(_0x54bee1){var _0x3d8787=new Buffer(_0x5c8dd3[_0xdc9c('0x12')](_0x54bee1),_0xdc9c('0x14'));_0x10288c[_0xdc9c('0x15')](_0x3d8787);});_0x40cc88['on'](_0xdc9c('0x16'),function(){try{var _0x44ebbd=new Buffer(_0x5c8dd3['final'](_0xdc9c('0x14')),'binary');_0x10288c[_0xdc9c('0x15')](_0x44ebbd);_0x10288c['end']();_0x10288c['on']('close',function(){return _0x1c30a7(_0x3015aa);});}catch(_0x1dbdc8){fs['unlink'](_0x3015aa);return _0x1f6195(_0x1dbdc8);}});});};exports[_0xdc9c('0x1b')]=function(_0x46b433,_0x391dea,_0xdbf8bb){var _0x250e50=_0xdbf8bb||stringOptions[_0xdc9c('0x8')];var _0x4c182f=_0x391dea||stringOptions['secret'];var _0x549d15=crypto[_0xdc9c('0x10')](_0x250e50,_0x4c182f);var _0x1a03cb=_0x549d15[_0xdc9c('0x12')](_0x46b433,_0xdc9c('0x1c'),'base64');_0x1a03cb+=_0x549d15[_0xdc9c('0x13')](_0xdc9c('0x1d'));return _0x1a03cb;};exports['decryptString']=function(_0x16a099,_0x4123ec,_0x743248){var _0x4e5d78=_0x743248||stringOptions[_0xdc9c('0x8')];var _0x570895=_0x4123ec||stringOptions['secret'];var _0xefa0be=crypto[_0xdc9c('0x1a')](_0x4e5d78,_0x570895);var _0x1da560=_0xefa0be[_0xdc9c('0x12')](_0x16a099,_0xdc9c('0x1d'),'utf8');_0x1da560+=_0xefa0be[_0xdc9c('0x13')](_0xdc9c('0x1c'));return _0x1da560;};
\ No newline at end of file