CN103226673A - 批量处理swf打散加密方法及装置 - Google Patents
批量处理swf打散加密方法及装置 Download PDFInfo
- Publication number
- CN103226673A CN103226673A CN2013101206789A CN201310120678A CN103226673A CN 103226673 A CN103226673 A CN 103226673A CN 2013101206789 A CN2013101206789 A CN 2013101206789A CN 201310120678 A CN201310120678 A CN 201310120678A CN 103226673 A CN103226673 A CN 103226673A
- Authority
- CN
- China
- Prior art keywords
- file
- swf
- binary stream
- encryption
- header
- 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.)
- Pending
Links
Images
Landscapes
- Storage Device Security (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供一种批量处理SWF打散加密方法及装置,该方法包括:获取客户端批量上传的源SWF文件;依次解析所述源SWF文件,获取所述源SWF文件的文件头;通过二进制流方式在所述文件头中写入二进制流,所述二进制流中包括密钥码,所述源SWF文件变为非SWF格式的第一中间文件,将所述第一中间文件和第二中间文件合并加载为加密SWF文件,其中所述第二中间文件包含与所述密钥码相对应的密钥;将每个加密SWF文件发送至所述客户端。通过对多个源SWF文件进行批量加密,大大提高了加密效率,且无需下载加密软件,节约了客户端的硬盘空间。
Description
技术领域
本发明涉及计算机数据加密技术,尤其涉及一种批量处理SWF打散加密方法及装置。
背景技术
SWF文件即以“.SWF”结尾的文件,SWF即“shock wave flash”的缩写,是一种支持矢量和点阵图形的动画文件格式,被广泛应用于网页设计,动画制作等领域,SWF文件通常也被称为Flash文件。由于SWF文件发布后为明文状态,因此为了对SWF文件进行保密,需要对其进行加密。
传统技术中,SWF文件的加密方法为从网络上下载一个加密软件,然后对单个SWF文件进行加密,当需要加密的SWF文件数量较多时,现有技术存在加密效率低的问题,而且在加密前还需要事先下载应用文件,占用客户端的磁盘空间。
发明内容
针对传统技术的上述缺陷,本发明实施例提供一种批量处理SWF打散加密方法及装置。
本发明实施例提供一种批量处理SWF打散加密方法,包括:
获取客户端批量上传的源SWF文件;
依次解析所述源SWF文件,获取所述源SWF文件的文件头;
通过二进制流方式在所述文件头中写入二进制流,所述二进制流中包括密钥码,所述源SWF文件变为非SWF格式的第一中间文件,将所述第一中间文件和第二中间文件合并加载为加密SWF文件,其中所述第二中间文件包含与所述密钥码相对应的密钥;
将每个加密SWF文件发送至所述客户端。
优选的,所述依次解析所述源SWF文件,获取所述源SWF文件的文件头,包括:
通过二进制流读取所述源SWF文件,获取所述源SWF文件的文件头信息;
根据所述文件头信息判断所述源SWF文件是否为压缩文件,若是则解压缩所述源SWF文件;
获取解压缩后的所述源SWF文件的文件头。
优选的,所述通过二进制流方式在所述文件头中写入二进制流,包括:
通过二进制流方式在所述文件头的ByteArray位置写入二进制流,使得所述文件头无法被正常加载解析。
优选的,所述将每个加密SWF文件发送至所述客户端,包括:
将所有加密SWF文件打包压缩后,发送至所述客户端。
本发明实施例提供一种批量处理SWF打散加密装置,包括:
接收模块,用于获取客户端批量上传的源SWF文件;
解析模块,用于依次解析所述源SWF文件,获取所述源SWF文件的文件头;
加密模块,用于通过二进制流方式在所述文件头中写入二进制流,所述二进制流中包括密钥码,所述源SWF文件变为非SWF格式的第一中间文件,将所述第一中间文件和第二中间文件合并加载为加密SWF文件,其中所述第二中间文件包含与所述密钥码相对应的密钥;
发送模块,用于将每个加密SWF文件发送至所述客户端。
优选的,解析模块包括:
读取单元,用于通过二进制流读取所述源SWF文件,获取所述源SWF文件的文件头信息;
判断单元,用于根据所述文件头信息判断所述源SWF文件是否为压缩文件,若是则解压缩所述源SWF文件;
提取单元,用于获取解压缩后的所述源SWF文件的文件头。
优选的,加密模块包括:
写入单元,用于通过二进制流方式在所述文件头的ByteArray位置写入二进制流,使得所述文件头无法被正常加载解析,所述二进制流中包括密钥码,所述源SWF文件变为非SWF格式的第一中间文件
合并单元,用于将所述第一中间文件和第二中间文件合并加载为加密SWF文件,其中所述第二中间文件包含与所述密钥码相对应的密钥。
优选的,发送模块还用于将所有加密SWF文件打包压缩后,发送至所述客户端。
本实施例的技术方案中,用户通过客户端批量上传多个源SWF文件至批量处理SWF打散加密装置,批量处理SWF打散加密装置依次解析每一个源SWF文件,通过二进制流读取源SWF文件的文件头,然后在文件头中插入大量的二进制流密钥码,使得源SWF文件变成非SWF文件格式的第一中间文件,再将第一中间文件和包含密钥的第二中间文件合并,生成加密SWF文件,然后再将多个加密SWF文件打包发送至客户端,从而使得用户能够一次批量加密多个源SWF文件,提高了加密效率,而且不需要下载加密软件,节省了用户的磁盘空间。
附图说明
图1为本发明批量处理SWF打散加密方法第一实施例流程图;
图2为本发明批量处理SWF打散加密装置第一实施例结构示意图;
图3为本发明批量处理SWF打散加密装置第二实施例结构示意图。
具体实施方式
图1为本发明批量处理SWF打散加密方法第一实施例流程图,如图1所示,本发明实施例所提供的批量处理SWF打散加密方法由服务器侧的批量处理SWF打散加密装置来执行,该装置可以采用软件和/或硬件的形式来实现,该方法包括:
步骤S100,获取客户端批量上传的源SWF文件;
步骤S102,依次解析所述源SWF文件,获取所述源SWF文件的文件头;
步骤S104,通过二进制流方式在所述文件头中写入二进制流,所述二进制流中包括密钥码,所述源SWF文件变为非SWF格式的第一中间文件,将所述第一中间文件和第二中间文件合并加载为加密SWF文件,其中所述第二中间文件包含与所述密钥码相对应的密钥;
步骤S106,将每个加密SWF文件发送至所述客户端。
具体地,批量处理SWF打散加密装置获取用户从客户端批量上传的源SWF文件。SWF文件由文件头和数据体组成,其中,数据体由多个不同种类的标签定义得到。例如:形状定义标签、声音定义标签和结束标签等。文件头中包括该SWF文件的版本信息、文件长度、帧尺寸、帧率、帧数等参数信息。
进一步地,步骤S102包括通过二进制流读取所述源SWF文件,获取所述源SWF文件的文件头信息;根据所述文件头信息判断所述源SWF文件是否为压缩文件,若是则解压缩所述源SWF文件;获取解压缩后的所述源SWF文件的文件头。
具体地,由于用户上传的源SWF文件可能包括压缩文件,在对源SWF文件进行加密之前,需要先对源SWF文件进行解密。通过二进制流读取源SWF文件,获取源SWF文件的文件头信息,判断该文件是否被压缩,若是则需要先解压缩。源SWF文件的文件头以三个标识符开始,所述的三个标志符是0x46、0x57和0x53或0x46、0x57和0x43,若源SWF文件的文件头的三个标识符是0x46、0x57和0x53,则为未压缩文件;若原swf文件的文件头的三个标识符是0x46、0x57和0x43,则为压缩文件。
进一步地,步骤S104的具体实现方法为:
通过二进制流方式在所述文件头的ByteArray位置写入二进制流,使得所述文件头无法被正常加载解析,二进制流中包括密钥码,源SWF文件变为非SWF格式的第一中间文件,将第一中间文件和第二中间文件合并加载为加密SWF文件,其中第二中间文件包含与所述密钥码相对应的密钥。
具体地,通过二进制流向源SWF文件的文件头写入二进制流,该二进制流为大量无意义的数据,即密钥码。由于文件头的前几位代表该源SWF文件的版本信息,以及解析源SWF文件的参数数据,因此当文件头中被插入了大量的无意义二进制流后,源SWF文件变为非SWF格式的第一中间文件,无法被反编译程序正常解析,从而达到了加密的效果。
但同时该源SWF文件也无法被正常加载,因此需要将第一中间文件嵌入一个新的SWF文件,即第二中间文件,该第二中间文件中包含有与密钥码相对应的密钥,该密钥可以还原第一中间文件,使得加密后的加密SWF文件还原成源SWF文件,从而使得加密SWF文件能够被正常加载。
进一步地,步骤S106包括:将所有加密SWF文件打包压缩后,发送至所述客户端。
在本实施例的技术方案中,用户通过客户端批量上传多个源SWF文件至批量处理SWF打散加密装置,批量处理SWF打散加密装置依次解析每一个源SWF文件,通过二进制流读取源SWF文件的文件头,然后在文件头中插入大量的二进制流密钥码,使得源SWF文件变成非SWF文件格式的第一中间文件,再将第一中间文件和包含密钥的第二中间文件合并,生成加密SWF文件,然后再将多个加密SWF文件打包发送至客户端,从而使得用户能够一次批量加密多个源SWF文件,提高了加密效率,而且不需要下载加密软件,节省了用户的磁盘空间。
图2为本发明批量处理SWF打散加密装置第一实施例结构示意图,如图2所示,该装置包括接收模块11,解析模块12,加密模块13以及发送模块14,其中:
接收模块11,用于获取客户端批量上传的源SWF文件;
解析模块12,用于依次解析所述源SWF文件,获取所述源SWF文件的文件头;
加密模块13,用于通过二进制流方式在所述文件头中写入二进制流,所述二进制流中包括密钥码,所述源SWF文件变为非SWF格式的第一中间文件,将所述第一中间文件和第二中间文件合并加载为加密SWF文件,其中所述第二中间文件包含与所述密钥码相对应的密钥;
发送模块14,用于将每个加密SWF文件发送至所述客户端。
具体地,接收模块11获取用户从客户端批量上传的源SWF文件,并发送至解析模块用于解析12。解析模块12解析出源SWF文件的文件头后发送至加密模块13。加密模块13向文件头中写入包含密钥码的二进制流,从而将源SWF文件变为非SWF格式的第一中间文件,再将第一中间文件嵌入一个新的SWF文件,即第二中间文件,其中第二中间文件中包括与密钥码相对应的密钥。最后加密模块13将加密后的加密SWF文件发送至发送模块14,由发送模块14将每个加密SWF文件发送至客户端。
在本实施例的技术方案中,用户通过客户端批量上传多个源SWF文件至批量处理SWF打散加密装置,批量处理SWF打散加密装置依次解析每一个源SWF文件,通过二进制流读取源SWF文件的文件头,然后在文件头中插入大量的二进制流密钥码,使得源SWF文件变成非SWF文件格式的第一中间文件,再将第一中间文件和包含密钥的第二中间文件合并,生成加密SWF文件,然后再将多个加密SWF文件打包发送至客户端,从而使得用户能够一次批量加密多个源SWF文件,提高了加密效率,而且不需要下载加密软件,节省了用户的磁盘空间。
图3为本发明批量处理SWF打散加密装置第二实施例结构示意图,如图3所示,该装置包括接收模块21,解析模块22,加密模块23以及发送模块24,其中:
接收模块21,用于获取客户端批量上传的源SWF文件;
解析模块22,用于依次解析所述源SWF文件,获取所述源SWF文件的文件头;
加密模块23,用于通过二进制流方式在所述文件头中写入二进制流,所述二进制流中包括密钥码,所述源SWF文件变为非SWF格式的第一中间文件,将所述第一中间文件和第二中间文件合并加载为加密SWF文件,其中所述第二中间文件包含与所述密钥码相对应的密钥;
发送模块24,用于将每个加密SWF文件发送至所述客户端。
其中解析模块22包括:
读取单元221,用于通过二进制流读取所述源SWF文件,获取所述源SWF文件的文件头信息;
判断单元222,用于根据所述文件头信息判断所述源SWF文件是否为压缩文件,若是则解压缩所述源SWF文件;
提取单元223,用于获取解压缩后的所述源SWF文件的文件头。
其中加密模块23包括:
写入单元231,用于通过二进制流方式在所述文件头的ByteArray位置写入二进制流,使得所述文件头无法被正常加载解析,所述二进制流中包括密钥码,所述源SWF文件变为非SWF格式的第一中间文件
合并单元232,用于将所述第一中间文件和第二中间文件合并加载为加密SWF文件,其中所述第二中间文件包含与所述密钥码相对应的密钥。
其中发送模块24还用于将所有加密SWF文件打包压缩后,发送至所述客户端。
本发明实施例提供的批量处理SWF打散加密装置用于执行本发明实施例提供的批量处理SWF打散加密方法,具备相应的功能模块,在此不再赘述。
在本实施例的技术方案中,用户通过客户端批量上传多个源SWF文件至批量处理SWF打散加密装置,批量处理SWF打散加密装置依次解析每一个源SWF文件,通过二进制流读取源SWF文件的文件头,然后在文件头中插入大量的二进制流密钥码,使得源SWF文件变成非SWF文件格式的第一中间文件,再将第一中间文件和包含密钥的第二中间文件合并,生成加密SWF文件,然后再将多个加密SWF文件打包发送至客户端,从而使得用户能够一次批量加密多个源SWF文件,提高了加密效率,而且不需要下载加密软件,节省了用户的磁盘空间。
应说明的是:以上实施例仅用以说明本发明而非限制,本发明也并不仅限于上述举例,一切不脱离本发明的精神和范围的技术方案及其改进,其均应涵盖在本发明的权利要求范围中。
Claims (8)
1.一种批量处理SWF打散加密方法,其特征在于,包括:
获取客户端批量上传的源SWF文件;
依次解析所述源SWF文件,获取所述源SWF文件的文件头;
通过二进制流方式在所述文件头中写入二进制流,所述二进制流中包括密钥码,所述源SWF文件变为非SWF格式的第一中间文件,将所述第一中间文件和第二中间文件合并加载为加密SWF文件,其中所述第二中间文件包含与所述密钥码相对应的密钥;
将每个加密SWF文件发送至所述客户端。
2.根据权利要求1所述的批量处理SWF打散加密方法,其特征在于,所述依次解析所述源SWF文件,获取所述源SWF文件的文件头,包括:
通过二进制流读取所述源SWF文件,获取所述源SWF文件的文件头信息;
根据所述文件头信息判断所述源SWF文件是否为压缩文件,若是则解压缩所述源SWF文件;
获取解压缩后的所述源SWF文件的文件头。
3.根据权利要求1所述的批量处理SWF打散加密方法,其特征在于,所述通过二进制流方式在所述文件头中写入二进制流,包括:
通过二进制流方式在所述文件头的ByteArray位置写入二进制流,使得所述文件头无法被正常加载解析。
4.根据权利要求1所述的批量处理SWF打散加密方法,其特征在于,所述将每个加密SWF文件发送至所述客户端,包括:
将所有加密SWF文件打包压缩后,发送至所述客户端。
5.一种批量处理SWF打散加密装置,其特征在于,包括:
接收模块,用于获取客户端批量上传的源SWF文件;
解析模块,用于依次解析所述源SWF文件,获取所述源SWF文件的文件头;
加密模块,用于通过二进制流方式在所述文件头中写入二进制流,所述二进制流中包括密钥码,所述源SWF文件变为非SWF格式的第一中间文件,将所述第一中间文件和第二中间文件合并加载为加密SWF文件,其中所述第二中间文件包含与所述密钥码相对应的密钥;
发送模块,用于将每个加密SWF文件发送至所述客户端。
6.根据权利要求5所述的批量处理SWF打散加密装置,其特征在于,所述解析模块包括:
读取单元,用于通过二进制流读取所述源SWF文件,获取所述源SWF文件的文件头信息;
判断单元,用于根据所述文件头信息判断所述源SWF文件是否为压缩文件,若是则解压缩所述源SWF文件;
提取单元,用于获取解压缩后的所述源SWF文件的文件头。
7.根据权利要求5所述的批量处理SWF打散加密方法,其特征在于,所述加密模块包括:
写入单元,用于通过二进制流方式在所述文件头的ByteArray位置写入二进制流,使得所述文件头无法被正常加载解析,所述二进制流中包括密钥码,所述源SWF文件变为非SWF格式的第一中间文件
合并单元,用于将所述第一中间文件和第二中间文件合并加载为加密SWF文件,其中所述第二中间文件包含与所述密钥码相对应的密钥。
8.根据权利要求1所述的批量处理SWF打散加密方法,其特征在于,所述发送模块还用于将所有加密SWF文件打包压缩后,发送至所述客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013101206789A CN103226673A (zh) | 2013-04-09 | 2013-04-09 | 批量处理swf打散加密方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013101206789A CN103226673A (zh) | 2013-04-09 | 2013-04-09 | 批量处理swf打散加密方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103226673A true CN103226673A (zh) | 2013-07-31 |
Family
ID=48837117
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013101206789A Pending CN103226673A (zh) | 2013-04-09 | 2013-04-09 | 批量处理swf打散加密方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103226673A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103679051A (zh) * | 2013-12-31 | 2014-03-26 | 天津书生软件技术有限公司 | 一种文件隐藏方法 |
CN105847869A (zh) * | 2016-05-24 | 2016-08-10 | 武汉斗鱼网络科技有限公司 | 一种加密播放方法与装置 |
CN107077540A (zh) * | 2014-08-13 | 2017-08-18 | Inka 安特沃客有限公司 | 用于提供基于云的应用安全服务的方法和系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546824A (zh) * | 2012-02-20 | 2012-07-04 | 沈文策 | Flash数据传输方法及系统、服务器和客户端 |
CN102567690A (zh) * | 2011-12-27 | 2012-07-11 | 四川长虹电器股份有限公司 | 一种对flv文件进行加密的方法 |
CN102799673A (zh) * | 2012-07-17 | 2012-11-28 | 厦门游家网络有限公司 | 一种批量压缩swf文件的方法 |
-
2013
- 2013-04-09 CN CN2013101206789A patent/CN103226673A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567690A (zh) * | 2011-12-27 | 2012-07-11 | 四川长虹电器股份有限公司 | 一种对flv文件进行加密的方法 |
CN102546824A (zh) * | 2012-02-20 | 2012-07-04 | 沈文策 | Flash数据传输方法及系统、服务器和客户端 |
CN102799673A (zh) * | 2012-07-17 | 2012-11-28 | 厦门游家网络有限公司 | 一种批量压缩swf文件的方法 |
Non-Patent Citations (2)
Title |
---|
YHLIUYANG: "《"SWF加密之隐藏密钥篇",http://blog.sina.com.cn/s/blog_731fdd2b01010u9k.html》", 4 August 2012, 新浪博客 * |
王明瑞: "对 SWF文件实现加密保护", 《福建电脑》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103679051A (zh) * | 2013-12-31 | 2014-03-26 | 天津书生软件技术有限公司 | 一种文件隐藏方法 |
CN107077540A (zh) * | 2014-08-13 | 2017-08-18 | Inka 安特沃客有限公司 | 用于提供基于云的应用安全服务的方法和系统 |
CN105847869A (zh) * | 2016-05-24 | 2016-08-10 | 武汉斗鱼网络科技有限公司 | 一种加密播放方法与装置 |
CN105847869B (zh) * | 2016-05-24 | 2019-06-18 | 武汉斗鱼网络科技有限公司 | 一种加密播放方法与装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11290252B2 (en) | Compression and homomorphic encryption in secure query and analytics | |
CN107302706B (zh) | 图像防盗链方法、装置及电子设备 | |
US20160117518A1 (en) | File Encryption/Decryption Device And File Encryption/Decryption Method | |
CN103902342A (zh) | 一种封闭环境下系统更新升级方法及系统 | |
CN111832056B (zh) | 用于生成二维码的方法和系统 | |
CN103577762B (zh) | 一种安卓应用分发体系内的渠道标记系统及方法 | |
CN105359155B (zh) | 使用压缩破坏口令攻击 | |
CN101646168B (zh) | 数据加密方法、解密方法及移动终端 | |
US20140201316A1 (en) | Streaming zip | |
CN105052040A (zh) | 多流压缩与解压的方法与系统 | |
CN102779048A (zh) | 移动终端上运行html5应用程序的方法及设备 | |
US8402282B2 (en) | Method and device for encrypting and decrypting digital data | |
CN108737353B (zh) | 一种基于数据分析系统的数据加密方法及装置 | |
CN103226673A (zh) | 批量处理swf打散加密方法及装置 | |
CN101588376A (zh) | 一种信息发布方法、装置和系统 | |
CN113517982B (zh) | 口令的生成方法、口令的执行方法及终端 | |
US20150261414A1 (en) | Copy and paste between devices | |
CN103366125A (zh) | 文件加密系统和方法 | |
CN102142072A (zh) | 电子文件的加密处理、解密处理方法及装置 | |
CN113179229A (zh) | 一种验证方法、装置、存储介质及电子设备 | |
CN106817216B (zh) | 一种基于Zlib库和AES算法的ZIP包解压方法 | |
CN111130805B (zh) | 安全传输方法、电子设备及计算机可读存储介质 | |
CN104317817A (zh) | 一种组态文件的版本兼容方法及装置 | |
CN101141442B (zh) | 一种实现存储卡功能服务的系统和方法 | |
CN105760202A (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 | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20130731 |