发送、接收数据的方法和系统的制作方法

文档序号:7654921阅读:127来源:国知局
专利名称:发送、接收数据的方法和系统的制作方法
技术领域
本发明涉及数据传输技术,特别涉及一种发送数据的方法和系统以及接 收数据的方法和系统。
背景技术
Internet技术的迅速发展给人们的生活和工作带来了巨大的方便,人们 可以坐在家里通过Internet收发电子邮件、打电话、进行网上购物、银行转 账等活动。然而,随之而来的数据传输的安全问题也越来越需要重视和研究, 这就导致了加密、解密技术的产生。
所谓加密就是为了保护数据在传输过程中不被别人窃取或修改,使用数 学中的密码算法结合密钥的方法来重新组织数据,其中,将重新组织之前的 数据称为明文,重新组织之后的数据称为密文,使得除了合法的接收者外, 任何其他人想要恢复原来的明文或读懂密文是非常困难的,以此保证了数据 的安全性。所谓解密是指用同样的密钥或和加密密钥对称的密钥和加密算法 来还原明文。
在电气和电子工程师协会(IEEE, Institute of Electrical and Electronics Engineers) 802.16e规范中的安全部分由数据加密/解密、消息完整性保护以 及密钥维护三个方面组成,其中,其数据的加密和解密过程都是由基站(BS, Base Station )或用户设备来处理的,与IEEE 802.16e规范中的安全子层相对 应,在现有技术中其安全子层在MAC层的下部,处于MAC普通部分子层 之下和物理层之上,如图l所示。现有技术中发送数据的具体处理过程如图 2所示,主要包括
首先将要传输的业务数据(SDU, Service Data Unit)进行分片,在此,可以将分片后的数据(PDU, Packet Data Unit)加上完整性校验值(ICV, Integrity Check Value );
然后将各分片后的数据和完整性校验值进行加密,在此过程中,可以在 加密后的凄t据前加上用于防止重》文攻击的分组号(PN, Packet Number)和 分片信息即子头(FS, Fragment Subheader );
最后将加密后的数据加上媒体接入控制层(MAC )通用头(MGH, MAC General Header)和循环冗余校验(CRC, Cyclic Redundancy Check)来进行 MAC封装,并将封装后的数据发送出去。
相应地,接收到数据后,执行上述过程的逆操作,即将接收到的数据顺 次进行解MAC封装、解密以及将PDU合并成SDU来完成数据的还原。
由以上过程可以看出,在现有技术的传输数据过程中,需要对分片后的 多片PDU分别进行加密,相应地,在接收端也要对多片PDU分别进行解密 才能进行排序重组,这就造成了传输数据过程中的运算量较大,执行起来十 分复杂。

发明内容
本发明实施例提供了 一种发送数据的方法,用于减小传输数据过程中的
运算量;
本发明实施例还提供了一种接收数据的方法,用于减小传输数据过程中
的运算量;
本发明实施例还提供了 一种发送数据的系统,用于减小传输数据过程中 的运算量;
本发明实施例还提供了一种接收数据的系统,用于减小传输数据过程中 的运算量。
一种发送数据的方法,该方法包括 对要传输的原始数据进行加密; 将加密后的数据进行分片形成多个分片数据;将所述多个分片数据分别进行媒体接入控制层MAC封装,并将封装后 形成的MAC l艮文发送出去。一种接收数据的方法,该方法包括 将接收到的MAC报文进行解MAC封装; 将解封装后的数据进行合并; 将合并后形成的数据进行解密还原为原始数据。一种发送数据的系统,该系统包括加密单元、分片单元以及封装单元; 加密单元,用于对要传输的原始数据进行加密,并将加密后的数据发送 给分片单元;分片单元,用于接收加密单元发送的加密后的数据,将所述加密后的数 据进行分片,并将分片后形成的多个分片数据发送给封装单元;封装单元,用于接收所述分片单元发送的多个分片数据,将所述多个分 片数据分别进行MAC封装,并将封装后形成的MAC报文发送出去。一种接收数据的系统,该系统包括解封装单元、合并单元以及解密单元;解封装单元,用于将接收到的MAC报文进行解MAC封装,并将解封 装后的数据提供给合并单元;合并单元,用于接收解封装单元提供的解封装后的数据,将解封装后的 数据进行合并,并将合并后的数据提供给解密单元;解密单元,用于接收合并单元提供的合并后的数据,并根据对应的加密 算法,将合并后的数据进行解密后还原为原始数据。由以上技术方案可以看出,本发明实施例提供的发送数据的方法和系统 釆用先将要传输的数据进行加密,再对加密后的数据进行分片处理的方法, 而现有技术中采用先对数据进行分片,再对分片后的数据分别进行加密的方 法,本发明实施例提供的方法减小了发送数据过程中由于加密算法造成的运 算量;相应地,本发明在接收端先对数据进行合并,然后在对合并后的数据 进行解密,相对于现有技术中,对分片的数据分别进行解密再合并的方法而言,本发明实施例提供的方法减小了接收数据过程中由于加密算法造成的运 算量。由此可以看出,本发明实施例提供的方法和系统,减小了数据传输过 程中的运算量。


图1为现有技术中的安全子层位置示意图; 图2为现有技术中发送数据过程的数据结构变化图; 图3为本发明实施例提供的发送数据过程中的数据结构变化图; 图4为本发明实施例提供的接收数据过程中的数据结构变化图; 图5为本发明实施例提供的发送和接收数据的第一方法流程图; 图6为本发明实施例提供的图5所示方法的安全子层位置示意图; 图7为本发明实施例提供的发送和接收数据的第二方法流程图; 图8为本发明实施例提供的图7所示方法的安全子层位置示意图; 图9为本发明实施例提供的对应图7流程中发送数据过程的数据结构变 化图;图10为本发明实施例提供的对应图7流程中接收数据过程的数据结构 变化图;图11为本发明实施例提供的发送和接收数据的第三方法流程图; 图12为本发明实施例提供的对应图11的数据结构变化图; 图13. a为本发明实施例提供的发送数据的第 一 系统结构图; 图13. b为本发明实施例提供的发送数据的第二系统结构图; 图14. a为本发明实施例提供的接收数据的第 一 系统结构图; 图14.b为本发明实施例提供的接收数据的第二系统结构图。
具体实施方式
为了使上述目的、技术方案和优点更加的清楚,下面结合具体实施例进4亍详细;t也"i兌明。本发明实施例提供的发送数据的方法为对要传输的原始数据进行加密;将加密后的数据进行分片形成多个分片数据;将分片后形成的多个分片 数据分别进行MAC封装,并将封装后形成的MAC报文发送出去。在以后的描述中,将要传输的原始数据用SDU表示,分片后形成的数 据用PDU表示。其中,在将要传输的原始SDU加密之前可以将所述原始SDU加上ICV 。 所述ICV是用于进行数据认证时校验数据完整性的。那么,对数据进行加 密时,就需要根据加密算法并利用数据加密密钥,将要传输的原始SDU和 ICV都进4亍加密,形成加密后的SDU和加密后的ICV。如图3所示,原始 SDU数据为SDU明文,其后有校验数据完整性的ICV,进行加密后,形成 SDU密文,以及加密后的ICV,。在对加密后的SDU进行分片处理后,可以将分片后形成的PDU分别加 上分组号(PN, Packet Number)和/或FS。如图3所示,对加密后的SDU 分片为n个PDU后,将每个PDU分别加上各自的PN和FS。其中PN用于 防止重放攻击,当安装一个新的数据加密密钥时,PN被置为1, PN按照小 恩迪安字节的顺序发送,每发送一个PDU, PN加1,在上行连接上,PN在 加密和发送前应该进行与0x80000000的异或操作,MS必须保证每个PN达 到0x7FFFFFFF时,都需要进行新的密钥请求和发送。FS是用于标识所属 SDU的,即用于区分属于同 一个用户SDU的PDU,以便在接收端进行数据 合并时,能够将属于同一个SDU的PDU数据进行合并还原为正确的SDU。另外,所述PN可以放在加密后的SDU之前、也可以放在分片后的PDU 之前。将分片后形成的多个PDU分别进行MAC封装时,对分片后形成的多 个PDU分别加上MAC层头(MGH, MAC General Header)和循环冗佘才交 验(CRC, Cyclic Redundancy Check),如图3所示。这部分是现有技术, 在此不再赘述。更进一步地,在对SDU进行加密之前也可以进一步包括判断SDU数据长度加上后续流程中需要加上的各种子头的长度的和是否大于MAC净荷的最大长度值,如果是,则继续执行后续步骤;如果否,则对SDU数据进 行加密后,将加密后的SDU进行打包处理,将打包后的SDU进行MAC封 装后,将封装后的数据发送出去,或者,则对所述SDU进行打包,对打包 后的SDU进行加密,并对加密后的SDU进行MAC封装后,将封装后的数 据发送出去。先对数据进行打包再加密是因为,在对SDU数据进行打包时, 对打包后的数据进行加密相比较对SDU数据进行加密后再打包需要的运算 量小。例如对图3中所示的数据的判断为判断SDU的长度+ PN的长度+ FS的长度+ ICV的长度是否大于MAC净荷的最大长度值。另外,在上述的分片/打包过程中,会在分片/打包后的数据中包含对该 数据的分片/打包信息。以上发送数据的过程中,如果用于上行数据的发送,则以上过程由MS 完成;如果用于下行数据的发送,则以上过程可以由BS完成,也可以将加 密过程由另外的单独设备完成,分片/打包和MAC封装过程由BS完成,其 中所述另外的单独设备可以是BS的上层设备,例如接入网网关等,也可以 是锚定BS。加密过程由另外单独设备完成可以防止在切换过程中,多个BS 同时服务用户时需要共享密钥而造成的密钥泄漏问题。相应地,本发明实施例提供的接收数据的方法为将接收到的数据进行 解MAC封装;将解封装后形成的PDU进行合并;将合并后形成的SDU进 行解密还原为原始SDU。其中,将接收的数据进行解封装时,如图4所示,将接收到数据中的 MGH以及CRC提取出来。在将解封装后形成的PDU进行合并之前还可以包括^r-睑PDU的PN 和/或FN信息,当对应SDU的所有PDU都收到之后,对属于该SDU的PDU 进行合并。如果有异常即丢包,则可以按照IEEE802.16e中的异常处理方法 处理,例如重传等方法。在将接收到的数据进行解MAC封装之后还可以包括根据解封装之后得到的数据中包含的分片/打包信息,判断对该解封装之后的数据进行合并 还是分解,如果应该进行合并则继续执行将解封装后形成的PDU按照各自所属的SDU进行合并的步骤;如果应该进行分解,则将解封装后形成的数 据进行分解,并将分解后得到的SDU进行解密还原为原始SDU,或者,将 解封装后形成的数据进行解密,将解密后的SDU数据进行分片还原为原始 的SDU。以上接收数据的过程中,如果用于下行数据的接收,则以上接收过程由 MS完成;如果用于上行数据的接收,则以上过程可以由BS完成,也可以 将解密过程由另外的单独设备完成,MAC解封装和分片/打包由BS完成。 其中所述另外的单独设备可以是BS的上层设备,例如接入网网关等,也可 以是锚定BS。解密过程由另外单独设备完成可以防止数据在BS间传输过程 中需要共享密钥而造成的密钥泄漏问题。下面举几个实施例对上述发送和接收数据的方法进行详细地描述。图5 为本发明实施例提供的发送和接收数据的一种方法流程图,该流程是需要进 行分片的下行数据传输情况,如图5所示,该方法包括以下步骤步骤501: BS将发送给用户设备的SDU加上ICV,再用数据加密密钥 将SDU和ICV进行加密。所述将SDU加上ICV是可选的,也可以不加。通常,所加的ICV的长 度为8字节。所述加密过程是根据相应的加密算法釆用数据加密密钥进行加密。 步骤502: BS对加密后的SDU进行分片处理,并在每一个分片后的PDU 上加上PN和FS。其中,PN用于防止重^L攻击,FS用于区分该PDU属于哪一个SDU。 另外,在进行分片处理后,分片后的数据中将包含有该数据进行了分片的信息,根据该信息,接收端的用户设备对接收到的数据执行合并操作。 另外,所述加上PN的操作也可以在步骤501中执行,即在对SDU进行加密后,在加密后的SDU前加上防止重放攻击的PN,这种方式相对于在分片后的每一个PDU上加上PN的方式来说,减小了系统资源的开销。步骤503:将分片后形成的数据加上MGH和CRC进行MAC封装,并 将封装后形成的MAC报文发送给用户设备。步骤504:用户设备接收MAC报文,并进行解MAC封装。本步骤中,对MAC报文进行解封装之后需要对CRC进行循环冗余校 验,这部分是现有技术,在该处不再赘述。步骤505:用户设备检验解封装后的PDU中的PN,将所有对应所述SDU 的PDU接收齐全后,分析FS中的信息,然后将所述解封后的PDU进行合 成。在本步骤中,用户设备解封装后会根据MGH头中的分片/打包信息或解 封装后的数据中包含的分片/打包信息,判断需要对该解封装后的数据进行 合并还是分解。如果检验PN不成功,则进行丢包或重传处理,结束流程,或者按照 IEEE802.16e中已有的处理异常的方法处理。如果增加PN的操作是在步骤501中执行的,那么该步骤中检验PN的 操作在对PDU进行合成后,对合成后的数据统一的进行PN的检验。步骤506:用户设备将合成后得到的SDU加密包进行解密,还原为原 始的SDU。上述图5的流程中,是将数据加密部分,即对应的安全子层,放到媒体 接入控制普通部分子层(MAC CPS)和MAC汇聚子层(CS, Convergence Sublayer)之间处理,如图6所示,其它的处理保持不变,如安全中的完整 性保护还是可以保留在MAC CPS以下来处理,且该方案中不涉及BS的上 层网络设备。图5所示流程是需要进行分片的下行数据传输流程,而需要进行分片的 上行数据传输流程与上述流程的操作不同的是步骤501至503中执行相应 步骤的不是BS,而是用户设备;步骤504至506中执行相应步骤的不是用 户设备,而是BS;即数据的传输方向由用户设备到BS,用户设备执行发送数据的步骤,BS执行接收数据的步骤。图7为本发明实施例提供的发送和接收数据的另 一种方法流程图,该流况,该实施例中以对数据进行打包为例,如图7所示,该方法包括以下步骤 步骤701:接入网网关将发送给用户设备的SDU加上ICV,再根据加 密算法,用数据加密密钥将SDU和ICV进行加密,并将加密后的数据发送 给BS。本步骤的执行者除了接入网网关之外还可以采用锚定BS或其它设备。 在接入网网关发送给用户设备的SDU加上ICV之前还可以将SDU先进行汇聚操作,即进行鲁棒性或健壮型头压缩等操作,这样做可以减小资源的占用。步骤702: BS接收加密后的数据,对加密后的SDU进行打包处理,并 在打包后的数据上加上PN和打包子头(PS, Packeting Sub-Header)。另外,在进行打包处理后,在打包后的数据中包含有该数据进行了打包 的信息,根据该信息,接收端的用户设备对接收到的数据执行分解操作。另外,所述PS也可以在步骤701中进行加密之后的数据上增加。步骤703:将打包后形成的数据加上MGH和CRC进行MAC封装,并 将封装后形成的MAC报文发送给用户设备。步骤704:用户设备接收MAC报文,并进行解MAC封装。步骤705:用户设备检验解封装后的数据中的PN,检验成功后分析PS 中的信息,然后将解封装后得到的数据进行分解。步骤706:用户设备将分解后得到的SDU加密包进行解密,还原为原 始的SDU。上述图7的流程中,也是将数据加密部分,即对应的安全子层,提前到 IP层或MAC层来处理,如图8所示,其它的处理保持不变。图7所示流程中,步骤701至步骤703是发送数据的流程,对数据进行 操作时对应的数据结构如图9所示;步骤704至步骤706是接收数据的流程,对数据进行操作时对应的数据结构如图IO所示。图7所示流程是需要进行打包的下行数据传输流程,而需要进行打包的上行数据传输流程与上述流程的操作不同的是步骤701至703中执行相应 步骤的不是接入网网关和BS,而是用户设备;步骤704至705中执行相应 步骤的不是用户设备,而是BS;步骤706中的执行者是接入网网关或锚定 BS。即数据的传输方向由用户设备到BS,用户设备执行发送数据的步骤, B S执行接收数据的步骤。另外,图7所示的流程是以需要打包时的情况为例进行的描述,在需要 进行分片时,也可以将对数据进行加密/解密的过程由单独的设备来完成, 例如接入网网关或锚定BS。即将步骤501中的执行者换为接入网网关或锚 定BS,其它操作与图5中所示其它操作相同。另外,在上述图5和图7所述流程中,防止重放攻击的PN也可以使用 已有的物理同步帧号(FN, Frame Number)来取代,即可以使用SDU对应 的第一个或其他第N个FN,并将其加在加密后的数据之前,或者加在分片 或打包后的数据之前,这样可以帮助减少维护PN的系统开销,其中所述加 密后的数据中包含SDU密文和加密后的ICV。值得注意的是,在使用FN替代PN的方案中,由于在IEEE 802.16e标 准中的PN长度为4字节,而FN的长度为3字节,所以在处理上可以将FN 的高位加上一个空字节,其它过程保持不变。也可以仍然使用FN的3字节 的长度,将防止重放攻击的机制进行调整。由于对数据进行加密的过程中,运算较复杂,图5所示流程中采用对要 传输的SDU数据进行先加密后分片的方法,避免对分片后的数据进行分别 的加密,这样可以减小数据传输的运算量。虽然,图7所示的流程,采用先 加密后打包的方法,并将加密的过程上移由独立的设备完成。防止了BS之 间数据传输密钥的泄漏问题,但是,相比较与先打包后加密的方法,图7中 针对打包的方法,其运算量依然较大,所以,我们可以采用首先对要传输的 数据进行判断,如果需要对数据进行分片,则采用先加密后分片的方式;如果需要对数据进行打包,则采用先打包后加密的方式,其流程如图ll所示, 在该实施例中,以下行数据的传输、且在该流程中以接入网网关完成数据的 加密为例,该方法包括以下步骤步骤1101:接入网网关对要传输的SDU的MAC封装长度进行判断, 判断其MAC封装长度是否大于MAC净荷的最大长度值,如果是,执行图 5所示流程;如果否,执行步骤1102。所述SDU的MAC封装长度值得是对该SDU进行MAC封装前的数据 总长度,可以为要传输的SDU的长度、PN的长度、子头的长度、以及ICV 的长度之和。所述子头可以为FS和PS。如果发送SDU的过程中不加上PN, 则所述SDU的MAC封装长度可以不包含PN的长度,对于子头和ICV也 进行类似处理。步骤1102:接入网网关对要传输的SDU进行打包处理。在本步骤中,接入网网关对要传输的一个或多个SDU分别加上PS后, 进行打包处理。所述PS可以用于标识要传输的SDU位置、长度、或者其它业务信息。 步骤1103:接入网网关将打包后的数据加上ICV,再根据加密算法,用数据加密密钥对打包后的数据以及ICV进行加密。其中,所述将打包后的数据加上ICV是可选的,是用来保证数据完整性的。步骤U04:接入网网关将加密后的数据发送给BS, BS将加密后的数 据进行MAC封装,并将封装后的MAC报文发送给用户设备。本步骤中,BS还可以将加密后的凄t据加上防止重方文攻击的PN。在将加 密后的数据进行MAC封装时,加上MAC通用头和CRC,组成最后的MAC 报文。步骤1105:用户设备接收MAC报文,并进行解MAC封装。步骤1106:用户设备对解封装后的数据进行解密处理。在本步骤中,进行解密处理之前还包括检验解封装后的数据中的PN,检验成功后,则进行解密处理,否则进行丢包或重传等处理。步骤1107:用户设备对解密后得到的数据进行分解,还原为原始的 SDU。在进行上行数据的传输时,步骤1101中的判断过程由用户设备执行, 且1102至1104发送数据的过程由用户设备执行,然后用户设备将进行MAC 封装后的数据发送给BS,由BS执行步骤1105, BS将数据解MAC封装后 发送给接入网网关,然后由接入网网关执行所述步骤1106至步骤1107。图11中所述流程对应的数据结构变化如图12所示。需要注意的是图中, 打包后的(PS1 + SDU明文l+PS2 + SDU明文2 + PS3 + SDU明文3)的长 度与加密后SDUs密文的长度相同。在图ll所示的流程中,如果需要执行分片处理,则较佳的是在进行分 片前加上防止重放攻击的PN,如果需要执行打包处理,则较佳地是在进行 打包后加上防止重放攻击的PN。这样相比较进行分片后在每一个PDU上都 加上PN、或在打包前在每一个SDU上都加上PN来说,减少了PN造成的 资源开销。在上述方法的各流程中,所述PN、 FS和PS都可以在加密后的数据上 增加,即不需要对PN、 FS和PS进行加密处理。以上是对本发明实施例所提供的发送数据的方法和接收数据的方法进 行地详细描述,下面对本发明实施例提供的发送数据的系统和接收数据的系 统进行详细地描述,图13.a为本发明实施例提供的发送数据的系统结构图, 如图13.a所示,该系统主要包括加密单元131、分片单元132、以及封装 单元133;加密单元131,用于利用要传输的原始数据进行加密,并将加密后的数 据发送给分片单元132;分片单元132,用于接收加密单元131发送的加密后的数据,将所述加 密后的数据进行分片,并将分片后形成的多个分片数据发送给封装单元133;封装单元133,用于接收所述分片单元132发送的多个分片数据,将所述多个分片数据分别进行MAC封装,并将封装后形成的MAC报文发送出 去。以上单元构成的系统用来完成对要传输的原始数据进行先加密后分片 的过程,该系统还可以实现方法中所述的判断步骤,并根据判断结果选择执 行将数据进行打包还是分片的步骤,该系统还可以包括第一判断单元134 和第一打包单元135;第一判断单元134,用于判断原始数据的MAC封装长度是否大于MAC 净荷的最大长度值,如果是,则将所述原始数据提供给所述加密单元31; 如果否,将所述原始数据提供给第一打包单元135。第一打包单元135,将接收到的所述原始数据进行打包处理,并将打包 后的数据提供给所述加密单元131;加密单元131,还用于将所述第一打包单元提供的打包后的数据进行加 密,并将加密后的数据提供给所述封装单元133。上述图13.a所示的系统可以完成对要传输的原始数据进行判断,即判 断原始数据的MAC封装长度是否大于MAC净荷的最大长度值,如果是, 则执行先加密后分片的步骤,如果否,则执行先打包后加密的过程。其中, 如果进行上行数据的传输,上述各单元可以设置在用户设备中;如果进行下 行数据的传输,上述各单元可以设置在BS中,也可以将第一判断单元134、 第一打包单元135、以及加密单元131设置在锚定BS或接入网网关中。另外,该系统还可以通过另 一种结构来实现判断后选择打包还是分片的 过程,如图13.b所示,该系统还可以包括第二判断单元136和第二打包 单元137;第二判断单元136,用于判断原始数据的MAC封装长度是否大于MAC 净荷的最大长度值,如果是,则将所述原始数据提供给所述加密单元131; 如果否,则将所述原始数据提供给所述加密单元131,并向所述加密单元131 发送打包通知;所述加密单元131,还用于接收到第二判断单元136发送的打包通知后,将加密后的数据提供给所述第二打包单元137;第二打包单元137,用于接收加密单元131提供的加密后的数据,将所 述加密后的数据进行打包,并将打包后的数据提供给所述封装单元133;封装单元133,还用于接收第二打包单元137提供的打包后的数据,并将 打包后的数据进行MAC封装后,发送出去。上述图13.b所示的系统可以完成对要传输的原始数据进行判断,即判 断原始数据的MAC封装长度是否大于MAC净荷的最大长度值,如果是, 则执行先加密后分片的步骤,如果否,则执行先加密后打包的步骤。其中, 如果进行上行数据的传输,上述各单元可以设置在用户设备中;如果进行下 行数据的传输,上述各单元可以设置在BS中,也可以将第二判断单元136、 加密单元131以及第二打包单元137设置在锚定BS或接入网网关中。下面对接收数据的系统进行详细地描述,图14.a为本发明实施例提供的接 收数据的系统结构图,如图14.a所示,该系统主要包括解封装单元141、合 并单元142以及解密单元143;解封装单元141,用于将接收到的MAC报文进行解MAC封装,并将解封 装后的数据提供给合并单元142;合并单元142,用于接收解封装单元141提供的解封装后的数据,将解封 装后的数据进行合并,并合并后的数据提供给解密单元143;解密单元143,用于接收合并单元142提供的合并后的数据,并将合并后 的数据进行解密后还原为原始数据。相应地,在接收到数据时,也可以进行对数据需要进行分解还是合并的判 断,该系统还可以包括第一判断单元144和第一分解单元145;第一判断单元144,用于接收所述解封装单元141解封装后的数据,并根 据所述解封装后的数据中包含的分片/打包信息,判断需要对该解封装后的数据 进行合并还是分解,如果需要分解,则向所述解封装单元141发送分解通知;所述分片/打包信息可以包含在解封装后数据的MGH头或FS/PS中,通过 分析MGH头或FS/PS确定分片/打包信息。解封装单元141,还用于接收到所述第一判断单元144发送的分解通知后,将解封装后的凄史据发送给所述第一分解单元145;第一分解单元145,用于接收解封装单元141提供的解封装后的数据,并 将所述解封装后的数据提供给所述解密单元143;解密单元143,还用于接收第一分解单元145提供的分解后的数据,并根 据对应的加密算法,将分解后的数据进行解密后发送出去。上述图14.a所示的系统可以完成对解MAC封装后的数据进行判断,即 判断需要对该解封装后的数据进行合并还是分解,如果需要进行合并,则执 行先合并后解密的步骤,如果需要进行分解,则执行先分解后解密的步骤。 其中,如果进行下行数据的传输,上述各单元可以设置在用户设备中;如果 进行上行数据的传输,可以将解密单元143设置在锚定BS或接入网网关中。另外,实现判断对数据需要进行分解还是合并的过程也可以由图14.b所示 的结构完成,如图14.b所示,该系统还可以包括第二判断单元146和第二分 解单元147;第二判断单元146,用于接收所述解封装单元141解封装后的数据,并根 据所述解封装后的数据中包含的分片/打包信息,判断需要对该解封装后的数据 进行合并还是分解,如果需要分解,则向所述解封装单元141发送解密通知;所述解封装单元141,用于接收到解密通知后,将解封装后的数据提供给 所述解密单元143;所述解密单元143,还用于接收到解封装单元141提供的解封装后的数据 时,将解封装后的数据进行解密,并将所述解密后的数据提供给所述第二分解 单元147;所述第二分解单元147,用于接收所述解密单元143提供的解密后的数据, 并将所述解密后的数据进行分解还原为原始数据。上述图14.b所示的系统可以完成对解MAC封装后的数据进行判断,即判 断需要对该解封装后的数据进行合并还是分解,如果需要进行合并,则执行先 合并后解密的步骤,如果需要进行分解,则执行先解密后分解的步骤。其中,如果进行下行数据的传输,上述各单元可以设置在用户设备中;如果进行上行数据的传输,上述各单元可以设置在BS中,也可以将第二判断单元146、第二 分解单元147以及解密单元143设置在锚定BS或接入网网关中。由以上技术方案可以看出,本发明实施例提供的发送数据的方法和系统 采用先将要传输的数据进行加密,再对加密后的数据进行分片处理的方法, 而现有技术中采用先对数据进行分片,再对分片后的数据分别进行加密的方 法,本发明实施例提供的方法减小了发送数据过程中由于加密算法造成的运 算量;相应地,本发明在接收端先对数据进行合并,然后在对合并后的数据 进行解密,相对于现有技术中,对分片的数据分别进行解密再合并的方法而 言,本发明实施例提供的方法减小了接收数据过程中由于加密算法造成的运 算量。由此可以看出,本发明实施例提供的方法和系统,减小了数据传输过 程中的运算量。更进一步地,本发明实施例提供的方法和系统中,增加了对要传输数据 的MAC封装长度的判断过程,如果其MAC封装长度大于MAC净荷的最 大长度值时,采用将要传输的数据进行先加密后分片的发送方式,如果其 MAC封装长度小于等于MAC净荷的最大长度时,采用将要传输的数据进 行先打包后加密的发送方式。这种方式使得,在要传输的数据需要进行打包 时,也能够减小传输数据过程需要的运算量。更进一步地,本发明实施例提供的发送、接收数据的方法和系统,也可 以将对数据进行加密/解密的过程放在接入网关或锚定BS中进行处理,相比 较将该过程放在BS中进行处理的过程,防止数据在BS间传输过程中密钥 的泄漏问题。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本 发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在 本发明保护的范围之内。
权利要求
1、一种发送数据的方法,其特征在于,该方法包括对要传输的原始数据进行加密;将加密后的数据进行分片形成多个分片数据;将所述多个分片数据分别进行媒体接入控制层MAC封装,并将封装后形成的MAC报文发送出去。
2、 根据权利要求l所述的方法,其特征在于,在所述对要传输的原始数据 进行加密之前还包括对要传输的原始数据加上用于校验数据完整性的完整性 校验值ICV;所述对要传输的原始数据进行加密包括将要传输的原始数据和所述ICV 都进行加密,形成加密后的数据。
3、 根据权利要求1所述的方法,其特征在于,在所述将加密后的数据进行 分片之后,以及将所述多个分片数据分别进行MAC封装之前进一步包括分 别在每一个分片数据上加上用于标识所属原始数据的分片信息即子头FS,或者 加上FS和防止重》文攻击子头;将所述多个分片数据分别进行MAC封装包括将所述每一个带有FS的分 片数据,或带有防止重放攻击子头和FS的分片数据进行MAC封装。
4、 根据权利要求1所述的方法,其特征在于,该方法中所述加密、分片和 封装的步骤都是由基站BS执行的,或都是由用户设备执行的;或者,所述加密的步骤是由接入网网关或锚定BS执行的;则在所述将加密后的 数据进行分片的步骤之前进一步包括所述接入网网关或锚定BS将加密后的 数据发送给BS;则由BS执行所述分片和封装的步骤。
5、 根据权利要求l所述的方法,其特征在于,在所述将要传输的原始数据 进行加密之前进一步包括判断原始数据的MAC封装长度是否大于MAC净荷 的最大长度值,如果是,则继续执行所述对要传输的原始数据进行加密的步骤。
6、 根据权利要求5所述的方法,其特征在于,如果判断原始数据的MAC 封装长度小于MAC净荷的最大长度值时,则在所述对要传输的原始数据进行 加密之前进一步包括将要传输的原始数据进行打包处理;所述对要传输的原始数据进行加密为将打包后的原始数据进行加密; 在所述对需要传输的原始数据进行加密之后包括将加密后的数据进行 MAC封装,并将封装后形成的MAC报文发送出去。
7、 根据权利要求6所述的方法,其特征在于,在所述将要传输原始数据进 行打包之后,以及将打包后的数据进行加密之前进一步包括将打包后的数据 加上用于校验数据完整性的完整性校验值ICV;所述将打包后的数据进行加密包括将打包后的数据和所述ICV都进行加 密,形成加密后的数据。
8、 根据权利要求1所述的方法,其特征在于,在所述对要传输的原始数据 进行加密之后进一步包括将加密后的数据加上防止重放攻击子头。
9、 根据权利要求3或8所述的方法,其特征在于,所述防止重放攻击子头 包括分组号PN或物理同步帧号FN。
10、 根据权利要求5所述的方法,其特征在于,如果判断原始数据的MAC 封装长度小于MAC净荷的最大长度值时,则在对要传输的原始数据进行加密 之后包括将加密后的数据进行打包处理;将打包后的数据进行MAC封装, 并将封装后形成的MAC报文发送出去。
11、 根据权利要求IO所述的方法,其特征在于,所述加密、打包和封装的 步骤由用户设备或BS执行;或者,所述加密的步骤由接入网网关或锚定BS执行;则在所述将加密后的数据 进行打包处理之前进一步包括所述接入网网关或锚定BS将加密后的数据发 送给BS;则由BS执行所述打包和封装的步骤。
12、 一种接收数据的方法,其特征在于,该方法包括 将接收到的MAC报文进行解MAC封装; 将解封装后的数据进行合并;将合并后形成的数据进行解密还原为原始数据。
13、 根据权利要求12所述的方法,其特征在于,在所述将解封装后的数据进行合并之前进一步包括对所述解封装后的数据中的防止重放攻击子头进行 检验,如果检验成功,则继续执行所述将解封装后的数据进行合并的步骤。
14、 根据权利要求12所述的方法,其特征在于,所述将解封装后的数据进 行合并包括分析所述解封装后的数据中用于标识所属原始数据的FS,并根据 该FS将解封装后的数据进行合并。
15、 根据权利要求12所述的方法,其特征在于,该方法所述解MAC封装、 合并和解密的步骤都是由用户设备或BS执行的,或者,所述解MAC封装和合并的步骤是由BS执行的;则将合并后形成的数据进 行解密还原为原始数据之前进一步包括所述BS将合并之后的数据发送给接 入网网关或锚定BS;则由接入网网关或锚定BS执行所述解密的步骤。
16、 根据权利要求12所述的方法,其特征在于,在所述将接收到的MAC 报文进行解MAC封装之后,以及将解封装后的数据进行合并之前进一步包括 根据解MAC封装得到的MAC层子头MGH所包含的分片/打包信息或解封装 后的数据中包含的分片/打包信息,判断需要对该解封装后的数据进行合并还是 分解,如果需要合并,则继续执行所述将解封装后的数据进行合并的步骤。
17、 根据权利要求16所述的方法,其特征在于,如果所述判断的结果为需 要分解,则将解封装后的数据进行解密,再将解密后的数据进行分解还原为原 始数据。
18、 根据权利要求16所述的方法,其特征在于,如果所述判断的结果为需 要分解,则将解封装后的数据进行分解,再将分解后的数据进行解密还原为原 始的数据。
19、 一种发送数据的系统,其特征在于,该系统包括加密单元、分片单 元以及封装单元;加密单元,用于对要传输的原始数据进行加密,并将加密后的数据发送给 分片单元;分片单元,用于接收加密单元发送的加密后的数据,将所述加密后的数据进行分片,并将分片后形成的多个分片数据发送给封装单元;封装单元,用于接收所述分片单元发送的多个分片数据,将所述多个分片 数据分别进行MAC封装,并将封装后形成的MAC报文发送出去。
20、 根据权利要求19所述的系统,其特征在于,该系统进一步包括第一判 断单元和第一打包单元;第一判断单元,用于判断原始数据的MAC封装长度是否大于MAC净荷的 最大长度值,如果是,则将所述原始数据提供给所述加密单元;如果否,将所 述原始数据提供给第 一打包单元;第一打包单元,将接收到的所述原始数据进行打包处理,并将打包后的原 始数据提供给所述加密单元。
21、 根据权利要求19所述的系统,其特征在于,该系统进一步包括第二判 断单元和第二打包单元;第二判断单元,用于判断原始数据的MAC封装长度是否大于MAC净荷的 最大长度值,如果是,则将所述原始数据提供给所述加密单元;如果否,则将 所述原始数据提供给所述加密单元,并向所述加密单元发送打包通知;所述加密单元,还用于接收到第二判断单元发送的打包通知后,将加密后 的数据提供给所述第二打包单元;第二打包单元,用于接收力。密单元提供的加密后的数据,将所述加密后的 数据进行打包,并将打包后的数据提供给所述封装单元;封装单元,还用于接收第二打包单元提供的打包后的数据,并将打包后的 数据进行MAC封装后,发送出去。
22、 根据权利要求19所述的系统,其特征在于,该系统中的各单元都设置 在BS或用户端i殳备中;或者,所述加密单元设置在接入网网关或锚定BS中。
23、 一种接收数据的系统,其特征在于,该系统包括解封装单元、合并 单元以及解密单元;解封装单元,用于将接收到的MAC报文进行解MAC封装,并将解封装后 的数据提供给合并单元;合并单元,用于接收解封装单元提供的解封装后的数据,将解封装后的数 据进行合并,并将合并后的数据提供给解密单元;解密单元,用于接收合并单元提供的合并后的数据,并根据对应的加密算 法,将合并后的数据进行解密后还原为原始数据。
24、 根据权利要求23所述的系统,其特征在于,该系统还包括第一判断 单元和第一分解单元;第一判断单元,用于接收所述解封装单元解封装后的数据,并根据解封装 后得到的MGH头中包含的分片/打包信息或所述解封装后的数据中包含的分片 /打包信息,判断需要对该解封装后的数据进行合并还是分解,如果需要分解, 则向所述解封装单元发送分解通知;解封装单元,还用于接收到所述第一判断单元发送的分解通知后,将解封 装后的数据发送给所述第 一分解单元;第一分解单元,用于对解封装单元提供的解封装后的数据进行分解,并将所述分解后的数据提供给所述解密单元;解密单元,还用于接收第一分解单元提供的分解后的数据,将分解后的数 据进行解密后还原为原始lt据。
25、 根据权利要求23所述的系统,其特征在于,该系统还包括第二判断 单元和第二分解单元;第二判断单元,用于接收所述解封装单元解封装后的数据,并根据MGH头中包含的分片/打包信息或所述解封装后的数据中包含的分片/打包信息,判断 需要对该解封装后的数据进行合并还是分解,如果需要分解,则向所述解封装 单元发送解密通知;所述解封装单元,用于接收到解密通知后,将解封装后的数据提供给所述 解密单元;所述解密单元,还用于接收到解封装单元提供的解封装后的数据时,将解封装后的数据进行解密,并将所述解密后的数据提供给所述第二分解单元;所述第二分解单元,用于接收所述解密单元提供的解密后的数据,并将所 述解密后的数据进行分解还原为原始数据。
26、根据权利要求23所述的系统,其特征在于,该系统中各单元设置在 BS或用户端设备中;或者,所述解密单元设置在接入网网关或锚定BS中。
全文摘要
本发明提供了一种发送数据的方法、系统和接收数据的方法、系统,其中,发送数据的方法包括对要传输的原始数据进行加密;将加密后的数据进行分片形成多个分片数据;将所述多个分片数据分别进行媒体接入控制层(MAC)封装,并将封装后形成的MAC报文发送出去。相应地,接收数据的方法包括将接收到的MAC报文进行解MAC封装;将解封装后的数据进行合并;将合并后形成的数据进行解密还原为原始数据。通过所述方法减小了发送、接收数据过程中由于加密算法造成的运算量,从而减小了在传输数据过程中的运算量。
文档编号H04L29/06GK101335740SQ20071011244
公开日2008年12月31日 申请日期2007年6月26日 优先权日2007年6月26日
发明者刘珏君, 徐宏亮, 肖家幸 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1