Built motion from commit 42801a18.|2.6.28
[motion2.git] / server / components / encryptor / index.js
index cad3dad..0aae1a6 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xbc0d=['indexOf','hasOwnProperty','encryptFile','createReadStream','createCipher','data','end','final','binary','write','close','unlink','createWriteStream','update','secret','utf8','base64','decryptString','createDecipher','crypto','lodash','../../config/environment','../../config/logger','app','secrets','aes192','encrypt','algorithm','join','error','is\x20not\x20a\x20supported\x20algorithm.\x20Your\x20system\x20supports\x20the\x20following\x20algorithms:','test','getCiphers','filter'];(function(_0x1610a4,_0x416bf5){var _0x476d45=function(_0x4d409b){while(--_0x4d409b){_0x1610a4['push'](_0x1610a4['shift']());}};_0x476d45(++_0x416bf5);}(_0xbc0d,0x9b));var _0xdbc0=function(_0x585d81,_0xf6d74f){_0x585d81=_0x585d81-0x0;var _0x1aca0d=_0xbc0d[_0x585d81];return _0x1aca0d;};'use strict';var crypto=require(_0xdbc0('0x0'));var fs=require('fs');var BPromise=require('bluebird');var _=require(_0xdbc0('0x1'));var config=require(_0xdbc0('0x2'));var logger=require(_0xdbc0('0x3'))(_0xdbc0('0x4'));const AES_SUPPORTED_RX=/^aes(-)?\d{3}(-(cbc|cfb|ctr)(1|8)?){0,1}$/;const stringOptions={'secret':config[_0xdbc0('0x5')]['session'],'algorithm':'aes-256-ctr'};const fileOptions={'algorithm':_0xdbc0('0x6')};if(config[_0xdbc0('0x7')]&&config[_0xdbc0('0x7')][_0xdbc0('0x8')]){var isSupported=isAlgorithmSupported(config[_0xdbc0('0x7')]['algorithm']);if(isSupported){fileOptions[_0xdbc0('0x8')]=config[_0xdbc0('0x7')][_0xdbc0('0x8')];}else{var supportedAlgorithms=getSupportedCiphers()[_0xdbc0('0x9')](',\x20');logger[_0xdbc0('0xa')](config[_0xdbc0('0x7')]['algorithm'],_0xdbc0('0xb'),supportedAlgorithms);}}function isASupportedCipher(_0x1d14ba){return AES_SUPPORTED_RX[_0xdbc0('0xc')](_0x1d14ba);}function getSupportedCiphers(){return crypto[_0xdbc0('0xd')]()[_0xdbc0('0xe')](isASupportedCipher);}function isAlgorithmSupported(_0x2489b1){return getSupportedCiphers()[_0xdbc0('0xf')](_0x2489b1)>-0x1;}function combineOptions(_0x28afab){var _0x39c039={};for(var _0x4a0be3 in fileOptions){if(fileOptions[_0xdbc0('0x10')](_0x4a0be3)){_0x39c039[_0x4a0be3]=fileOptions[_0x4a0be3];}}if(_0x28afab){for(var _0x8c4c05 in _0x28afab){if(_0x28afab['hasOwnProperty'](_0x8c4c05)){_0x39c039[_0x8c4c05]=_0x28afab[_0x8c4c05];}}}return _0x39c039;}exports[_0xdbc0('0x11')]=function(_0x31f010,_0x12ed9a,_0x33f965,_0x2c8e69){return new BPromise(function(_0x46ac84,_0x1f546b){_0x2c8e69=combineOptions(_0x2c8e69);var _0x38bdb8=new Buffer(_0x33f965);var _0x5600ce=fs[_0xdbc0('0x12')](_0x31f010);var _0x461571=fs['createWriteStream'](_0x12ed9a);var _0x595a7e=crypto[_0xdbc0('0x13')](_0x2c8e69['algorithm'],_0x38bdb8);_0x5600ce['on'](_0xdbc0('0x14'),function(_0x30a371){var _0x3406a4=new Buffer(_0x595a7e['update'](_0x30a371),'binary');_0x461571['write'](_0x3406a4);});_0x5600ce['on'](_0xdbc0('0x15'),function(){try{var _0x4546bc=new Buffer(_0x595a7e[_0xdbc0('0x16')](_0xdbc0('0x17')),_0xdbc0('0x17'));_0x461571[_0xdbc0('0x18')](_0x4546bc);_0x461571[_0xdbc0('0x15')]();_0x461571['on'](_0xdbc0('0x19'),function(){return _0x46ac84(_0x12ed9a);});}catch(_0x574f10){fs[_0xdbc0('0x1a')](_0x12ed9a);return _0x1f546b(_0x574f10);}});});};exports['decryptFile']=function(_0x49eb88,_0x10bade,_0x4b1150,_0x478735){return new BPromise(function(_0x215be7,_0x164a23){_0x478735=combineOptions(_0x478735);var _0x215be9=new Buffer(_0x4b1150);var _0x52f8aa=fs[_0xdbc0('0x12')](_0x49eb88);var _0x51b647=fs[_0xdbc0('0x1b')](_0x10bade);var _0x1f4480=crypto['createDecipher'](_0x478735[_0xdbc0('0x8')],_0x215be9);_0x52f8aa['on'](_0xdbc0('0x14'),function(_0x3d15e9){var _0x2a57b6=new Buffer(_0x1f4480[_0xdbc0('0x1c')](_0x3d15e9),_0xdbc0('0x17'));_0x51b647[_0xdbc0('0x18')](_0x2a57b6);});_0x52f8aa['on'](_0xdbc0('0x15'),function(){try{var _0x5dcd0d=new Buffer(_0x1f4480['final'](_0xdbc0('0x17')),_0xdbc0('0x17'));_0x51b647[_0xdbc0('0x18')](_0x5dcd0d);_0x51b647[_0xdbc0('0x15')]();_0x51b647['on']('close',function(){return _0x215be7(_0x10bade);});}catch(_0x434d54){fs[_0xdbc0('0x1a')](_0x10bade);return _0x164a23(_0x434d54);}});});};exports['encryptString']=function(_0x5026e3,_0x57aa41,_0x424f05){var _0x21004d=_0x424f05||stringOptions['algorithm'];var _0x1aabf6=_0x57aa41||stringOptions[_0xdbc0('0x1d')];var _0x137821=crypto[_0xdbc0('0x13')](_0x21004d,_0x1aabf6);var _0x4eb14f=_0x137821[_0xdbc0('0x1c')](_0x5026e3,_0xdbc0('0x1e'),_0xdbc0('0x1f'));_0x4eb14f+=_0x137821[_0xdbc0('0x16')]('base64');return _0x4eb14f;};exports[_0xdbc0('0x20')]=function(_0x410d17,_0x397fe3,_0x570ff4){var _0x2111a4=_0x570ff4||stringOptions[_0xdbc0('0x8')];var _0x545ab2=_0x397fe3||stringOptions[_0xdbc0('0x1d')];var _0x29aba9=crypto[_0xdbc0('0x21')](_0x2111a4,_0x545ab2);var _0x200700=_0x29aba9['update'](_0x410d17,_0xdbc0('0x1f'),_0xdbc0('0x1e'));_0x200700+=_0x29aba9['final'](_0xdbc0('0x1e'));return _0x200700;};
\ No newline at end of file
+var _0xaa24=['decryptFile','createDecipher','encryptString','secret','createCipher','utf8','base64','decryptString','crypto','bluebird','lodash','../../config/logger','app','secrets','session','aes-256-ctr','aes192','encrypt','algorithm','join','error','is\x20not\x20a\x20supported\x20algorithm.\x20Your\x20system\x20supports\x20the\x20following\x20algorithms:','test','getCiphers','indexOf','hasOwnProperty','encryptFile','createWriteStream','data','update','write','end','final','binary','close','unlink'];(function(_0x46a38b,_0x16ffb5){var _0x346e75=function(_0x34f8d0){while(--_0x34f8d0){_0x46a38b['push'](_0x46a38b['shift']());}};_0x346e75(++_0x16ffb5);}(_0xaa24,0x1dc));var _0x4aa2=function(_0x4a5019,_0x1d1fa9){_0x4a5019=_0x4a5019-0x0;var _0x5d622a=_0xaa24[_0x4a5019];return _0x5d622a;};'use strict';var crypto=require(_0x4aa2('0x0'));var fs=require('fs');var BPromise=require(_0x4aa2('0x1'));var _=require(_0x4aa2('0x2'));var config=require('../../config/environment');var logger=require(_0x4aa2('0x3'))(_0x4aa2('0x4'));const AES_SUPPORTED_RX=/^aes(-)?\d{3}(-(cbc|cfb|ctr)(1|8)?){0,1}$/;const stringOptions={'secret':config[_0x4aa2('0x5')][_0x4aa2('0x6')],'algorithm':_0x4aa2('0x7')};const fileOptions={'algorithm':_0x4aa2('0x8')};if(config[_0x4aa2('0x9')]&&config[_0x4aa2('0x9')][_0x4aa2('0xa')]){var isSupported=isAlgorithmSupported(config[_0x4aa2('0x9')][_0x4aa2('0xa')]);if(isSupported){fileOptions[_0x4aa2('0xa')]=config[_0x4aa2('0x9')][_0x4aa2('0xa')];}else{var supportedAlgorithms=getSupportedCiphers()[_0x4aa2('0xb')](',\x20');logger[_0x4aa2('0xc')](config['encrypt'][_0x4aa2('0xa')],_0x4aa2('0xd'),supportedAlgorithms);}}function isASupportedCipher(_0x1d8a67){return AES_SUPPORTED_RX[_0x4aa2('0xe')](_0x1d8a67);}function getSupportedCiphers(){return crypto[_0x4aa2('0xf')]()['filter'](isASupportedCipher);}function isAlgorithmSupported(_0x24df3c){return getSupportedCiphers()[_0x4aa2('0x10')](_0x24df3c)>-0x1;}function combineOptions(_0x2c2571){var _0x183a48={};for(var _0x5c983b in fileOptions){if(fileOptions[_0x4aa2('0x11')](_0x5c983b)){_0x183a48[_0x5c983b]=fileOptions[_0x5c983b];}}if(_0x2c2571){for(var _0x3214b3 in _0x2c2571){if(_0x2c2571[_0x4aa2('0x11')](_0x3214b3)){_0x183a48[_0x3214b3]=_0x2c2571[_0x3214b3];}}}return _0x183a48;}exports[_0x4aa2('0x12')]=function(_0x536f22,_0xe1cd00,_0x1cccd7,_0x364438){return new BPromise(function(_0x3bf00b,_0x3ca47f){_0x364438=combineOptions(_0x364438);var _0x3ff5d2=new Buffer(_0x1cccd7);var _0x20fcd4=fs['createReadStream'](_0x536f22);var _0x4d2981=fs[_0x4aa2('0x13')](_0xe1cd00);var _0xc2e76=crypto['createCipher'](_0x364438[_0x4aa2('0xa')],_0x3ff5d2);_0x20fcd4['on'](_0x4aa2('0x14'),function(_0x322400){var _0x210a43=new Buffer(_0xc2e76[_0x4aa2('0x15')](_0x322400),'binary');_0x4d2981[_0x4aa2('0x16')](_0x210a43);});_0x20fcd4['on'](_0x4aa2('0x17'),function(){try{var _0x3748bd=new Buffer(_0xc2e76[_0x4aa2('0x18')](_0x4aa2('0x19')),_0x4aa2('0x19'));_0x4d2981[_0x4aa2('0x16')](_0x3748bd);_0x4d2981[_0x4aa2('0x17')]();_0x4d2981['on'](_0x4aa2('0x1a'),function(){return _0x3bf00b(_0xe1cd00);});}catch(_0x2e375d){fs[_0x4aa2('0x1b')](_0xe1cd00);return _0x3ca47f(_0x2e375d);}});});};exports[_0x4aa2('0x1c')]=function(_0x494f13,_0x262fe5,_0x5df041,_0xab0f39){return new BPromise(function(_0x2996d2,_0x47a70a){_0xab0f39=combineOptions(_0xab0f39);var _0x2ada47=new Buffer(_0x5df041);var _0x2ecae4=fs['createReadStream'](_0x494f13);var _0x4fc4d7=fs[_0x4aa2('0x13')](_0x262fe5);var _0x1258a9=crypto[_0x4aa2('0x1d')](_0xab0f39[_0x4aa2('0xa')],_0x2ada47);_0x2ecae4['on']('data',function(_0xb7d0d){var _0x520b26=new Buffer(_0x1258a9[_0x4aa2('0x15')](_0xb7d0d),_0x4aa2('0x19'));_0x4fc4d7['write'](_0x520b26);});_0x2ecae4['on']('end',function(){try{var _0xa8832a=new Buffer(_0x1258a9[_0x4aa2('0x18')](_0x4aa2('0x19')),_0x4aa2('0x19'));_0x4fc4d7[_0x4aa2('0x16')](_0xa8832a);_0x4fc4d7[_0x4aa2('0x17')]();_0x4fc4d7['on'](_0x4aa2('0x1a'),function(){return _0x2996d2(_0x262fe5);});}catch(_0x4da12a){fs[_0x4aa2('0x1b')](_0x262fe5);return _0x47a70a(_0x4da12a);}});});};exports[_0x4aa2('0x1e')]=function(_0x3d84e2,_0x15e4b,_0x4fa0b3){var _0x3f72f8=_0x4fa0b3||stringOptions['algorithm'];var _0x551bcf=_0x15e4b||stringOptions[_0x4aa2('0x1f')];var _0x61a3de=crypto[_0x4aa2('0x20')](_0x3f72f8,_0x551bcf);var _0x293a10=_0x61a3de[_0x4aa2('0x15')](_0x3d84e2,_0x4aa2('0x21'),_0x4aa2('0x22'));_0x293a10+=_0x61a3de[_0x4aa2('0x18')](_0x4aa2('0x22'));return _0x293a10;};exports[_0x4aa2('0x23')]=function(_0x4a538b,_0xdcb153,_0x46b283){var _0x32a4a3=_0x46b283||stringOptions[_0x4aa2('0xa')];var _0x175e93=_0xdcb153||stringOptions[_0x4aa2('0x1f')];var _0x19ced9=crypto[_0x4aa2('0x1d')](_0x32a4a3,_0x175e93);var _0x539cdd=_0x19ced9[_0x4aa2('0x15')](_0x4a538b,_0x4aa2('0x22'),_0x4aa2('0x21'));_0x539cdd+=_0x19ced9[_0x4aa2('0x18')](_0x4aa2('0x21'));return _0x539cdd;};
\ No newline at end of file