CN103246830A - 客户端脚本的加密处理方法及装置和解密处理方法及装置 - Google Patents

客户端脚本的加密处理方法及装置和解密处理方法及装置 Download PDF

Info

Publication number
CN103246830A
CN103246830A CN2013101562783A CN201310156278A CN103246830A CN 103246830 A CN103246830 A CN 103246830A CN 2013101562783 A CN2013101562783 A CN 2013101562783A CN 201310156278 A CN201310156278 A CN 201310156278A CN 103246830 A CN103246830 A CN 103246830A
Authority
CN
China
Prior art keywords
character
component
numeral
picture
client script
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.)
Granted
Application number
CN2013101562783A
Other languages
English (en)
Other versions
CN103246830B (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.)
Beijing Xiaomi Technology Co Ltd
Original Assignee
Beijing Xiaomi 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 Beijing Xiaomi Technology Co Ltd filed Critical Beijing Xiaomi Technology Co Ltd
Priority to CN201310156278.3A priority Critical patent/CN103246830B/zh
Publication of CN103246830A publication Critical patent/CN103246830A/zh
Priority to PCT/CN2013/091001 priority patent/WO2014176926A1/zh
Application granted granted Critical
Publication of CN103246830B publication Critical patent/CN103246830B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明实施例公开了客户端脚本的加密处理方法及装置和解密处理方法及装置,用以解决目前的客户端脚本加密技术存在易被解密、代码保护不完善、开发难度高的问题。上述加密处理方法,包括:按照数字与字符的对应规则,将客户端脚本中的每个字符转换为对应的数字,其中,每个字符各自对应的数字为[0,255]范围内的整数,且每个字符各自对应的数字不相同;根据客户端脚本中每个字符对应的数字与图片中像素的红绿蓝Alpha通道RGBA分量的对应关系,将每个字符对应的数字作为图片中对应像素的对应分量值,生成一图片。本发明技术方案提高了客户端脚本的安全性,保护更完善,开发难度较低。

Description

客户端脚本的加密处理方法及装置和解密处理方法及装置
技术领域
本发明涉及移动终端的安全保护技术领域,尤其涉及客户端脚本的加密处理方法及装置和解密处理方法及装置。
背景技术
随着互联网行业的快速发展,网页客户端中的内容变得越来越丰富,网页中的可执行脚本(通常为Javascript)数量增长迅猛。与此同时大量的网页脚本带来了诸多的安全漏洞问题,网络黑客通常可以通过查看一个网页的可执行脚本(客户端脚本的执行前提是必须下载到用户浏览器中,所以通常这部分代码是直接暴露给用户的)的源码,分析网页漏洞,这为网站的安全问题带来严峻的挑战。客户端脚本的加密技术,虽然不能从根本上解决安全漏洞问题,但是可以大大提高攻击门槛,同时也避免了一些人对于代码的二次利用(尤其是一些非法商业用途,例如搭建钓鱼网站等)的行为。
目前的一种客户端脚本加密技术为yui compressor(雅虎UI框架压缩器)等脚本压缩技术。此类技术的原理是,在客户端脚本发布之前,使用一种服务器语言(例如可以是Java)压缩该脚本文件。首先将客户端可执行脚本文件读入为一个字符串,然后去掉其中的代码注释、换行、空格、制表符等;同时对代码中的变量名做混淆,将变量替换成无意义的字符串,然后将压缩后的字符串回写到原文件中。使用脚本压缩技术,不能实现对脚本代码的完全隐藏,压缩后的脚本依然可以在客户端被直接查看,并且有很多相应的解压代码方案。
目前的另一种客户端脚本加密技术为脚本混淆技术。常见的脚本混淆工具有Google closure。脚本混淆可以完全打破原有代码的组织结构,让代码变得完全不可读。其基本原理同上述脚本压缩技术,但是在读入脚本文件时会分析文件的代码结构,对代码本身进行重新编码。使用脚本混淆技术,要求脚本代码的开发人员严格遵循代码的语法规范(客户端脚本通常语法非常灵活,例如代码结束时可以不写分号,if语句后面可以不使用大括号等),这就对开发的代码本身的质量提出一个严格的挑战。
可见,目前的客户端脚本加密技术存在易被解密、代码保护不完善、开发难度高的问题。
发明内容
本发明实施例提供客户端脚本的加密处理方法及装置和解密处理方法及装置,用以解决目前的客户端脚本加密技术存在易被解密、代码保护不完善、开发难度高的问题。
本发明实施例提供了一种客户端脚本的加密处理方法,包括:
按照数字与字符的对应规则,将客户端脚本中的每个字符转换为对应的数字,其中,每个字符各自对应的数字为[0,255]范围内的整数,且每个字符各自对应的数字不相同;
根据所述客户端脚本中每个字符对应的数字与图片中像素的红绿蓝Alpha通道RGBA分量的对应关系,将所述每个字符对应的数字作为所述图片中对应像素的对应分量值,生成一图片。
其中,优选地,所述数字为信息交换码;
所述按照数字与字符的对应规则,将客户端脚本中的每个字符转换为对应的数字,包括:
利用服务器语言的信息交换码转换函数,将客户端脚本中的每个字符转换为对应的信息交换码。
其中,优选地,所述客户端脚本中每个字符对应的数字与图片中像素的RGBA分量的对应关系,可包括:
所述客户端脚本中每连续三个字符各自对应的数字,依序对应所述图片中对应像素的R分量、G分量、B分量;或者
所述客户端脚本中的每个字符各自对应的数字,分别与所述图片中的对应像素的R分量、G分量、B分量或者Alpha通道分量对应。
其中,优选地,当所述客户端脚本中每连续三个字符各自对应的数字,依序对应所述图片中对应像素的R分量、G分量、B分量时,所述图片的Alpha通道值为0。
其中,优选地,所述生成一图片之后,所述处理方法还包括:
将所述图片发送给客户端。
本发明实施例提供了一种客户端脚本的解密处理方法,包括:
获取图片中像素的RGBA分量值;
根据客户端脚本中每个字符各自对应的数字与所述图片中像素的RGBA分量的对应关系,确定所述客户端脚本中每个字符各自对应的数字;
按照数字与字符的对应规则,将所述客户端脚本中每个字符各自对应的数字转换为对应的字符,其中,每个字符各自对应的数字为[0,255]范围内的整数,且每个字符各自对应的数字不相同;
依序拼接所述转换而成的字符,形成客户端可执行的客户端脚本。
其中,优选地,所述数字为信息交换码;
所述按照数字与字符的对应规则,将所述客户端脚本中每个字符各自对应的数字转换为对应的字符,包括:
利用客户端脚本的信息交换码转换函数,将所述客户端脚本中每个字符各自对应的信息交换码转换为对应的字符。
其中,优选地,所述客户端脚本中每个字符对应的数字与图片中像素的RGBA分量的对应关系,包括:
所述客户端脚本中每连续三个字符各自对应的数字,依序对应所述图片中对应像素的R分量、G分量、B分量;或者
所述客户端脚本中的每个字符各自对应的数字,分别与所述图片中的对应像素的R分量、G分量、B分量或者Alpha通道分量对应。
其中,优选地,所述获取图片中像素的RGBA分量值之前,所述处理方法还包括:
接收服务器发送的所述图片。
本发明实施例提供了一种客户端脚本的加密处理装置,其特征在于,包括:
转换模块,用于按照数字与字符的对应规则,将客户端脚本中的每个字符转换为对应的数字,其中,每个字符各自对应的数字为[0,255]范围内的整数,且每个字符各自对应的数字不相同;
生成模块,用于根据所述客户端脚本中每个字符对应的数字与图片中像素的RGBA分量的对应关系,将所述每个字符对应的数字作为所述图片中对应像素的对应分量值,生成一图片。
其中,优选地,所述转换模块可包括:
转换子模块,用于利用服务器语言的信息交换码转换函数,将客户端脚本中的每个字符转换为对应的信息交换码。
其中,优选地,所述处理装置还可包括:
存储模块,用于存储所述客户端脚本中每个字符对应的数字与图片中像素的RGBA分量的对应关系,包括:所述客户端脚本中每连续三个字符各自对应的数字,依序对应所述图片中对应像素的R分量、G分量、B分量;或者所述客户端脚本中的每个字符各自对应的数字,分别与所述图片中的对应像素的R分量、G分量、B分量或者Alpha通道分量对应;和/或
发送模块,用于在所述生成模块生成所述图片之后,将所述图片发送给客户端。
本发明实施例提供了一种客户端脚本的解密处理装置,包括:
获取模块,用于获取图片中像素的RGBA分量值;
确定模块,用于根据客户端脚本中每个字符各自对应的数字与所述图片中像素的RGBA分量的对应关系,确定所述客户端脚本中每个字符各自对应的数字;
转换模块,用于按照数字与字符的对应规则,将所述客户端脚本中每个字符各自对应的数字转换为对应的字符,其中,每个字符各自对应的数字为[0,255]范围内的整数,且每个字符各自对应的数字不相同;
拼接模块,用于依序拼接所述转换而成的字符,形成客户端可执行的客户端脚本。
其中,优选地,所述转换模块可包括:
转换子模块,用于利用客户端脚本的信息交换码转换函数,将所述客户端脚本中每个字符各自对应的信息交换码转换为对应的字符。
其中,优选地,所述处理装置还可包括:
存储模块,用于存储所述客户端脚本中每个字符对应的数字与图片中像素的RGB分量的对应关系,包括:所述客户端脚本中每连续三个字符各自对应的数字,依序对应所述图片中对应像素的R分量、G分量、B分量;或者所述客户端脚本中的每个字符各自对应的数字,分别与所述图片中的对应像素的R分量、G分量、B分量或者Alpha通道分量对应;和/或
接收模块,用于在所述获取模块获取图片中像素的RGBA分量值之前,接收服务器发送的所述图片。
本发明实施例提供的技术方案,由于客户端脚本被压缩进了图片,因此客户端脚本不能通过一般的手段被查看(例如浏览器自带的代码查看工具等),提高了客户端脚本的安全性,保护更完善;并且,对代码开发人员的要求较低,不需像目前的脚本混淆技术那样要求代码开发人员严格遵循代码的语法规范,开发难度较低。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明实施例中一种客户端脚本的加密处理方法的流程图;
图2为本发明实施例中一种客户端脚本的解密处理方法的流程图;
图3为本发明一具体实施例的方法流程图;
图4为本发明实施例中一种客户端脚本的加密处理装置的结构示意图;
图5为本发明实施例中另一种客户端脚本的加密处理装置的结构示意图;
图6为本发明实施例中一种客户端脚本的解密处理装置的结构示意图;
图7为本发明实施例中另一种客户端脚本的解密处理装置的结构示意图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
本发明实施例提供了客户端脚本的加密处理方法和装置及解密处理方法和装置。该技术方案中,当客户端脚本被发布之前,客户端脚本内容被压缩进一张图片;当客户端请求一个网页需要执行客户端脚本时,首先服务器将图片加载到客户端,然后客户端从图片中获取客户端脚本的每个字符,将每个字符拼接成客户端脚本,在客户端中运行。
本发明实施例提供的技术方案,由于客户端脚本被压缩进了图片,因此客户端脚本不能通过一般的手段被查看(例如浏览器自带的代码查看工具等),提高了客户端脚本的安全性,保护更完善;并且,对代码开发人员的要求较低,不需像目前的脚本混淆技术那样要求代码开发人员严格遵循代码的语法规范,开发难度较低。
其中,客户端脚本的每个字符信息被压缩进成一张图片的原理如下所述:
图片中的每一个像素由四个分量值来表示:红、绿、蓝和Alpha通道(缩写为RGBA)。它们的值是[0,255]范围内的整数。而客户端脚本是由一个个的字符组成。如果将客户端脚本中的每个字符转换为[0,255]范围内的整数,且保证每个字符各自对应的数字不相同,那么可以将每个字符各自对应的数字作为图片中像素的分量值,构建出一图片来。
下面详细介绍本发明实施例提供的技术方案。
如图1所示,本发明实施例提供了一种客户端脚本的加密处理方法,包括以下步骤:
S11、按照数字与字符的对应规则,将客户端脚本中的每个字符转换为对应的数字,其中,每个字符各自对应的数字为[0,255]范围内的整数,且每个字符各自对应的数字不相同。
优选地,上述数字可以为ASCII码(American Standard Code for InformationInterchange,美国标准信息交换代码,简称信息交换码);
此时,按照数字与字符的对应规则,将客户端脚本中的每个字符转换为对应的数字,可包括:利用服务器语言的ASCII码转换函数,将客户端脚本中的每个字符转换为对应的ASCII码。
当然,除了上述ASCII码,还可以是程序员自己规定数字与字符的对应规则,只要该种对应规则能保证每个字符各自对应的数字为[0,255]范围内的整数,且每个字符各自对应的数字不相同即可。按照该种对应规则将客户端脚本中的每个字符转换为对应的数字,后续利用该数字构建图片。
S12、根据客户端脚本中每个字符对应的数字与图片中像素的RGBA分量的对应关系,将每个字符对应的数字作为图片中对应像素的对应分量值,生成一图片。
优选地,客户端脚本中每个字符对应的数字与图片中像素的RGBA分量的对应关系,可包括:客户端脚本中每连续三个字符各自对应的数字,依序对应图片中对应像素的R分量、G分量、B分量。即每三个连续的字符各自对应的数字,都对应同一个像素,且这三个连续的字符各自对应的数字中,第一个字符对应的数字与该像素的R分量对应,第二个字符对应的数字与该像素的G分量对应,第三个字符对应的数字与该像素的B分量对应;依此,客户端脚本的所有字符各自对应的数字都被压缩进了一张图片中。
或者,上述对应关系可包括:客户端脚本中的每个字符各自对应的数字,分别与图片中的对应像素的R分量、G分量、B分量或者Alpha通道分量对应。
即客户端脚本中的每个字符各自对应的数字,分别对应一个像素中的一个分量;比如字符“A”对应像素A’的R分量;字符“B”对应像素B’的R分量。其中,使用Alpha通道的前提是服务器在存储图片时必须把图片存储为可以携带Alpha通道信息的图片格式,例如PNG。
当然,除了以上两种对应关系,还可以是其他形式的对应关系,并不受本发明限制。
按照上述对应关系,将每个字符对应的数字作为图片中对应像素的对应分量值,利用绘图程序生成一图片,该图片中包含了客户端脚本的字符信息。
优选地,当所述客户端脚本中每连续三个字符各自对应的数字,依序对应所述图片中对应像素的R分量、G分量、B分量时,图片的Alpha通道值为0,这样便可保证绘图程序绘制图片时取到的颜色值是正确的。
执行完步骤S12之后,上述加密处理方法还可以包括:将图片发送给客户端。
进一步,优选地,将图片发送给客户端之前,上述加密处理方法还可以包括:接收到客户端发送来的网页请求,请求上述客户端脚本。
至此,完成了客户端脚本的加密处理流程。
如图2所示,对应上述客户端脚本的加密处理方法,本发明实施例还提供了一种客户端脚本的解密处理方法,包括以下步骤:
S21、获取图片中像素的RGBA分量值。
该图片是经过上述步骤S12处理而生成的图片,该图片包含了客户端脚本的字符信息。
优选地,执行步骤S21之前,所述解密处理方法还可以包括:接收服务器发送的图片。
进一步,优选地,接收服务器发送的图片之前,上述加密处理方法还可包括:向服务器发送网页请求。
S22、根据客户端脚本中每个字符各自对应的数字与图片中像素的RGBA分量的对应关系,确定客户端脚本中每个字符各自对应的数字。
优选地,客户端脚本中每个字符对应的数字与图片中像素的RGBA分量的对应关系,可包括:客户端脚本中每连续三个字符各自对应的数字,依序对应图片中对应像素的R分量、G分量、B分量。即每三个连续的字符各自对应的数字,都对应同一个像素,且这三个连续的字符各自对应的数字中,第一个字符对应的数字与该像素的R分量对应,第二个字符对应的数字与该像素的G分量对应,第三个字符对应的数字与该像素的B分量对应;依此,客户端脚本的所有字符各自对应的数字都被压缩进了一张图片中。
或者,上述对应关系可包括:客户端脚本中的每个字符各自对应的数字,分别与图片中的对应像素的R分量、G分量、B分量或者Alpha通道分量对应。即客户端脚本中的每个字符各自对应的数字,分别对应一个像素中的一个分量;比如字符“A”对应像素A’的R分量;字符“B”对应像素B’的R分量。
当然,除了以上两种对应关系,还可以是其他形式的对应关系,并不受本发明限制。
步骤S22中采用的对应关系,与前述步骤S12中采用的对应关系要一致,这样才能保证步骤S22确定出来的数字是正确的,保证后续步骤S25拼接出来的客户端脚本是正确的。
S23、按照数字与字符的对应规则,将客户端脚本中每个字符各自对应的数字转换为对应的字符,其中,每个字符各自对应的数字为[0,255]范围内的整数,且每个字符各自对应的数字不相同。
步骤S23中采用的对应规则,与前述步骤S11中采用的对应规则要一致,这样才能保证步骤S23确定出来的数字是正确的,保证后续步骤S24拼接出来的客户端脚本是正确的。
相应地,前述步骤S11中的数字如果为ASCII码;步骤S11采用的是服务器语言的ASCII码转换函数,那么在步骤S23中,按照数字与字符的对应规则,将客户端脚本中每个字符各自对应的数字转换为对应的字符,可包括:
利用客户端脚本的ASCII码转换函数,将客户端脚本中每个字符各自对应的ASCII码转换为对应的字符。
也就是说,步骤S11与步骤S23中的转换函数优选为对应匹配的转换函数,这样才能保证S23确定出来的数字是正确的,才能保证后续步骤S24拼接出来的客户端脚本是正确的。
上述对应关系、对应规则、数字转换函数,可以由服务器和客户端预先协商好,保持匹配,这样才能保证后续步骤S25拼接出来的客户端脚本是正确的。
S24、依序拼接转换而成的字符,形成客户端可执行的客户端脚本。
至此,完成了客户端脚本的解密处理流程。
需要说明的是,本发明实施例提供的上述客户端脚本的加密处理方法和解密处理方法的执行主体可以是服务器,也可以是客户端,还可以是其它设备,本发明实施例对执行主体并不限制。
本发明实施例提供的上述客户端脚本的加密处理方法和解密处理方法,将客户端脚本压缩进一图片,使得客户端脚本不能通过一般的手段被查看(例如浏览器自带的代码查看工具等),提高了客户端脚本的安全性,保护更完善;并且,对代码开发人员的要求较低,不需像目前的脚本混淆技术那样要求代码开发人员严格遵循代码的语法规范,开发难度较低。
下面以一具体实施例来说明本发明实施例提供的技术方案。
本具体实施例的技术方案,适用于各个移动或者非移动平台下(包括ios,android,mac,pc等)支持Canvas绘图技术的浏览器。服务器和客户端预先协商一致,将上述对应关系规定为:客户端脚本中每连续三个字符各自对应的ASCII码,依序对应图片中对应像素的R分量、G分量、B分量。
如图3所示,本具体实施例的流程如下所述:
S31、客户端向服务器端发送网页请求,请求客户端脚本。
S32、服务器接收到客户端发送来的网页请求后,利用服务器语言的ASCII码转换函数,将客户端脚本中的每个字符转换为对应的ASCII码。
比如,服务器语言的ASCII码转换函数可以为Java中使用的charCodeAt函数。
S33、服务器将客户端脚本中每连续三个字符各自对应的ASCII码依序作为对应像素的R分量值、G分量值、B分量值,将所有像素的Alpha通道都取值为0,生成一图片。
这样可以保证Canva绘制图片时取到的颜色值是正确的。
S34、服务器将生成的图片发送给客户端。
S35、客户端接收到图片后,使用Canvas的图片重绘接口,将图片数据绘制在Canvas上,使用Canvas提供的getImageData接口获取图片中每个像素点的R分量值、G分量值、B分量值。
S36、客户端利用客户端脚本的ASCII码转换函数,将每个像素点的R分量值、G分量值、B分量值转换为ASCII码,从而得到客户端脚本中每个字符各自对应的ASCII码。
比如,客户端脚本的ASCII码转换函数可以为Javascript中使用的fromCharCodeJava函数。
S37、客户端依序拼接每个字符各自对应的ASCII码,得到客户端可运行的客户端脚本。
S38、客户端运行该客户端脚本,使用户看到请求的网页内容。
可见,本具体实施例将客户端脚本压缩进一图片,使得客户端脚本不能通过一般的手段被查看(例如浏览器自带的代码查看工具等),提高了客户端脚本的安全性,保护更完善;并且,对代码开发人员的要求较低,不需像目前的脚本混淆技术那样要求代码开发人员严格遵循代码的语法规范,开发难度较低。
上述charCodeAt函数是严格遵循ASCII码转换规则的函数,完整的转换表和规则如下表1所示:
Figure BDA00003127941200121
Figure BDA00003127941200131
表1
如图4所示,对应本发明实施例提供的客户端脚本的加密处理方法,本发明实施例还提供了一种客户端脚本的加密处理装置,包括:
转换模块41,用于按照数字与字符的对应规则,将客户端脚本中的每个字符转换为对应的数字,其中,每个字符各自对应的数字为[0,255]范围内的整数,且每个字符各自对应的数字不相同;
生成模块42,用于根据客户端脚本中每个字符对应的数字与图片中像素的RGBA分量的对应关系,将每个字符对应的数字作为图片中对应像素的对应分量值,生成一图片。
优选地,上述转换模块可包括:
转换子模块,用于利用服务器语言的ASCII码转换函数,将客户端脚本中的每个字符转换为对应的ASCII码。
如图5所示,优选地,上述加密处理装置还可包括以下存储模块51、发送模块52中的任一个模块或两个模块:
存储模块51,用于存储客户端脚本中每个字符对应的数字与图片中像素的RGB分量的对应关系,包括:客户端脚本中每连续三个字符各自对应的数字,依序对应图片中对应像素的R分量、G分量、B分量;或者客户端脚本中的每个字符各自对应的数字,分别与图片中的对应像素的R分量、G分量、B分量或者Alpha通道分量对应;
发送模块52,用于在生成模块42生成图片之后,将图片发送给客户端。
如图6所示,对应本发明实施例提供的客户端脚本的解密处理方法,本发明实施例提供了一种客户端脚本的解密处理装置,包括:
获取模块61,用于获取图片中像素的RGBA分量值;
确定模块62,用于根据客户端脚本中每个字符各自对应的数字与图片中像素的RGBA分量的对应关系,确定客户端脚本中每个字符各自对应的数字;
转换模块63,用于按照数字与字符的对应规则,将客户端脚本中每个字符各自对应的数字转换为对应的字符,其中,每个字符各自对应的数字为[0,255]范围内的整数,且每个字符各自对应的数字不相同;
拼接模块64,用于依序拼接转换而成的字符,形成客户端可执行的客户端脚本。
优选地,转换模块可包括:
转换子模块,用于利用客户端脚本的ASCII码转换函数,将客户端脚本中每个字符各自对应的ASCII码转换为对应的字符。
如图7所示,优选地,上述解密处理装置还可包括以下存储模块71、接收模块72中的任一个模块或两个模块:
存储模块71,用于存储客户端脚本中每个字符对应的数字与图片中像素的RGB分量的对应关系,包括:客户端脚本中每连续三个字符各自对应的数字,依序对应图片中对应像素的R分量、G分量、B分量;或者客户端脚本中的每个字符各自对应的数字,分别与图片中的对应像素的R分量、G分量、B分量或者Alpha通道分量对应;
接收模块72,用于在获取模块61获取图片中像素的RGBA分量值之前,接收服务器发送的上述图片。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (15)

1.一种客户端脚本的加密处理方法,其特征在于,包括:
按照数字与字符的对应规则,将客户端脚本中的每个字符转换为对应的数字,其中,每个字符各自对应的数字为[0,255]范围内的整数,且每个字符各自对应的数字不相同;
根据所述客户端脚本中每个字符对应的数字与图片中像素的红绿蓝Alpha通道RGBA分量的对应关系,将所述每个字符对应的数字作为所述图片中对应像素的对应分量值,生成一图片。
2.如权利要求1所述的加密处理方法,其特征在于,
所述数字为信息交换码;
所述按照数字与字符的对应规则,将客户端脚本中的每个字符转换为对应的数字,包括:
利用服务器语言的信息交换码转换函数,将客户端脚本中的每个字符转换为对应的信息交换码。
3.如权利要求1或2所述的加密处理方法,其特征在于,所述客户端脚本中每个字符对应的数字与图片中像素的RGBA分量的对应关系,包括:
所述客户端脚本中每连续三个字符各自对应的数字,依序对应所述图片中对应像素的R分量、G分量、B分量;或者
所述客户端脚本中的每个字符各自对应的数字,分别与所述图片中的对应像素的R分量、G分量、B分量或者Alpha通道分量对应。
4.如权利要求3所述的加密处理方法,其特征在于,当所述客户端脚本中每连续三个字符各自对应的数字,依序对应所述图片中对应像素的R分量、G分量、B分量时,所述图片的Alpha通道值为0。
5.如权利要求1所述的加密处理方法,其特征在于,所述生成一图片之后,所述处理方法还包括:
将所述图片发送给客户端。
6.一种客户端脚本的解密处理方法,其特征在于,包括:
获取图片中像素的RGBA分量值;
根据客户端脚本中每个字符各自对应的数字与所述图片中像素的RGBA分量的对应关系,确定所述客户端脚本中每个字符各自对应的数字;
按照数字与字符的对应规则,将所述客户端脚本中每个字符各自对应的数字转换为对应的字符,其中,每个字符各自对应的数字为[0,255]范围内的整数,且每个字符各自对应的数字不相同;
依序拼接所述转换而成的字符,形成客户端可执行的客户端脚本。
7.如权利要求6所述的解密处理方法,其特征在于,
所述数字为信息交换码;
所述按照数字与字符的对应规则,将所述客户端脚本中每个字符各自对应的数字转换为对应的字符,包括:
利用客户端脚本的信息交换码转换函数,将所述客户端脚本中每个字符各自对应的信息交换码转换为对应的字符。
8.如权利要求6或7所述的解密处理方法,其特征在于,所述客户端脚本中每个字符对应的数字与图片中像素的RGBA分量的对应关系,包括:
所述客户端脚本中每连续三个字符各自对应的数字,依序对应所述图片中对应像素的R分量、G分量、B分量;或者
所述客户端脚本中的每个字符各自对应的数字,分别与所述图片中的对应像素的R分量、G分量、B分量或者Alpha通道分量对应。
9.如权利要求6所述的解密处理方法,其特征在于,所述获取图片中像素的RGBA分量值之前,所述处理方法还包括:
接收服务器发送的所述图片。
10.一种客户端脚本的加密处理装置,其特征在于,包括:
转换模块,用于按照数字与字符的对应规则,将客户端脚本中的每个字符转换为对应的数字,其中,每个字符各自对应的数字为[0,255]范围内的整数,且每个字符各自对应的数字不相同;
生成模块,用于根据所述客户端脚本中每个字符对应的数字与图片中像素的RGBA分量的对应关系,将所述每个字符对应的数字作为所述图片中对应像素的对应分量值,生成一图片。
11.如权利要求10所述的加密处理装置,其特征在于,所述转换模块包括:
转换子模块,用于利用服务器语言的信息交换码转换函数,将客户端脚本中的每个字符转换为对应的信息交换码。
12.如权利要求10所述的加密处理装置,其特征在于,所述加密处理装置还包括:
存储模块,用于存储所述客户端脚本中每个字符对应的数字与图片中像素的RGBA分量的对应关系,包括:所述客户端脚本中每连续三个字符各自对应的数字,依序对应所述图片中对应像素的R分量、G分量、B分量;或者所述客户端脚本中的每个字符各自对应的数字,分别与所述图片中的对应像素的R分量、G分量、B分量或者Alpha通道分量对应;和/或
发送模块,用于在所述生成模块生成所述图片之后,将所述图片发送给客户端。
13.一种客户端脚本的解密处理装置,其特征在于,包括:
获取模块,用于获取图片中像素的RGBA分量值;
确定模块,用于根据客户端脚本中每个字符各自对应的数字与所述图片中像素的RGBA分量的对应关系,确定所述客户端脚本中每个字符各自对应的数字;
转换模块,用于按照数字与字符的对应规则,将所述客户端脚本中每个字符各自对应的数字转换为对应的字符,其中,每个字符各自对应的数字为[0,255]范围内的整数,且每个字符各自对应的数字不相同;
拼接模块,用于依序拼接所述转换而成的字符,形成客户端可执行的客户端脚本。
14.如权利要求13所述的解密处理装置,其特征在于,所述转换模块包括:
转换子模块,用于利用客户端脚本的信息交换码转换函数,将所述客户端脚本中每个字符各自对应的信息交换码转换为对应的字符。
15.如权利要求13所述的解密处理装置,其特征在于,所述解密处理装置还包括:
存储模块,用于存储所述客户端脚本中每个字符对应的数字与图片中像素的RGB分量的对应关系,包括:所述客户端脚本中每连续三个字符各自对应的数字,依序对应所述图片中对应像素的R分量、G分量、B分量;或者所述客户端脚本中的每个字符各自对应的数字,分别与所述图片中的对应像素的R分量、G分量、B分量或者Alpha通道分量对应;和/或
接收模块,用于在所述获取模块获取图片中像素的RGBA分量值之前,接收服务器发送的所述图片。
CN201310156278.3A 2013-04-28 2013-04-28 客户端脚本的加密处理方法及装置和解密处理方法及装置 Active CN103246830B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201310156278.3A CN103246830B (zh) 2013-04-28 2013-04-28 客户端脚本的加密处理方法及装置和解密处理方法及装置
PCT/CN2013/091001 WO2014176926A1 (zh) 2013-04-28 2013-12-31 客户端脚本的加密处理方法及装置和解密处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310156278.3A CN103246830B (zh) 2013-04-28 2013-04-28 客户端脚本的加密处理方法及装置和解密处理方法及装置

Publications (2)

Publication Number Publication Date
CN103246830A true CN103246830A (zh) 2013-08-14
CN103246830B CN103246830B (zh) 2016-04-13

Family

ID=48926345

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310156278.3A Active CN103246830B (zh) 2013-04-28 2013-04-28 客户端脚本的加密处理方法及装置和解密处理方法及装置

Country Status (2)

Country Link
CN (1) CN103246830B (zh)
WO (1) WO2014176926A1 (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014176926A1 (zh) * 2013-04-28 2014-11-06 小米科技有限责任公司 客户端脚本的加密处理方法及装置和解密处理方法及装置
CN105450662A (zh) * 2015-12-25 2016-03-30 小米科技有限责任公司 加密方法及装置
CN108259563A (zh) * 2017-12-12 2018-07-06 平安普惠企业管理有限公司 数据缓存方法、装置、服务器和存储介质
CN108363911A (zh) * 2018-02-11 2018-08-03 西安四叶草信息技术有限公司 一种Python脚本混淆、水印的方法及装置
CN109271596A (zh) * 2018-08-15 2019-01-25 深圳点猫科技有限公司 一种基于教育云平台的缓存数据的方法及电子设备
CN110321673A (zh) * 2018-03-28 2019-10-11 北京京东尚科信息技术有限公司 信息加密方法和装置、信息解密方法和装置、安全系统
CN111368310A (zh) * 2019-08-26 2020-07-03 杭州海康威视系统技术有限公司 一种数据加密、解密方法、装置、电子设备及存储介质
CN112632572A (zh) * 2020-12-04 2021-04-09 中国农业银行股份有限公司深圳市分行 一种脚本中命令加密与解密方法、装置及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1924866A (zh) * 2006-09-28 2007-03-07 北京理工大学 基于统计特征的网页恶意脚本检测方法
JP2007159003A (ja) * 2005-12-08 2007-06-21 Canon Inc 文書処理方法、文書処理装置および文書処理媒体
CN101699426A (zh) * 2009-11-06 2010-04-28 上海传知信息科技发展有限公司 文档格式转化系统及方法
CN102414690A (zh) * 2009-04-27 2012-04-11 高通股份有限公司 用特权签字创建安全网页浏览环境的方法和设备
US20120204036A1 (en) * 1997-05-08 2012-08-09 Tecsec Encryption Scheme

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19953055C2 (de) * 1999-11-03 2002-01-03 Erland Wittkoetter Vorrichtung und Verfahren zur geschützten Ausgabe eines elektronischen Dokuments über ein Datenübertragungsnetz
EP2397953B1 (en) * 2010-06-15 2019-02-20 Accenture Global Services Limited A computer-implemented method, a computer program product and an embedded system for displaying data more efficiently
CN103246830B (zh) * 2013-04-28 2016-04-13 小米科技有限责任公司 客户端脚本的加密处理方法及装置和解密处理方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120204036A1 (en) * 1997-05-08 2012-08-09 Tecsec Encryption Scheme
JP2007159003A (ja) * 2005-12-08 2007-06-21 Canon Inc 文書処理方法、文書処理装置および文書処理媒体
CN1924866A (zh) * 2006-09-28 2007-03-07 北京理工大学 基于统计特征的网页恶意脚本检测方法
CN102414690A (zh) * 2009-04-27 2012-04-11 高通股份有限公司 用特权签字创建安全网页浏览环境的方法和设备
CN101699426A (zh) * 2009-11-06 2010-04-28 上海传知信息科技发展有限公司 文档格式转化系统及方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014176926A1 (zh) * 2013-04-28 2014-11-06 小米科技有限责任公司 客户端脚本的加密处理方法及装置和解密处理方法及装置
CN105450662A (zh) * 2015-12-25 2016-03-30 小米科技有限责任公司 加密方法及装置
CN108259563A (zh) * 2017-12-12 2018-07-06 平安普惠企业管理有限公司 数据缓存方法、装置、服务器和存储介质
CN108363911A (zh) * 2018-02-11 2018-08-03 西安四叶草信息技术有限公司 一种Python脚本混淆、水印的方法及装置
CN108363911B (zh) * 2018-02-11 2021-10-29 西安四叶草信息技术有限公司 一种Python脚本混淆、水印的方法及装置
CN110321673A (zh) * 2018-03-28 2019-10-11 北京京东尚科信息技术有限公司 信息加密方法和装置、信息解密方法和装置、安全系统
CN109271596A (zh) * 2018-08-15 2019-01-25 深圳点猫科技有限公司 一种基于教育云平台的缓存数据的方法及电子设备
CN111368310A (zh) * 2019-08-26 2020-07-03 杭州海康威视系统技术有限公司 一种数据加密、解密方法、装置、电子设备及存储介质
CN112632572A (zh) * 2020-12-04 2021-04-09 中国农业银行股份有限公司深圳市分行 一种脚本中命令加密与解密方法、装置及存储介质

Also Published As

Publication number Publication date
CN103246830B (zh) 2016-04-13
WO2014176926A1 (zh) 2014-11-06

Similar Documents

Publication Publication Date Title
CN103246830B (zh) 客户端脚本的加密处理方法及装置和解密处理方法及装置
CN103873692B (zh) 一种分享资源的方法、装置及系统
CN107329861A (zh) 一种多接口测试方法及装置
US9607160B2 (en) Method and apparatus for providing string encryption and decryption in program files
CN105049425A (zh) 一种基于二维码的物理隔离传输方法
US20180278797A1 (en) Image Encryption Method, Image Viewing Method, System, and Terminal
CN107665233A (zh) 数据库数据处理方法、装置、计算机设备和存储介质
CN106375465B (zh) 一种数据迁移方法及服务器
CN105022936A (zh) 一种类class文件加密解密方法和装置
CN109145632A (zh) 用于生成可追溯文件的方法及装置
US20170124306A1 (en) Method and apparatus for preventing application from being deciphered
JP2016540333A (ja) 端末標記方法、端末標記装置、プログラム及び記録媒体
US20040172543A1 (en) Apparatus and method for generating data for detecting false alteration of encrypted data during processing
CN105550246A (zh) Android平台下加载网络图片的系统及方法
CN106203141A (zh) 一种应用的数据处理方法和装置
CN110457869B (zh) 程序编译加密方法、装置、存储介质及电子设备
CN111859210B (zh) 图像处理方法、装置、设备及存储介质
CN108153745B (zh) 一种应用数据调用方法及应用开发系统
CN105989075A (zh) 一种浏览器显示图像的方法、装置和系统
US20070253621A1 (en) Method and system to process a data string
CN108985109B (zh) 一种数据存储方法及装置
CN107315970B (zh) 一种敏感数据的交互方法及装置
CN114154123B (zh) 应用于Python项目的加密保护方法
CN105592319A (zh) 一种服务器截图方法及服务器
CN112363987A (zh) 文件压缩方法及装置、文件加载方法及装置和电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: 100085 Beijing city Haidian District Qinghe Street No. 68 Huarun colorful city shopping center two floor 13

Applicant after: Xiaomi Technology Co., Ltd.

Address before: 100102 Beijing Wangjing West Road, a volume of stone world building, A, block, floor 12

Applicant before: Beijing Xiaomi Technology Co., Ltd.

C14 Grant of patent or utility model
GR01 Patent grant