CN108076050B - 一种密文封箱式保护JavaScript源码的方法及系统 - Google Patents

一种密文封箱式保护JavaScript源码的方法及系统 Download PDF

Info

Publication number
CN108076050B
CN108076050B CN201711128580.2A CN201711128580A CN108076050B CN 108076050 B CN108076050 B CN 108076050B CN 201711128580 A CN201711128580 A CN 201711128580A CN 108076050 B CN108076050 B CN 108076050B
Authority
CN
China
Prior art keywords
code
ciphertext
codes
function
character string
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201711128580.2A
Other languages
English (en)
Other versions
CN108076050A (zh
Inventor
李泉玄
唐树青
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Xinyan Network Technology Co ltd
Original Assignee
Guangzhou Xinyan Network Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Xinyan Network Technology Co ltd filed Critical Guangzhou Xinyan Network Technology Co ltd
Priority to CN201711128580.2A priority Critical patent/CN108076050B/zh
Publication of CN108076050A publication Critical patent/CN108076050A/zh
Application granted granted Critical
Publication of CN108076050B publication Critical patent/CN108076050B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45529Embedded in an application, e.g. JavaScript in a Web browser
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Abstract

本发明公开了一种密文封箱式保护JavaScript源码的方法及系统,该方法包括以下步骤:将JavaScript源码中所有事件绑定的代码进行隔离,并获得隔离后的代码;采用预设的代码压缩混淆方法对隔离后的代码进行压缩;采用预设的密钥加密方法随机生成一密钥,并使用密钥对经过压缩后的代码进行加密,从而获得第一文本密文;结合文本解密函数的相关代码和密钥组合生成第二密文;将第一密文和第二密文合并后,在合并后的密文外包一层作用域并生成最终加密文件,最后输出最终加密文件。本发明更好的对JavaScript源码进行加密,有效防止不法分子对源码的破解和损害,可广泛应用于源代码保护技术领域。

Description

一种密文封箱式保护JavaScript源码的方法及系统
技术领域
本发明涉及源代码保护技术,尤其涉及一种密文封箱式保护JavaScript源码的方法及系统。
背景技术
由于JavaScript直接在浏览器端运行,浏览器在打开页面的时候需要加载JavaScript源码本身来运行,所以对该领域的技术人员来说,JavaScript的源码是开放式的,没有保密可言,这对源代码会带来很大的危害,为了改善这个问题,有人提出了混淆加密的方法,然而这些混淆加密的方法存在着以下问题,并不能很好的保护JavaScript源代码。JavaScript的保护主要有混淆和加密两种方法,混淆方法分为可逆混淆方法和不可逆混淆方法两种,可逆混淆方法因为通过可逆破解,对该领域的技术人员来说相当于没有加密;不可逆混淆方法把由var定义的变量名全部重命名一遍,在基于对象和面向对象等风格的代码中,增加大量代码信息挂在属性名下,这些做法其实是为了提高阅读干扰程度,但就算是干扰程度很高的代码,其实逻辑还是显式的在代码上,也只是提高了阅读成本,最终还是能得到源代码。而对于加密方法也不安全,不管是转base64还是RSA之类加密,由于Web端只有浏览器,除非像银行一样安装一个浏览器安全插件,携带解密策略安装到用户电脑上,否则解密程序或者私钥本身就在JavaScript代码上,即使这个公开的解密钥匙非常难找,但是追踪一下还是能找到的。目前,还没有一种更好的保护JavaScript源码保护的方法。
术语解释:
JavaScript:一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。
jjencode加密技术:一种应用于JavaScript的加密技术。
uglify JS压缩方法:一种应用于JavaScript压缩技术。
eval函数:eval函数用于将括号内的字符串视为语句并运行。
发明内容
为了解决上述技术问题,本发明的目的是提供一种更难以破解的JavaScript源码保护方法。
本发明的另一目的是提供一种更难以破解的JavaScript源码保护系统。
本发明方法所采用的技术方案是:
一种密文封箱式保护JavaScript源码的方法,包括以下步骤:
将JavaScript源码中所有事件绑定的代码进行隔离,并获得隔离后的代码;
采用预设的代码压缩混淆方法对隔离后的代码进行压缩;
采用预设的密钥加密方法随机生成一密钥,并使用密钥对经过压缩后的代码进行加密,从而获得第一文本密文;
结合文本解密函数的相关代码和密钥组合生成第二密文;
将第一密文和第二密文合并后,在合并后的密文外包一层作用域并生成最终加密文件,最后输出最终加密文件。
进一步,所述将JavaScript源码中所有事件绑定的代码进行隔离的步骤,具体包括以下步骤:
从JavaScript源码的所有事件绑定的代码中获取包含操作代码的回调函数的代码,并将回调函数的代码生成第一函数;
结合第一函数和预定格式编写第二函数,并将第二函数放置在事件注册中原回调函数的代码位置后面,获得新的事件注册代码;
将新的事件注册代码生成第三字符串,并将第三字符串赋给eval函数,实现隔离。
进一步,所述结合文本解密函数的相关代码和密钥组合生成第二密文的步骤,具体包括以下步骤:
将文本解密函数的相关代码和密钥组合生成第一字符串;
将预设的删除保密代码生成第二字符串后,合并第一字符串和第二字符串,并采用jjencode加密技术将合并后的第一字符串和第二字符串转换为第二密文。
进一步,所述文本解密函数的相关代码包括文本解密函数的代码、文本解密函数调用语句的代码和文本解密函数解密后执行原代码语句的代码。
进一步,所述预设的代码压缩混淆方法为uglify JS压缩方法。
进一步,所述的预设的密钥加密方法为利用密钥对代码进行文本加密和解密的方法。
本发明系统所采用的技术方案是:
一种密文封箱式保护JavaScript源码的系统,该系统包括:
存储器,用于存放程序;
处理器,用于执行所述程序以用于执行以下步骤:
将JavaScript源码中所有事件绑定的代码进行隔离,并获得隔离后的代码;
采用预设的代码压缩混淆方法对隔离后的代码进行压缩;
采用预设的密钥加密方法随机生成一密钥,并使用密钥对经过压缩后的代码进行加密,从而获得第一文本密文;
结合文本解密函数的相关代码和密钥组合生成第二密文;
将第一密文和第二密文合并后,在合并后的密文外包一层作用域并生成最终加密文件,最后输出最终加密文件。
进一步,所述将JavaScript源码中所有事件绑定的代码进行隔离的步骤,具体包括以下步骤:
从JavaScript源码的所有事件绑定的代码中获取包含操作代码的回调函数的代码,并将回调函数的代码生成第一函数;
结合第一函数和预定格式编写第二函数,并将第二函数放置在事件注册中原回调函数的代码位置后面,获得新的事件注册代码;
将新的事件注册代码生成第三字符串,并将第三字符串赋给eval函数,实现隔离。
进一步,所述结合文本解密函数的相关代码和密钥组合生成第二密文的步骤,具体包括以下步骤:
将文本解密函数的相关代码和密钥组合生成第一字符串;
将预设的删除保密代码生成第二字符串后,合并第一字符串和第二字符串,并采用jjencode加密技术将合并后的第一字符串和第二字符串转换为第二密文。
进一步,所述文本解密函数的相关代码包括文本解密函数的代码、文本解密函数调用语句的代码和文本解密函数解密后执行原代码语句的代码。
本发明方法、系统的有益效果是:由于对事件绑定的代码进行隔离,因此,在浏览器调试面板事件绑定分析模块中,代码分析只能指向一小段被隔离的代码,所以不能看到源码的全文,避免源码直接开放,提高了安全性。在加密技术中,所有的代码变成自己执行的密文,而且不依赖第三方,由于密钥和解密方法内置,所以不能直接解出源码,极大地提高了源码的安全性,有效的防止不法分子对源码的破解和损害。
附图说明
图1是本发明一种密文封箱式保护JavaScript源码的方法实施例一的流程图。
具体实施方式
实施例一
如图1所示,一种密文封箱式保护JavaScript源码的方法,包括以下步骤:
S101、将JavaScript源码中所有事件绑定的代码进行隔离,并获得隔离后的代码。
S102、采用预设的代码压缩混淆方法对隔离后的代码进行压缩。
S103、采用预设的密钥加密方法随机生成第一密钥,并采用第一密钥对S102中经过压缩后的代码进行加密,从而获得第一文本密文。
S104、结合文本解密函数的相关代码和密钥组合生成第二密文。
S105、将第一密文和第二密文合并后,在合并后的密文外包一层作用域并生成最终加密文件,最后输出最终加密文件。
上述方法由于对事件绑定的代码进行隔离,因此,在浏览器调试面板事件绑定分析模块中,代码分析只能指向一小段被隔离的代码,所以不能看到源码的全文,避免源码直接开放,提高了安全性。在加密技术中,所有的代码变成自己执行的密文,而且不依赖第三方,由于密钥和解密方法内置,所以不能直接解出源码,极大地提高了源码的安全性,防止了不法分子对源码的破解和损害。
进一步作为优选的实施方式,所述将JavaScript源码中所有事件绑定的代码进行隔离的步骤,具体包括以下步骤:
从JavaScript源码的所有事件绑定的代码中获取包含操作代码的回调函数的代码,并将回调函数的代码生成第一函数;
结合第一函数和预定格式编写第二函数,并将第二函数放置在事件注册中原回调函数的代码位置后面,获得新的事件注册代码;
将新的事件注册代码生成第三字符串,并将第三字符串赋给eval函数,实现隔离。
进一步作为优选的实施方式,所述结合文本解密函数的相关代码和密钥组合生成第二密文的步骤,具体包括以下步骤:
将文本解密函数的相关代码和密钥组合生成第一字符串;
将预设的删除保密代码生成第二字符串后,合并第一字符串和第二字符串,并采用jjencode加密技术将合并后的第一字符串和第二字符串转换为第二密文。
进一步作为优选的实施方式,所述文本解密函数的相关代码包括文本解密函数的代码、文本解密函数调用语句的代码和文本解密函数解密后执行原代码语句的代码。
进一步作为优选的实施方式,所述预设的代码压缩混淆方法为uglify JS压缩方法。
通过uglify JS压缩方法可去除注释和减少代码字符长度。
进一步作为优选的实施方式,所述的预设的密钥加密方法为利用密钥对代码进行文本加密和解密的方法。
实施例二
本实施例是实施例一的具体的进一步细化,一种密文封箱式保护JavaScript源码的方法,包括以下步骤:
A1、将JavaScript源码中所有事件绑定的代码进行隔离,并获得隔离后的代码。
A2、采用预设的代码压缩混淆方法对隔离后的代码进行压缩。所述预设的代码压缩混淆方法为uglify JS压缩方法。
A3、采用预设的密钥加密方法随机生成第一密钥,并采用第一密钥对A2中经过压缩后的代码进行加密,从而获得第一文本密文。所述的预设的密钥加密方法为利用密钥对代码进行文本加密和解密的方法。
A4、结合文本解密函数的相关代码和密钥组合生成第二密文。
其中,步骤A4包括A41~A42:
A41、将文本解密函数的相关代码和第一密钥组合生成第一字符串。所述文本解密函数的相关代码包括文本解密函数的代码、文本解密函数调用语句的代码和文本解密函数解密后执行原代码语句的代码。
文本解密函数解密后执行原代码语句的代码需以不定义新变量名的方式进行执行,这样可以增加浏览器调试面板中内存分析捕获此代码内容的难度。
A42、将预设的删除保密代码生成第二字符串后,合并第一字符串和第二字符串,并采用jjencode加密技术将合并后的第一字符串和第二字符串转换为第二密文。
所述预设的删除保密代码用于对用过一次后的文本解密函数的代码、第一密钥、第一密文以及中间变量进行删除,从而减少解密工作在内存中停留的时间,和增加浏览器调试面板中内存分析捕获此内容难度。
A5、将第一密文和第二密文合并后,在合并后的密文外包一层作用域并生成最终加密文件,最后输出最终加密文件。
通过表1中的式对合并后的密文外包一层作用域,通过闭包防止直接外泄,表1如下:
表1
(function(){__q=第一密文;第二密文})();
以下结合表2和表3对步骤A1进行详细的解释,一般来说,事件绑定的代码的格式如表2中所示:
表2
element.addEventListener('click',function(){/*操作代码*/},true); //原生js
$(element).on('click',function(){/*操作代码*/}); //jQuery
其中,element为需要绑定事件的某个Dom对象,通过类似addEventListener或on等方法来执行,并在声明事件类型后,可以将某个事件需要执行的操作代码以回调形式注册到这个Dom对象上,事件触发的时候会执行操作代码。隔离转换后代码生成如表3下:
表3
Figure BDA0001468916070000061
A1的具体步骤如下:
A11、从事件绑定的代码中获取包含操作代码的回调函数的代码,并将回调函数的代码生成第一函数。
A12、结合第一函数和预定格式编写第二函数,并将第二函数放置在事件注册中原回调函数的代码位置后面,获得新的事件注册代码。
其中,所述预定格式为:function(event){return第一函数名.call(this,event)},这种写法格式的意义如下:
1)向第一函数传递this(即element)和event
2)向事件注册return回传第一函数的return
A13、将新的事件注册代码生成第三字符串,并将第三字符串赋给eval函数,实现隔离。在该步骤中,将第三字符串赋给eval函数后,eval函数将字符串解析成代码并执行,如果里面事件注册的回调是第二函数,而不是第一函数,那么解析引擎将新开辟一个子级代码片段来解析,而第一函数不在这个新的代码片段内(所以用户看不到第一函数),却又能在其内部调用到(因为子级可以调用父级)。转换后的事件绑定,在浏览器调试面板中事件监听分析看不到操作代码,只能看到第二行eval里面包含的内容,极大的保证了源码的安全性。
上述的密文封箱式保护JavaScript源码的方法,由于对事件绑定的代码进行隔离,因此,在浏览器调试面板事件绑定分析模块中,代码分析只能指向一小段被隔离的代码,所以不能看到源码的全文,避免源码直接开放,提高了安全性。在加密技术中,所有的代码变成自己执行的密文,而且在没有依赖第三方的前提下,由于密钥和解密方法内置,所以不能直接解出源码,防止了不法分子对源码的破解和损害。在解密过程中,将创建的变量和函数在被使用后立即进行删除处理,所以难以在浏览器调试面板内存分析模块中捕获这些变量和函数,极大地提高了源码的安全性。
另外,通过该加密方法对代码加密之后,代码已不可逆,但是其代码执行的功能和性能一样,其中,加密中的文本解密函数用于解密密钥,从而执行代码,而并不是将加密后的代码进行解密。这样即使不良分子想还原代码是不可能的,从而防止了代码被破解。
实施例三
一种密文封箱式保护JavaScript源码的系统,该系统包括:
存储器,用于存放程序;
处理器,用于执行所述程序以用于执行以下步骤:
将JavaScript源码中所有事件绑定的代码进行隔离,并获得隔离后的代码;
采用预设的代码压缩混淆方法对隔离后的代码进行压缩;
采用预设的密钥加密方法随机生成一密钥,并使用密钥对经过压缩后的代码进行加密,从而获得第一文本密文;
结合文本解密函数的相关代码和密钥组合生成第二密文;
将第一密文和第二密文合并后,在合并后的密文外包一层作用域并生成最终加密文件,最后输出最终加密文件。
进一步作为优选的实施方式,所述将JavaScript源码中所有事件绑定的代码进行隔离的步骤,具体包括以下步骤:
从JavaScript源码的所有事件绑定的代码中获取包含操作代码的回调函数的代码,并将回调函数的代码生成第一函数;
结合第一函数和预定格式编写第二函数,并将第二函数放置在事件注册中原回调函数的代码位置后面,获得新的事件注册代码;
将新的事件注册代码生成第三字符串,并将第三字符串赋给eval函数,实现隔离。
进一步作为优选的实施方式,所述结合文本解密函数的相关代码和密钥组合生成第二密文的步骤,具体包括以下步骤:
将文本解密函数的相关代码和密钥组合生成第一字符串;
将预设的删除保密代码生成第二字符串后,合并第一字符串和第二字符串,并采用jjencode加密技术将合并后的第一字符串和第二字符串转换为第二密文。
进一步作为优选的实施方式,所述文本解密函数的相关代码包括文本解密函数的代码、文本解密函数调用语句的代码和文本解密函数解密后执行原代码语句的代码。
上述系统中,由于对事件绑定的代码进行隔离,因此,在浏览器调试面板事件绑定分析模块中,代码分析只能指向一小段被隔离的代码,所以不能看到源码的全文,避免源码直接开放,提高了安全性。在加密技术中,所有的代码变成自己执行的密文,而且不依赖第三方,由于密钥和解密方法内置,所以不能直接解出源码,极大地提高了源码的安全性,防止了不法分子对源码的破解和损害。
以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。

Claims (8)

1.一种密文封箱式保护JavaScript源码的方法,其特征在于,包括以下步骤:
将JavaScript源码中所有事件绑定的代码进行隔离,并获得隔离后的代码;
采用预设的代码压缩混淆方法对隔离后的代码进行压缩;
采用预设的密钥加密方法随机生成一密钥,并使用密钥对经过压缩后的代码进行加密,从而获得第一文本密文;
结合文本解密函数的相关代码和密钥组合生成第二密文;
将第一密文和第二密文合并后,在合并后的密文外包一层作用域并生成最终加密文件,最后输出最终加密文件;
所述将JavaScript源码中所有事件绑定的代码进行隔离的步骤,具体包括以下步骤:
从JavaScript源码的所有事件绑定的代码中获取包含操作代码的回调函数的代码,并将回调函数的代码生成第一函数;
结合第一函数和预定格式编写第二函数,并将第二函数放置在事件注册中原回调函数的代码位置后面,获得新的事件注册代码;
将新的事件注册代码生成第三字符串,并将第三字符串赋给eval函数,实现隔离。
2.根据权利要求1所述的一种密文封箱式保护JavaScript源码的方法,其特征在于,所述结合文本解密函数的相关代码和密钥组合生成第二密文的步骤,具体包括以下步骤:
将文本解密函数的相关代码和密钥组合生成第一字符串;
将预设的删除保密代码生成第二字符串后,合并第一字符串和第二字符串,并采用jjencode加密技术将合并后的第一字符串和第二字符串转换为第二密文。
3.根据权利要求2所述的一种密文封箱式保护JavaScript源码的方法,其特征在于,所述文本解密函数的相关代码包括文本解密函数的代码、文本解密函数调用语句的代码和文本解密函数解密后执行原代码语句的代码。
4.根据权利要求1所述的一种密文封箱式保护JavaScript源码的方法,其特征在于,所述预设的代码压缩混淆方法为uglify JS压缩方法。
5.根据权利要求1-4任一项所述的一种密文封箱式保护JavaScript源码的方法,其特征在于,所述的预设的密钥加密方法为利用密钥对代码进行文本加密和解密的方法。
6.一种密文封箱式保护JavaScript源码的系统,其特征在于,该系统包括:
存储器,用于存放程序;
处理器,用于执行所述程序以用于执行以下步骤:
将JavaScript源码中所有事件绑定的代码进行隔离,并获得隔离后的代码;
采用预设的代码压缩混淆方法对隔离后的代码进行压缩;
采用预设的密钥加密方法随机生成一密钥,并使用密钥对经过压缩后的代码进行加密,从而获得第一文本密文;
结合文本解密函数的相关代码和密钥组合生成第二密文;
将第一密文和第二密文合并后,在合并后的密文外包一层作用域并生成最终加密文件,最后输出最终加密文件;
所述将JavaScript源码中所有事件绑定的代码进行隔离的步骤,具体包括以下步骤:
从JavaScript源码的所有事件绑定的代码中获取包含操作代码的回调函数的代码,并将回调函数的代码生成第一函数;
结合第一函数和预定格式编写第二函数,并将第二函数放置在事件注册中原回调函数的代码位置后面,获得新的事件注册代码;
将新的事件注册代码生成第三字符串,并将第三字符串赋给eval函数,实现隔离。
7.根据权利要求6所述的一种密文封箱式保护JavaScript源码的系统,其特征在于,所述结合文本解密函数的相关代码和密钥组合生成第二密文的步骤,具体包括以下步骤:
将文本解密函数的相关代码和密钥组合生成第一字符串;
将预设的删除保密代码生成第二字符串后,合并第一字符串和第二字符串,并采用jjencode加密技术将合并后的第一字符串和第二字符串转换为第二密文。
8.根据权利要求7所述的一种密文封箱式保护JavaScript源码的系统,其特征在于,所述文本解密函数的相关代码包括文本解密函数的代码、文本解密函数调用语句的代码和文本解密函数解密后执行原代码语句的代码。
CN201711128580.2A 2017-11-15 2017-11-15 一种密文封箱式保护JavaScript源码的方法及系统 Active CN108076050B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711128580.2A CN108076050B (zh) 2017-11-15 2017-11-15 一种密文封箱式保护JavaScript源码的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711128580.2A CN108076050B (zh) 2017-11-15 2017-11-15 一种密文封箱式保护JavaScript源码的方法及系统

Publications (2)

Publication Number Publication Date
CN108076050A CN108076050A (zh) 2018-05-25
CN108076050B true CN108076050B (zh) 2020-06-30

Family

ID=62159777

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711128580.2A Active CN108076050B (zh) 2017-11-15 2017-11-15 一种密文封箱式保护JavaScript源码的方法及系统

Country Status (1)

Country Link
CN (1) CN108076050B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109246124B (zh) * 2018-09-30 2020-05-19 华中科技大学 一种加密信息的主动防御方法
CN111367505A (zh) * 2020-03-02 2020-07-03 广州致远电子有限公司 一种JavaScript源代码保密方法、装置、设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102236766A (zh) * 2011-05-10 2011-11-09 桂林电子科技大学 安全的数据项级数据库加密系统
CN103377326A (zh) * 2012-04-13 2013-10-30 腾讯科技(北京)有限公司 一种动态网页程序代码的混淆加密方法及装置
CN104268444A (zh) * 2014-08-25 2015-01-07 浪潮电子信息产业股份有限公司 一种云OS Java源代码保护方法
CN105205359A (zh) * 2015-10-12 2015-12-30 厦门飞信网络科技有限公司 一种JavaScript代码保护方法及装置
CN106599628A (zh) * 2016-12-08 2017-04-26 合肥康捷信息科技有限公司 一种基于模块钩子的Python字节码文件保护方法
CN107025390A (zh) * 2017-04-26 2017-08-08 北京洋浦伟业科技发展有限公司 软件安装包的加固方法及装置
CN107070656A (zh) * 2017-03-31 2017-08-18 武汉斗鱼网络科技有限公司 一种应用程序中so文件的加密方法、解密方法和系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102236766A (zh) * 2011-05-10 2011-11-09 桂林电子科技大学 安全的数据项级数据库加密系统
CN103377326A (zh) * 2012-04-13 2013-10-30 腾讯科技(北京)有限公司 一种动态网页程序代码的混淆加密方法及装置
CN104268444A (zh) * 2014-08-25 2015-01-07 浪潮电子信息产业股份有限公司 一种云OS Java源代码保护方法
CN105205359A (zh) * 2015-10-12 2015-12-30 厦门飞信网络科技有限公司 一种JavaScript代码保护方法及装置
CN106599628A (zh) * 2016-12-08 2017-04-26 合肥康捷信息科技有限公司 一种基于模块钩子的Python字节码文件保护方法
CN107070656A (zh) * 2017-03-31 2017-08-18 武汉斗鱼网络科技有限公司 一种应用程序中so文件的加密方法、解密方法和系统
CN107025390A (zh) * 2017-04-26 2017-08-08 北京洋浦伟业科技发展有限公司 软件安装包的加固方法及装置

Also Published As

Publication number Publication date
CN108076050A (zh) 2018-05-25

Similar Documents

Publication Publication Date Title
CN108595989B (zh) 一种iOS下移动APP安全防护系统及方法
Castiglione et al. Taking advantages of a disadvantage: Digital forensics and steganography using document metadata
KR20080005493A (ko) 소프트웨어 보호
CN109871704B (zh) 基于Hook的安卓资源文件防护方法、设备和存储介质
CN106203006A (zh) 基于dex与so文件动态执行的Android应用加固方法
WO2016078130A1 (zh) 一种防逆向apk文件的动态加载方法
CN109918917B (zh) 防止h5源码泄漏的方法、计算机设备和存储介质
CN101719210B (zh) 基于linux平台数字版权管理的文件使用控制方法
TW201445355A (zh) 資料保護的方法和裝置
CN106650327A (zh) 基于动态恢复so文件的Android应用加固方法
JPWO2006009081A1 (ja) アプリケーション実行装置及びアプリケーション実行装置のアプリケーション実行方法
CN105184152B (zh) 一种移动终端数据处理方法
CN105022936A (zh) 一种类class文件加密解密方法和装置
CN108076050B (zh) 一种密文封箱式保护JavaScript源码的方法及系统
CN104504313A (zh) 一种对代码进行保密处理的方法及装置
CN113806806B (zh) 一种用于网页截图的脱敏、还原方法和系统
CN109657488A (zh) 一种资源文件加密处理方法、智能终端及存储介质
Mitropoulos et al. How to train your browser: Preventing XSS attacks using contextual script fingerprints
Shahriar et al. Injecting comments to detect JavaScript code injection attacks
CN108133147B (zh) 可执行代码的保护方法、设备及可读存储介质
CN103198240B (zh) 一种用于保护代码安全的方法和装置
CN115795538B (zh) 脱敏文档的反脱敏方法、装置、计算机设备和存储介质
CN105930728A (zh) 一种应用审查方法及装置
JP2006216002A (ja) Urlセキュリティーシステム
GB2505531A (en) Securely Storing a Secret by Converting Text String to Media File Protected by a Master Password

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant