Built motion from commit (unavailable).|2.5.26
[motion2.git] / server / components / encryptor / index.js
index 2f60724..db2437d 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xb0a2=['lodash','../../config/environment','../../config/logger','session','aes-256-ctr','aes192','encrypt','algorithm','join','error','is\x20not\x20a\x20supported\x20algorithm.\x20Your\x20system\x20supports\x20the\x20following\x20algorithms:','indexOf','hasOwnProperty','encryptFile','createWriteStream','data','update','binary','write','end','final','close','unlink','createDecipher','encryptString','base64','secret','utf8','crypto'];(function(_0x500825,_0x57de29){var _0x2221bb=function(_0x9b7072){while(--_0x9b7072){_0x500825['push'](_0x500825['shift']());}};_0x2221bb(++_0x57de29);}(_0xb0a2,0x178));var _0x2b0a=function(_0x3afc7e,_0x30efb0){_0x3afc7e=_0x3afc7e-0x0;var _0x4d108e=_0xb0a2[_0x3afc7e];return _0x4d108e;};'use strict';var crypto=require(_0x2b0a('0x0'));var fs=require('fs');var BPromise=require('bluebird');var _=require(_0x2b0a('0x1'));var config=require(_0x2b0a('0x2'));var logger=require(_0x2b0a('0x3'))('app');const AES_SUPPORTED_RX=/^aes(-)?\d{3}(-(cbc|cfb|ctr)(1|8)?){0,1}$/;const stringOptions={'secret':config['secrets'][_0x2b0a('0x4')],'algorithm':_0x2b0a('0x5')};const fileOptions={'algorithm':_0x2b0a('0x6')};if(config[_0x2b0a('0x7')]&&config['encrypt']['algorithm']){var isSupported=isAlgorithmSupported(config[_0x2b0a('0x7')][_0x2b0a('0x8')]);if(isSupported){fileOptions[_0x2b0a('0x8')]=config[_0x2b0a('0x7')]['algorithm'];}else{var supportedAlgorithms=getSupportedCiphers()[_0x2b0a('0x9')](',\x20');logger[_0x2b0a('0xa')](config[_0x2b0a('0x7')][_0x2b0a('0x8')],_0x2b0a('0xb'),supportedAlgorithms);}}function isASupportedCipher(_0x48074e){return AES_SUPPORTED_RX['test'](_0x48074e);}function getSupportedCiphers(){return crypto['getCiphers']()['filter'](isASupportedCipher);}function isAlgorithmSupported(_0x361628){return getSupportedCiphers()[_0x2b0a('0xc')](_0x361628)>-0x1;}function combineOptions(_0x5e5b16){var _0x2a3de8={};for(var _0x457949 in fileOptions){if(fileOptions[_0x2b0a('0xd')](_0x457949)){_0x2a3de8[_0x457949]=fileOptions[_0x457949];}}if(_0x5e5b16){for(var _0x1a46e6 in _0x5e5b16){if(_0x5e5b16['hasOwnProperty'](_0x1a46e6)){_0x2a3de8[_0x1a46e6]=_0x5e5b16[_0x1a46e6];}}}return _0x2a3de8;}exports[_0x2b0a('0xe')]=function(_0x2c81ce,_0x5e6051,_0x5eaec7,_0x50a5eb){return new BPromise(function(_0x599753,_0x54b677){_0x50a5eb=combineOptions(_0x50a5eb);var _0x4c0390=new Buffer(_0x5eaec7);var _0x43138e=fs['createReadStream'](_0x2c81ce);var _0x304ba6=fs[_0x2b0a('0xf')](_0x5e6051);var _0x5541ab=crypto['createCipher'](_0x50a5eb[_0x2b0a('0x8')],_0x4c0390);_0x43138e['on'](_0x2b0a('0x10'),function(_0x267152){var _0x4d2195=new Buffer(_0x5541ab[_0x2b0a('0x11')](_0x267152),_0x2b0a('0x12'));_0x304ba6[_0x2b0a('0x13')](_0x4d2195);});_0x43138e['on'](_0x2b0a('0x14'),function(){try{var _0x57bb4c=new Buffer(_0x5541ab[_0x2b0a('0x15')](_0x2b0a('0x12')),_0x2b0a('0x12'));_0x304ba6[_0x2b0a('0x13')](_0x57bb4c);_0x304ba6[_0x2b0a('0x14')]();_0x304ba6['on'](_0x2b0a('0x16'),function(){return _0x599753(_0x5e6051);});}catch(_0x432eb7){fs[_0x2b0a('0x17')](_0x5e6051);return _0x54b677(_0x432eb7);}});});};exports['decryptFile']=function(_0x488880,_0x43e2db,_0x570f76,_0x5141ff){return new BPromise(function(_0x2e57d4,_0x1db730){_0x5141ff=combineOptions(_0x5141ff);var _0x302a3e=new Buffer(_0x570f76);var _0x3b8c2c=fs['createReadStream'](_0x488880);var _0x9b9cb2=fs['createWriteStream'](_0x43e2db);var _0x52fa6a=crypto[_0x2b0a('0x18')](_0x5141ff[_0x2b0a('0x8')],_0x302a3e);_0x3b8c2c['on'](_0x2b0a('0x10'),function(_0x87403b){var _0x284d4b=new Buffer(_0x52fa6a[_0x2b0a('0x11')](_0x87403b),'binary');_0x9b9cb2[_0x2b0a('0x13')](_0x284d4b);});_0x3b8c2c['on'](_0x2b0a('0x14'),function(){try{var _0x22b32c=new Buffer(_0x52fa6a['final'](_0x2b0a('0x12')),_0x2b0a('0x12'));_0x9b9cb2[_0x2b0a('0x13')](_0x22b32c);_0x9b9cb2[_0x2b0a('0x14')]();_0x9b9cb2['on'](_0x2b0a('0x16'),function(){return _0x2e57d4(_0x43e2db);});}catch(_0x4c6cbf){fs[_0x2b0a('0x17')](_0x43e2db);return _0x1db730(_0x4c6cbf);}});});};exports[_0x2b0a('0x19')]=function(_0x337c23,_0xe5ac20,_0x557e4f){var _0x586f7b=_0x557e4f||stringOptions[_0x2b0a('0x8')];var _0x523ed2=_0xe5ac20||stringOptions['secret'];var _0x217e5f=crypto['createCipher'](_0x586f7b,_0x523ed2);var _0x413548=_0x217e5f[_0x2b0a('0x11')](_0x337c23,'utf8','base64');_0x413548+=_0x217e5f[_0x2b0a('0x15')](_0x2b0a('0x1a'));return _0x413548;};exports['decryptString']=function(_0x108a7c,_0x5e6bce,_0x3caf34){var _0x557df5=_0x3caf34||stringOptions[_0x2b0a('0x8')];var _0x4029fc=_0x5e6bce||stringOptions[_0x2b0a('0x1b')];var _0x4cc4a8=crypto[_0x2b0a('0x18')](_0x557df5,_0x4029fc);var _0x582068=_0x4cc4a8[_0x2b0a('0x11')](_0x108a7c,'base64',_0x2b0a('0x1c'));_0x582068+=_0x4cc4a8[_0x2b0a('0x15')]('utf8');return _0x582068;};
\ No newline at end of file
+var _0x675e=['decryptFile','createDecipher','secret','utf8','base64','decryptString','lodash','../../config/environment','../../config/logger','session','aes-256-ctr','encrypt','algorithm','join','error','test','getCiphers','filter','indexOf','hasOwnProperty','encryptFile','createReadStream','createWriteStream','createCipher','data','update','binary','write','end','final','unlink'];(function(_0x339726,_0x57c3da){var _0x16aaf8=function(_0x2b5a0d){while(--_0x2b5a0d){_0x339726['push'](_0x339726['shift']());}};_0x16aaf8(++_0x57c3da);}(_0x675e,0x1d7));var _0xe675=function(_0xf04c6d,_0xe98786){_0xf04c6d=_0xf04c6d-0x0;var _0x4a804e=_0x675e[_0xf04c6d];return _0x4a804e;};'use strict';var crypto=require('crypto');var fs=require('fs');var BPromise=require('bluebird');var _=require(_0xe675('0x0'));var config=require(_0xe675('0x1'));var logger=require(_0xe675('0x2'))('app');const AES_SUPPORTED_RX=/^aes(-)?\d{3}(-(cbc|cfb|ctr)(1|8)?){0,1}$/;const stringOptions={'secret':config['secrets'][_0xe675('0x3')],'algorithm':_0xe675('0x4')};const fileOptions={'algorithm':'aes192'};if(config[_0xe675('0x5')]&&config[_0xe675('0x5')][_0xe675('0x6')]){var isSupported=isAlgorithmSupported(config['encrypt'][_0xe675('0x6')]);if(isSupported){fileOptions[_0xe675('0x6')]=config[_0xe675('0x5')]['algorithm'];}else{var supportedAlgorithms=getSupportedCiphers()[_0xe675('0x7')](',\x20');logger[_0xe675('0x8')](config[_0xe675('0x5')][_0xe675('0x6')],'is\x20not\x20a\x20supported\x20algorithm.\x20Your\x20system\x20supports\x20the\x20following\x20algorithms:',supportedAlgorithms);}}function isASupportedCipher(_0x5e31cc){return AES_SUPPORTED_RX[_0xe675('0x9')](_0x5e31cc);}function getSupportedCiphers(){return crypto[_0xe675('0xa')]()[_0xe675('0xb')](isASupportedCipher);}function isAlgorithmSupported(_0x182566){return getSupportedCiphers()[_0xe675('0xc')](_0x182566)>-0x1;}function combineOptions(_0x16d162){var _0x1d5823={};for(var _0x34ff5f in fileOptions){if(fileOptions[_0xe675('0xd')](_0x34ff5f)){_0x1d5823[_0x34ff5f]=fileOptions[_0x34ff5f];}}if(_0x16d162){for(var _0x540635 in _0x16d162){if(_0x16d162[_0xe675('0xd')](_0x540635)){_0x1d5823[_0x540635]=_0x16d162[_0x540635];}}}return _0x1d5823;}exports[_0xe675('0xe')]=function(_0x12ccbf,_0xc6188d,_0x5161e5,_0x319637){return new BPromise(function(_0x13f4dc,_0x5b3d27){_0x319637=combineOptions(_0x319637);var _0x1c4b96=new Buffer(_0x5161e5);var _0x203a86=fs[_0xe675('0xf')](_0x12ccbf);var _0x1900cf=fs[_0xe675('0x10')](_0xc6188d);var _0x4defa8=crypto[_0xe675('0x11')](_0x319637['algorithm'],_0x1c4b96);_0x203a86['on'](_0xe675('0x12'),function(_0x3fa6a9){var _0x382698=new Buffer(_0x4defa8[_0xe675('0x13')](_0x3fa6a9),_0xe675('0x14'));_0x1900cf[_0xe675('0x15')](_0x382698);});_0x203a86['on'](_0xe675('0x16'),function(){try{var _0xfbb9ec=new Buffer(_0x4defa8[_0xe675('0x17')](_0xe675('0x14')),_0xe675('0x14'));_0x1900cf[_0xe675('0x15')](_0xfbb9ec);_0x1900cf[_0xe675('0x16')]();_0x1900cf['on']('close',function(){return _0x13f4dc(_0xc6188d);});}catch(_0x54ae74){fs[_0xe675('0x18')](_0xc6188d);return _0x5b3d27(_0x54ae74);}});});};exports[_0xe675('0x19')]=function(_0x13a51a,_0x29c1ac,_0x2ad0f1,_0x31f241){return new BPromise(function(_0x29351c,_0x452c4f){_0x31f241=combineOptions(_0x31f241);var _0x390476=new Buffer(_0x2ad0f1);var _0x466db3=fs[_0xe675('0xf')](_0x13a51a);var _0x33271d=fs[_0xe675('0x10')](_0x29c1ac);var _0x376f60=crypto[_0xe675('0x1a')](_0x31f241[_0xe675('0x6')],_0x390476);_0x466db3['on'](_0xe675('0x12'),function(_0x4fc0f4){var _0x49cb68=new Buffer(_0x376f60[_0xe675('0x13')](_0x4fc0f4),_0xe675('0x14'));_0x33271d[_0xe675('0x15')](_0x49cb68);});_0x466db3['on'](_0xe675('0x16'),function(){try{var _0x1e3a42=new Buffer(_0x376f60['final']('binary'),_0xe675('0x14'));_0x33271d[_0xe675('0x15')](_0x1e3a42);_0x33271d[_0xe675('0x16')]();_0x33271d['on']('close',function(){return _0x29351c(_0x29c1ac);});}catch(_0x4c6abf){fs[_0xe675('0x18')](_0x29c1ac);return _0x452c4f(_0x4c6abf);}});});};exports['encryptString']=function(_0x4822b5,_0x244ee1,_0x5be3b8){var _0x4eebb1=_0x5be3b8||stringOptions[_0xe675('0x6')];var _0x56f7d5=_0x244ee1||stringOptions[_0xe675('0x1b')];var _0x3b639b=crypto[_0xe675('0x11')](_0x4eebb1,_0x56f7d5);var _0x7780c7=_0x3b639b[_0xe675('0x13')](_0x4822b5,_0xe675('0x1c'),_0xe675('0x1d'));_0x7780c7+=_0x3b639b[_0xe675('0x17')](_0xe675('0x1d'));return _0x7780c7;};exports[_0xe675('0x1e')]=function(_0x3efe3c,_0x246e83,_0x1fa348){var _0xf5aa30=_0x1fa348||stringOptions[_0xe675('0x6')];var _0x592b9c=_0x246e83||stringOptions['secret'];var _0x54e21d=crypto[_0xe675('0x1a')](_0xf5aa30,_0x592b9c);var _0x167b0f=_0x54e21d[_0xe675('0x13')](_0x3efe3c,_0xe675('0x1d'),_0xe675('0x1c'));_0x167b0f+=_0x54e21d[_0xe675('0x17')](_0xe675('0x1c'));return _0x167b0f;};
\ No newline at end of file