Built motion from commit ff78e754.|2.6.29
[motion2.git] / server / components / encryptor / index.js
index 8c24ca9..1d5e1a6 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x8781=['decryptString','secret','crypto','bluebird','lodash','../../config/logger','app','secrets','aes-256-ctr','aes192','encrypt','algorithm','join','error','is\x20not\x20a\x20supported\x20algorithm.\x20Your\x20system\x20supports\x20the\x20following\x20algorithms:','getCiphers','indexOf','hasOwnProperty','createWriteStream','createCipher','data','update','binary','end','final','write','close','unlink','decryptFile','createReadStream','createDecipher','encryptString','utf8','base64'];(function(_0x4d07cc,_0x587613){var _0x42de3b=function(_0x201f78){while(--_0x201f78){_0x4d07cc['push'](_0x4d07cc['shift']());}};_0x42de3b(++_0x587613);}(_0x8781,0x8a));var _0x1878=function(_0x500815,_0x2a9cb4){_0x500815=_0x500815-0x0;var _0x3d582c=_0x8781[_0x500815];return _0x3d582c;};'use strict';var crypto=require(_0x1878('0x0'));var fs=require('fs');var BPromise=require(_0x1878('0x1'));var _=require(_0x1878('0x2'));var config=require('../../config/environment');var logger=require(_0x1878('0x3'))(_0x1878('0x4'));const AES_SUPPORTED_RX=/^aes(-)?\d{3}(-(cbc|cfb|ctr)(1|8)?){0,1}$/;const stringOptions={'secret':config[_0x1878('0x5')]['session'],'algorithm':_0x1878('0x6')};const fileOptions={'algorithm':_0x1878('0x7')};if(config[_0x1878('0x8')]&&config[_0x1878('0x8')]['algorithm']){var isSupported=isAlgorithmSupported(config[_0x1878('0x8')][_0x1878('0x9')]);if(isSupported){fileOptions[_0x1878('0x9')]=config[_0x1878('0x8')][_0x1878('0x9')];}else{var supportedAlgorithms=getSupportedCiphers()[_0x1878('0xa')](',\x20');logger[_0x1878('0xb')](config[_0x1878('0x8')][_0x1878('0x9')],_0x1878('0xc'),supportedAlgorithms);}}function isASupportedCipher(_0x332b53){return AES_SUPPORTED_RX['test'](_0x332b53);}function getSupportedCiphers(){return crypto[_0x1878('0xd')]()['filter'](isASupportedCipher);}function isAlgorithmSupported(_0xd7c4d3){return getSupportedCiphers()[_0x1878('0xe')](_0xd7c4d3)>-0x1;}function combineOptions(_0x40c825){var _0x44cb28={};for(var _0x4ea599 in fileOptions){if(fileOptions[_0x1878('0xf')](_0x4ea599)){_0x44cb28[_0x4ea599]=fileOptions[_0x4ea599];}}if(_0x40c825){for(var _0xac39b5 in _0x40c825){if(_0x40c825[_0x1878('0xf')](_0xac39b5)){_0x44cb28[_0xac39b5]=_0x40c825[_0xac39b5];}}}return _0x44cb28;}exports['encryptFile']=function(_0x23e831,_0x5068af,_0x80824f,_0x3abb38){return new BPromise(function(_0x4a3ea9,_0x571d9a){_0x3abb38=combineOptions(_0x3abb38);var _0x444c16=new Buffer(_0x80824f);var _0x4806d1=fs['createReadStream'](_0x23e831);var _0x703ae7=fs[_0x1878('0x10')](_0x5068af);var _0xa20657=crypto[_0x1878('0x11')](_0x3abb38[_0x1878('0x9')],_0x444c16);_0x4806d1['on'](_0x1878('0x12'),function(_0x4e8b8f){var _0x14918c=new Buffer(_0xa20657[_0x1878('0x13')](_0x4e8b8f),_0x1878('0x14'));_0x703ae7['write'](_0x14918c);});_0x4806d1['on'](_0x1878('0x15'),function(){try{var _0x15449a=new Buffer(_0xa20657[_0x1878('0x16')](_0x1878('0x14')),_0x1878('0x14'));_0x703ae7[_0x1878('0x17')](_0x15449a);_0x703ae7[_0x1878('0x15')]();_0x703ae7['on'](_0x1878('0x18'),function(){return _0x4a3ea9(_0x5068af);});}catch(_0x18ed59){fs[_0x1878('0x19')](_0x5068af);return _0x571d9a(_0x18ed59);}});});};exports[_0x1878('0x1a')]=function(_0x59efde,_0x29e954,_0x509f23,_0x3762a){return new BPromise(function(_0xef2a58,_0x374652){_0x3762a=combineOptions(_0x3762a);var _0x31f5ba=new Buffer(_0x509f23);var _0x120f52=fs[_0x1878('0x1b')](_0x59efde);var _0x3b4c1c=fs[_0x1878('0x10')](_0x29e954);var _0x56ede2=crypto[_0x1878('0x1c')](_0x3762a[_0x1878('0x9')],_0x31f5ba);_0x120f52['on'](_0x1878('0x12'),function(_0x32703c){var _0x4f46c7=new Buffer(_0x56ede2[_0x1878('0x13')](_0x32703c),_0x1878('0x14'));_0x3b4c1c['write'](_0x4f46c7);});_0x120f52['on'](_0x1878('0x15'),function(){try{var _0x23a069=new Buffer(_0x56ede2[_0x1878('0x16')](_0x1878('0x14')),_0x1878('0x14'));_0x3b4c1c[_0x1878('0x17')](_0x23a069);_0x3b4c1c[_0x1878('0x15')]();_0x3b4c1c['on']('close',function(){return _0xef2a58(_0x29e954);});}catch(_0x5789bd){fs[_0x1878('0x19')](_0x29e954);return _0x374652(_0x5789bd);}});});};exports[_0x1878('0x1d')]=function(_0x14c2d8,_0x6da293,_0x3bbe5a){var _0x3aff6b=_0x3bbe5a||stringOptions[_0x1878('0x9')];var _0x4de2a8=_0x6da293||stringOptions['secret'];var _0x11aa55=crypto[_0x1878('0x11')](_0x3aff6b,_0x4de2a8);var _0x3b6430=_0x11aa55['update'](_0x14c2d8,_0x1878('0x1e'),_0x1878('0x1f'));_0x3b6430+=_0x11aa55[_0x1878('0x16')]('base64');return _0x3b6430;};exports[_0x1878('0x20')]=function(_0x3c06a5,_0x1462a3,_0x3819dc){var _0x376df5=_0x3819dc||stringOptions[_0x1878('0x9')];var _0x37873a=_0x1462a3||stringOptions[_0x1878('0x21')];var _0x3d156e=crypto[_0x1878('0x1c')](_0x376df5,_0x37873a);var _0x167583=_0x3d156e[_0x1878('0x13')](_0x3c06a5,'base64',_0x1878('0x1e'));_0x167583+=_0x3d156e[_0x1878('0x16')](_0x1878('0x1e'));return _0x167583;};
\ No newline at end of file
+var _0xbd50=['bluebird','../../config/environment','../../config/logger','app','secrets','session','aes192','encrypt','algorithm','error','is\x20not\x20a\x20supported\x20algorithm.\x20Your\x20system\x20supports\x20the\x20following\x20algorithms:','test','getCiphers','filter','indexOf','hasOwnProperty','encryptFile','createReadStream','createWriteStream','data','binary','write','end','close','unlink','decryptFile','createDecipher','update','final','encryptString','secret','createCipher','utf8','base64','decryptString','crypto'];(function(_0x20f4b9,_0x22aae4){var _0x21eb2b=function(_0xfa95b2){while(--_0xfa95b2){_0x20f4b9['push'](_0x20f4b9['shift']());}};_0x21eb2b(++_0x22aae4);}(_0xbd50,0x8f));var _0x0bd5=function(_0x14e020,_0x321357){_0x14e020=_0x14e020-0x0;var _0x13ed1b=_0xbd50[_0x14e020];return _0x13ed1b;};'use strict';var crypto=require(_0x0bd5('0x0'));var fs=require('fs');var BPromise=require(_0x0bd5('0x1'));var _=require('lodash');var config=require(_0x0bd5('0x2'));var logger=require(_0x0bd5('0x3'))(_0x0bd5('0x4'));const AES_SUPPORTED_RX=/^aes(-)?\d{3}(-(cbc|cfb|ctr)(1|8)?){0,1}$/;const stringOptions={'secret':config[_0x0bd5('0x5')][_0x0bd5('0x6')],'algorithm':'aes-256-ctr'};const fileOptions={'algorithm':_0x0bd5('0x7')};if(config[_0x0bd5('0x8')]&&config[_0x0bd5('0x8')]['algorithm']){var isSupported=isAlgorithmSupported(config['encrypt']['algorithm']);if(isSupported){fileOptions[_0x0bd5('0x9')]=config[_0x0bd5('0x8')][_0x0bd5('0x9')];}else{var supportedAlgorithms=getSupportedCiphers()['join'](',\x20');logger[_0x0bd5('0xa')](config[_0x0bd5('0x8')][_0x0bd5('0x9')],_0x0bd5('0xb'),supportedAlgorithms);}}function isASupportedCipher(_0xb792be){return AES_SUPPORTED_RX[_0x0bd5('0xc')](_0xb792be);}function getSupportedCiphers(){return crypto[_0x0bd5('0xd')]()[_0x0bd5('0xe')](isASupportedCipher);}function isAlgorithmSupported(_0x52352a){return getSupportedCiphers()[_0x0bd5('0xf')](_0x52352a)>-0x1;}function combineOptions(_0x4777d2){var _0x5b572c={};for(var _0x2751e8 in fileOptions){if(fileOptions['hasOwnProperty'](_0x2751e8)){_0x5b572c[_0x2751e8]=fileOptions[_0x2751e8];}}if(_0x4777d2){for(var _0x2ba110 in _0x4777d2){if(_0x4777d2[_0x0bd5('0x10')](_0x2ba110)){_0x5b572c[_0x2ba110]=_0x4777d2[_0x2ba110];}}}return _0x5b572c;}exports[_0x0bd5('0x11')]=function(_0xad957b,_0x1b07a8,_0x4c9351,_0x26d3aa){return new BPromise(function(_0x19a4fd,_0x52f8b4){_0x26d3aa=combineOptions(_0x26d3aa);var _0x5c6bee=new Buffer(_0x4c9351);var _0x45c2db=fs[_0x0bd5('0x12')](_0xad957b);var _0xcf39ac=fs[_0x0bd5('0x13')](_0x1b07a8);var _0x1b2513=crypto['createCipher'](_0x26d3aa[_0x0bd5('0x9')],_0x5c6bee);_0x45c2db['on'](_0x0bd5('0x14'),function(_0x31b8d8){var _0x411a45=new Buffer(_0x1b2513['update'](_0x31b8d8),_0x0bd5('0x15'));_0xcf39ac[_0x0bd5('0x16')](_0x411a45);});_0x45c2db['on'](_0x0bd5('0x17'),function(){try{var _0x1bbf9b=new Buffer(_0x1b2513['final'](_0x0bd5('0x15')),'binary');_0xcf39ac[_0x0bd5('0x16')](_0x1bbf9b);_0xcf39ac[_0x0bd5('0x17')]();_0xcf39ac['on'](_0x0bd5('0x18'),function(){return _0x19a4fd(_0x1b07a8);});}catch(_0x33f1cf){fs[_0x0bd5('0x19')](_0x1b07a8);return _0x52f8b4(_0x33f1cf);}});});};exports[_0x0bd5('0x1a')]=function(_0x343a90,_0x72bdbd,_0x3a564b,_0x4d330c){return new BPromise(function(_0x4e4247,_0x2fa92b){_0x4d330c=combineOptions(_0x4d330c);var _0x5a5ba0=new Buffer(_0x3a564b);var _0x22b530=fs[_0x0bd5('0x12')](_0x343a90);var _0x337410=fs[_0x0bd5('0x13')](_0x72bdbd);var _0x153376=crypto[_0x0bd5('0x1b')](_0x4d330c['algorithm'],_0x5a5ba0);_0x22b530['on'](_0x0bd5('0x14'),function(_0x2863ac){var _0x4f0ede=new Buffer(_0x153376[_0x0bd5('0x1c')](_0x2863ac),'binary');_0x337410['write'](_0x4f0ede);});_0x22b530['on'](_0x0bd5('0x17'),function(){try{var _0x1609a3=new Buffer(_0x153376[_0x0bd5('0x1d')](_0x0bd5('0x15')),_0x0bd5('0x15'));_0x337410[_0x0bd5('0x16')](_0x1609a3);_0x337410['end']();_0x337410['on'](_0x0bd5('0x18'),function(){return _0x4e4247(_0x72bdbd);});}catch(_0x1e865d){fs[_0x0bd5('0x19')](_0x72bdbd);return _0x2fa92b(_0x1e865d);}});});};exports[_0x0bd5('0x1e')]=function(_0x11603e,_0x458519,_0x52adc5){var _0x46eda1=_0x52adc5||stringOptions[_0x0bd5('0x9')];var _0x5b0d85=_0x458519||stringOptions[_0x0bd5('0x1f')];var _0x49ff6c=crypto[_0x0bd5('0x20')](_0x46eda1,_0x5b0d85);var _0x1293f0=_0x49ff6c[_0x0bd5('0x1c')](_0x11603e,_0x0bd5('0x21'),_0x0bd5('0x22'));_0x1293f0+=_0x49ff6c[_0x0bd5('0x1d')]('base64');return _0x1293f0;};exports[_0x0bd5('0x23')]=function(_0x14491e,_0x4af3a2,_0xc2aed9){var _0x527bfa=_0xc2aed9||stringOptions[_0x0bd5('0x9')];var _0x23892c=_0x4af3a2||stringOptions[_0x0bd5('0x1f')];var _0x1b3f62=crypto[_0x0bd5('0x1b')](_0x527bfa,_0x23892c);var _0x4bbe43=_0x1b3f62[_0x0bd5('0x1c')](_0x14491e,_0x0bd5('0x22'),_0x0bd5('0x21'));_0x4bbe43+=_0x1b3f62[_0x0bd5('0x1d')]('utf8');return _0x4bbe43;};
\ No newline at end of file