CN101854241A - 一种用于对网络传输的数据块进行验证的方法和装置 - Google Patents
一种用于对网络传输的数据块进行验证的方法和装置 Download PDFInfo
- Publication number
- CN101854241A CN101854241A CN200910048517A CN200910048517A CN101854241A CN 101854241 A CN101854241 A CN 101854241A CN 200910048517 A CN200910048517 A CN 200910048517A CN 200910048517 A CN200910048517 A CN 200910048517A CN 101854241 A CN101854241 A CN 101854241A
- Authority
- CN
- China
- Prior art keywords
- subscriber equipment
- data block
- identification information
- another subscriber
- check value
- 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
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供了一种对网络传输的数据块进行验证的方法和装置。在接收数据块的用户设备端对一个或多个标识信息进行加密以得到密钥,并从所述另一用户设备获取发送端校验值和数据块,然后基于所述密钥对所述数据块进行校验以得到接收端校验值,之后判断所述接收端校验值与所述发送端校验值是否相同或相对应。在发送数据块的用户设备端对一个或多个标识信息进行加密以得到密钥,然后基于所述密钥对所述数据块进行校验以得到发送端校验值,之后将所述数据块和所述发送端校验值发送给所述另一用户设备。在网络服务器端基于所述数据块生成数据块的标识信息,将所述数据块的标识信息发送给所述用户设备和/或所述另一用户设备。本发明能够安全有效地对网络传输的数据块进行验证。
Description
技术领域
本发明涉及数据块校验技术,尤其涉及对网络传输数据块进行验证的方法和装置。
背景技术
当今世界已经进入了信息时代,信息成为一种重要的战略资源。随着互联网的迅猛发展和普及,人们越来越多地利用互联网进行数据块共享、交换和传播,以更方便快捷地获得更多更新的信息。然而,随之带来的数据块验证却仍有待完善和加强。
以基于P2P协议的网络通信为例,得益于其开放性和可扩展性,使得P2P网络中的数据块传播更快速,扩散范围更广。快速和广泛的数据块传播给数据块传输的安全性和正确性提出了更高的要求,然而,受带宽和传输速度的限制,现有技术中并无专门针对基于P2P协议的数据块进行正确性验证的验证技术,或仅对数据块进行简单的加密解密便任由其散布在网络中。
事实证明,在网络上传输未经验证的数据块或仅经过简单验证的数据块是比较危险的。例如,用户设备之间传输的数据块很容易被第三方截取,进而对该数据块进行恶意篡改或注入病毒等,由此可能导致文件缺失或对个人计算机造成侵害,错误的数据块对整个网络的占用会造成网络传输堵塞甚至服务器崩溃,从而导致系统崩溃。特别是在基于P2P协议的视频直播中,由于其数据块的及时性的特点,对数据块安全性的要求更高,尤其针对某些热点视频直播,由于同时观看的人数众多,基于该热点视频的数据块可在短时间内迅速传播至多个用户设备,因此一旦出现错误的数据块,其危害将更加明显。
因此,业内迫切地需要一种更加安全有效的网络传输数据块的验证机制。
发明内容
本发明为了解决现有技术的上述缺陷,提出了一种用于对网络传输的数据块进行验证的方法和装置。根据本发明的一个具体实施例,接收数据块的用户设备(下文中也称接收端)和发送数据块的用户设备(下文中也称发送端)基于相同的一个或多个标识信息来生成密钥,并由发送端根据所述密钥对将要传输的数据块进行校验以得到发送端校验值,发送端将数据块与发送端校验值一同或分别发送给接收端。然后,由接收端根据所述密钥对从发送端发来的数据块进行校验并得到接收端校验值,随后通过判断发送端校验值和接收端校验值是否相同或相对应来判断所接收到的数据块是否为正确的数据块。
优选地,根据本发明的一个具体实施例,还可以由网络服务器通过生成数据块的标识值来辅助对数据块进行校验。
根据本发明的第一方面,提供了一种在用户设备中用于验证从网络中下载的数据块的验证方法,其中,包括:m.对一个或多个标识信息进行加密,得到密钥;i.从所述另一用户设备获取发送端校验值和数据块,在所述步骤a和i之后还包括:x.基于所述密钥对所述数据块进行校验,得到接收端校验值;y.判断所述接收端校验值与所述发送端校验值是否相同或相对应;z.如果所述接收端校验值与所述发送端校验值相同或相对应,则判断该数据块为正确的数据块。
优选地,所述一个或多个标识信息包括以下至少任一项:所述另一用户设备的标识信息;所述用户设备的标识信息;所述数据块的标识信息。
根据本发明的第二方面,提供了一种在用户设备中用于辅助另一用户设备对所述用户设备发出的数据块进行验证的方法,其中,包括:A.对一个或多个标识信息进行加密,得到密钥;B.基于所述密钥对所述数据块进行校验,得到发送端校验值;C.将所述数据块和所述发送端校验值发送给所述另一用户设备。
优选地,所述一个或多个标识信息包括以下至少任一项:所述另一用户设备的标识信息;所述用户设备的标识信息;所述数据块的标识信息。
根据本发明的第三方面,提供了一种在网络服务器中用于辅助一个用户设备对另一用户设备发送的数据块进行验证的方法,其中,包括以下步骤:a.基于所述数据块生成数据块的标识信息;b.将所述数据块的标识信息发送给所述用户设备和/或所述另一用户设备,其中,所述数据块的标识信息用于在所述用户设备和/或另一用户设备中生成密钥。
优选地,所述步骤a还包括如下步骤:利用所述数据块的特征信息生成所述数据块的标识信息。
根据本发明的第四方面,提供了一种在用户设备中用于对来自另一用户设备的数据块进行验证的装置,其中,包括:第一加密装置,用于对一个或多个标识信息进行加密,得到密钥;第一获取装置,用于从所述另一用户设备获取发送端校验值和数据块;第一校验装置,用于基于所述密钥对所述数据块进行校验,得到接收端校验值;第一判断装置,用于判断所述接收端校验值与所述发送端校验值是否相同或相对应,并当所述接收端校验值与所述发送端校验值相同或相对应,判断该数据块为正确的数据块。
优选地,所述一个或多个标识信息包括以下至少任一项:所述另一用户设备的标识信息;所述用户设备的标识信息;所述数据块的标识信息。
根据本发明的第五方面,提供了一种在用户设备中用于辅助另一用户设备对所述用户设备发出的数据块进行验证的装置,其中,包括:第二加密装置,用于对一个或多个标识信息进行加密,得到密钥;第二校验装置,用于基于所述密钥对所述数据块进行校验,得到发送端校验值;第二发送装置,用于将所述发送端校验值发送给所述另一用户设备。
优选地,所述一个或多个标识信息包括以下至少任一项:所述另一用户设备的标识信息;所述用户设备的标识信息;所述数据块的标识信息。
根据本发明的第六方面,提供了一种在网络服务器中用于辅助一个用户设备对另一用户设备发送的数据块进行验证的装置,其中,包括:第三生成装置,用于基于所述数据块生成数据块的标识信息;第四发送装置,用于将所述数据块的标识信息发送给所述用户设备和/或所述另一用户设备,其中,所述数据块的标识信息用于在所述用户设备和/或另一用户设备中生成密钥。
优选地,所述装置还包括:第四生成装置,用于利用所述数据块的特征信息生成所述数据块的标识信息。
通过采用本发明的方法和装置,能够对网络传输数据块的正确性进行快速有效地验证。本发明还特别适用于视频直播中的网络传输数据块的验证。
附图说明
通过阅读以下参照附图所作的对非限制性实施例的详细描述,本发明的其它特征、目的和优点将会变得更明显。
图1是根据本发明的一个具体实施例的网络服务器和多个用户设备基于P2P协议进行通信的网络拓扑结构示意图;
图2是根据本发明的一个具体实施例的发送端、接收端和网络服务器对上述用户设备间传输的数据块进行验证的系统方法流程图;
图3是根据本发明的一个具体实施例的用户设备利用MD5算法对一个或多个标识信息进行加密从而得到密钥,或者用户设备对数据块进行校验从而得到校验值,或者网络服务器利用数据块的特征信息生成所述数据块的标识信息的方法流程图;
图4是根据本发明的一个具体实施例的在用户设备中用于对来自另一用户设备的数据块进行验证的装置的装置结构框图;
图5是根据本发明的一个具体实施例的在用户设备中用于辅助另一用户设备对所述用户设备发出的数据块进行验证的装置的装置结构框图;
图6是根据本发明的一个具体实施例的在网络服务器中用于辅助一个用户设备对另一用户设备发送的数据块进行验证的装置的装置结构框图;
图7是根据本发明的一个具体实施例的用于利用MD5算法对一个或多个标识信息进行加密从而得到密钥,或者对数据块进行校验从而得到校验值,或者利用数据块的特征信息生成所述数据块的标识信息的装置的装置结构框图。
其中,相同的附图标记标识相同或相似的部件。
具体实施方式
以下结合附图对本发明作进一步详细描述,应当理解,本发明的目的之一在于完善和强化数据块的校验机制,并可以适用于服务器/客户端形式的网络以及基于P2P协议的网络。此外,本发明对数据块的内容而言也是透明的,换言之,无论数据块中的数据块是音/视频帧、文本文件还是应用程序的一部分,都能够应用本发明来对其进行优化的校验。本发明典型的应用场景包括视频直播(live)。
本文中将主要针对基于P2P协议的网络进行描述,根据本申请文件的教导,本领域技术人员能够不经任何创造性劳动地在服务器/客户端(C/S)形式的网络中实现本发明,解决上述技术问题,并产生预期的技术效果。
图1示出了根据本发明的一个具体实施例网络服务器和多个用户设备基于P2P协议进行通信的网络拓扑结构示意图。图中列出了网络服务器A,用户设备1和用户设备2。为方便说明,在本实施例中仅以验证两个用户设备之间传输的数据块为例进行说明,但本领域技术人员理解,本发明的技术方案对用户设备的个数没有限制,在实际应用中,如果需要下载数据块的用户设备可以根据资源配置的优先级顺序同时从多个对等用户设备请求下载所需数据块,则只需要接收端与各个发送端分别实现本发明即可实现较高的安全性。此外,一个用户设备在作为接收端来接收一个数据块的同时,可能同时在作为发送端来发送另一个数据块。
在图1中,网络服务器A为在基于P2P协议的网络中提供各种数据块的源端主机,用户设备1是作为接收端的通信节点,用户设备2是作为发送端的通信节点。
图2示出了根据本发明的一个具体实施例,发送端、接收端和网络服务器对上述用户设备间传输的数据块进行验证的系统方法流程图。其中,在基于P2P协议的网络中,所述数据块典型地为一个或多个数据分片,例如,实时流媒体业务中的流媒体数据块分片,VOD业务中的媒体文件分片,应用程序安装文件的一个分片。本文中,不加区分地将包括上述在内的各种分片统称为数据分片。
以下参照图2结合图1,基于本发明最优选的但非限定性的具体实施例,对本发明提供的用于对网络传输的数据块进行验证的方法进行说明。
其中,在数据块的内容为多媒体文件的情形中,基于数据块和数据块的标识信息的映射表可以如下表1所示:
表1:基于数据块和数据块的标识信息的映射表
数据块 | 数据块的标识信息 |
媒体文件《乱世佳人》数据分片28 | L28 |
媒体文件《人文奥运》数据分片1 | R1 |
实时流媒体文件《十六大》数据分片5 | S5 |
媒体文件《机器猫》数据分片12 | J12 |
...... | ...... |
其中,假设在本实施例中,用户设备1希望从用户设备2获取的数据块为视频直播《十六大》数据块分片5(为方便描述,以下简称“数据分片5”),用户设备1和用户设备2生成密钥所基于的标识信息包括用户设备1的标识信息、用户设备2的标识信息和数据分片5的标识信息。
首先,在步骤S31中,网络服务器3可以预先根据各种数据块生成各种数据块的标识信息,并以影射表(如表1所示)的形式预存在网络服务器3中,不失一般性地,用户设备1和用户设备2先向网络服务器3发送下载数据分片5的GUID的请求,则网络服务器3向应该请求查询表1,其中,所需数据分片5所对应的标识信息为S5。
接着,在步骤S32中,网络服务器3将S5发送给用户设备1和用户设备2,则用户设备1和用户设备2相应地获得了S5。需要说明的是,用户设备1和用户设备2并非必须从网络服务器3获得S5,可选地,用户设备1和用户设备2还可以从拥有该S5的对等用户设备获取。或者,网络服务器3可以将S5发送给用户设备1或用户设备2,用户设备1或用户设备2进一步地将S5发送给用户设备2或1。或者,网络服务器3可以定期将最新的基于各种数据块和所述各种数据块对应的标识信息的映射表发送给用户设备1和用户设备2,则用户设备1和用户设备2可以根据所需数据块自行在本机查找该映射表以获得所需的数据块的标识信息。
在步骤S32之后,需要执行的是步骤S11和S21,虽然下文将以先执行步骤S11后执行S21为例进行说明,但是本领域技术人员应该理解,步骤S11和S21的执行并没有必然的先后顺序。
需要说明的是,由于本实施例中用户设备1和用户设备2生成密钥所基于的标识信息包括包括用户设备1的标识信息、用户设备2的标识信息,则所述步骤S11和步骤S23(下文将对S23进行详细介绍)之前还包括如下步骤:用户设备1获取用户设备1的标识信息。
并且,在所述步骤S21前还包括如下步骤:用户设备2获取用户设备2的标识信息,然后向用户设备1发送握手请求,用户设备1确认该握手请求,用户设备2将用户设备2的标识信息发送给用户设备1,则用户设备1相应地获得了所述用户设备2的标识信息。
不失一般性地,用户设备1和用户设备2的标识信息可由网络服务器3统一生成并分别分配给用户设备1和用户设备2,也可由用户设备1和用户设备2在本地自行生成。
接下来对步骤S11进行说明,在步骤S11中,用户设备1对用户设备1的标识信息、用户设备2的标识信息和S5进行加密,得到密钥,所述密钥将用于基于从用户设备2下载的数据块来在用户设备1中生成接收端校验值。其中,所述一个或多个标识信息为相关对象,例如设备、数据块内容甚至信道等,在一定范围内(在本实施例中,其为基于P2P协议的网络)中具有唯一性的标签或标记信息。
典型地,用户设备1对所述标识信息进行加密的加密规则包括但不限于MD5算法(Message-Digest Algorithm 5,信息-摘要算法),CRC(Cyclical Redundancy Check,循环冗余码校验),SHA(Secure HashAlgorithm,安全散列算法)和Hash(哈希算法)。在本实施例中,不失一般性地采用MD5算法,MD5算法的核心在于能够将任意长度的字符串经过一系列演算,从而使其变换成一个128比特的长整数,其可以实现即使知道源程序和算法描述,也无法将一个MD5值还原成原始的字符串。
下面结合S11的一个详细内部流程图对其做详细介绍。其中,图3示出了根据本发明的一个具体实施例的作为接收端的用户设备利用MD5算法对一个或多个标识信息进行加密从而得到密钥的方法流程图,具体的加密过程如下:
首先,在步骤S111中,将基于用户设备1的标识信息、用户设备2的标识信息和S5的字符串进行初始分组处理,每个分组通常为512位,接着分别再将每个分组进一步划分为16个32位的分组。
然后,在步骤S112中,对分组后的子分组变量进行“填充”,使其字节长度对512求余的结果等于448(即N*512+448,N为一个正整数),具体地,在该分组数据块的最后位尾部填充一个“1”和多个“0”直至满足上述条件,之后在该结果后面添加一个以64位二进制表示的填充前信息长度,此时的子分组数据块的字节长度等于N*512+448+64=(N+1)*512。
最后,在步骤S113中,设定四个32位的被称为链接变量(ChainingVariable)的整数参数A、B、C、D,并对“填充”后的子分组变量进行四轮循环计算(共64步)。
具体地,首先将四个链接变量复制到另外四个变量中:a=A,b=B,c=C,d=D。
然后,将四个变量中的任意三个变量做一次非线形函数运算(假设所述非线形函数分别为F(x,y,z)、G(x,y,z)、H(x,y,z)和I(x,y,z)),然后将所得结果加上第四个变量、一个子分组(假设Mj表示第j个子分组,j=0,1......15)和一个随机常数(假设所述随机常数为ti,其中,ti在每步运算中的值不同,不失一般性地,在第i步中,ti是4294967296×abs(sin(i))的整数部分),再将所得叠加值向右移动不定位(假设所述不定位为s,其中,s在每步运算中的值不同),并加上上述四个变量其中之一,用所得换算值覆盖所述四个变量其中之一。假设FF(a,b,c,d,Mj,s,ti)表示a=b+((a+(F(b,c,d)+Mj+ti)<<s,GG(a,b,c,d,Mj,s,ti)表示a=b+((a+(G(b,c,d)+Mj+ti)<<s,HH(a,b,c,d,Mj,s,ti)表示a=b+((a+(H(b,c,d)+Mj+ti)<<s,II(a,b,c,d,Mj,s,ti)表示a=b+((a+(I(b,c,d)+Mj+ti)<<s,则四轮循环计算具体如下:
第一轮:FF(a,b,c,d,M0,s,ti);FF(d,a,b,c,M1,s,ti);FF(c,d,a,b,M2,s,ti);FF(b,c,d,a,M3,s,ti);FF(a,b,c,d,M4,s,ti);FF(d,a,b,c,M5,s,ti);FF(c,d,a,b,M6,s,ti);FF(b,c,d,a,M7,s,ti);FF(a,b,c,d,M8,s,ti);FF(d,a,b,c,M9,s,ti);FF(c,d,a,b,M10,s,ti);FF(b,c,d,a,M11,s,ti);FF(a,b,c,d,M12,s,ti);FF(d,a,b,c,M13,s,ti);FF(c,d,a,b,M14,s,ti);FF(b,c,d,a,M15,s,ti)。
第二轮:GG(a,b,c,d,M1,s,ti);GG(d,a,b,c,M6,s,ti);GG(c,d,a,b,M11,s,ti);GG(b,c,d,a,M0,s,ti);GG(a,b,c,d,M5,s,ti);GG(d,a,b,c,M10,s,ti);GG(c,d,a,b,M15,s,ti);GG(b,c,d,a,M4,s,ti);GG(a,b,c,d,M9,s,ti);GG(d,a,b,c,M14,s,ti);GG(c,d,a,b,M3,s,ti);GG(b,c,d,a,M8,s,ti);GG(a,b,c,d,M13,s,ti);GG(d,a,b,c,M2,s,ti);GG(c,d,a,b,M7,s,ti);GG(b,c,d,a,M12,s,ti)。
第三轮:HH(a,b,c,d,M5,s,ti);HH(d,a,b,c,M8,s,ti);HH(c,d,a,b,M11,s,ti);HH(b,c,d,a,M14,s,ti);HH(a,b,c,d,M1,s,ti);HH(d,a,b,c,M4,s,ti);HH(c,d,a,b,M7,s,ti);HH(b,c,d,a,M10,s,ti);HH(a,b,c,d,M13,s,ti);HH(d,a,b,c,M0,s,ti);HH(c,d,a,b,M3,s,ti);HH(b,c,d,a,M6,s,ti 5);HH(a,b,c,d,M9,s,ti);HH(d,a,b,c,M12,s,ti);HH(c,d,a,b,M15,s,ti);HH(b,c,d,a,M2,s,ti)。
第四轮:II(a,b,c,d,M0,s,ti);II(d,a,b,c,M7,s,ti);II(c,d,a,b,M14,s,ti);II(b,c,d,a,M5,s,ti);II(a,b,c,d,M12,s,ti);II(d,a,b,c,M3,s,ti);II(c,d,a,b,M10,s,ti);II(b,c,d,a,M1,s,ti);II(a,b,c,d,M8,s,ti);II(d,a,b,c,M15,s,ti);II(c,d,a,b,M6,s,ti);II(b,c,d,a,M13,s,ti);II(a,b,c,d,M4,s,ti);II(d,a,b,c,M11,s,ti);II(c,d,a,b,M2,s,ti);II(b,c,d,a,M9,s,ti)。
最后,将所述四个链接变量A、B、C、D分别加上四个变量a、b、c、d,并继续用下一分组数据块继续进行上述循环计算,最后输出的四个链接变量的级联即为MD5值,在本具体实施例中,将所述MD5值作为步骤S11中得到的密钥。
需要说明的是,在本实施例中所采用的MD5算法可以被本领域技术人员采用任何已知的或将来出现的算法规则进行替换,其并不能用于限定本发明的保护范围。
接下来对步骤S21进行说明,在步骤S21中,用户设备2对用户设备1的标识信息、用户设备2的标识信息和S5进行加密,得到密钥。同样,对上述标识信息进行加密的加密规则包括但不限于MD5,CRC,SHA和Hash。假设在本实施例中采取MD5算法(其具体过程请结合附图3参见上文中对用户设备1采用MD5算法生成密钥的过程的具体算法描述,为简明起见,此处不再赘述),则所述密钥典型地为一个MD5值。
接着,在步骤S22中,用户设备2基于所述密钥对所述数据分片5进行校验,得到发送端校验值。典型地,对上述数据块进行校验的校验规则包括但不限于MD5,CRC,SHA和Hash。更典型地,在本实施例中采取MD5算法(其具体过程请结合附图3参见上文中对用户设备1采用MD5算法生成密钥的过程的具体算法描述,为简明起见,此处不再赘述),则所述发送端校验值典型地为一个MD5值。
在步骤S23中,用户设备2将数据分片5和在步骤S22中获得的发送端校验值发送给所述用户设备1,则用户设备1相应地获得了该数据分片5和该发送端校验值。其中,数据分片5和发送端校验值可以被一同或分别地发送给用户设备1,例如,用户设备2可将所述数据块分片5和发送端校验值压缩为一个数据包(例如报文)发送给用户设备1。可选地,用户设备2还可以将所述发送端校验值设置于数据块分片5的头部/尾部/中部,从而使所述数据块分片5和发送端校验值成为一个数据块集合,并将其发送给用户设备1。
在所述步骤S22之前还包括如下步骤:用户设备1向用户设备2发送握手请求,用户设备2确认该握手请求,用户设备1将用户设备1的标识信息发送给用户设备2。
在步骤S22之后执行S13,在所述步骤S13中,所述用户设备1基于在所述步骤S11中生成的密钥对从用户设备2获得的数据块分片5进行校验,得到接收端校验值。典型地,对所述数据块进行校验的校验规则包括但不限于MD5,CRC,SHA和Hash。更典型地,在本实施例中采用的为MD5算法(其具体过程请结合附图3参见上文中对用户设备1采用MD5算法生成密钥的过程的具体算法描述,为简明起见,此处不再赘述),则所述接收端校验值典型地为一个MD5值。
接着,在步骤S14中,所述用户设备1比较在步骤S23中获得的发送端校验值与在步骤S13中生成的所述接收端校验值,判断两者是否相同或相应。
最后,在步骤S15中,如果发送端校验值与所述接收端校验值相同或相对应,用户设备1则判断该数据分片5为可以信任的正确的数据块,从而将其中的数据帧放入播放器中进行解码并播放,反之则判断该数据分片5为错误的数据块,从而将其丢弃,并执行相关操作,如请求重传或继续向其他对等用户设备请求下载其他数据分片。其中,是否需要执行对错误的数据分片进行重传的相关操作可以基于系统的预先配置,以本实施例中的实时流媒体数据分片5为例,由于重传可能导致视频直播的延时,考虑到用户体验可以不重传,而是直接下载后续的数据分片放入播放器中进行解码并播放。但是,如以应用文件为例,由于其缺少其中任何一个数据分片则无法运行,则必须请求重传,不失一般性地,如果认为现有通信链路不安全,也可以向其他拥有该数据分片的源请求下载。
进一步地,本实施例还有其他变形例,其中,所述标识信息包括用户设备1的标识信息、用户设备2的标识信息和数据分片5的标识信息中的任一个或任两个。
进一步地,用户设备1的标识信息可为用户设备1的GUID(GlobalUnique Identifier,全局唯一标识符,通过特定的算法为特定对象生成的唯一的标识码),用户设备2的标识信息可为用户设备2的GUID,数据分片5的标识信息可为数据分片5的GUID。其中,数据分片5的GUID是调用GUID函数生成的。本领域技术人员应该理解,上述GUID码均可被任何已知或将来的相关技术中可以用于实现在一定范围内相关对象的唯一性的标签或标记信息替换,例如,用户设备的MAC(MediaAccess Control,介质访问控制)地址,用户设备中CPU的ID等。
此外,网络服务器3还可以利用数据块的特征信息生成所述数据块的标识信息。不失一般性地,当所述数据块典型地为流媒体数据分片时,所述特征信息可包括其压缩格式(包括但不限于ASF,n AVI,AVI,MPEG,DIVX,QuickTime,Real Video,RMVB等),可选地,当所述数据块典型地为文件或者一个或多个文件分片时,所述特征信息可包括文件名、文件属性,文件长度和文件生成时间。在本实施例中,不失一般性地,可以利用MD5算法对基于数据块分片5的压缩格式ASF的字符串生成该数据分片5的标识信息,或者,可以利用MD5算法对基于数据块分片5及其压缩格式ASF的字符串生成该数据分片5的标识信息,则所述数据分片5的标识信息典型地为一个MD5值。
图1示出了根据本发明的一个具体实施例网络服务器和多个用户设备基于P2P协议进行通信的网络拓扑结构示意图;图4示出了根据本发明的一个具体实施例的在用户设备中用于对来自另一用户设备的数据块进行验证的装置(以下简称为接收端验证装置10)的装置结构框图;图5示出了根据本发明的一个具体实施例的在用户设备中用于辅助另一用户设备对所述用户设备发出的数据块进行验证的装置(以下简称为发送端验证装置20)的装置结构框图;图6示出了根据本发明的一个具体实施例的在网络服务器中用于辅助一个用户设备对另一用户设备发送的数据块进行验证的装置(以下简称为网络服务器验证装置30)的装置结构框图。在本实施例中,接收端验证装置10设置于用户设备1中,其至少包括第一加密装置101、第一获取装置102、第一校验装置103、第一判断装置104;发送端验证装置20设置于用户设备2中,其至少包括第二加密装置201、第二校验装置202、第二发送装置203;网络服务器验证装置30设置于网络服务器3中,其至少包括第一生成装置301、第四发送装置302。
以下结合图1和图4~图6,基于本发明最优选的但非限定性的具体实施例,对本发明提供的用于对网络传输的数据块进行验证的装置进行说明。其中,在基于P2P协议的网络中,所述数据块典型地为一个或多个数据分片,例如,实时流媒体业务中的流媒体数据块分片,VOD业务中的媒体文件分片,应用程序安装文件的一个分片。本文中,不加区分地将包括上述在内的各种分片统称为数据分片。
其中,在数据块的内容为多媒体文件的情形中,基于数据块和数据块的标识信息的映射表可以如下表1所示:
表1:基于数据块和数据块的标识信息的映射表
数据块 | 数据块的标识信息 |
媒体文件《乱世佳人》数据分片28 | L28 |
媒体文件《人文奥运》数据分片1 | R1 |
实时流媒体文件《十六大》数据分片5 | S5 |
媒体文件《机器猫》数据分片12 | J12 |
数据块 | 数据块的标识信息 |
...... | ...... |
其中,假设在本实施例中,用户设备1希望从用户设备2获取的数据块为视频直播《十六大》数据块分片5(为方便描述,以下简称“数据分片5”),接收端验证装置10和发送端验证装置20生成密钥所基于的标识信息包括用户设备1的标识信息、用户设备2的标识信息和数据分片5的标识信息。
首先,网络服务器验证装置30可以预先根据各种数据块生成各种数据块的标识信息,并以影射表(如表1所示)的形式预存在网络服务器3中,其中,第三生成装置301用于基于数据分片5生成所述数据分片5的标识信息S5,不失一般性地,接收端验证装置10和发送端验证装置20先向网络服务器验证装置30发送下载数据分片5的GUID的请求,则网络服务器验证装置30响应该请求查询表1,其中,所需数据分片5所对应的标识信息为S5。
接着,第四发送装置302将S5发送给接收端验证装置10和发送端验证装置20,则第二获取装置105和第四获取装置204相应地获得了S5。需要说明的是,接收端验证装置10和发送端验证装置20并非必须从网络服务器验证装置30获得S5,可选地,接收端验证装置10和发送端验证装置20还可以从拥有该S5的对等用户设备获取。或者,网络服务器验证装置30可以将S5发送给接收端验证装置10或发送端验证装置20,接收端验证装置10或发送端验证装置20进一步地将S5发送给发送端验证装置20或接收端验证装置10。或者,网络服务器验证装置30可以定期将最新的基于各种数据块和所述各种数据块对应的标识信息的映射表发送给接收端验证装置10和发送端验证装置20,则接收端验证装置10和发送端验证装置20可以根据所需数据块自行在本机查找该映射表以获得所需的数据块的标识信息。
其中,接收端验证装置10还包括第四获取装置,其用于获取用户设备1的标识信息。
其中,发送端验证装置还包括第七获取装置和第三发送装置207,所述第七获取装置用于获取用户设备2的标识信息,其207用于向用户设备1发送握手请求,其还用于将用户设备2的标识信息发送给接收端验证装置10。接收端验证装置10还包括第三获取装置106,其用于确认该握手请求,其还用于从发送端验证装置20获取所述用户设备2的标识信息。
不失一般性地,用户设备1和用户设备2的标识信息可由网络服务器验证装置30统一生成并分别分配给接收端验证装置10和发送端验证装置20,也可由接收端验证装置10和发送端验证装置20在本地自行生成。
第一加密装置101用于对用户设备1的标识信息、用户设备2的标识信息和S5进行加密,得到密钥,所述密钥将用于基于从用户设备2下载的数据块来在用户设备1中生成接收端校验值。其中,所述一个或多个标识信息为相关对象,例如设备、数据块内容甚至信道等,在一定范围内(在本实施例中,其为基于P2P协议的网络)中具有唯一性的标签或标记信息。
典型地,第一加密装置101对所述标识信息进行加密的加密规则包括但不限于MD5算法(Message-Digest Algorithm 5,信息-摘要算法),CRC(Cyclical Redundancy Check,循环冗余码校验),SHA(Secure HashAlgorithm,安全散列算法)和Hash(哈希算法)。在本实施例中,不失一般性地采用MD5算法,MD5算法的核心在于能够将任意长度的字符串经过一系列演算,从而使其变换成一个128比特的长整数,其可以实现即使知道源程序和算法描述,也无法将一个MD5值还原成原始的字符串。
下面结合第一加密装置中的一个加密校验装置的装置结构框图对其做详细介绍。其中,图7示出了根据本发明的一个具体实施例的用于利用MD5算法对一个或多个标识信息进行加密从而得到密钥的装置的装置(以下简称为加密校验装置40)结构框图,所述加密校验装置用于:
首先,将基于用户设备1的标识信息、用户设备2的标识信息和S5的字符串进行初始分组处理,每个分组通常为512位,接着分别再将每个分组进一步划分为16个32位的分组。
然后,对分组后的子分组变量进行“填充”,使其字节长度对512求余的结果等于448(即N*512+448,N为一个正整数),具体地,在该分组数据块的最后位尾部填充一个“1”和多个“0”直至满足上述条件,之后在该结果后面添加一个以64位二进制表示的填充前信息长度,此时的子分组数据块的字节长度等于N*512+448+64=(N+1)*512。
最后,设定四个32位的被称为链接变量(Chaining Variable)的整数参数A、B、C、D,并对“填充”后的子分组变量进行四轮循环计算(共64步)。
具体地,首先将四个链接变量复制到另外四个变量中:a=A,b=B,c=C,d=D。
然后,将四个变量中的任意三个变量做一次非线形函数运算(假设所述非线形函数分别为F(x,y,z)、G(x,y,z)、H(x,y,z)和I(x,y,z)),然后将所得结果加上第四个变量、一个子分组(假设Mi表示第j个子分组,j=0,1......15)和一个随机常数(假设所述随机常数为ti,其中,ti在每步运算中的值不同,不失一般性地,在第i步中,ti是4294967296×abs(sin(i))的整数部分),再将所得叠加值向右移动不定位(假设所述不定位为s,其中,s在每步运算中的值不同),并加上上述四个变量其中之一,用所得换算值覆盖所述四个变量其中之一。假设FF(a,b,c,d,Mj,s,ti)表示a=b+((a+(F(b,c,d)+Mj+ti)<<s,GG(a,b,c,d,Mj,s,ti)表示a=b+((a+(G(b,c,d)+Mj+ti)<<s,HH(a,b,c,d,Mj,s,ti)表示a=b+((a+(H(b,c,d)+Mj+ti)<<s,II(a,b,c,d,Mj,s,ti)表示a=b+((a+(I(b,c,d)+Mj+ti)<<s,则四轮循环计算具体如下:
第一轮:FF(a,b,c,d,M0,s,ti);FF(d,a,b,c,M1,s,ti);FF(c,d,a,b,M2,s,ti);FF(b,c,d,a,M3,s,ti);FF(a,b,c,d,M4,s,ti);FF(d,a,b,c,M5,s,ti);FF(c,d,a,b,M6,s,ti);FF(b,c,d,a,M7,s,ti);FF(a,b,c,d,M8,s,ti);FF(d,a,b,c,M9,s,ti);FF(c,d,a,b,M10,s,ti);FF(b,c,d,a,M11,s,ti);FF(a,b,c,d,M12,s,ti);FF(d,a,b,c,M13,s,ti);FF(c,d,a,b,M14,s,ti);FF(b,c,d,a,M15,s,ti)。
第二轮:GG(a,b,c,d,M1,s,ti);GG(d,a,b,c,M6,s,ti);GG(c,d,a,b,M11,s,ti);GG(b,c,d,a,M0,s,ti);GG(a,b,c,d,M5,s,ti);GG(d,a,b,c,M10,s,ti);GG(c,d,a,b,M15,s,ti);GG(b,c,d,a,M4,s,ti);GG(a,b,c,d,M9,s,ti);GG(d,a,b,c,M14,s,ti);GG(c,d,a,b,M3,s,ti);GG(b,c,d,a,M8,s,ti);GG(a,b,c,d,M13,s,ti);GG(d,a,b,c,M2,s,ti);GG(c,d,a,b,M7,s,ti);GG(b,c,d,a,M12,s,ti)。
第三轮:HH(a,b,c,d,M5,s,ti);HH(d,a,b,c,M8,s,ti);HH(c,d,a,b,M11,s,ti);HH(b,c,d,a,M14,s,ti);HH(a,b,c,d,M1,s,ti);HH(d,a,b,c,M4,s,ti);HH(c,d,a,b,M7,s,ti);HH(b,c,d,a,M10,s,ti);HH(a,b,c,d,M13,s,ti);HH(d,a,b,c,M0,s,ti);HH(c,d,a,b,M3,s,ti);HH(b,c,d,a,M6,s,ti 5);HH(a,b,c,d,M9,s,ti);HH(d,a,b,c,M12,s,ti);HH(c,d,a,b,M15,s,ti);HH(b,c,d,a,M2,s,ti)。
第四轮:II(a,b,c,d,M0,s,ti);II(d,a,b,c,M7,s,ti);II(c,d,a,b,M14,s,ti);II(b,c,d,a,M5,s,ti);II(a,b,c,d,M12,s,ti);II(d,a,b,c,M3,s,ti);II(c,d,a,b,M10,s,ti);II(b,c,d,a,M1,s,ti);II(a,b,c,d,M8,s,ti);II(d,a,b,c,M15,s,ti);II(c,d,a,b,M6,s,ti);II(b,c,d,a,M13,s,ti);II(a,b,c,d,M4,s,ti);II(d,a,b,c,M11,s,ti);II(c,d,a,b,M2,s,ti);II(b,c,d,a,M9,s,ti)。
最后,将所述四个链接变量A、B、C、D分别加上四个变量a、b、c、d,并继续用下一分组数据块继续进行上述循环计算,最后输出的四个链接变量的级联即为MD5值,在本具体实施例中,将所述MD5值作为步骤S11中得到的密钥。
需要说明的是,在本实施例中所采用的MD5算法可以被本领域技术人员采用任何已知的或将来出现的算法规则进行替换,其并不能用于限定本发明的保护范围。
第二加密装置201对用户设备1的标识信息、用户设备2的标识信息和S5进行加密,得到密钥。同样,对上述标识信息进行加密的加密规则包括但不限于MD5,CRC,SHA和Hash。假设在本实施例中采取MD5算法(其具体过程请结合附图7参见上文中利用MD5算法对一个或多个标识信息进行加密从而得到密钥的装置的功能描述,为简明起见,此处不再赘述),则所述密钥典型地为一个MD5值。
然后,第二校验装置202基于所述密钥对所述数据分片5进行校验,得到发送端校验值。典型地,对上述数据块进行校验的校验规则包括但不限于MD5,CRC,SHA和Hash。更典型地,在本实施例中采取MD5算法(其具体过程请结合附图7参见上文中利用MD5算法对一个或多个标识信息进行加密从而得到密钥的装置的功能描述,为简明起见,此处不再赘述),则所述发送端校验值典型地为一个MD5值。
接着,第二发送装置203将数据分片5和从第二校验装置202获得的发送端校验值发送给接收端校验装置10,则第一获取装置102相应地获得了该数据分片5和该发送端校验值。其中,数据分片5和发送端校验值可以被一同或分别地发送给接收端校验装置10,例如,第二发送装置203可将所述数据块分片5和发送端校验值压缩为一个数据包(例如报文)发送给接收端校验装置10。可选地,第二发送装置203还可以将所述发送端校验值设置于数据块分片5的头部/尾部/中部,从而使所述数据块分片5和发送端校验值成为一个数据块集合,并将其发送给接收端校验装置10。
接收端验证装置10还包括第一发送装置108,其用于向发送端验证装置20发送握手请求,发送端验证装置20确认该握手请求,第一发送装置108还用于将用户设备1的标识信息发送给发送端验证装置20。
然后,第一校验装置103基于由第一加密装置101生成的密钥对从发送端校验装置20获得的数据块分片5进行校验,得到接收端校验值。典型地,对所述数据块进行校验的校验规则包括但不限于MD5,CRC,SHA和Hash。更典型地,在本实施例中采用的为MD5算法(其具体过程请结合附图7参见上文中利用MD5算法对一个或多个标识信息进行加密从而得到密钥的装置的功能描述,为简明起见,此处不再赘述),则所述接收端校验值典型地为一个MD5值。
接着,第一判断装置104用于比较从发送端校验装置20获得的发送端校验值与由第一校验装置103生成的所述接收端校验值,判断两者是否相同或相应。如果发送端校验值与所述接收端校验值相同或相对应,第一判断装置还用于判断该数据分片5为可以信任的正确的数据块,从而用户设备1则将其中的数据帧放入播放器中进行解码并播放,反之则第一判断装置104则判断该数据分片5为错误的数据块,从而用户设备1将其丢弃,并执行相关操作,如请求重传或继续向其他对等用户设备请求下载其他数据分片。其中,是否需要执行对错误的数据分片进行重传的相关操作可以基于系统的预先配置,以本实施例中的实时流媒体数据分片5为例,由于重传可能导致视频直播的延时,考虑到用户体验可以不重传,而是直接下载后续的数据分片放入播放器中进行解码并播放。但是,如以应用文件为例,由于其缺少其中任何一个数据分片则无法运行,则必须请求重传,不失一般性地,如果认为现有通信链路不安全,也可以向其他拥有该数据分片的源请求下载。
进一步地,本实施例还有其他变形例,其中,所述标识信息包括用户设备1的标识信息、用户设备2的标识信息和数据分片5的标识信息中的任一个或任两个。
进一步地,用户设备1的标识信息可为用户设备1的GUID(GlobalUnique Identifier,全局唯一标识符,通过特定的算法为特定对象生成的唯一的标识码),用户设备2的标识信息可为用户设备2的GUID,数据分片5的标识信息可为数据分片5的GUID。其中,数据分片5的GUID是调用GUID函数生成的。本领域技术人员应该理解,上述GUID码均可被任何已知或将来的相关技术中可以用于实现在一定范围内相关对象的唯一性的标签或标记信息替换,例如,用户设备的MAC(MediaAccess Control,介质访问控制)地址,用户设备中CPU的ID等。
此外,网络服务器验证装置30还包括第二生成装置303,其用于利用数据块的特征信息生成所述数据块的标识信息。不失一般性地,当所述数据块典型地为流媒体数据分片时,所述特征信息可包括其压缩格式(包括但不限于ASF,n AVI,AVI,MPEG,DIVX,QuickTime,RealVideo,RMVB等),可选地,当所述数据块典型地为文件或者一个或多个文件分片时,所述特征信息可包括文件名、文件属性,文件长度和文件生成时间。在本实施例中,不失一般性地,所述第二生成装置可以包括如图7所示的加密校验装置,其可以利用MD5算法对基于数据块分片5的压缩格式ASF的字符串生成该数据分片5的标识信息,或者,可以利用MD5算法对基于数据块分片5及其压缩格式ASF的字符串生成该数据分片5的标识信息,则所述数据分片5的标识信息典型地为一个MD5值。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在所附权利要求的范围内做出各种变形或修改。
Claims (40)
1.一种在用户设备中用于对来自另一用户设备的数据块进行验证的方法,其中,包括:
m.对一个或多个标识信息进行加密,得到密钥;以及,
i.从所述另一用户设备获取发送端校验值和数据块,
在所述步骤m和i之后还包括:
x.基于所述密钥对所述数据块进行校验,得到接收端校验值;
y.判断所述接收端校验值与所述发送端校验值是否相同或相对应;
z.如果所述接收端校验值与所述发送端校验值相同或相对应,则判断该数据块为正确的数据块。
2.根据权利要求1所述的方法,其特征在于,所述一个或多个标识信息包括以下至少任一项:
-所述另一用户设备的标识信息;
-所述用户设备的标识信息;
-所述数据块的标识信息。
3.根据权利要求2所述的方法,其特征在于,所述另一用户设备的标识信息为所述另一用户设备的GUID,所述用户设备的标识信息为所述用户设备的GUID,所述数据块的标识信息为所述数据块的GUID。
4.根据权利要求2所述的方法,其特征在于,当所述一个或多个标识信息包括所述数据块的标识信息时,所述步骤m之前还包括如下步骤:
-获取所述数据块的标识信息。
5.根据权利要求2所述的方法,其特征在于,当所述一个或多个标识信息包括所述另一用户设备的标识信息时,所述步骤m之前还包括如下步骤:
-从所述另一用户设备获取所述另一用户设备的标识信息。
6.根据权利要求2所述的方法,其特征在于,当所述一个或多个标识信息包括所述用户设备的标识信息时,所述步骤m和i之前还包括如下步骤:
-获得所述用户设备的标识信息,
在所述步骤i之前还包括如下步骤:
-将所述用户设备的标识信息发送给所述另一用户设备。
7.根据权利要求1所述的方法,其特征在于,对所述标识信息进行加密的加密规则和对所述数据块进行校验的校验规则包括以下任一项:
-MD5;
-CRC;
-SHA;
-Hash。
8.根据权利要求1所述的方法,其特征在于,所述数据块包括基于点对点协议传输的数据块。
9.一种在用户设备中用于辅助另一用户设备对所述用户设备发出的数据块进行验证的方法,其中,包括:
A.对一个或多个标识信息进行加密,得到密钥;
B.基于所述密钥对所述数据块进行校验,得到发送端校验值;
C.将所述数据块和所述发送端校验值发送给所述另一用户设备。
10.根据权利要求9所述的方法,其特征在于,所述一个或多个标识信息包括以下至少任一项:
-所述另一用户设备的标识信息;
-所述用户设备的标识信息;
-所述数据块的标识信息。
11.根据权利要求10所述的方法,其特征在于,所述另一用户设备的标识信息为所述另一用户设备的GUID,所述用户设备的标识信息为所述用户设备的GUID,所述数据块的标识信息为所述数据块的GUID。
12.根据权利要求10所述的方法,其特征在于,当所述一个或多个标识信息包括所述数据块的标识信息时,所述步骤A之前还包括如下步骤:
-获取所述数据块的标识信息。
13.根据权利要求10所述的方法,其特征在于,当所述一个或多个标识信息包括所述另一用户设备的标识信息时,所述步骤A之前还包括如下步骤:
-从所述另一用户设备获取所述另一用户设备的标识信息。
14.根据权利要求10所述的方法,其特征在于,当所述一个或多个标识信息包括所述用户设备的标识信息时,所述步骤A之前还包括如下步骤:
-获取所述用户设备的标识信息;
-将所述用户设备的标识信息发送给所述另一用户设备。
15.根据权利要求9所述的方法,其特征在于,对所述一个或多个标识信息进行加密的加密规则和对所述数据块进行校验的校验规则包括以下任一项:
-MD5;
-CRC;
-SHA;
-Hash。
16.根据权利要求9所述的方法,其特征在于,所述数据块包括基于点对点协议传输的数据块。
17.一种在网络服务器中用于辅助一个用户设备对另一用户设备发送的数据块进行验证的方法,其中,包括以下步骤:
a.基于所述数据块生成数据块的标识信息;
b.将所述数据块的标识信息发送给所述用户设备和/或所述另一用户设备,其中,所述数据块的标识信息用于在所述用户设备和/或另一用户设备中生成密钥。
18.根据权利要求17所述的方法,其特征在于,所述数据块的标识信息为所述数据块的GUID。
19.根据权利要求17所述的方法,其特征在于,所述步骤a还包括如下步骤:
-利用所述数据块的特征信息生成所述数据块的标识信息。
20.根据权利要求17所述的方法,其特征在于,所述数据块包括基于点对点协议传输的数据块。
21.一种在用户设备中用于对来自另一用户设备的数据块进行验证的装置,其中,包括:
第一加密装置,用于对一个或多个标识信息进行加密,得到密钥;
第一获取装置,用于从所述另一用户设备获取发送端校验值和数据块;
第一校验装置,用于基于所述密钥对所述数据块进行校验,得到接收端校验值;
第一判断装置,用于判断所述接收端校验值与所述发送端校验值是否相同或相对应,并当所述接收端校验值与所述发送端校验值相同或相对应,判断该数据块为正确的数据块。
22.根据权利要求21所述的装置,其特征在于,所述一个或多个标识信息包括以下至少任一项:
-所述另一用户设备的标识信息;
-所述用户设备的标识信息;
-所述数据块的标识信息。
23.根据权利要求22所述的装置,其特征在于,所述另一用户设备的标识信息为所述另一用户设备的GUID,所述用户设备的标识信息为所述用户设备的GUID,所述数据块的标识信息为所述数据块的GUID。
24.根据权利要求22所述的装置,其特征在于,当所述一个或多个标识信息包括所述数据块的标识信息时,其还包括:
第二获取装置,用于获取所述数据块的标识信息。
25.根据权利要求22所述的装置,其特征在于,当所述一个或多个标识信息包括所述另一用户设备的标识信息时,其还包括:
第三获取装置,用于从所述另一用户设备获取所述另一用户设备的标识信息。
26.根据权利要求22所述的装置,其特征在于,当所述一个或多个标识信息包括所述用户设备的标识信息时,其还包括:
第四获取装置,用于获取所述用户设备的标识信息;
第一发送装置,用于将所述用户设备的标识信息发送给所述另一用户设备。
27.根据权利要求21所述的装置,其特征在于,对所述标识信息进行加密的加密规则和对所述数据块进行校验的校验规则包括以下任一项:
-MD5;
-CRC;
-SHA;
-Hash。
28.根据权利要求1所述的装置,其特征在于,所述数据块包括基于点对点协议传输的数据块。
29.一种在用户设备中用于辅助另一用户设备对所述用户设备发出的数据块进行验证的装置,其中,包括:
第二加密装置,用于对一个或多个标识信息进行加密,得到密钥;
第二校验装置,用于基于所述密钥对所述数据块进行校验,得到发送端校验值;
第二发送装置,用于将所述数据块和所述发送端校验值发送给所述另一用户设备。
30.根据权利要求29所述的装置,其特征在于,所述一个或多个标识信息包括以下至少任一项:
-所述另一用户设备的标识信息;
-所述用户设备的标识信息;
-所述数据块的标识信息。
31.根据权利要求30所述的装置,其特征在于,所述另一用户设备的标识信息为所述另一用户设备的GUID,所述用户设备的标识信息为所述用户设备的GUID,所述数据块的标识信息为所述数据块的GUID。
32.根据权利要求30所述的装置,其特征在于,当所述一个或多个标识信息包括所述数据块的标识信息时,其还包括:
第五获取装置,用于获取所述数据块的标识信息。
33.根据权利要求30所述的装置,其特征在于,当所述一个或多个标识信息包括所述另一用户设备的标识信息时,其还包括:
第六获取装置,用于从所述另一用户设备获取所述另一用户设备的标识信息。
34.根据权利要求30所述的装置,其特征在于,当所述一个或多个标识信息包括所述用户设备的标识信息时,其还包括:
第七获取装置,用于获取所述用户设备的标识信息;
第三发送装置,用于将所述用户设备的标识信息发送给所述另一用户设备。
35.根据权利要求29所述的装置,其特征在于,对所述标识信息进行加密的加密规则和对所述数据块进行校验的校验规则包括以下任一项:
-MD5;
-CRC;
-SHA;
-Hash。
36.根据权利要求9所述的装置,其特征在于,所述数据块包括基于点对点协议传输的数据块。
37.一种在网络服务器中用于辅助一个用户设备对另一用户设备发送的数据块进行验证的装置,其中,包括:
第一生成装置,用于基于所述数据块生成数据块的标识信息;
第四发送装置,用于将所述数据块的标识信息发送给所述用户设备和/或所述另一用户设备,其中,所述数据块的标识信息用于在所述用户设备和/或另一用户设备中生成密钥。
38.根据权利要求37所述的装置,其特征在于,所述数据块的标识信息为所述数据块的GUID。
39.根据权利要求37所述的装置,其特征在于,其还包括:
第二生成装置,用于利用所述数据块的特征信息生成所述数据块的标识信息。
40.根据权利要求37所述的装置,其特征在于,所述数据块包括基于点对点协议传输的数据块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910048517A CN101854241A (zh) | 2009-03-30 | 2009-03-30 | 一种用于对网络传输的数据块进行验证的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910048517A CN101854241A (zh) | 2009-03-30 | 2009-03-30 | 一种用于对网络传输的数据块进行验证的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101854241A true CN101854241A (zh) | 2010-10-06 |
Family
ID=42805525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910048517A Pending CN101854241A (zh) | 2009-03-30 | 2009-03-30 | 一种用于对网络传输的数据块进行验证的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101854241A (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101997648A (zh) * | 2010-11-24 | 2011-03-30 | 钰创科技股份有限公司 | 一种提升传输数据包的效率的方法与装置 |
CN102655643A (zh) * | 2011-03-04 | 2012-09-05 | 希姆通信息技术(上海)有限公司 | 无线数据加密方法和解密方法 |
CN102857321A (zh) * | 2011-06-30 | 2013-01-02 | 车王电子(宁波)有限公司 | 无线胎压侦测系统的封包处理方法 |
CN103079116A (zh) * | 2012-12-31 | 2013-05-01 | 乐视网信息技术(北京)股份有限公司 | 一种应用于对等网络的数据被动校验系统及方法 |
CN103516789A (zh) * | 2013-09-16 | 2014-01-15 | 北京电视台 | 从办公网到生产网的传输数据的管理方法和系统 |
CN104601681A (zh) * | 2014-12-31 | 2015-05-06 | 乐视网信息技术(北京)股份有限公司 | 一种文件分片的处理方法和装置 |
CN104661042A (zh) * | 2013-11-25 | 2015-05-27 | 乐视网信息技术(北京)股份有限公司 | 一种传输流的传输方法、装置和系统 |
CN105007273A (zh) * | 2015-07-24 | 2015-10-28 | 广州华多网络科技有限公司 | 一种数据处理的方法以及相关设备 |
WO2016026103A1 (zh) * | 2014-08-20 | 2016-02-25 | 华为技术有限公司 | 数据传输的方法和媒体接入控制器 |
CN106656424A (zh) * | 2017-01-10 | 2017-05-10 | 西安蜂语信息科技有限公司 | 一种数据传输的校验方法 |
CN108366054A (zh) * | 2018-01-31 | 2018-08-03 | 北京深思数盾科技股份有限公司 | 一种数据分发、转发方法及装置 |
WO2018171550A1 (zh) * | 2017-03-21 | 2018-09-27 | 腾讯科技(深圳)有限公司 | 数据校验方法、数据发送方法、相关装置、系统及存储介质 |
CN108777803A (zh) * | 2018-06-05 | 2018-11-09 | 四川师范大学 | 广电云平台视频流处理方法、装置、设备及介质 |
CN110083614A (zh) * | 2019-04-04 | 2019-08-02 | 中国银联股份有限公司 | 一种数据处理方法及服务器 |
CN112242994A (zh) * | 2020-09-07 | 2021-01-19 | 西安电子科技大学 | 一种实体间的位置检查方法和数字内容保护系统 |
CN114662160A (zh) * | 2022-05-25 | 2022-06-24 | 成都易我科技开发有限责任公司 | 数字摘要方法、系统及网络传输中的数字摘要方法 |
-
2009
- 2009-03-30 CN CN200910048517A patent/CN101854241A/zh active Pending
Cited By (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101997648A (zh) * | 2010-11-24 | 2011-03-30 | 钰创科技股份有限公司 | 一种提升传输数据包的效率的方法与装置 |
CN102655643A (zh) * | 2011-03-04 | 2012-09-05 | 希姆通信息技术(上海)有限公司 | 无线数据加密方法和解密方法 |
CN102857321B (zh) * | 2011-06-30 | 2015-05-13 | 车王电子(宁波)有限公司 | 无线胎压侦测系统的封包处理方法 |
CN102857321A (zh) * | 2011-06-30 | 2013-01-02 | 车王电子(宁波)有限公司 | 无线胎压侦测系统的封包处理方法 |
CN103079116A (zh) * | 2012-12-31 | 2013-05-01 | 乐视网信息技术(北京)股份有限公司 | 一种应用于对等网络的数据被动校验系统及方法 |
CN103516789A (zh) * | 2013-09-16 | 2014-01-15 | 北京电视台 | 从办公网到生产网的传输数据的管理方法和系统 |
CN103516789B (zh) * | 2013-09-16 | 2019-04-26 | 北京电视台 | 从办公网到生产网的传输数据的管理方法和系统 |
CN104661042A (zh) * | 2013-11-25 | 2015-05-27 | 乐视网信息技术(北京)股份有限公司 | 一种传输流的传输方法、装置和系统 |
CN106576016B (zh) * | 2014-08-20 | 2019-11-29 | 华为技术有限公司 | 数据传输的方法和媒体接入控制器 |
WO2016026103A1 (zh) * | 2014-08-20 | 2016-02-25 | 华为技术有限公司 | 数据传输的方法和媒体接入控制器 |
CN106576016A (zh) * | 2014-08-20 | 2017-04-19 | 华为技术有限公司 | 数据传输的方法和媒体接入控制器 |
US10129049B2 (en) | 2014-08-20 | 2018-11-13 | Huawei Technologies Co., Ltd. | Data transmission method and media access controller |
CN104601681A (zh) * | 2014-12-31 | 2015-05-06 | 乐视网信息技术(北京)股份有限公司 | 一种文件分片的处理方法和装置 |
CN105007273B (zh) * | 2015-07-24 | 2018-11-20 | 广州华多网络科技有限公司 | 一种数据处理的方法以及相关设备 |
CN105007273A (zh) * | 2015-07-24 | 2015-10-28 | 广州华多网络科技有限公司 | 一种数据处理的方法以及相关设备 |
CN106656424A (zh) * | 2017-01-10 | 2017-05-10 | 西安蜂语信息科技有限公司 | 一种数据传输的校验方法 |
CN106656424B (zh) * | 2017-01-10 | 2020-08-14 | 西安蜂语信息科技有限公司 | 一种数据传输的校验方法 |
WO2018171550A1 (zh) * | 2017-03-21 | 2018-09-27 | 腾讯科技(深圳)有限公司 | 数据校验方法、数据发送方法、相关装置、系统及存储介质 |
US10949645B2 (en) | 2017-03-21 | 2021-03-16 | Tencent Technology (Shenzhen) Company Limited | Method, apparatus, and storage medium for data verification |
CN108366054A (zh) * | 2018-01-31 | 2018-08-03 | 北京深思数盾科技股份有限公司 | 一种数据分发、转发方法及装置 |
CN108366054B (zh) * | 2018-01-31 | 2019-06-11 | 北京深思数盾科技股份有限公司 | 一种数据分发、转发方法及装置 |
CN108777803A (zh) * | 2018-06-05 | 2018-11-09 | 四川师范大学 | 广电云平台视频流处理方法、装置、设备及介质 |
CN110083614A (zh) * | 2019-04-04 | 2019-08-02 | 中国银联股份有限公司 | 一种数据处理方法及服务器 |
CN110083614B (zh) * | 2019-04-04 | 2023-06-06 | 中国银联股份有限公司 | 一种数据处理方法及服务器 |
CN112242994A (zh) * | 2020-09-07 | 2021-01-19 | 西安电子科技大学 | 一种实体间的位置检查方法和数字内容保护系统 |
CN112242994B (zh) * | 2020-09-07 | 2021-10-08 | 深圳数字电视国家工程实验室股份有限公司 | 一种实体间的位置检查方法和数字内容保护系统 |
CN114662160A (zh) * | 2022-05-25 | 2022-06-24 | 成都易我科技开发有限责任公司 | 数字摘要方法、系统及网络传输中的数字摘要方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101854241A (zh) | 一种用于对网络传输的数据块进行验证的方法和装置 | |
CN108259507B (zh) | 用于自适应流媒体的片段完整性和真实性的系统和方法 | |
US20160197939A1 (en) | Segment Authentication for Dynamic Adaptive Streaming | |
US8321690B2 (en) | Protecting digital media of various content types | |
CN112637836B (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN110401677B (zh) | 数字版权密钥的获取方法、装置、存储介质及电子设备 | |
CN102064906A (zh) | 一种对数据块进行校验的方法和装置 | |
US20170171166A1 (en) | Anti-hotlinking method and electronic device | |
CN110944012B (zh) | 抗协议分析数据安全传输方法、系统、信息数据处理终端 | |
CN104378379A (zh) | 一种数字内容加密传输方法、设备和系统 | |
JP4193380B2 (ja) | ストリーム転送における電子署名システム | |
CN114499857B (zh) | 一种实现大数据量子加解密中数据正确性与一致性的方法 | |
WO2022099683A1 (zh) | 一种数据传输方法、装置、设备、系统及存储介质 | |
CN112954388B (zh) | 一种数据文件的获取方法、装置、终端设备和存储介质 | |
CN110912941A (zh) | 组播数据的传输处理方法及装置 | |
CN114500064B (zh) | 一种通信安全验证方法、装置、存储介质及电子设备 | |
CN111093193A (zh) | 一种适用于Lora网络的MAC层通信安全机制 | |
CN113922976A (zh) | 设备日志传输方法、装置、电子设备及存储介质 | |
CN101217532A (zh) | 一种防止网络攻击的数据传输方法及系统 | |
CN112350920A (zh) | 基于区块链的即时通讯系统 | |
CN111431846A (zh) | 数据传输的方法、装置和系统 | |
KR101609095B1 (ko) | 콘텐츠 전송 네트워크에서의 데이터 보안 장치 및 그 방법 | |
CN114531284B (zh) | 数据加密方法、装置、电子设备及存储介质 | |
CN112738572B (zh) | 一种数字电影加解密系统 | |
CN116782210B (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: 20101006 |