CN102546824A - Flash数据传输方法及系统、服务器和客户端 - Google Patents
Flash数据传输方法及系统、服务器和客户端 Download PDFInfo
- Publication number
- CN102546824A CN102546824A CN2012100385378A CN201210038537A CN102546824A CN 102546824 A CN102546824 A CN 102546824A CN 2012100385378 A CN2012100385378 A CN 2012100385378A CN 201210038537 A CN201210038537 A CN 201210038537A CN 102546824 A CN102546824 A CN 102546824A
- Authority
- CN
- China
- Prior art keywords
- key
- flash
- module
- data
- server
- 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)
Abstract
本发明涉及信息领域,具体涉及一种Flash数据传输方法及系统、服务器和客户端,其中Flash数据传输方法包括:建立Flash服务器和Flash客户端共享的密钥获取规则;Flash服务器确定密钥混淆数据块;所述Flash服务器根据所述密钥获取规则从所述密钥混淆数据块中提取密钥;所述Flash服务器通过所述密钥对需传输的数据进行加密;所述Flash服务器将加密后的数据和所述密钥混淆数据块通过网络传输给Flash客户端;所述Flash客户端根据所述密钥获取规则从获取到的所述密钥混淆数据块中提取所述密钥;所述Flash客户端根据所述密钥对获取到的加密后的数据进行解密。Flash服务器、Flash客户端及Flash数据传输系统均使用上述加密方法后传输。本发明能够提高Flash网络通信中的安全性。
Description
技术领域
本发明涉及信息领域,具体涉及一种Flash数据传输方法及系统、服务器和客户端。
背景技术
Flash是由macromedia公司推出的交互式矢量图和Web动画的一种工具,用其可以制作出各式各样的动画作品,人们在生活中通常也将用Flash工具制作的动画作品称为Flash。
现在flash动画数据在网络通信中的安全面临2个问题:1.非法截取网络传输到flash动画的数据;若服务器与flash客户端采用明文方式传输数据的话,用户只需要在网络中用抓包工具抓取服务器与flash客户端通信的数据包,就可以非法知道通信双方的数据了。2.伪造合法的客户端进行非法请求接收数据;若flash的运行文件swf没有经过任何处理,用户只需要利用swf破解软件就可以还原as2/as3代码,然后修改代码再次编译就完成了伪造合法客户端,进而非法请求接收服务器数据,服务器无法识别客户端是否非法。针对这种情况,flash网络通信的安全机制通常采用的手段是对swf文件进行加壳、加密,现在流行的加壳软件有SWFKit,现在流行的对swf本身加密的软件有:doswf,swfencrypt,此种方法极易被破解软件破解,或是对flash代码进行混淆,此方法不能根本解决别人获取代码后进行分析,总之Flash网络通信的安全性较低。
发明内容
本发明提供一种Flash数据传输方法及系统、服务器和客户端,能够提高网络通信中Flash数据传输的安全性。
本发明提供了一种Flash数据传输方法,包括:
建立Flash服务器和Flash客户端共享的密钥获取规则;
Flash服务器确定密钥混淆数据块;
所述Flash服务器根据所述密钥获取规则从所述密钥混淆数据块中提取密钥;
所述Flash服务器通过所述密钥对需传输的数据进行加密;
所述Flash服务器将加密后的数据和所述密钥混淆数据块通过网络传输给Flash客户端;
所述Flash客户端根据所述密钥获取规则从获取到的所述密钥混淆数据块中提取所述密钥;
所述Flash客户端根据所述密钥对获取到的加密后的数据进行解密。
所述建立Flash服务器和Flash客户端共享的密钥获取规则优选为包括:
利用C语言或C++语言建立Flash服务器和Flash客户端共享的密钥获取规则形成密钥获取规则的计算机程序设计语言代码;
利用Adobe Alchemy将所述密钥获取规则的计算机程序设计语言代码编译生成动作脚本3.0Action Script3.0可调用的密钥获取规则SWC文件;
在所述Flash服务器和Flash客户端中设置所述密钥获取规则SWC文件。
所述Flash服务器确定密钥混淆数据块优选为包括:Flash服务器随机或以设定方式生成密钥混淆数据块;
和/或,
所述密钥混淆数据块包含的字节数优选为256字节-1024字节。
所述Flash服务器通过所述密钥对需传输的数据进行加密时加密的方式优选为包括:对称加密;
所述对称加密的算法优选为包括:数据加密标准DES算法、三重数据加密标准3DES算法、数据块加密算法IDEA、传统对称分组加密算法RC2、流加密算法簇RC4、分组密码算法RC5、高级加密标准AES算法中的一种。
所述Flash服务器将所述加密后的数据和所述密钥混淆数据块通过网络传输给Flash客户端优选为包括:所述Flash服务器按照预定位置顺序将所述加密后的数据和所述密钥混淆数据块组建网络传输文件,将所述网络传输文件通过网络传输给Flash客户端;
在Flash客户端接收到所述网络传输文件之后,并在所述从获取到的所述密钥混淆数据块中提取所述密钥的步骤之前,优选为进一步包括:所述Flash客户端根据所述预定位置顺序从所述网络传输文件中获取所述密钥混淆数据块和加密后的所述数据。
本发明还提供了一种上述任一种所述Flash数据传输方法的Flash服务器,包括:
第一建立模块、确定模块、获取模块、加密模块、传输模块;
所述第一建立模块,用于在Flash服务器上建立所述Flash服务器和Flash客户端共享的密钥获取规则;
所述确定模块,用于确定密钥混淆数据块;
所述获取模块,用于根据所述第一建立模块建立的所述密钥获取规则从所述确定模块所确定的密钥混淆数据块中提取密钥;
所述加密模块,用于通过所述抹去模块所提取的密钥对需传输的数据进行加密;
所述传输模块,用于将所述加密模块加密后的数据和所述确定模块确定的所述密钥混淆数据块通过网络传输给Flash客户端。
所述第一建立模块优选为包括:代码生成子模块,用于利用C语言或C++语言建立Flash服务器和Flash客户端共享的密钥获取规则形成密钥获取规则的计算机程序设计语言代码;文件生成子模块,用于利用Adobe Alchemy将所述计算机程序设计语言代码编译生成动作脚本3.0Action Script3.0可调用的密钥获取规则SWC文件;保存模块,用于保存所述文件生成子模块生成的密钥获取规则SWC文件;
和/或,
所述Flash服务器优选为进一步包括:位置顺序模块,用于按照预定位置顺序将所述加密模块加密后的数据和所述确定模块确定的密钥混淆数据块,组建为网络传输文件,并发送给所述传输模块;所述传输模块,优选为是将接收到的所述网络传输文件通过网络传输给Flash客户端。
本发明还提供一种上述任一种所述Flash数据传输方法的Flash客户端,其特征在于,包括:
第二建立模块、第一提取模块、第二提取模块、第三提取模块、解密模块;
所述第二建立模块,用于在Flash客户端上建立所述Flash服务器和Flash客户端共享的密钥获取规则;
所述第一提取模块,用于从所述Flash服务器获取所述密钥混淆数据块;
所述第二提取模块,根据所述第二建立模块建立的所述密钥获取规则从所述第一提取模块获取的所述密钥混淆数据块中提取密钥;
所述第三提取模块,用于从所述Flash服务器获取所述加密后的数据;
所述解密模块,用于根据所述第二提取模块提取的所述密钥对所述第三提取模块获取的所述加密后的数据进行解密。
所述第二建立模块优选为包括:代码编写子模块,用于利用C语言或C++语言建立Flash服务器和Flash客户端共享的密钥获取规则形成密钥获取规则的计算机程序设计语言代码;文件组件子模块,用于利用Adobe Alchemy将所述计算机程序设计语言代码编译生成动作脚本3.0Action Script3.0可调用的密钥获取规则SWC文件;存储模块,用于保存所述文件生成子模块生成的密钥获取规则SWC文件;
和/或,
所述Flash客户端优选为进一步包括:接收模块,用于接收按照预定位置顺序将所述加密后的数据和所述密钥混淆数据块组件的网络传输文件;则,所述第一提取模块,优选为是从所述接收模块接收的所述网络传输文件中按照预定位置顺序提取所述密钥混淆数据块;所述第三提取模块,优选为是从所述接收模块接收的所述网络传输文件中按照预定位置顺序提取所述加密后的数据。
本发明还提供了一种采用上述任一种所述Flash数据传输方法的Flash数据传输系统,包括:
上述任一种所述的Flash服务器;
上述任一种所述的Flash客户端。
通过本发明提供一种Flash数据传输方法及系统、服务器和客户端,能够达到如下的有益效果:
1.本发明采用Flash服务器和Flash客户端共享的密钥获取规则,通过密钥获取规则从密钥混淆数据块中获取密钥,对需传输的数据进行加密形成加密后的数据,并将密钥混淆数据块和加密后的数据一起发送给Flash客户端,Flash客户端根据共享的密钥获取规则提取密钥,然后进行解密,一方面避免需传输的数据以明文方式传输,一方面采用独特的密钥获取规则和加密方法,从而有效增强了需传输的数据在传输过程中的安全性。
2.本发明在建立Flash服务器和Flash客户端共享的密钥获取规则中,首先采用C或C++语言建立Flash服务器和Flash客户端共享的密钥获取规则代码,然后利用Adobe Alchemy将代码编译生成动作脚本3.0Action Script3.0可调用的密钥获取规则SWC文件,因为当前所有的反编译软件都是针对AVM2的,而对低层虚拟机(LLVM)的gcc/g++编译器生成的开源库(swc库),是无法破解的,因此数据传输的安全性进一步增强。
3.本发明的加密方式采用的对称加密,Flash服务器和Flash客户端共享同一个密钥,另一方面用于提取密钥的密钥混淆数据块是随机生成的,从而避免了仿造、破解的可能性,进一步增强了数据传输的安全性。
4.本发明还采用Adobe Alchemy对密钥获取规则进行编译,而AdobeAlchemy能够解决互联网调用C语言或C++语言开源库和Flash的运行效率问题,因此,进一步提高了运行效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,以下将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,以下描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图所示实施例得到其它的实施例及其附图。
图1为本发明Flash数据传输方法基本流程图;
图2为本发明一个具体实施例中Flash数据传输方法流程图;
图3为本发明Flash服务器基本结构示意图;
图4为本发明Flash客户端基本机构示意图;
图5为本发明Flash数据传输系统基本结构示意图。
具体实施方式
以下将结合附图对本发明各实施例的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施例,都属于本发明所保护的范围。
本发明提供一种Flash数据传输方法,见图1,所示,包括:
步骤101,建立Flash服务器和Flash客户端共享的密钥获取规则;
步骤102,Flash服务器确定密钥混淆数据块;需要说明的是:此处的“确定”是由Flash服务器生成密钥混淆数据块。
步骤103,所述Flash服务器根据所述密钥获取规则从所述密钥混淆数据块中提取密钥;
步骤104,所述Flash服务器通过所述密钥对需传输的数据进行加密;
步骤105,所述Flash服务器将所述加密后的数据和所述密钥混淆数据块通过网络传输给Flash客户端;
步骤106,所述Flash客户端根据所述密钥获取规则从获取到的所述密钥混淆数据块中提取所述密钥;
步骤107,所述Flash客户端根据所述密钥对获取到的所述加密后的数据进行解密。
发明采用Flash服务器和Flash客户端共享的密钥获取规则,通过密钥获取规则从密钥混淆数据块中获取密钥,对需传输的数据进行加密形成加密后的数据,并将密钥混淆数据块和加密后的数据一起发送给Flash客户端,Flash客户端根据共享的密钥获取规则提取密钥,然后进行解密,一方面避免需传输的数据以明文方式传输,一方面采用独特的密钥获取规则和加密方法,从而有效增强了需传输的数据在传输过程中的安全性。
接下来,本发明将根据一个具体实施例对Flash数据传输方法进行详细描述,见图2,所示:
步骤201,确定密钥获取规则;
密钥获取规则中包含了从哪里获取密钥,如何获取密钥,该密钥获取规则需要在Flash服务器和Flash客户端共享的,为了达到这种共享需要在两方程序中均编入密钥获取规则,因此首先需要确定密钥获取规则。确定的方式可以人为商定,人为设定、也可以采用既有的某种密钥获取规则,或采用其他方式确定密钥获取规则。
步骤202,对密钥获取规则进行编程;
具体来说,即是用计算机程序设计语言对所述密钥获取规则进行编写,建立Flash服务器和Flash客户端共享的密钥获取规则的密钥获取规则计算机程序设计语言代码,该计算机程序设计语言包括:C语言或C++语言。
如上所述,编程是为了在Flash服务器和Flash客户端共享,因此需要在两方的程序中均通过编程方法将密钥获取规则写入程序中。
步骤203,用Adobe Alchemy对编程后的密钥获取规则进行编译成SWC文件;
具体来说,即是利用Adobe Alchemy将所述密钥获取规则计算机程序设计语言代码编译生成动作脚本3.0(Action Script3.0)可调用的密钥获取规则的SWC文件;
Adobe Alchemy是运行在低层虚拟机(LLVM),运行在AVM2之下,它允许c语言或c++语言编译生成动作脚本(ActionScript)。
LLVM将c/c++代码进行编译,并且生成RISC-LIKE指令的字节码,存储在缓冲区之中,在flash运行开始时,实时翻译成机器相关的本地代码。需要调用时是调用翻译后的二进制本地代码,以此提高运行速度。
当生成编译完成后,字节码需要保存在一个缓冲区之内,由于架之内需要和AVM2兼容,所以这个缓冲区将以AVM2能够识别的ByteArray形式保存在内存之中,即使反编译工具,反编译这个swf文件,也是看不到任何代码。
因为通过Adobe Alchemy将生成的AVM2能够识别的ByteArray与AVM2自己的生成ActionScript是有本质的区别,swf反编译工具只能针对AVM2生成的ActionScript,将其还原成AS3代码,而对gcc/g++与AdobeAlchemy结合生成的ActionScript还原成c/c++代码是毫无办法的。注:AVM2是目前Flash播放器(Player)最新版本11的核心,所有Actionscript 3的代码都只能由AVM2来执行。注:gcc/g++为c语言或c++语言的编译器。
Adobe alchemy自动生成一个AS3的接口文件,以方便AS3调用,值得注意的是,所有c/c++编译后的数据都以SWC文件形式生成。
步骤204,Flash服务器随机生成256个字节的密钥混淆数据块;
密钥混淆数据块是用于提取密钥,一个字节是8位,取值的美国信息互换标准代码(ascii)是0~255;生成随机数的函数是rand(),然后对生成的随机数对256求余可得到0~255的随机数。
密钥混淆数据块长度太长或太短均不好,要么影响速度,要么安全性降低,因此,256个字节是密钥混淆数据块的一个具体实施方式中的长度,其长度还可以在256个字节-1024个字节之间变动。
另一方面,Flash服务器可以随机生成或通过设定方式生成该密钥混淆数据块,为了提高安全性,优选为采用随机生成的方式得到密钥混淆数据块,从而保证密钥混淆数据块即时的变动性,从而降低被仿造和破解的可能性。
需要说明的是,密钥获取规则中会涉及如何从密钥混淆数据块中提取到的,比如:AES需要16个字节数据作为密钥,那么我们可以提取密钥混淆数据块的前面16个字节作为密钥。
但是如果我们想要更高级别的安全性,那就必须设计复杂的密钥获取规则。如:
key[0]=keybuff[keybuff[0]];密钥的第一个字节=密钥混淆数据块下标值为密钥混淆数据块第1个字节的值。密钥混淆数据块第1个字节的值是个随机数,所以密钥的第一个字节=随机某个密钥数据块的字节。其他15个字节的密钥以此类推。
步骤205,Flash服务器根据密钥获取规则从密钥混淆数据块中提取密钥;
根据步骤201-204可以得出,密钥获取规则中降到了如何从密钥混淆数据块中获取密钥,又因为Flash服务器中已经确定了密钥混淆数据块的内容,因此根据密钥获取规则和密钥混淆数据块可以提取密钥。
步骤206,Flash服务器通过密钥对需传输的数据进行对称加密;
本发明的另一个创新点即是对需传输的数据不采用明文方式传输,需要根据上文取得的密钥对需传输的数据进行加密,然后进行传输。
加密的方式有很多,根据密钥类型不同将现代密码技术分为两类:对称加密算法(秘密钥匙加密)和非对称加密算法(公开密钥加密)。
对称钥匙加密系统是加密和解密均采用同一把秘密钥匙,而且通信双方都必须获得这把钥匙,并保持钥匙的秘密。
非对称密钥加密系统采用的加密钥匙(公钥)和解密钥匙(私钥)是不同的。
本发明优选采用对称加密算法,Flash服务器和Flash客户端可以采用同一个密钥对进行加密或解密。
其中对称加密采用的具体算法可以采用数据加密标准DES算法、三重数据加密标准3DES算法、数据块加密算法IDEA、传统对称分组加密算法RC2、流加密算法簇RC4、分组密码算法RC5、高级加密标准AES算法中的一种,也可以采用其他的对称加密算法。
步骤207,确定Flash服务器与Flash客户端之间共享的加密后的数据和密钥混淆数据块在网络传输文件中的位置顺序;
加密后的数据和密钥混淆数据在网络传输文件中的位置顺序需要提前确定,可以为:加密后的数据在前,密钥混淆数据块在后,或者加密后的数据在后,密钥混淆数据块在前,或其他的方式。
位置顺序需要在Flash服务器和Flash客户端之间共享,一方面双方按照既定位置顺序规则进行摆放和提取加密后的数据和密钥混淆数据块,如果位置顺序不确定将有可能会导致提取错误,出现混淆,最终导致解密失败。
同时,本步骤也可以在步骤201-206中任意一步之前进行。
步骤208,Flash服务器按照预先设定位置顺序将加密后的数据和密钥混淆数据块放入网络传输文件,用于传输;
Flash服务器按照预先设定位置顺序将加密后的数据和密钥混淆数据块进行排序后组建网络传输文件。
本步是建立在步骤201-207均进行之后。
步骤209,Flash服务器将所述网络传输文件通过网络传输给Flash客户端;
通过此步Flash服务器将加密后的数据传输给Flash客户端,同时将提取密钥的密钥混淆数据块传输给Flash客户端。
步骤210,Flash客户端从网络传输文件中提取密钥混淆数据块和加密后的数据;
Flash客户端在接收到网络传输文件后,可以通过预先设定的共享的位置顺序从获取的网络传输文件中提取密钥混淆数据块和加密后的数据。
步骤211,Flash客户端提取密钥;
Flash客户端根据密钥混淆数据块和共享的密钥获取规则提取密钥。
步骤212,Flash客户端用所述密钥解密加密后的数据。
经过解密后的数据可以在Flash客户端显示。
至此,完成Flash服务器与Flash客户端之间通信的加密,提高了通信的安全性。
本发明还提供了一种上述任一种所述Flash数据传输方法的Flash服务器,如图3,所示,包括:
第一建立模块、确定模块、获取模块、加密模块、传输模块;
所述第一建立模块,用于在Flash服务器上建立所述Flash服务器和Flash客户端共享的密钥获取规则;
所述确定模块,用于确定密钥混淆数据块;
所述获取模块,用于根据所述第一建立模块建立的所述密钥获取规则从所述确定模块所确定的密钥混淆数据块中提取密钥;
所述加密模块,用于通过所述抹去模块所提取的密钥对需传输的数据进行加密;
所述传输模块,用于将所述加密模块加密后的数据和所述确定模块确定的所述密钥混淆数据块通过网络传输给Flash客户端。
在具体实施例中,所述第一建立模块优选为包括:代码生成子模块,用于利用C语言或C++语言建立Flash服务器和Flash客户端共享的密钥获取规则形成密钥获取规则的计算机程序设计语言代码;文件生成子模块,用于利用Adobe Alchemy将所述计算机程序设计语言代码编译生成动作脚本3.0ActionScript3.0可调用的密钥获取规则SWC文件;保存模块,用于保存所述文件生成子模块生成的密钥获取规则SWC文件。
在具体实施例中,所述Flash服务器优选为进一步包括:位置顺序模块,用于按照预定位置顺序将所述加密模块加密后的数据和所述确定模块确定的密钥混淆数据块,组建为网络传输文件,并发送给所述传输模块;所述传输模块,优选为是将接收到的所述网络传输文件通过网络传输给Flash客户端。
本发明还提供一种上述任一种所述Flash数据传输方法的Flash客户端,如图4,所示,包括:
第二建立模块、第一提取模块、第二提取模块、第三提取模块、解密模块;
所述第二建立模块,用于在Flash客户端上建立所述Flash服务器和Flash客户端共享的密钥获取规则;
所述第一提取模块,用于从所述Flash服务器获取所述密钥混淆数据块;
所述第二提取模块,根据所述第二建立模块建立的所述密钥获取规则从所述第一提取模块获取的所述密钥混淆数据块中提取密钥;
所述第三提取模块,用于从所述Flash服务器获取所述加密后的数据;
所述解密模块,用于根据所述第二提取模块提取的所述密钥对所述第三提取模块获取的所述加密后的数据进行解密。
在具体实施例中,所述第二建立模块优选为包括:代码编写子模块,用于利用C语言或C++语言建立Flash服务器和Flash客户端共享的密钥获取规则形成密钥获取规则的计算机程序设计语言代码;文件组件子模块,用于利用Adobe Alchemy将所述计算机程序设计语言代码编译生成动作脚本3.0ActionScript3.0可调用的密钥获取规则SWC文件;存储模块,用于保存所述文件生成子模块生成的密钥获取规则SWC文件;
在具体实施例中,所述Flash客户端优选为进一步包括:接收模块,用于接收按照预定位置顺序将所述加密后的数据和所述密钥混淆数据块组件的网络传输文件;则,所述第一提取模块,优选为是从所述接收模块接收的所述网络传输文件中按照预定位置顺序提取所述密钥混淆数据块;所述第三提取模块,优选为是从所述接收模块接收的所述网络传输文件中按照预定位置顺序提取所述加密后的数据。
本发明还提供了一种采用上述任一种所述Flash数据传输方法的Flash数据传输系统,如图5,所示,包括:
上述任一种所述的Flash服务器;上述任一种所述的Flash客户端。
通过本发明提供一种Flash数据传输方法及系统、服务器和客户端,能够达到如下的有益效果:
1.本发明采用Flash服务器和Flash客户端共享的密钥获取规则,通过密钥获取规则从密钥混淆数据块中获取密钥,对需传输的数据进行加密形成加密后的数据,并将密钥混淆数据块和加密后的数据一起发送给Flash客户端,Flash客户端根据共享的密钥获取规则提取密钥,然后进行解密,一方面避免需传输的数据以明文方式传输,一方面采用独特的密钥获取规则和加密方法,从而有效增强了需传输的数据在传输过程中的安全性。
2.本发明在建立Flash服务器和Flash客户端共享的密钥获取规则中,首先采用C或C++语言建立Flash服务器和Flash客户端共享的密钥获取规则代码,然后利用Adobe Alchemy将代码编译生成动作脚本3.0Action Script3.0可调用的密钥获取规则SWC文件,因为当前所有的反编译软件都是针对AVM2的,而对低层虚拟机(LLVM)的gcc/g++编译器生成的开源库(swc库),是无法破解的,因此数据传输的安全性进一步增强。
3.本发明的加密方式采用的对称加密,Flash服务器和Flash客户端共享同一个密钥,另一方面用于提取密钥的密钥混淆数据块是随机生成的,从而避免了仿造、破解的可能性,进一步增强了数据传输的安全性。
4.本发明还采用Adobe Alchemy对密钥获取规则进行编译,而AdobeAlchemy能够解决互联网调用C语言或C++语言开源库和Flash的运行效率问题,因此,进一步提高了运行效率。
本发明提供的各种实施例可根据需要以任意方式相互组合,通过这种组合得到的技术方案,也在本发明的范围内。
显然,本领域技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若对本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也包含这些改动和变型在内。
Claims (10)
1.一种Flash数据传输方法,其特征在于,包括:
建立Flash服务器和Flash客户端共享的密钥获取规则;
Flash服务器确定密钥混淆数据块;
所述Flash服务器根据所述密钥获取规则从所述密钥混淆数据块中提取密钥;
所述Flash服务器通过所述密钥对需传输的数据进行加密;
所述Flash服务器将加密后的数据和所述密钥混淆数据块通过网络传输给Flash客户端;
所述Flash客户端根据所述密钥获取规则从获取到的所述密钥混淆数据块中提取所述密钥;
所述Flash客户端根据所述密钥对获取到的加密后的数据进行解密。
2.如权利要求1所述的Flash数据传输方法,其特征在于,所述建立Flash服务器和Flash客户端共享的密钥获取规则包括:
利用C语言或C++语言建立Flash服务器和Flash客户端共享的密钥获取规则形成密钥获取规则的计算机程序设计语言代码;
利用Adobe Alchemy将所述密钥获取规则的计算机程序设计语言代码编译生成动作脚本3.0Action Script3.0可调用的密钥获取规则SWC文件;
在所述Flash服务器和Flash客户端中设置所述密钥获取规则SWC文件。
3.如权利要求1所述的Flash数据传输方法,其特征在于,
所述Flash服务器确定密钥混淆数据块包括:Flash服务器随机或以设定方式生成密钥混淆数据块;
和/或,
所述密钥混淆数据块包含的字节数为256字节-1024字节。
4.如权利要求1所述的Flash数据传输方法,其特征在于,所述Flash服务器通过所述密钥对需传输的数据进行加密时加密的方式包括:对称加密;
所述对称加密的算法包括:数据加密标准DES算法、三重数据加密标准3DES算法、数据块加密算法IDEA、传统对称分组加密算法RC2、流加密算法簇RC4、分组密码算法RC5、高级加密标准AES算法中的一种。
5.如权利要求1-4任一项所述的Flash数据传输方法,其特征在于,
所述Flash服务器将所述加密后的数据和所述密钥混淆数据块通过网络传输给Flash客户端包括:所述Flash服务器按照预定位置顺序将所述加密后的数据和所述密钥混淆数据块组建网络传输文件,将所述网络传输文件通过网络传输给Flash客户端;
在Flash客户端接收到所述网络传输文件之后,并在所述从获取到的所述密钥混淆数据块中提取所述密钥的步骤之前,进一步包括:所述Flash客户端根据所述预定位置顺序从所述网络传输文件中获取所述密钥混淆数据块和加密后的所述数据。
6.一种采用权利要求1-5任一项所述Flash数据传输方法的Flash服务器,其特征在于,包括:
第一建立模块、确定模块、获取模块、加密模块、传输模块;
所述第一建立模块,用于在Flash服务器上建立所述Flash服务器和Flash客户端共享的密钥获取规则;
所述确定模块,用于确定密钥混淆数据块;
所述获取模块,用于根据所述第一建立模块建立的所述密钥获取规则从所述确定模块所确定的密钥混淆数据块中提取密钥;
所述加密模块,用于通过所述抹去模块所提取的密钥对需传输的数据进行加密;
所述传输模块,用于将所述加密模块加密后的数据和所述确定模块确定的所述密钥混淆数据块通过网络传输给Flash客户端。
7.如权利要求6所述的Flash服务器,其特征在于,
所述第一建立模块包括:代码生成子模块,用于利用C语言或C++语言建立Flash服务器和Flash客户端共享的密钥获取规则形成密钥获取规则的计算机程序设计语言代码;文件生成子模块,用于利用Adobe Alchemy将所述计算机程序设计语言代码编译生成动作脚本3.0Action Script3.0可调用的密钥获取规则SWC文件;保存模块,用于保存所述文件生成子模块生成的密钥获取规则SWC文件;
和/或,
所述Flash服务器进一步包括:位置顺序模块,用于按照预定位置顺序将所述加密模块加密后的数据和所述确定模块确定的密钥混淆数据块,组建为网络传输文件,并发送给所述传输模块;所述传输模块,是将接收到的所述网络传输文件通过网络传输给Flash客户端。
8.一种采用权利要求1-5任一项所述Flash数据传输方法的Flash客户端,其特征在于,包括:
第二建立模块、第一提取模块、第二提取模块、第三提取模块、解密模块;
所述第二建立模块,用于在Flash客户端上建立所述Flash服务器和Flash客户端共享的密钥获取规则;
所述第一提取模块,用于从所述Flash服务器获取所述密钥混淆数据块;
所述第二提取模块,根据所述第二建立模块建立的所述密钥获取规则从所述第一提取模块获取的所述密钥混淆数据块中提取密钥;
所述第三提取模块,用于从所述Flash服务器获取所述加密后的数据;
所述解密模块,用于根据所述第二提取模块提取的所述密钥对所述第三提取模块获取的所述加密后的数据进行解密。
9.如权利要求8所述的Flash客户端,其特征在于,
所述第二建立模块包括:
代码编写子模块,用于利用C语言或C++语言建立Flash服务器和Flash客户端共享的密钥获取规则形成密钥获取规则的计算机程序设计语言代码;
文件组件子模块,用于利用Adobe Alchemy将所述计算机程序设计语言代码编译生成动作脚本3.0Action Script3.0可调用的密钥获取规则SWC文件;
存储模块,用于保存所述文件生成子模块生成的密钥获取规则SWC文件;
和/或,
所述Flash客户端进一步包括:接收模块,用于接收按照预定位置顺序将所述加密后的数据和所述密钥混淆数据块组件的网络传输文件;则,所述第一提取模块,是从所述接收模块接收的所述网络传输文件中按照预定位置顺序提取所述密钥混淆数据块;所述第三提取模块,是从所述接收模块接收的所述网络传输文件中按照预定位置顺序提取所述加密后的数据。
10.一种采用权利要求1-5任一项所述Flash数据传输方法的Flash数据传输系统,其特征在于,包括:
权利要求6或7所述的Flash服务器;
权利要求8或9所述的Flash客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012100385378A CN102546824A (zh) | 2012-02-20 | 2012-02-20 | Flash数据传输方法及系统、服务器和客户端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012100385378A CN102546824A (zh) | 2012-02-20 | 2012-02-20 | Flash数据传输方法及系统、服务器和客户端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102546824A true CN102546824A (zh) | 2012-07-04 |
Family
ID=46352770
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012100385378A Pending CN102546824A (zh) | 2012-02-20 | 2012-02-20 | Flash数据传输方法及系统、服务器和客户端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102546824A (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103226673A (zh) * | 2013-04-09 | 2013-07-31 | 四三九九网络股份有限公司 | 批量处理swf打散加密方法及装置 |
CN104392153A (zh) * | 2014-12-10 | 2015-03-04 | 北京深思数盾科技有限公司 | 一种软件保护方法及系统 |
CN104618104A (zh) * | 2014-12-15 | 2015-05-13 | 惠州Tcl移动通信有限公司 | 配件、电子设备及实现配件认证的系统 |
CN105847238A (zh) * | 2016-03-16 | 2016-08-10 | 杭州狮说教育科技有限公司 | 一种基于rtmp连接的数据安全传输方法 |
CN105847869A (zh) * | 2016-05-24 | 2016-08-10 | 武汉斗鱼网络科技有限公司 | 一种加密播放方法与装置 |
CN106203173A (zh) * | 2016-07-25 | 2016-12-07 | 武汉斗鱼网络科技有限公司 | 一种swf文件的破解防护方法及系统 |
CN106330432A (zh) * | 2016-08-31 | 2017-01-11 | 北京盛世光明软件股份有限公司 | 一种基于des加密算法的加密方法 |
WO2017012097A1 (zh) * | 2015-07-22 | 2017-01-26 | 华为技术有限公司 | 一种密钥系统,密钥客户端,以及密钥管理方法 |
CN106375080A (zh) * | 2016-08-31 | 2017-02-01 | 武汉斗鱼网络科技有限公司 | 一种flash文件的加密及解密方法及其装置 |
CN106933557A (zh) * | 2015-12-29 | 2017-07-07 | 博雅网络游戏开发(深圳)有限公司 | 实现语音播放的方法、装置和系统 |
CN107169319A (zh) * | 2017-03-31 | 2017-09-15 | 武汉斗鱼网络科技有限公司 | 一种对Flash代码进行保护的方法及装置 |
CN107209830A (zh) * | 2014-11-13 | 2017-09-26 | 克丽夫有限公司 | 用于识别并抵抗网络攻击的方法 |
CN109740314A (zh) * | 2018-12-27 | 2019-05-10 | 杭州当虹科技股份有限公司 | 一种swf混淆加密的方法 |
CN111881463A (zh) * | 2020-07-17 | 2020-11-03 | 盛视科技股份有限公司 | 一种串口通信加密方法、系统及串口设备 |
CN113296753A (zh) * | 2021-05-31 | 2021-08-24 | 中电福富信息科技有限公司 | 远程即时内存编译执行加密脚本的信息采集方法及其系统 |
CN117688594A (zh) * | 2024-02-02 | 2024-03-12 | 北京华云安信息技术有限公司 | 数据库加密混淆的方法、装置、设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101222711A (zh) * | 2008-02-02 | 2008-07-16 | 代邦(江西)制卡有限公司 | 支持虚拟sim卡的移动通讯网络系统及其认证方法 |
CN102238002A (zh) * | 2010-04-30 | 2011-11-09 | 国际商业机器公司 | 用于网络通信的动态加密和解密的方法和设备 |
-
2012
- 2012-02-20 CN CN2012100385378A patent/CN102546824A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101222711A (zh) * | 2008-02-02 | 2008-07-16 | 代邦(江西)制卡有限公司 | 支持虚拟sim卡的移动通讯网络系统及其认证方法 |
CN102238002A (zh) * | 2010-04-30 | 2011-11-09 | 国际商业机器公司 | 用于网络通信的动态加密和解密的方法和设备 |
Non-Patent Citations (2)
Title |
---|
《信息技术》 20100331 许伟 "安全技术在Flash通信及传输中的应用" 第121-123页 1-10 , 第3期 * |
许伟: ""安全技术在Flash通信及传输中的应用"", 《信息技术》 * |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103226673A (zh) * | 2013-04-09 | 2013-07-31 | 四三九九网络股份有限公司 | 批量处理swf打散加密方法及装置 |
CN107209830A (zh) * | 2014-11-13 | 2017-09-26 | 克丽夫有限公司 | 用于识别并抵抗网络攻击的方法 |
CN107209830B (zh) * | 2014-11-13 | 2020-07-10 | 克丽夫有限公司 | 用于识别并抵抗网络攻击的方法 |
CN104392153B (zh) * | 2014-12-10 | 2017-12-26 | 北京深思数盾科技股份有限公司 | 一种软件保护方法及系统 |
CN104392153A (zh) * | 2014-12-10 | 2015-03-04 | 北京深思数盾科技有限公司 | 一种软件保护方法及系统 |
CN104618104A (zh) * | 2014-12-15 | 2015-05-13 | 惠州Tcl移动通信有限公司 | 配件、电子设备及实现配件认证的系统 |
WO2017012097A1 (zh) * | 2015-07-22 | 2017-01-26 | 华为技术有限公司 | 一种密钥系统,密钥客户端,以及密钥管理方法 |
CN107851165B (zh) * | 2015-07-22 | 2020-02-21 | 华为技术有限公司 | 一种密钥系统,密钥客户端,以及密钥管理方法 |
CN107851165A (zh) * | 2015-07-22 | 2018-03-27 | 华为技术有限公司 | 一种密钥系统,密钥客户端,以及密钥管理方法 |
CN106933557A (zh) * | 2015-12-29 | 2017-07-07 | 博雅网络游戏开发(深圳)有限公司 | 实现语音播放的方法、装置和系统 |
CN105847238A (zh) * | 2016-03-16 | 2016-08-10 | 杭州狮说教育科技有限公司 | 一种基于rtmp连接的数据安全传输方法 |
CN105847238B (zh) * | 2016-03-16 | 2018-07-17 | 杭州狮说教育科技有限公司 | 一种基于rtmp连接的数据安全传输方法 |
CN105847869A (zh) * | 2016-05-24 | 2016-08-10 | 武汉斗鱼网络科技有限公司 | 一种加密播放方法与装置 |
CN105847869B (zh) * | 2016-05-24 | 2019-06-18 | 武汉斗鱼网络科技有限公司 | 一种加密播放方法与装置 |
CN106203173A (zh) * | 2016-07-25 | 2016-12-07 | 武汉斗鱼网络科技有限公司 | 一种swf文件的破解防护方法及系统 |
CN106203173B (zh) * | 2016-07-25 | 2019-04-05 | 武汉斗鱼网络科技有限公司 | 一种swf文件的破解防护方法及系统 |
CN106330432A (zh) * | 2016-08-31 | 2017-01-11 | 北京盛世光明软件股份有限公司 | 一种基于des加密算法的加密方法 |
CN106375080B (zh) * | 2016-08-31 | 2020-02-07 | 武汉斗鱼网络科技有限公司 | 一种flash文件的加密及解密方法及其装置 |
CN106375080A (zh) * | 2016-08-31 | 2017-02-01 | 武汉斗鱼网络科技有限公司 | 一种flash文件的加密及解密方法及其装置 |
CN107169319A (zh) * | 2017-03-31 | 2017-09-15 | 武汉斗鱼网络科技有限公司 | 一种对Flash代码进行保护的方法及装置 |
CN109740314A (zh) * | 2018-12-27 | 2019-05-10 | 杭州当虹科技股份有限公司 | 一种swf混淆加密的方法 |
CN111881463A (zh) * | 2020-07-17 | 2020-11-03 | 盛视科技股份有限公司 | 一种串口通信加密方法、系统及串口设备 |
CN113296753A (zh) * | 2021-05-31 | 2021-08-24 | 中电福富信息科技有限公司 | 远程即时内存编译执行加密脚本的信息采集方法及其系统 |
CN117688594A (zh) * | 2024-02-02 | 2024-03-12 | 北京华云安信息技术有限公司 | 数据库加密混淆的方法、装置、设备及存储介质 |
CN117688594B (zh) * | 2024-02-02 | 2024-04-16 | 北京华云安信息技术有限公司 | 数据库加密混淆的方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102546824A (zh) | Flash数据传输方法及系统、服务器和客户端 | |
CN103067401B (zh) | 密钥保护方法和系统 | |
CN107086915B (zh) | 一种数据传输方法、数据发送端及数据接收端 | |
US11930103B2 (en) | Method, user device, management device, storage medium and computer program product for key management | |
CN102420821B (zh) | 一种提高文件传输安全性的方法和系统 | |
CN111464301B (zh) | 一种密钥管理方法及系统 | |
CN107454079A (zh) | 基于物联网平台的轻量级设备认证及共享密钥协商方法 | |
CN108683501B (zh) | 基于量子通信网络的以时间戳为随机数的多次身份认证系统和方法 | |
CN103795533A (zh) | 基于标识符的加密、解密的方法及其执行装置 | |
CN104463040A (zh) | 一种密码安全输入方法及系统 | |
WO2017016447A1 (zh) | 二维码掩膜加密和解密方法及系统 | |
CN103401679B (zh) | 一种二维码的加密与解码方法 | |
US20170085543A1 (en) | Apparatus and method for exchanging encryption key | |
CN102024123B (zh) | 一种云计算中虚拟机镜像导入方法及装置 | |
CN105025019A (zh) | 一种数据安全分享方法 | |
TW202121868A (zh) | 資料的加解密方法、裝置、存儲介質及加密文件 | |
CN109033808B (zh) | 一种体验游戏的方法及账号服务端 | |
CN106411926A (zh) | 一种数据加密通信方法及系统 | |
US10404451B2 (en) | Apparatus and method for message communication | |
CN106656490B (zh) | 量子白板数据存储方法 | |
CN102801730A (zh) | 一种用于通讯及便携设备的信息防护方法及装置 | |
CN103338106A (zh) | 文件的加密方法、解密方法、加密装置、以及解密装置 | |
CN108243197A (zh) | 一种数据分发、转发方法及装置 | |
CN105791258A (zh) | 一种数据传输方法、终端及开放平台 | |
CN104486756B (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: 20120704 |