Javascript 将执行计算的js文件分离到另一个文件中

Javascript 将执行计算的js文件分离到另一个文件中,javascript,visual-studio,cordova,visual-studio-cordova,Javascript,Visual Studio,Cordova,Visual Studio Cordova,我正在构建Visual Studio 2015 Cordova应用程序。在这个应用程序中,我有4个js文件,这些文件提供了使这个应用程序工作的所有计算。 我想把这些文件分离出来,然后像引用dll一样引用它们。 我还听说在Cordova应用程序中,所有js文件都呈现为纯文本,这将揭示应用程序工作的计算结构。 基本上,我想保护这些文件,使其不易查看。 因为我使用Javascript和移动设备,所以我不确定实现这一点的最佳方法。 谢谢分离文件没有多大用处,事实上,将它们与代码结合起来将是最简单的方法

我正在构建Visual Studio 2015 Cordova应用程序。在这个应用程序中,我有4个js文件,这些文件提供了使这个应用程序工作的所有计算。 我想把这些文件分离出来,然后像引用dll一样引用它们。 我还听说在Cordova应用程序中,所有js文件都呈现为纯文本,这将揭示应用程序工作的计算结构。
基本上,我想保护这些文件,使其不易查看。 因为我使用Javascript和移动设备,所以我不确定实现这一点的最佳方法。
谢谢

分离文件没有多大用处,事实上,将它们与代码结合起来将是最简单的方法

更好但更复杂的是,您可以使用某种加密,这将使反向工程更加困难。对此,可以找到一篇好文章。在这里发布准确的代码有点麻烦,而且它是面向OSX开发环境的,但我相信它是可以修改的

基本上,您可以使用类似
ffffffffffffffffffffffffffffff
的密钥加密源文件(PHP,但可以使用任何语言):

<?
function icrypt($plaintext, $key) {
    $iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB);
    $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
    return mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, $plaintext, MCRYPT_MODE_ECB);
}
//usage:
$newHtml = icrypt('<html>Source File</html>', 'ffffffffffffffffffffffffffffffff');

<> >文章显示了整个过程的更好的工作。

你可能想考虑把这个敏感代码放在Web服务中,并从移动应用程序调用它。您可以使用编译语言(如C++、C++、java等)来确保Web服务代码,或者如果您想将当前工作保存在JavaScript中,将其转换为NoDEJS模块,以作为Web服务进行响应。

- (void) fetchKey:(char[]) key
{
    //ffffffffffffffffffffffffffffffff
    key[0] = 0x66;
    key[1] = 0x66;
    key[2] = 0x66;
    key[3] = 0x66;
    key[4] = 0x66;
    key[5] = 0x66;
    key[6] = 0x66;
    key[7] = 0x66;
    key[8] = 0x66;
    key[9] = 0x66;
...