CN108011856A - 一种传输数据的方法和装置 - Google Patents
一种传输数据的方法和装置 Download PDFInfo
- Publication number
- CN108011856A CN108011856A CN201610933023.7A CN201610933023A CN108011856A CN 108011856 A CN108011856 A CN 108011856A CN 201610933023 A CN201610933023 A CN 201610933023A CN 108011856 A CN108011856 A CN 108011856A
- Authority
- CN
- China
- Prior art keywords
- data
- base station
- message
- iot equipment
- difficulty
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1458—Denial of Service
Abstract
本发明实施例公开了一种传输数据的方法和装置,该方法包括:基站发送包括多个难题puzzle的广播消息,其中,所述多个难题的难度不同;所述基站从物联网IoT设备接收第一数据、第一难题的指示信息和所述第一难题的答案,其中,所述第一难题是所述IoT设备根据所述第一数据的大小从所述多个难题中确定的;所述基站在所述第一难题的难度与所述第一数据的大小匹配,且所述第一难题的答案正确时,向核心网设备发送所述第一数据或者对所述第一数据解密后的数据。本发明实施例提供的传输数据的方法和装置,IoT设备从多个难度不同的难题中确定第一难题,可以在减小DDOS攻击对核心网设备的影响的同时减少难题对正常IoT设备的影响。
Description
技术领域
本发明实施例涉及通信领域,尤其涉及一种传输数据的方法和装置。
背景技术
物联网(Internet of Things,IoT)是下一代移动通信网络5G网络的一大重要应用场景。IoT设备数量众多,形态各异,数据发送模式也不同于传统的移动设备如手机。手机用户的数据主要以流的形式发送,一段时间内会发送多个数据包。而数量众多的IoT设备(例如智能电表)大多数时间处于睡眠状态,一段时间可能只发送一个小数据包。采用传统的模式发送数据,即通过建立连接并重建安全上下文的方式发送数据,将会造成数据发送的成本高,不利于运营商扩大营业范围,将业务拓展至低成本的IoT服务。因此,5G网络引入了针对IoT这种小数据模式的新的架构和传输方式,在新的传输方式下,网络对数据认证不需要通过额外的信令建立安全上下文,允许IoT设备不认证,不建立连接,直接向蜂窝网络发送小数据包。但是如果这种机制被滥用,攻击者利用大量被控制的IoT设备,在这种不需要认证和不需要建立安全上下文的方式下,向蜂窝网络发送小数据包,极易产生分布式拒绝服务(Distributed Denial of Service,DDoS)攻击,使网络拥塞,甚至使网络瘫痪。
现有技术通过基站向IoT设备发送难题(puzzle)的方法降低DDoS攻击对网络设备的影响,即,基站通过广播消息发送难题,接收到该广播消息的IoT设备需要计算难题之后,将答案与待发送的数据一起发送给基站,计算难题可以延长IoT设备发送数据的周期,从而降低了DDoS攻击对网络设备的影响。
然而,当前基站每次仅发送一种难题,如果该难题的难度较小,IoT设备花费很少的时间即可计算出答案,无法有效降低DDoS攻击对网络设备的影响,如果该难题的难度较大,IoT设备需要花费大量的时间才能发送一个小数据包,这大大影响了正常IoT设备的工作。
发明内容
有鉴于此,本发明实施例提供了一种传输数据的方法和装置,IoT设备接收到基站发送的多个不同难度的难题后,从多个难题中选择与待发送的数据的大小相匹配的难题,从而可以有效降低DDoS攻击对网络设备的影响,同时减小难题对正常IoT设备的影响。
一方面,提供了一种传输数据的方法,该方法包括:基站发送包括多个难题的广播消息,其中,所述多个难题的难度不同;所述基站从IoT设备接收第一数据、第一难题的指示信息和所述第一难题的答案,其中,所述第一难题是所述IoT设备根据所述第一数据的大小从所述多个难题中确定的;所述基站在所述第一难题的难度与所述第一数据的大小匹配,且所述第一难题的答案正确时,向核心网设备发送所述第一数据或者对所述第一数据解密后的数据;或者所述基站在所述第一难题的难度与所述第一数据的大小不匹配时,禁止向核心网设备发送所述第一数据或者对所述第一数据解密后的数据;或者所述基站在所述第一难题的答案不正确时,禁止向核心网设备发送所述第一数据或者对所述第一数据解密后的数据。
根据本发明实施例提供的传输数据的方法,基站发送包括多个难度不同的难题的广播消息,接收到该广播消息的IoT设备需要从中确定一个难度与待发送的数据的大小匹配的难题,从而可以提高数据传输的效率。基站接收到IoT设备发送的数据、难题的指示信息和难题的答案后,如果难题的难度与该数据的大小匹配,并且该答案正确,则向核心网发送该数据;如果难题的难度与该数据的大小不匹配或者该答案不正确,则禁止向核心网发送该数据,从而避免了DDoS攻击对核心网的影响。
可选地,该方法还包括:所述基站发送包括签名信息的所述广播消息,所述签名信息用于所述IoT设备验证所述广播消息的完整性以及所述广播消息的发送端是否为所述基站。从而可以防止IoT设备被非法消息欺骗。
可选地,该方法还包括:所述基站在第一时刻与第二时刻的差值小于预设的时间阈值时,处理所述第一数据、所述第一难题的指示信息和所述第一难题的答案,其中,所述第一时刻是所述基站发送所述广播消息的时刻,所述第二时刻是所述基站接收到承载所述第一数据、所述第一难题的指示信息和所述第一难题的答案的消息的时刻。
本发明实施例提供的传输数据的方法,基站通过验证第一时刻与第二时刻的差值是否小于预设的时间阈值,可以防止基站受到被劫持的IoT设备的重放攻击。
可选地,该方法还包括:所述基站从所述IoT设备接收完整性验证信息,所述完整性验证信息用于验证第一消息的完整性以及所述第一消息的发送端是否为所述IoT设备,所述第一消息为承载所述第一数据、所述第一难题的指示信息和所述第一难题的答案的消息;所述基站在所述第一消息的完整性验证通过,且确定所述第一消息的发送端是所述IoT设备,且所述第一难题的难度与所述第一数据的大小匹配,且所述第一难题的答案正确时,向所述核心网设备发送所述第一数据或者对所述第一数据解密后的数据;或者所述基站在所述第一难题的难度与所述第一数据的大小匹配,且所述第一难题的答案正确时,向所述核心网设备发送所述完整性验证消息。从而可以防止基站或核心网设备被非法消息欺骗。
可选地,该方法还包括:所述基站发送包括第一指示信息的所述广播消息,所述第一指示信息用于指示接收到所述广播消息的IoT设备从所述多个难题中确定难度与待发送的数据的大小匹配的难题。从而可以灵活确定待发送的数据的大小与难题的难度的对应关系。
可选地,该方法还包括:所述基站发送包括第二指示信息的所述广播消息,所述第二指示信息用于指示接收到所述广播消息的IoT设备在发送数据时同时发送所述多个难题中的一个难题的答案。从而基站可以根据实际情况灵活确定IoT设备是否需要计算难题。
另一方面,提供了一种传输数据的方法,该方法包括:IoT设备从基站接收包括多个难题的广播消息;所述IoT设备根据第一数据的大小从所述多个难题中确定第一难题并计算出所述第一难题的答案,所述第一难题的难度与所述第一数据的大小匹配;所述IoT设备向所述基站发送所述第一数据、所述第一难题的指示信息和所述第一难题的答案。
根据本发明实施例提供的传输数据的方法,IoT设备接收到基站发送的包括多个难题的广播消息后,根据待发送数据的大小从该多个难题中确定对应难度的难题,计算出该难题的答案后将该答案与待发送的数据一起发送给基站,从而延长了数据发送的周期,进而减小了计算难题对传输数据造成的影响,同时减小了因IoT设备被劫持向基站发起DDoS攻击对基站和核心网设备的影响。
可选地,该方法还包括:所述IoT设备从基站接收包括签名信息的所述广播消息,所述签名信息用于验证所述广播消息的完整性以及所述广播消息的发送端是否为所述基站;所述IoT设备在所述广播消息的完整性验证通过,且确定所述广播消息的发送端是所述基站时,根据所述第一数据的大小从所述多个难题中确定所述第一难题。从而可以防止IoT设备被非法消息欺骗。
可选地,该方法还包括:所述IoT设备向所述基站发送完整性验证信息,所述完整性验证信息用于验证第一消息的完整性以及所述第一消息的发送端是否为所述IoT设备,所述第一消息是承载所述第一数据、所述第一难题的指示信息和所述第一难题的答案的消息。从而可以防止基站或核心网设备被非法消息欺骗。
可选地,该方法还包括:所述IoT设备从所述基站接收包括第一指示信息的所述广播消息;所述IoT设备根据所述第一指示信息从所述多个难题中确定难度与所述第一数据的大小匹配的难题。从而可以灵活确定待发送的数据的大小与难题的难度的对应关系。
可选地,该方法还包括:所述IoT设备从所述基站接收包括第二指示信息的所述广播消息;所述IoT设备根据所述第二指示信息确定在发送数据时同时发送所述多个难题中的一个难题的答案。从而基站可以根据实际情况灵活确定IoT设备是否需要计算难题。
再一方面,本发明实施例提供了一种传输数据的装置,该装置可以实现上述方面所涉及的方法中基站所执行的功能,所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个上述功能相应的单元或模块。
在一种可能的设计中,该装置的结构中包括处理器和收发器,该处理器被配置为支持该装置执行上述方法中相应的功能。该收发器用于支持该装置与其它装置之间的通信。该装置还可以包括存储器,该存储器用于与处理器耦合,其保存该装置必要的程序指令和数据。
再一方面,本发明实施例提供了一种传输数据的装置,该装置可以实现上述方面所涉及的方法中IoT设备所执行的功能,所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个上述功能相应的单元或模块。
在一种可能的设计中,该装置的结构中包括处理器和收发器,该处理器被配置为支持该装置执行上述方法中相应的功能。该收发器用于支持该装置与其它装置之间的通信。该装置还可以包括存储器,该存储器用于与处理器耦合,其保存该装置必要的程序指令和数据。
再一方面,本发明实施例提供了一种计算机存储介质,用于储存为上述基站所用的计算机软件指令,其包含用于执行上述方面所设计的程序。
再一方面,本发明实施例提供了一种计算机存储介质,用于储存为上述IoT设备所用的计算机软件指令,其包含用于执行上述方面所设计的程序。
相比于现有技术,根据本发明实施例提供的传输数据的方法,基站发送包括多个难度不同的难题的广播消息,接收到该广播消息的IoT设备需要从中确定一个难度与待发送的数据的大小匹配的难题,从而可以提高数据传输的效率。基站接收到IoT设备发送的数据、难题的指示信息和难题的答案后,如果难题的难度与该数据的大小匹配,并且该答案正确,则向核心网发送该数据;如果难题的难度与该数据的大小不匹配或者该答案不正确,则禁止向核心网发送该数据,从而避免了DDoS攻击对核心网的影响。
附图说明
图1是适用本发明实施例的一种可能的网络架构的示意图;
图2是是数字签名和验证过程的示意图;
图3是基于身份的密码机制的示意图;
图4是本发明实施例提供的一种传输数据的方法的示意性流程图;
图5A是本发明实施例提供的另一种传输数据的方法的示意性流程图;
图5B是本发明实施例提供的再一种传输数据的方法的示意性流程图;
图6A是本发明实施例提供的再一种传输数据的方法的示意性流程图;
图6B是本发明实施例提供的再一种传输数据的方法的示意性流程图;
图7A是本发明实施例提供的再一种传输数据的方法的示意性流程图;
图7B是本发明实施例提供的再一种传输数据的方法的示意性流程图;
图8A是本发明实施例提供的再一种传输数据的方法的示意性流程图;
图8B是本发明实施例提供的再一种传输数据的方法的示意性流程图;
图9A是本发明实施例提供的再一种传输数据的方法的示意性流程图;
图9B是本发明实施例提供的再一种传输数据的方法的示意性流程图;
图10A是本发明实施例提供的一种可能的基站的结构示意图;
图10B是本发明实施例提供的另一种可能的基站的结构示意图;
图11A是本发明实施例提供的一种可能的IoT设备的结构示意图;
图11B是本发明实施例提供的另一种可能的IoT设备的结构示意图。
具体实施方式
下面将结合附图,对本发明实施例中的技术方案进行描述。
图1适用本发明实施例的一种可能的网络架构的示意图。如图1所示,该网络架构可以包括基站10、IoT设备20、IoT设备30和核心网设备40。图1中所示出的箭头表示设备与设备之间可以进行通信。IoT设备20例如可以是传感器,IoT设备30例如可以是智能电表,基站10可以是2G通信系统中的基站,也可以是3G或4G通信系统中的基站,还可以是未来5G通信系统中的基站。
图1所示的网络架构只是为了帮助本领域技术人员更好地理解本发明实施例,而非限制本发明实施例的范围。例如,图1中虽然只描述了两个IoT设备,但本发明实施例中还可以包括更多数量的IoT设备或者更少数量的IoT设备设备,本发明实施例对于IoT设备的类型也不作限定。
本发明实施例中,IoT设备与基站之间传输的信息可以是明文,也可以是密文,为了保证IoT设备和基站能够识别被篡改的消息或者非法消息,IoT设备与基站在发送消息前需要对待发送的消息进行签名处理。为方便理解,下面结合图2至图3对本发明实施例中涉及的加解密方法和签名方法进行简要描述。
1、非对称加密(asymmetric cryptography)
非对称加密是一种密码学算法类型,在这种密码学方法中,需要一对密钥,一个是私人密钥,另一个则是公开密钥。这两个密钥是数学相关,用某用户密钥加密后所得的信息,只能用该用户的解密密钥才能解密。如果知道了其中一个,并不能计算出另外一个。因此如果公开了一对密钥中的一个,并不会危害到另外一个的秘密性质。私钥是密钥对所有者持有,不可公布,公钥是密钥对持有者公布给他人的,因此称公开的密钥为公钥;不公开的密钥为私钥。
如果加密密钥是公开的,这用于客户给私钥所有者上传加密的数据,这被称作为公开密钥加密,用公钥加密的数据只能使用私钥解密,私钥用来解密公钥加密的数据。常见的公钥加密算法有:RSA(由发明者Rivest、Shmir和Adleman姓氏首字母缩写而来)算法、ElGamal、背包算法、Rabin(RSA的特例)、椭圆曲线加密算法(Elliptic CurveCryptography,简称“ECC”)。使用最广泛的是RSA算法,是著名的公开金钥加密算法。
如果解密密钥是公开的,用私钥加密的信息,可以用公钥对其解密,用于客户验证持有私钥一方发布的数据或文件是完整准确的,接收者由此可知这条信息确实来自于拥有私钥的某人,这被称作数字签名,公钥的形式就是数字证书。例如,从网上下载的安装程序,一般都带有程序制作者的数字签名,可以证明该程序的确是该作者(公司)发布的而不是第三方伪造的且未被篡改过(身份认证/验证)。
2、数字签名及其验证
图2是数字签名和验证的示意图。如图2所示,发送方使用私钥对需要传输文本的摘要进行加密,得到的密文即被称为该次传输过程的数字签名(简称为“签名”),其中,传输文本的摘要是对需要传输的文本做HASH(哈希)计算(例如SHA1和SHA2)后得到的。
接收方,即收到数据的一方拿到该传输文本后,需要确认该文本是否就是发送方所发出的内容,中途是否曾经被篡改。因此接收方可以拿自己持有的公钥对签名进行解密(密钥对中的一种密钥加密的数据必定能使用另一种密钥解密),得到了传输文本的摘要,然后使用与发送方同样的HASH算法计算摘要值,再与解密得到的摘要做对比,如果发现二者完全一致,则说明传输文本没有被篡改过。
在签名的过程中,接收方需要自己保管好公钥,但是每一个发送方都有一个公钥,那么接收方需要保存非常多的公钥,这根本就管理不过来。并且本地保存的公钥有可能被篡改替换,无从发现。那么为了解决这个问题,可以由一个统一的证书管理机构来管理所有发送方的公钥,并对这些公钥进行认证和加密。这个机构也就是我们常说的证书代理机构(Certificate Agency,简称“CA”)。认证加密后的公钥,即是证书,又称为CA证书,证书中包含了很多信息,最重要的是申请者的公钥。CA机构在给公钥加密时,用的是一个统一的密钥对,在加密公钥时,用的是其中的私钥。这样,申请者拿到证书后,在发送数据时,用自己的私钥生成签名,将签名、证书和发送内容一起发给对方,对方拿到了证书后,需要对证书解密以获取到证书中的公钥,解密需要用到CA机构的“统一密钥对”中的公钥,这个公钥也就是我们常说的CA根证书,通常需要我们到证书颁发机构去下载并安装到相应的收取数据的客户端,如浏览器上面。这个公钥只需要安装一次。有了这个公钥之后,就可以解密证书,拿到发送方的公钥,然后解密发送方发过来的签名,获取摘要,重新计算摘要,作对比,以验证数据内容的完整性。
3、基于身份的密码机制
基于身份的密码机制(Identity-Based Cryptography,简称“IBC”)包括基于身份的签名技术(Identity Based Signature,简称“IBS”)和基于身份的加密技术(IdentityBased Encryption,简称“IBE”)。每个用户拥有自己的公私钥对,其中公钥为有意义的字符串(身份),例如Email地址、电话号码等;用户的私钥由私钥生成中心(Private KeyGenerator,简称“PKG”)根据用户ID和PKG的主私钥生成,签名过程中无需PKG参与,签名验证只需要签名、消息、身份和主公钥。传统公钥基础设施(Public Key Infrastructure,简称“PKI”)机制与IBC的不同在于,PKI中用户拥有一对不同的公私钥,公钥为随机字符串,需要证书中心对公钥签名来确认某个公钥是属于某个用户的,签名或加密过程中需要验证证书。
如图3所示的基于身份的密码机制的示意图,用户Alice和Bob分别拥有自己的公私钥对,PKG根据Alice的IDAlice和PKG的主私钥生成Alice的私钥SKAlice,Alice使用其私钥对需要传输的消息进行签名,签名过程中无需PKG参与,Bob对Alice发送的签名进行验证时只需要签名、消息、IDAlice和主公钥GPK。
上文举例介绍了可以应用于本发明实施例的加解密方法和签名方法,应理解,本发明实施例还可以应用其它的加解密方法和签名方法。下面,将结合图4详细介绍根据本发明实施例的传输数据的方法。
图4是本发明实施例提供的传输数据的方法的示意性流程图。如图4所示,该方法100包括:
S110,基站发送包括多个难题的广播消息,其中,所述多个难题的难度不同。
基站发送广播消息前事先生成多个难度不同的难题,不同难度的难题对应不同的允许上传数据的大小。生成难题的方法可以参照现有技术中的难题生成方法,在此不再赘述。
基站可以根据实际情况设置难题的难度与允许上传数据的大小的对应关系,例如,对于一个大小固定的数据,当基站判断当前受到DDoS攻击的威胁较大时,可以设置该数据对应高难度的难题,从而可以延长IoT设备的发送周期;当基站判断当前受到DDoS攻击的威胁较小时,可以设置该数据对应低难度的难题,从而可以缩短IoT设备的发送周期。
基站可以每隔t秒发送该广播消息,也可以根据实际需要(例如当前基站遭受DDoS攻击)发送该广播消息。
可选地,基站发送的广播消息还包括签名信息(Sig_BS),该签名信息用于IoT设备验证所述广播消息的完整性以及所述广播消息的发送端是否为所述基站。从而可以防止IoT设备被非法消息欺骗。
可选地,基站发送的广播消息还包括时间戳信息(TS),该时间戳信息用于记录该广播消息的发送时间,IoT设备向基站发送的消息也携带该时间戳信息,基站接收到该IoT设备发送的消息后,根据接收到该IoT设备的消息的时刻(即,第二时刻)以及该时间戳信息所指示的时刻(即,第一时刻)确定该消息是否为重放攻击消息,当第一时刻与第二时刻的差值小于或等于预设的时间阈值时,基站可以确定该消息为正常消息,当第一时刻与第二时刻的差值大于预设的时间阈值时,基站可以确定该消息为重放攻击消息,从而可以防止基站受到被劫持的IoT设备的重放攻击。
可选地,基站发送的广播消息还包括第一指示信息,该第一指示信息用于指示接收到所述广播消息的IoT设备从所述多个难题中确定难度与待发送的数据的大小匹配的难题(即,该第一指示信息指示难题的难度与待发送的数据的大小的对应关系)。从而可以灵活确定待发送的数据的大小与难题的难度的对应关系。
可选地,基站发送的广播消息还包括第二指示信息(P_Ind),该第二指示信息用于指示接收到该广播消息的IoT设备是否需要计算难题。例如,当基站受到DDoS攻击时,可以将P_Ind设置为1,用于指示接收到该广播消息的IoT设备需要计算难题并将答案与待发送的数据一起发送;当基站没有受到DDoS攻击时,可以将P_Ind设置为0,用于指示接收到该广播消息的IoT设备无需计算难题即可向基站发送数据,从而可以灵活确定IoT设备是否需要计算难题。
S120,IoT设备根据第一数据的大小从所述多个难题中确定第一难题并计算出所述第一难题的答案,所述第一难题的难度与所述第一数据的大小匹配。
IoT设备接收到该广播消息后根据第一数据(即,当前的待发送数据)的大小从广播消息携带的多个难题中确定第一难题,第一难题的难度与第一数据的大小匹配。IoT设备可以根据预设在该IoT设备内的对应关系(即,难题的难度与允许上传数据的大小的对应关系)确定第一难题,也可以根据广播消息中携带的指示该对应关系的指示信息确定第一难题。
本发明实施例中,第一数据的大小可以是加密前的数据的大小,也可以是加密后的数据的大小。优选地,该第一数据为加密后的数据的大小,从而基站无需对接收到的数据进行解密即可判断接收到的数据的大小与IoT设备选择的难题的难度是否匹配,提高了基站抗DDoS攻击的能力。
S130,IoT设备向所述基站发送所述第一数据、所述第一难题的指示信息和所述第一难题的答案。
可选地,IoT设备还向基站发送完整性验证信息,该完整性验证信息用于验证第一消息的完整性以及该第一消息的发送端是否为所述IoT设备,其中,所述第一消息是承载所述第一数据、所述第一难题的指示信息和所述第一难题的答案的消息。该完整性验证信息例如可以是消息认证码(Message Authentication Code,MAC),也可以是所述IoT设备的证书(Device_Certi)和签名(Sig)。基站确定第一难题的难度与第一数据的大小匹配,且第一难题的答案正确之后,基站可以根据该完整性验证消息成功验证第一消息的完整性后将第一消息发送给核心网,基站也可以将该完整性验证消息发送给核心网设备,以便于核心网设备验证第一消息的完整性,从而可以防止基站或核心网设备被非法消息欺骗。
S140,基站验证第一难题的难度与第一数据的大小是否匹配,以及第一难题的答案是否正确,
当第一难题的难度与第一数据的大小不匹配时,禁止向核心网设备发送该第一数据或者对该第一数据解密后的数据;或者
当第一难题的答案不正确时,禁止向核心网设备发送该第一数据或者对该第一数据解密后的数据。
基站接收到承载所述第一数据、所述第一难题的指示信息和所述第一难题的答案的消息后,根据第一难题的指示信息确定IoT设备选择的难题,并验证第一难题的难度与第一数据的大小是否匹配,以及第一难题的答案是否正确。只有当第一难题的难度与第一数据的大小匹配,且第一难题的答案正确时,基站才向核心网设备发送该第一数据,如果该第一数据是加密的数据,基站还可以将该第一数据解密后向核心网设备发送解密后的数据。
因此,根据本发明实施例提供的传输数据的方法,基站发送包括多个难度不同的难题的广播消息,接收到该广播消息的IoT设备需要从中确定一个难度与待发送的数据的大小匹配的难题,从而可以提高数据传输的效率。基站接收到IoT设备发送的数据、难题的指示信息和难题的答案后,如果难题的难度与该数据的大小匹配,并且该答案正确,则向核心网发送该数据;如果难题的难度与该数据的大小不匹配或者该答案不正确,则禁止向核心网发送该数据,从而避免了DDoS攻击对核心网的影响。
上文结合图1至图4详细介绍了根据本发明实施例的传输数据的方法,但本发明实施例不限于此,下面,将基于上面所述的本发明实施例涉及的共性方面,对本发明实施例进一步详细说明。
图5A为本发明实施例提供的另一种传输数据的方法的示意性流程图,如图5A所示,该方法200包括:
S201,基站周期性发送广播消息,该广播消息携带基站的标识信息(BS_ID)、时间戳(TS)、第二指示信息(P_Ind)、多个难度不同的难题(Puzzles)以及基站的签名(Sig_BS)。
基站在发送广播消息前生成多个难度不同的难题,如Puzzle 1,Puzzle 2,…,Puzzle N,其生成方式为Puzzle 1=(Rand1’,k1,H(TS,Rand1,..)),Puzzle 2=(Rand2’,k2,H(TS,Rand2,..)),其中TS为时间戳信息,RAND1为随机数1,RAND1’处理过后的RAND1,其处理方式为把RAND1中的k1位盖住,具体可通过设为0或者1来实现。H()为哈希函数。Puzzle 2同理。不同的Puzzle的难度不同,不同难度的Puzzle对应不同的允许上传的数据的大小。上述实施例仅是举例说明,还可以通过现有技术的其它方法生成多个难度不同的难题,在此不再赘述。
基站可以每隔t秒发送上述广播消息,其中,P_Ind用于指示需不需要计算难题。例如,如果基站遭受DoS攻击,可将P_Ind设为1,表示需要计算难题;如果基站未遭受DoS攻击,可将P_Ind设为0,表示不需要计算难题。Sig_BS为基站对该消息的签名。
S202,IoT设备接收到基站发送的上述广播消息后,如果该IoT设备有需要上传的数据,则首先通过BS_ID验证Sig_BS,以确定该广播消息的完整性以及确定该广播消息是否为该基站发出的。如果验证通过,然后根据P_Ind确定是否需要计算难题。如果需要计算难题,则可以根据预设的对应关系以及待发送的数据的大小从多个难度不同的难题中确定难度合适的难题。例如,IoT设备确定需要计算Puzzle 1,计算方式可以是基于接收到的Rand1’尝试被盖住k1位的数字,每次尝试需要计算一次H(TS,RAND’,..),直到找到H(TS,RAND’,..)=H(TS,RAND1,..),然后将找到的这个随机数作为答案(Puzzle Solution,PS)。同时利用IBS的特点计算对称密钥K,即K=e(xH(Device_ID),H(BS_ID))。
S203,IoT设备向基站发送第一消息,该第一消息包括IoT设备的标识信息(Device_ID)、时间戳(TS)、IoT设备所选择的难题的指示信息(PZ#)、IoT设备所选择的难题的答案(PS)、基于对称密钥K加密的小数据En(SDS-PDU,K)以及基于K生成的MAC,其中,第一消息中的TS为该IoT设备接收到的上述广播消息中携带的TS,SDS-PDU表示未加密的数据。
S204,基站接收到第一消息后,首先验证接收到该第一消息的时刻(即,第二时刻)与TS所指示的时刻(即,第一时刻)的差值是否小于或等于预设的时间阈值,如果第二时刻与第一时刻的差值小于或等于该时间阈值,则确定该第一消息为合法消息,并对该第一消息进行后续处理;如果第二时刻与第一时刻的差值大于该时间阈值,则确定该第一消息为非法消息,可以删除该第一消息承载的数据,从而可以避免基站受到被劫持的IoT设备的重放攻击。
基站成功验证TS(即,确定该第一消息为合法消息)之后,进一步验证PS是否正确以及PZ#指示的难题的难度与En(SDS-PDU,K)的大小是否匹配,如果PS不正确,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PZ#指示的难题的难度与En(SDS-PDU,K)的大小不匹配,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PS正确,且PZ#指示的难题的难度与En(SDS-PDU,K)的大小匹配,则利用IBS的特点计算对称密钥K,即K=e(xH(BS_ID),H(Device_ID))。然后利用生成的K验证MAC,验证通过后利用K解密En(SDS-PDU,K)。基站可以先验证PS再验证PZ#,也可以先验证PZ#再验证PS。
S205,基站将小数据消息(SDS-PDU)发送给服务小数据处理功能(Serving SmallData Handling Function,Serving SDHF)。Serving SDHF属于核心网设备。
S206,Serving SDHF将小数据消息(SDS-PDU)转发给网关小数据处理功能(Gateway Small Data Handling Function,Gateway SDHF)。Gateway SDHF属于核心网设备。
S207,Gateway SDHF将小数据消息(SDS-PDU)转发给应用服务器(ApplicationServer,AS)或者服务提供服务器(Service Capability Server,SCS)。
S208,SCS/AS收到小数据消息(SDS-PDU)后发送确认消息(Ack)给Gateway SDHF。
S209,Gateway SDH收到SCS/AS发送的确认消息后,转发给Serving SDHF。
S210,Serving SDHF收到Gateway SDH发送的确认消息后,转发给基站。
S211,基站收到Serving SDHF发送的确认消息后,转发给IoT设备。
上述步骤中,S208、S209、S210和S211为可选步骤,此外,上述生成和使用对称密钥K的方法仅是举例说明,其它利用IBS的特点(即双方ID)生成对称密钥的方法都可以应用于本发明实施例。方法200中,基站和IoT设备均预置了基于IBS的公私钥。
因此,根据本发明实施例的传输数据的方法200,基站发送包括多个难度不同的难题的广播消息,接收到该广播消息的IoT设备需要从中确定一个难度与待发送的数据的大小匹配的难题,从而可以提高数据传输的效率。基站接收到IoT设备发送的数据、难题的指示信息和难题的答案后,如果难题的难度与该数据的大小匹配,并且该答案正确,则向核心网发送该数据;如果难题的难度与该数据的大小不匹配或者该答案不正确,则禁止向核心网发送该数据,从而避免了DDoS攻击或者其它攻击对核心网的影响。
图5B为本发明实施例提供的再一种传输数据的方法的示意性流程图,如图5B所示,该方法300包括:
S301,基站周期性发送广播消息,该广播消息携带基站的标识信息(BS_ID)、基站的证书(BS_Certi)、时间戳(TS)、第二指示信息(P_Ind)、多个难度不同的难题(Puzzles)以及基站的签名(Sig_BS)。
基站在发送广播消息前生成多个难度不同的难题,如Puzzle 1,Puzzle 2,…,Puzzle N,其生成方式为Puzzle 1=(Rand1’,k1,H(TS,Rand1,..)),Puzzle 2=(Rand2’,k2,H(TS,Rand2,..)),其中TS为时间戳信息,RAND1为随机数1,RAND1’处理过后的RAND1,其处理方式为把RAND1中的k1位盖住,具体可通过设为0或者1来实现。H()为哈希函数。Puzzle 2同理。不同的Puzzle的难度不同,不同难度的Puzzle对应不同的允许上传的数据的大小。上述实施例仅是举例说明,还可以通过现有技术的其它方法生成多个难度不同的难题,在此不再赘述。
基站可以每隔t秒发送上述广播消息,其中,P_Ind用于指示需不需要计算难题。例如,如果基站遭受DoS攻击,可将P_Ind设为1,表示需要计算难题;如果基站未遭受DoS攻击,可将P_Ind设为0,表示不需要计算难题。Sig_BS为基站对该消息的签名。
S302,IoT设备接收到基站发送的上述广播消息后,如果该IoT设备有需要上传的数据,则首先通过基站的公钥(BS’s Public Key)验证Sig_BS,以确定该广播消息的完整性以及确定该广播消息是否为该基站发出的。如果验证通过,然后根据P_Ind确定是否需要计算难题。如果需要计算难题,则可以根据预设的对应关系以及待发送的数据的大小从多个难度不同的难题中确定难度合适的难题。例如,IoT设备确定需要计算Puzzle 1,计算方式可以是基于接收到的Rand1’尝试被盖住k1位的数字,每次尝试需要计算一次H(TS,RAND’,..),直到找到H(TS,RAND’,..)=H(TS,RAND1,..),然后将找到的这个随机数作为答案(Puzzle Solution,PS)。
S303,IoT设备向基站发送第一消息,该第一消息包括IoT设备的标识信息(Device_ID)、时间戳(TS)、IoT设备的证书(Device_Certi)、IoT设备所选择的难题的指示信息(PZ#)、IoT设备所选择的难题的答案(PS)、基于基站的公钥加密的小数据En(SDS-PDU,BS’s Public Key)以及IoT设备的签名(Sig),其中,第一消息中的TS为该IoT设备接收到的上述广播消息中携带的TS,SDS-PDU表示未加密的数据。
S304,基站接收到第一消息后,首先验证接收到该第一消息的时刻(即,第二时刻)与TS所指示的时刻(即,第一时刻)的差值是否小于或等于预设的时间阈值,如果第二时刻与第一时刻的差值小于或等于该时间阈值,则确定该第一消息为合法消息,并对该第一消息进行后续处理;如果第二时刻与第一时刻的差值大于该时间阈值,则确定该第一消息为非法消息,可以删除该第一消息承载的数据,从而可以避免基站受到被劫持的IoT设备的重放攻击。
基站成功验证TS(即,确定该第一消息为合法消息)之后,进一步验证PS是否正确以及PZ#指示的难题的难度与En(SDS-PDU,BS’s Public Key)的大小是否匹配,如果PS不正确,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PZ#指示的难题的难度与En(SDS-PDU,BS’s Public Key)的大小不匹配,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PS正确,且PZ#指示的难题的难度与En(SDS-PDU,BS’s PublicKey)的大小匹配,则验证Sig,验证通过后利用其私钥解密小数据包SDS-PDU。基站可以先验证PS再验证PZ#,也可以先验证PZ#再验证PS。
S305,基站将解密后的小数据(SDS-PDU)发送给Serving SDHF。
S306,Serving SDHF将SDS-PDU转发给Gateway SDHF。
S307,Gateway SDHF将SDS-PDU转发给SCS/AS。
S308,SCS/AS收到SDS-PDU后发送确认消息(Ack)给Gateway SDHF。
S309,Gateway SDH收到SCS/AS发送的Ack后,转发给Serving SDHF。
S310,Serving SDHF收到Gateway SDH发送的Ack后,转发给基站。
S311,基站收到Serving SDHF发送的Ack后,转发给IoT设备。
上述步骤中,S308、S309、S310和S311为可选步骤,此外,方法300中,基站和IoT设备均预置了基于证书的公私钥。
因此,根据本发明实施例的传输数据的方法300,基站发送包括多个难度不同的难题的广播消息,接收到该广播消息的IoT设备需要从中确定一个难度与待发送的数据的大小匹配的难题,从而可以提高数据传输的效率。基站接收到IoT设备发送的数据、难题的指示信息和难题的答案后,如果难题的难度与该数据的大小匹配,并且该答案正确,则向核心网发送该数据;如果难题的难度与该数据的大小不匹配或者该答案不正确,则禁止向核心网发送该数据,从而避免了DDoS攻击或其它攻击对核心网的影响。
图6A为本发明实施例提供的再一种传输数据的方法的示意性流程图,如图6A所示,该方法400包括:
S401,基站周期性发送广播消息,该广播消息携带基站的标识信息(BS_ID)、时间戳(TS)、第二指示信息(P_Ind)、多个难度不同的难题(Puzzles)以及基站的签名(Sig_BS)。
基站在发送广播消息前生成多个难度不同的难题,如Puzzle 1,Puzzle 2,…,Puzzle N,其生成方式为Puzzle 1=(Rand1’,k1,H(TS,Rand1,..)),Puzzle 2=(Rand2’,k2,H(TS,Rand2,..)),其中TS为时间戳,RAND1为随机数1,RAND1’处理过后的RAND1,其处理方式为把RAND1中的k1位盖住,具体可通过设为0或者1来实现。H()为哈希函数。Puzzle 2同理。不同的Puzzle的难度不同,不同难度的Puzzle对应不同的允许上传的数据的大小。上述实施例仅是举例说明,还可以通过现有技术的其它方法生成多个难度不同的难题,在此不再赘述。
基站可以每隔t秒发送上述广播消息,其中,P_Ind用于指示需不需要计算难题。例如,如果基站遭受DoS攻击,可将P_Ind设为1,表示需要计算难题;如果基站未遭受DoS攻击,可将P_Ind设为0,表示不需要计算难题。Sig_BS为基站对该消息的签名。
S402,IoT设备接收到基站发送的上述广播消息后,如果该IoT设备有需要上传的数据,则首先通过BS_ID验证Sig_BS,以确定该广播消息的完整性以及确定该广播消息是否为该基站发出的。如果验证通过,然后根据P_Ind确定是否需要计算难题。如果需要计算难题,则可以根据预设的对应关系以及待发送的数据的大小从多个难度不同的难题中确定难度合适的难题。例如,IoT设备确定需要计算Puzzle 1,计算方式可以是基于接收到的Rand1’尝试被盖住k1位的数字,每次尝试需要计算一次H(TS,RAND’,..),直到找到H(TS,RAND’,..)=H(TS,RAND1,..),然后将找到的这个随机数作为答案(Puzzle Solution,PS)。
S403,IoT设备向基站发送第一消息,该第一消息包括IoT设备的标识信息(Device_ID)、时间戳(TS)、IoT设备所选择的难题的指示信息(PZ#)、IoT设备所选择的难题的答案(PS)、基于Serving SDHF的公钥(即Serving SDHF的ID)加密的小数据En(SDS-PDU,S-SDHF-ID)以及IoT设备的签名(Sig),其中,第一消息中的TS为该IoT设备接收到的上述广播消息中携带的TS,SDS-PDU表示未加密的数据。
S404,基站接收到第一消息后,首先验证接收到该第一消息的时刻(即,第二时刻)与TS所指示的时刻(即,第一时刻)的差值是否小于或等于预设的时间阈值,如果第二时刻与第一时刻的差值小于或等于该时间阈值,则确定该第一消息为合法消息,并对该第一消息进行后续处理;如果第二时刻与第一时刻的差值大于该时间阈值,则确定该第一消息为非法消息,可以删除该第一消息承载的数据,从而可以避免基站受到被劫持的IoT设备的重放攻击。
基站成功验证TS(即,确定该第一消息为合法消息)之后,进一步验证PS是否正确以及PZ#指示的难题的难度与En(SDS-PDU,S-SDHF-ID)的大小是否匹配,如果PS不正确,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PZ#指示的难题的难度与En(SDS-PDU,S-SDHF-ID)的大小不匹配,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PS正确,且PZ#指示的难题的难度与En(SDS-PDU,S-SDHF-ID)的大小匹配,则向Serving SDHF转发加密的数据En(SDS-PDU,S-SDHF-ID)。基站可以先验证PS再验证PZ#,也可以先验证PZ#再验证PS。
S405,基站将加密的小数据En(SDS-PDU,S-SDHF-ID)、IoT设备的标识(Device_ID)和IoT设备的签名(Sig)发送给Serving SDHF。
S406,Serving SDHF接收到上述信息后,首先通过Device_ID验证Sig,验证通过后利用Serving SDHF的私钥解密En(SDS-PDU,S-SDHF-ID)。
S407,Serving SDHF将小数据(SDS-PDU)转发给Gateway SDHF。
S408,Gateway SDHF将SDS-PDU转发给SCS/AS。
S409,SCS/AS收到SDS-PDU后发送确认消息(Ack)给Gateway SDHF。
S410,Gateway SDH收到SCS/AS发送的Ack后,转发给Serving SDHF。
S411,Serving SDHF收到Gateway SDH发送的Ack后,转发给基站。
S412,基站收到Serving SDHF发送的Ack后,转发给IoT设备。
上述步骤中,S409、S410、S411和S412为可选步骤,此外,方法400中,基站和IoT设备均预置了基于IBS的公私钥。
因此,根据本发明实施例的传输数据的方法400,基站发送包括多个难度不同的难题的广播消息,接收到该广播消息的IoT设备需要从中确定一个难度与待发送的数据的大小匹配的难题,从而可以提高数据传输的效率。基站接收到IoT设备发送的数据、难题的指示信息和难题的答案后,如果难题的难度与该数据的大小匹配,并且该答案正确,则向核心网发送该数据;如果难题的难度与该数据的大小不匹配或者该答案不正确,则禁止向核心网发送该数据,从而避免了DDoS攻击对核心网的影响。
图6B为本发明实施例提供的再一种传输数据的方法的示意性流程图,如图6B所示,该方法500包括:
S501,基站周期性发送广播消息,该广播消息携带基站的标识信息(BS_ID)、基站的证书(BS_Certi)、时间戳(TS)、第二指示信息(P_Ind)、多个难度不同的难题(Puzzles)以及基站的签名(Sig_BS)。
基站在发送广播消息前生成多个难度不同的难题,如Puzzle 1,Puzzle 2,…,Puzzle N,其生成方式为Puzzle 1=(Rand1’,k1,H(TS,Rand1,..)),Puzzle 2=(Rand2’,k2,H(TS,Rand2,..)),其中TS为时间戳信息,RAND1为随机数1,RAND1’处理过后的RAND1,其处理方式为把RAND1中的k1位盖住,具体可通过设为0或者1来实现。H()为哈希函数。Puzzle 2同理。不同的Puzzle的难度不同,不同难度的Puzzle对应不同的允许上传的数据的大小。上述实施例仅是举例说明,还可以通过现有技术的其它方法生成多个难度不同的难题,在此不再赘述。
基站可以每隔t秒发送上述广播消息,其中,P_Ind用于指示需不需要计算难题。例如,如果基站遭受DoS攻击,可将P_Ind设为1,表示需要计算难题;如果基站未遭受DoS攻击,可将P_Ind设为0,表示不需要计算难题。Sig_BS为基站对该消息的签名。
S502,IoT设备接收到基站发送的上述广播消息后,如果该IoT设备有需要上传的数据,则首先通过基站的公钥(BS’s Public Key)验证Sig_BS,以确定该广播消息的完整性以及确定该广播消息是否为该基站发出的。如果验证通过,然后根据P_Ind确定是否需要计算难题。如果需要计算难题,则可以根据预设的对应关系以及待发送的数据的大小从多个难度不同的难题中确定难度合适的难题。例如,IoT设备确定需要计算Puzzle 1,计算方式可以是基于接收到的Rand1’尝试被盖住k1位的数字,每次尝试需要计算一次H(TS,RAND’,..),直到找到H(TS,RAND’,..)=H(TS,RAND1,..),然后将找到的这个随机数作为答案(Puzzle Solution,PS)。
S503,IoT设备向基站发送第一消息,该第一消息包括IoT设备的标识信息(Device_ID)、时间戳(TS)、IoT设备的证书(Device_Certi)、IoT设备所选择的难题的指示信息(PZ#)、IoT设备所选择的难题的答案(PS)、基于Serving SDHF的公钥加密的小数据En(SDS-PDU,S-SDHF’s Public Key)以及IoT设备的签名(Sig),其中,第一消息中的TS为该IoT设备接收到的上述广播消息中携带的TS,SDS-PDU表示未加密的数据。
S504,基站接收到第一消息后,首先验证接收到该第一消息的时刻(即,第二时刻)与TS所指示的时刻(即,第一时刻)的差值是否小于或等于预设的时间阈值,如果第二时刻与第一时刻的差值小于或等于该时间阈值,则确定该第一消息为合法消息,并对该第一消息进行后续处理;如果第二时刻与第一时刻的差值大于该时间阈值,则确定该第一消息为非法消息,可以删除该第一消息承载的数据,从而可以避免基站受到被劫持的IoT设备的重放攻击。
基站成功验证TS(即,确定该第一消息为合法消息)之后,进一步验证PS是否正确以及PZ#指示的难题的难度与En(SDS-PDU,S-SDHF’s Public Key)的大小是否匹配,如果PS不正确,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PZ#指示的难题的难度与En(SDS-PDU,S-SDHF’s Public Key)的大小不匹配,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PS正确,且PZ#指示的难题的难度与En(SDS-PDU,S-SDHF’s Public Key)的大小匹配,则向Serving SDHF转发加密的数据En(SDS-PDU,S-SDHF’sPublic Key)。基站可以先验证PS再验证PZ#,也可以先验证PZ#再验证PS。
S505,基站将小数据消息(Device_ID,Device_Certi,En(SDS-PDU,S-SDHF’sPublic Key),Sig)发送给Serving SDHF。
S506,Serving SDHF接收到上述消息后,首先通过Device_ID验证Sig,验证通过后利用Serving SDHF的私钥解密En(SDS-PDU,S-SDHF’s Public Key)。
S507,Serving SDHF将小数据(SDS-PDU)转发给Gateway SDHF。
S508,Gateway SDHF将SDS-PDU转发给SCS/AS。
S509,SCS/AS收到SDS-PDU后发送确认消息(Ack)给Gateway SDHF。
S510,Gateway SDH收到SCS/AS发送的Ack后,转发给Serving SDHF。
S511,Serving SDHF收到Gateway SDH发送的Ack后,转发给基站。
S512,基站收到Serving SDHF发送的Ack后,转发给IoT设备。
上述步骤中,S509、S510、S511和S512为可选步骤,此外,方法500中,基站和IoT设备均预置了基于证书的公私钥。
因此,根据本发明实施例的传输数据的方法500,基站发送包括多个难度不同的难题的广播消息,接收到该广播消息的IoT设备需要从中确定一个难度与待发送的数据的大小匹配的难题,从而可以提高数据传输的效率。基站接收到IoT设备发送的数据、难题的指示信息和难题的答案后,如果难题的难度与该数据的大小匹配,并且该答案正确,则向核心网发送该数据;如果难题的难度与该数据的大小不匹配或者该答案不正确,则禁止向核心网发送该数据,从而避免了DDoS攻击或其它攻击对核心网的影响。
图7A为本发明实施例提供的再一种传输数据的方法的示意性流程图,如图7A所示,该方法600包括:
S601,基站周期性发送广播消息,该广播消息携带基站的标识信息(BS_ID)、时间戳(TS)、第二指示信息(P_Ind)、多个难度不同的难题(Puzzles)以及基站的签名(Sig_BS)。
基站在发送广播消息前生成多个难度不同的难题,如Puzzle 1,Puzzle 2,…,Puzzle N,其生成方式为Puzzle 1=(Rand1’,k1,H(TS,Rand1,..)),Puzzle 2=(Rand2’,k2,H(TS,Rand2,..)),其中TS为时间戳,RAND1为随机数1,RAND1’处理过后的RAND1,其处理方式为把RAND1中的k1位盖住,具体可通过设为0或者1来实现。H()为哈希函数。Puzzle 2同理。不同的Puzzle的难度不同,不同难度的Puzzle对应不同的允许上传的数据的大小。上述实施例仅是举例说明,还可以通过现有技术的其它方法生成多个难度不同的难题,在此不再赘述。
基站可以每隔t秒发送上述广播消息,其中,P_Ind用于指示需不需要计算难题。例如,如果基站遭受DoS攻击,可将P_Ind设为1,表示需要计算难题;如果基站未遭受DoS攻击,可将P_Ind设为0,表示不需要计算难题。Sig_BS为基站对该消息的签名。
S602,IoT设备接收到基站发送的上述广播消息后,如果该IoT设备有需要上传的数据,则首先通过BS_ID验证Sig_BS,以确定该广播消息的完整性以及确定该广播消息是否为该基站发出的。如果验证通过,然后根据P_Ind确定是否需要计算难题。如果需要计算难题,则可以根据预设的对应关系以及待发送的数据的大小从多个难度不同的难题中确定难度合适的难题。例如,IoT设备确定需要计算Puzzle 1,计算方式可以是基于接收到的Rand1’尝试被盖住k1位的数字,每次尝试需要计算一次H(TS,RAND’,..),直到找到H(TS,RAND’,..)=H(TS,RAND1,..),然后将找到的这个随机数作为答案(Puzzle Solution,PS)。同时利用IBS的特点计算对称钥K,即K=e(xH(Device_ID),H(BS_ID))。
S603,IoT设备向基站发送第一消息,该第一消息包括IoT设备的标识信息(Device_ID)、时间戳(TS)、IoT设备所选择的难题的指示信息(PZ#)、IoT设备所选择的难题的答案(PS)、基于AS的公钥(即AS的ID)加密的小数据En(SDS-PDU,AS-ID)以及基于K生成的MAC,其中,第一消息中的TS为该IoT设备接收到的上述广播消息中携带的TS,SDS-PDU表示未加密的数据。
S604,基站接收到第一消息后,首先验证接收到该第一消息的时刻(即,第二时刻)与TS所指示的时刻(即,第一时刻)的差值是否小于或等于预设的时间阈值,如果第二时刻与第一时刻的差值小于或等于该时间阈值,则确定该第一消息为合法消息,并对该第一消息进行后续处理;如果第二时刻与第一时刻的差值大于该时间阈值,则确定该第一消息为非法消息,可以删除该第一消息承载的数据,从而可以避免基站受到被劫持的IoT设备的重放攻击。
基站成功验证TS(即,确定该第一消息为合法消息)之后,进一步验证PS是否正确以及PZ#指示的难题的难度与En(SDS-PDU,AS-ID)的大小是否匹配,如果PS不正确,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PZ#指示的难题的难度与En(SDS-PDU,AS-ID)的大小不匹配,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PS正确,且PZ#指示的难题的难度与En(SDS-PDU,AS-ID)的大小匹配,则利用IBS的特点计算对称密钥K,即K=e(xH(BS_ID),H(Device_ID))。然后利用生成的K,验证MAC,验证通过后向Serving SDHF转发加密的数据En(SDS-PDU,AS-ID)。基站可以先验证PS再验证PZ#,也可以先验证PZ#再验证PS。
S605,基站将加密的小数据En(SDS-PDU,AS-ID)发送给Serving SDHF。
S606,Serving SDHF将En(SDS-PDU,AS-ID)转发给Gateway SDHF。
S607,Gateway SDHF将En(SDS-PDU,AS-ID)转发给SCS/AS。
S608,SCS/AS接收到En(SDS-PDU,AS-ID)后,使用SCS或AS的私钥解密En(SDS-PDU,AS-ID)。
S609,SCS/AS发送确认消息(Ack)给Gateway SDHF。
S610,Gateway SDH收到SCS/AS发送的Ack后,转发给Serving SDHF。
S611,Serving SDHF收到Gateway SDH发送的Ack后,转发给基站。
S612,基站收到Serving SDHF发送的Ack后,转发给IoT设备。
上述步骤中,S609、S610、S611和S612为可选步骤,此外,方法600中,基站和IoT设备均预置了基于IBS的公私钥。
因此,根据本发明实施例的传输数据的方法600,基站发送包括多个难度不同的难题的广播消息,接收到该广播消息的IoT设备需要从中确定一个难度与待发送的数据的大小匹配的难题,从而可以提高数据传输的效率。基站接收到IoT设备发送的数据、难题的指示信息和难题的答案后,如果难题的难度与该数据的大小匹配,并且该答案正确,则向核心网发送该数据;如果难题的难度与该数据的大小不匹配或者该答案不正确,则禁止向核心网发送该数据,从而避免了DDoS攻击或其它攻击对核心网的影响。
图7B为本发明实施例提供的再一种传输数据的方法的示意性流程图,如图7B所示,该方法700包括:
S701,基站周期性发送广播消息,该广播消息携带基站的标识信息(BS_ID)、基站的证书(BS_Certi)、时间戳(TS)、第二指示信息(P_Ind)、多个难度不同的难题(Puzzles)以及基站的签名(Sig_BS)。
基站在发送广播消息前生成多个难度不同的难题,如Puzzle 1,Puzzle 2,…,Puzzle N,其生成方式为Puzzle 1=(Rand1’,k1,H(TS,Rand1,..)),Puzzle 2=(Rand2’,k2,H(TS,Rand2,..)),其中TS为时间戳,RAND1为随机数1,RAND1’处理过后的RAND1,其处理方式为把RAND1中的k1位盖住,具体可通过设为0或者1来实现。H()为哈希函数。Puzzle 2同理。不同的Puzzle的难度不同,不同难度的Puzzle对应不同的允许上传的数据的大小。上述实施例仅是举例说明,还可以通过现有技术的其它方法生成多个难度不同的难题,在此不再赘述。
基站可以每隔t秒发送上述广播消息,其中,P_Ind用于指示需不需要计算难题。例如,如果基站遭受DoS攻击,可将P_Ind设为1,表示需要计算难题;如果基站未遭受DoS攻击,可将P_Ind设为0,表示不需要计算难题。Sig_BS为基站对该消息的签名。
S702,IoT设备接收到基站发送的上述广播消息后,如果该IoT设备有需要上传的数据,则首先通过基站的公钥(BS’s Public Key)验证Sig_BS,以确定该广播消息的完整性以及确定该广播消息是否为该基站发出的。如果验证通过,然后根据P_Ind确定是否需要计算难题。如果需要计算难题,则可以根据预设的对应关系以及待发送的数据的大小从多个难度不同的难题中确定难度合适的难题。例如,IoT设备确定需要计算Puzzle 1,计算方式可以是基于接收到的Rand1’尝试被盖住k1位的数字,每次尝试需要计算一次H(TS,RAND’,..),直到找到H(TS,RAND’,..)=H(TS,RAND1,..),然后将找到的这个随机数作为答案(Puzzle Solution,PS)。
S703,IoT设备向基站发送第一消息,该第一消息包括IoT设备的标识信息(Device_ID)、时间戳(TS)、IoT设备的证书(Device_Certi)、IoT设备所选择的难题的指示信息(PZ#)、IoT设备所选择的难题的答案(PS)、基于AS或SCS的公钥加密的小数据En(SDS-PDU,SCS/AS’s Public Key)以及基于IoT设备的私钥生成的Sig,其中,第一消息中的TS为该IoT设备接收到的上述广播消息中携带的TS,SDS-PDU表示未加密的数据。
S704,基站接收到第一消息后,首先验证接收到该第一消息的时刻(即,第二时刻)与TS所指示的时刻(即,第一时刻)的差值是否小于或等于预设的时间阈值,如果第二时刻与第一时刻的差值小于或等于该时间阈值,则确定该第一消息为合法消息,并对该第一消息进行后续处理;如果第二时刻与第一时刻的差值大于该时间阈值,则确定该第一消息为非法消息,可以删除该第一消息承载的数据,从而可以避免基站受到被劫持的IoT设备的重放攻击。
基站成功验证TS(即,确定该第一消息为合法消息)之后,进一步验证PS是否正确以及PZ#指示的难题的难度与En(SDS-PDU,SCS/AS’s Public Key)的大小是否匹配,如果PS不正确,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PZ#指示的难题的难度与En(SDS-PDU,SCS/AS’s Public Key)的大小不匹配,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PS正确,且PZ#指示的难题的难度与En(SDS-PDU,SCS/AS’s Public Key)的大小匹配,则利用IoT设备的公钥验证Sig,验证通过后向Serving SDHF转发加密的数据En(SDS-PDU,SCS/AS’s Public Key)。基站可以先验证PS再验证PZ#,也可以先验证PZ#再验证PS。
S705,基站将加密的小数据En(SDS-PDU,SCS/AS’s Public Key)发送给ServingSDHF。
S706,Serving SDHF将En(SDS-PDU,SCS/AS’s Public Key转发给Gateway SDHF。
S707,Gateway SDHF将En(SDS-PDU,SCS/AS’s Public Key)转发给SCS/AS。
S708,SCS/AS接收到En(SDS-PDU,SCS/AS’s Public Key)后,使用SCS或AS的私钥解密En(SDS-PDU,SCS/AS’s Public Key)。
S709,SCS/AS发送确认消息(Ack)给Gateway SDHF。
S710,Gateway SDH收到SCS/AS发送的Ack后,转发给Serving SDHF。
S711,Serving SDHF收到Gateway SDH发送的Ack后,转发给基站。
S712,基站收到Serving SDHF发送的Ack后,转发给IoT设备。
上述步骤中,S709、S710、S711和S712为可选步骤,此外,方法700中,基站和IoT设备均预置了基于证书的公私钥。
因此,根据本发明实施例的传输数据的方法700,基站发送包括多个难度不同的难题的广播消息,接收到该广播消息的IoT设备需要从中确定一个难度与待发送的数据的大小匹配的难题,从而可以提高数据传输的效率。基站接收到IoT设备发送的数据、难题的指示信息和难题的答案后,如果难题的难度与该数据的大小匹配,并且该答案正确,则向核心网发送该数据;如果难题的难度与该数据的大小不匹配或者该答案不正确,则禁止向核心网发送该数据,从而避免了DDoS攻击或其它攻击对核心网的影响。
图8A为本发明实施例提供的再一种传输数据的方法的示意性流程图,如图8A所示,该方法800包括:
S801,基站周期性发送广播消息,该广播消息携带基站的标识信息(BS_ID)、时间戳(TS)、第二指示信息(P_Ind)、多个难度不同的难题(Puzzles)以及基站的签名(Sig_BS)。
基站在发送广播消息前生成多个难度不同的难题,如Puzzle 1,Puzzle 2,…,Puzzle N,其生成方式为Puzzle 1=(Rand1’,k1,H(TS,Rand1,..)),Puzzle 2=(Rand2’,k2,H(TS,Rand2,..)),其中TS为时间戳,RAND1为随机数1,RAND1’处理过后的RAND1,其处理方式为把RAND1中的k1位盖住,具体可通过设为0或者1来实现。H()为哈希函数。Puzzle 2同理。不同的Puzzle的难度不同,不同难度的Puzzle对应不同的允许上传的数据的大小。上述实施例仅是举例说明,还可以通过现有技术的其它方法生成多个难度不同的难题,在此不再赘述。
基站可以每隔t秒发送上述广播消息,其中,P_Ind用于指示需不需要计算难题。例如,如果基站遭受DoS攻击,可将P_Ind设为1,表示需要计算难题;如果基站未遭受DoS攻击,可将P_Ind设为0,表示不需要计算难题。Sig_BS为基站对该消息的签名。
S802,IoT设备接收到基站发送的上述广播消息后,如果该IoT设备有需要上传的数据,则首先通过BS_ID验证Sig_BS,以确定该广播消息的完整性以及确定该广播消息是否为该基站发出的。如果验证通过,然后根据P_Ind确定是否需要计算难题。如果需要计算难题,则可以根据预设的对应关系以及待发送的数据的大小从多个难度不同的难题中确定难度合适的难题。例如,IoT设备确定需要计算Puzzle 1,计算方式可以是基于接收到的Rand1’尝试被盖住k1位的数字,每次尝试需要计算一次H(TS,RAND’,..),直到找到H(TS,RAND’,..)=H(TS,RAND1,..),然后将找到的这个随机数作为答案(Puzzle Solution,PS)。
S803,IoT设备向基站发送第一消息,该第一消息包括IoT设备的标识信息(Device_ID)、时间戳(TS)、IoT设备所选择的难题的指示信息(PZ#)、IoT设备所选择的难题的答案(PS)、基于AS的公钥(即AS的ID)加密的小数据En(SDS-PDU,AS-ID)以及基于IoT设备的私钥生成的Sig,其中,第一消息中的TS为该IoT设备接收到的上述广播消息中携带的TS,SDS-PDU表示未加密的数据。上述实施例仅是举例说明,也可使用SCS的公钥(即SCS的ID)对小数据SDS-PDU进行加密。
S804,基站接收到第一消息后,首先验证接收到该第一消息的时刻(即,第二时刻)与TS所指示的时刻(即,第一时刻)的差值是否小于或等于预设的时间阈值,如果第二时刻与第一时刻的差值小于或等于该时间阈值,则确定该第一消息为合法消息,并对该第一消息进行后续处理;如果第二时刻与第一时刻的差值大于该时间阈值,则确定该第一消息为非法消息,可以删除该第一消息承载的数据,从而可以避免基站受到被劫持的IoT设备的重放攻击。
基站成功验证TS(即,确定该第一消息为合法消息)之后,进一步验证PS是否正确以及PZ#指示的难题的难度与En(SDS-PDU,AS-ID)的大小是否匹配,如果PS不正确,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PZ#指示的难题的难度与En(SDS-PDU,AS-ID)的大小不匹配,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PS正确,且PZ#指示的难题的难度与En(SDS-PDU,AS-ID)的大小匹配,则向Serving SDHF转发加密的数据。基站可以先验证PS再验证PZ#,也可以先验证PZ#再验证PS。
S805,基站将加密的小数据En(SDS-PDU,AS-ID)、Device_ID以及Sig发送给Serving SDHF。
S806,Serving SDHF利用Device_ID验证Sig。
S807,验证通过后,Serving SDHF将En(SDS-PDU,AS-ID)转发给Gateway SDHF。
S808,Gateway SDHF将En(SDS-PDU,AS-ID)转发给SCS/AS。
S809,SCS/AS接收到En(SDS-PDU,AS-ID)后,使用AS的私钥解密En(SDS-PDU,AS-ID)。
S810,SCS/AS发送确认消息(Ack)给Gateway SDHF。
S811,Gateway SDH收到SCS/AS发送的Ack后,转发给Serving SDHF。
S812,Serving SDHF收到Gateway SDH发送的Ack后,转发给基站。
S813,基站收到Serving SDHF发送的Ack后,转发给IoT设备。
上述步骤中,S810、S811、S812和S813为可选步骤,此外,方法800中,基站和IoT设备均预置了基于IBS的公私钥。
因此,根据本发明实施例的传输数据的方法800,基站发送包括多个难度不同的难题的广播消息,接收到该广播消息的IoT设备需要从中确定一个难度与待发送的数据的大小匹配的难题,从而可以提高数据传输的效率。基站接收到IoT设备发送的数据、难题的指示信息和难题的答案后,如果难题的难度与该数据的大小匹配,并且该答案正确,则向核心网发送该数据;如果难题的难度与该数据的大小不匹配或者该答案不正确,则禁止向核心网发送该数据,从而避免了DDoS攻击或其它攻击对核心网的影响。
图8B为本发明实施例提供的再一种传输数据的方法的示意性流程图,如图8B所示,该方法900包括:
S901,基站周期性发送广播消息,该广播消息携带基站的标识信息(BS_ID)、时间戳(TS)、第二指示信息(P_Ind)、多个难度不同的难题(Puzzles)以及基站的签名(Sig_BS)。
基站在发送广播消息前生成多个难度不同的难题,如Puzzle 1,Puzzle 2,…,Puzzle N,其生成方式为Puzzle 1=(Rand1’,k1,H(TS,Rand1,..)),Puzzle 2=(Rand2’,k2,H(TS,Rand2,..)),其中TS为时间戳,RAND1为随机数1,RAND1’处理过后的RAND1,其处理方式为把RAND1中的k1位盖住,具体可通过设为0或者1来实现。H()为哈希函数。Puzzle 2同理。不同的Puzzle的难度不同,不同难度的Puzzle对应不同的允许上传的数据的大小。上述实施例仅是举例说明,还可以通过现有技术的其它方法生成多个难度不同的难题,在此不再赘述。
基站可以每隔t秒发送上述广播消息,其中,P_Ind用于指示需不需要计算难题。例如,如果基站遭受DoS攻击,可将P_Ind设为1,表示需要计算难题;如果基站未遭受DoS攻击,可将P_Ind设为0,表示不需要计算难题。Sig_BS为基站对该消息的签名。
S902,IoT设备接收到基站发送的上述广播消息后,如果该IoT设备有需要上传的数据,则首先通过BS_ID验证Sig_BS,以确定该广播消息的完整性以及确定该广播消息是否为该基站发出的。如果验证通过,然后根据P_Ind确定是否需要计算难题。如果需要计算难题,则可以根据预设的对应关系以及待发送的数据的大小从多个难度不同的难题中确定难度合适的难题。例如,IoT设备确定需要计算Puzzle 1,计算方式可以是基于接收到的Rand1’尝试被盖住k1位的数字,每次尝试需要计算一次H(TS,RAND’,..),直到找到H(TS,RAND’,..)=H(TS,RAND1,..),然后将找到的这个随机数作为答案(Puzzle Solution,PS)。
S903,IoT设备向基站发送第一消息,该第一消息包括IoT设备的标识信息(Device_ID)、时间戳(TS)、IoT设备的证书(Device_Certi)、IoT设备所选择的难题的指示信息(PZ#)、IoT设备所选择的难题的答案(PS)、基于AS或SCS的公钥加密的小数据En(SDS-PDU,SCS/AS’s Public Key)以及基于IoT设备的私钥生成的Sig,其中,第一消息中的TS为该IoT设备接收到的上述广播消息中携带的TS,SDS-PDU表示未加密的数据。
S904,基站接收到第一消息后,首先验证接收到该第一消息的时刻(即,第二时刻)与TS所指示的时刻(即,第一时刻)的差值是否小于或等于预设的时间阈值,如果第二时刻与第一时刻的差值小于或等于该时间阈值,则确定该第一消息为合法消息,并对该第一消息进行后续处理;如果第二时刻与第一时刻的差值大于该时间阈值,则确定该第一消息为非法消息,可以删除该第一消息承载的数据,从而可以避免基站受到被劫持的IoT设备的重放攻击。
基站成功验证TS(即,确定该第一消息为合法消息)之后,进一步验证PS是否正确以及PZ#指示的难题的难度与En(SDS-PDU,SCS/AS’s Public Key)的大小是否匹配,如果PS不正确,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PZ#指示的难题的难度与En(SDS-PDU,SCS/AS’s Public Key)的大小不匹配,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PS正确,且PZ#指示的难题的难度与En(SDS-PDU,SCS/AS’s Public Key)的大小匹配,则向Serving SDHF转发加密的数据。基站可以先验证PS再验证PZ#,也可以先验证PZ#再验证PS。
S905,基站将En(SDS-PDU,SCS/AS’s Public Key)、Device_Certi以及Sig发送给Serving SDHF。
S906,Serving SDHF利用IoT设备的公钥验证Sig。
S907,验证通过后,Serving SDHF将En(SDS-PDU,SCS/AS’s Public Key)转发给Gateway SDHF。
S908,Gateway SDHF将En(SDS-PDU,SCS/AS’s Public Key)转发给SCS/AS。
S909,SCS/AS接收到En(SDS-PDU,SCS/AS’s Public Key)后,使用SCS/AS的私钥解密En(SDS-PDU,SCS/AS’s Public Key)。
S910,SCS/AS发送确认消息(Ack)给Gateway SDHF。
S911,Gateway SDH收到SCS/AS发送的Ack后,转发给Serving SDHF。
S912,Serving SDHF收到Gateway SDH发送的Ack后,转发给基站。
S913,基站收到Serving SDHF发送的Ack后,转发给IoT设备。
上述步骤中,S910、S911、S912和S913为可选步骤,此外,方法900中,基站和IoT设备均预置了基于证书的公私钥。
因此,根据本发明实施例的传输数据的方法900,基站发送包括多个难度不同的难题的广播消息,接收到该广播消息的IoT设备需要从中确定一个难度与待发送的数据的大小匹配的难题,从而可以提高数据传输的效率。基站接收到IoT设备发送的数据、难题的指示信息和难题的答案后,如果难题的难度与该数据的大小匹配,并且该答案正确,则向核心网发送该数据;如果难题的难度与该数据的大小不匹配或者该答案不正确,则禁止向核心网发送该数据,从而避免了DDoS攻击或其它攻击对核心网的影响。
图9A为本发明实施例提供的另一种传输数据的方法的示意性流程图,如图9A所示,该方法1000包括:
S1001,基站周期性发送广播消息,该广播消息携带基站的标识信息(BS_ID)、时间戳(TS)、第二指示信息(P_Ind)、多个难度不同的难题(Puzzles)以及基站的签名(Sig_BS)。
基站在发送广播消息前生成多个难度不同的难题,如Puzzle 1,Puzzle 2,…,Puzzle N,其生成方式为Puzzle 1=(Rand1’,k1,H(TS,Rand1,..)),Puzzle 2=(Rand2’,k2,H(TS,Rand2,..)),其中TS为时间戳信息,RAND1为随机数1,RAND1’处理过后的RAND1,其处理方式为把RAND1中的k1位盖住,具体可通过设为0或者1来实现。H()为哈希函数。Puzzle 2同理。不同的Puzzle的难度不同,不同难度的Puzzle对应不同的允许上传的数据的大小。上述实施例仅是举例说明,还可以通过现有技术的其它方法生成多个难度不同的难题,在此不再赘述。
基站可以每隔t秒发送上述广播消息,其中,P_Ind用于指示需不需要计算难题。例如,如果基站遭受DoS攻击,可将P_Ind设为1,表示需要计算难题;如果基站未遭受DoS攻击,可将P_Ind设为0,表示不需要计算难题。Sig_BS为基站对该消息的签名。
S1002,IoT设备接收到基站发送的上述广播消息后,如果该IoT设备有需要上传的数据,则首先通过BS_ID验证Sig_BS,以确定该广播消息的完整性以及确定该广播消息是否为该基站发出的。如果验证通过,然后根据P_Ind确定是否需要计算难题。如果需要计算难题,则可以根据预设的对应关系以及待发送的数据的大小从多个难度不同的难题中确定难度合适的难题。例如,IoT设备确定需要计算Puzzle 1,计算方式可以是基于接收到的Rand1’尝试被盖住k1位的数字,每次尝试需要计算一次H(TS,RAND’,..),直到找到H(TS,RAND’,..)=H(TS,RAND1,..),然后将找到的这个随机数作为答案(Puzzle Solution,PS)。
S1003,IoT设备向基站发送第一消息,该第一消息包括IoT设备的标识信息(Device_ID)、时间戳(TS)、IoT设备所选择的难题的指示信息(PZ#)、IoT设备所选择的难题的答案(PS)、基于预置的对称密钥K加密的小数据En(SDS-PDU,K)以及基于K生成的MAC,其中,第一消息中的TS为该IoT设备接收到的上述广播消息中携带的TS,SDS-PDU表示未加密的数据。
S1004,基站接收到第一消息后,首先验证接收到该第一消息的时刻(即,第二时刻)与TS所指示的时刻(即,第一时刻)的差值是否小于或等于预设的时间阈值,如果第二时刻与第一时刻的差值小于或等于该时间阈值,则确定该第一消息为合法消息,并对该第一消息进行后续处理;如果第二时刻与第一时刻的差值大于该时间阈值,则确定该第一消息为非法消息,可以删除该第一消息承载的数据,从而可以避免基站受到被劫持的IoT设备的重放攻击。
基站成功验证TS(即,确定该第一消息为合法消息)之后,进一步验证PS是否正确以及PZ#指示的难题的难度与En(SDS-PDU,K)的大小是否匹配,如果PS不正确,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PZ#指示的难题的难度与En(SDS-PDU,K)的大小不匹配,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PS正确,且PZ#指示的难题的难度与En(SDS-PDU,K)的大小匹配,则向Serving SDHF发送小数据。基站可以先验证PS再验证PZ#,也可以先验证PZ#再验证PS。
S1005,基站将小数据消息(Device_ID,En(SDS-PDU,K),MAC)发送给ServingSDHF。
S1006,Serving SDHF接收到小数据消息后,根据Device_ID从信任状存储器(Credential Repository)获取信任状(credentials),该信任状即对称密钥K。
S1007,Serving SDHF获取K后,利用K验证MAC,验证通过后使用K解密En(SDS-PDU,K)。
S1008,Serving SDHF将SDS-PDU转发给Gateway SDHF。
S1009,Gateway SDHF将SDS-PDU转发给SCS/AS。
S1010,SCS/AS收到SDS-PDU后发送Ack给Gateway SDHF。
S1011,Gateway SDH收到SCS/AS发送的Ack后,转发给Serving SDHF。
S1012,Serving SDHF收到Gateway SDH发送的Ack后,转发给基站。
S1013,基站收到Serving SDHF发送的Ack后,转发给IoT设备。
上述步骤中,S1010、S1011、S1012和S1013为可选步骤。方法1000中,基站预置了基于IBS的公私钥,IoT设备和信任状存储器预置了对称密钥。
因此,根据本发明实施例的传输数据的方法1000,基站发送包括多个难度不同的难题的广播消息,接收到该广播消息的IoT设备需要从中确定一个难度与待发送的数据的大小匹配的难题,从而可以提高数据传输的效率。基站接收到IoT设备发送的数据、难题的指示信息和难题的答案后,如果难题的难度与该数据的大小匹配,并且该答案正确,则向核心网发送该数据;如果难题的难度与该数据的大小不匹配或者该答案不正确,则禁止向核心网发送该数据,从而避免了DDoS攻击或其它攻击对核心网的影响。
图9B为本发明实施例提供的另一种传输数据的方法的示意性流程图,如图9B所示,该方法1100包括:
S1101,基站周期性发送广播消息,该广播消息携带基站的标识信息(BS_ID)、基站的证书(BS_Certi)、时间戳(TS)、第二指示信息(P_Ind)、多个难度不同的难题(Puzzles)以及基站的签名(Sig_BS)。
基站在发送广播消息前生成多个难度不同的难题,如Puzzle 1,Puzzle 2,…,Puzzle N,其生成方式为Puzzle 1=(Rand1’,k1,H(TS,Rand1,..)),Puzzle 2=(Rand2’,k2,H(TS,Rand2,..)),其中TS为时间戳信息,RAND1为随机数1,RAND1’处理过后的RAND1,其处理方式为把RAND1中的k1位盖住,具体可通过设为0或者1来实现。H()为哈希函数。Puzzle 2同理。不同的Puzzle的难度不同,不同难度的Puzzle对应不同的允许上传的数据的大小。上述实施例仅是举例说明,还可以通过现有技术的其它方法生成多个难度不同的难题,在此不再赘述。
基站可以每隔t秒发送上述广播消息,其中,P_Ind用于指示需不需要计算难题。例如,如果基站遭受DoS攻击,可将P_Ind设为1,表示需要计算难题;如果基站未遭受DoS攻击,可将P_Ind设为0,表示不需要计算难题。Sig_BS为基站对该消息的签名。
S1102,IoT设备接收到基站发送的上述广播消息后,如果该IoT设备有需要上传的数据,则首先通过BS’s Public Key验证Sig_BS,以确定该广播消息的完整性以及确定该广播消息是否为该基站发出的。如果验证通过,然后根据P_Ind确定是否需要计算难题。如果需要计算难题,则可以根据预设的对应关系以及待发送的数据的大小从多个难度不同的难题中确定难度合适的难题。例如,IoT设备确定需要计算Puzzle 1,计算方式可以是基于接收到的Rand1’尝试被盖住k1位的数字,每次尝试需要计算一次H(TS,RAND’,..),直到找到H(TS,RAND’,..)=H(TS,RAND1,..),然后将找到的这个随机数作为答案(Puzzle Solution,PS)。
S1103,IoT设备向基站发送第一消息,该第一消息包括IoT设备的标识信息(Device_ID)、时间戳(TS)、IoT设备所选择的难题的指示信息(PZ#)、IoT设备所选择的难题的答案(PS)、基于预置的对称密钥K加密的小数据En(SDS-PDU,K)以及基于K生成的MAC,其中,第一消息中的TS为该IoT设备接收到的上述广播消息中携带的TS,SDS-PDU表示未加密的数据。
S1104,基站接收到第一消息后,首先验证接收到该第一消息的时刻(即,第二时刻)与TS所指示的时刻(即,第一时刻)的差值是否小于或等于预设的时间阈值,如果第二时刻与第一时刻的差值小于或等于该时间阈值,则确定该第一消息为合法消息,并对该第一消息进行后续处理;如果第二时刻与第一时刻的差值大于该时间阈值,则确定该第一消息为非法消息,可以删除该第一消息承载的数据,从而可以避免基站受到被劫持的IoT设备的重放攻击。
基站成功验证TS(即,确定该第一消息为合法消息)之后,进一步验证PS是否正确以及PZ#指示的难题的难度与En(SDS-PDU,K)的大小是否匹配,如果PS不正确,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PZ#指示的难题的难度与En(SDS-PDU,K)的大小不匹配,说明该IoT设备可能被劫持,则删除该第一消息承载的数据;如果PS正确,且PZ#指示的难题的难度与En(SDS-PDU,K)的大小匹配,则向Serving SDHF发送小数据。基站可以先验证PS再验证PZ#,也可以先验证PZ#再验证PS。
S1105,基站将小数据消息(Device_ID,En(SDS-PDU,K),MAC)发送给ServingSDHF。
S1106,Serving SDHF接收到小数据消息后,根据Device_ID从信任状存储器(Credential Repository)获取信任状(credentials),该信任状即对称密钥K。
S1107,Serving SDHF获取K后,利用K验证MAC,验证通过后使用K解密En(SDS-PDU,K)。
S1108,Serving SDHF将SDS-PDU转发给Gateway SDHF。
S1109,Gateway SDHF将SDS-PDU转发给SCS/AS。
S1110,SCS/AS收到SDS-PDU后发送Ack给Gateway SDHF。
S1111,Gateway SDH收到SCS/AS发送的Ack后,转发给Serving SDHF。
S1112,Serving SDHF收到Gateway SDH发送的Ack后,转发给基站。
S1113,基站收到Serving SDHF发送的Ack后,转发给IoT设备。
上述步骤中,S1010、S1011、S1012和S1013为可选步骤。方法1100中,基站预置了基于证书的公私钥,IoT设备和信任状存储器预置了对称密钥。
因此,根据本发明实施例的传输数据的方法1000,基站发送包括多个难度不同的难题的广播消息,接收到该广播消息的IoT设备需要从中确定一个难度与待发送的数据的大小匹配的难题,从而可以提高数据传输的效率。基站接收到IoT设备发送的数据、难题的指示信息和难题的答案后,如果难题的难度与该数据的大小匹配,并且该答案正确,则向核心网发送该数据;如果难题的难度与该数据的大小不匹配或者该答案不正确,则禁止向核心网发送该数据,从而避免了DDoS攻击或其它攻击对核心网的影响。
上述实施例主要从各个设备之间交互的角度对本发明实施例的方案进行了介绍。可以理解的是,各个设备,例如基站、IoT设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本发明实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明实施例的范围。
本发明实施例可以根据上述方法示例对基站、IoT设备等进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本发明实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用集成的单元的情况下,图10A示出了上述实施例中所涉及的基站的一种可能的结构示意图。基站1000包括:处理单元1002和通信单元1003。处理单元1002用于对基站1000的动作进行控制管理,例如,处理单元1002用于支持基站1000执行图4的S140,处理单元1002还可以用于支持基站1000执行图5的S204,和/或用于本文所描述的技术的其它过程。通信单元1003用于支持基站1000与其它网络实体的通信,例如与图4中示出的IoT设备之间的通信。基站1000还可以包括存储单元1001,用于存储基站1000的程序代码和数据。
其中,处理单元1002可以是处理器或控制器,例如可以是中央处理器(CentralProcessing Unit,CPU),通用处理器,数字信号处理器(Digital Signal Processor,DSP),专用集成电路(Application-Specific Integrated Circuit,ASIC),现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本发明实施例公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。通信单元1003可以是收发器、收发电路等。
当处理单元1002为处理器,通信单元1003为收发器,存储单元1001为存储器时,本发明实施例所涉及的基站可以为图10B所示的基站。
参阅图10B所示,该基站1010包括:处理器1012、收发器1013、存储器1011。可选的,基站1010还可以包括总线1014。其中,收发器1013、处理器1012以及存储器1011可以通过总线1014相互连接;总线1014可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。所述总线1014可以分为地址总线、数据总线、控制总线等。为便于表示,图10B中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
因此,本发明实施例提供的基站,发送包括多个难度不同的难题的广播消息,接收到该广播消息的IoT设备需要从中确定一个难度与待发送的数据的大小匹配的难题,从而可以提高数据传输的效率。基站接收到IoT设备发送的数据、难题的指示信息和难题的答案后,如果难题的难度与该数据的大小匹配,并且该答案正确,则向核心网发送该数据;如果难题的难度与该数据的大小不匹配或者该答案不正确,则禁止向核心网发送该数据,从而避免了DDoS攻击对核心网的影响。
在采用集成的单元的情况下,图11A示出了上述实施例中所涉及的IoT设备的一种可能的结构示意图。IoT设备1100包括:处理单元1102和通信单元1103。处理单元1102用于对IoT设备1100的动作进行控制管理,例如,处理单元1102用于支持IoT设备1100执行图4的S120,处理单元1102还可以用于支持IoT设备1100执行图5的S202,和/或用于本文所描述的技术的其它过程。通信单元1103用于支持IoT设备1100与其它网络实体的通信,例如与图4中示出的基站之间的通信。IoT设备1100还可以包括存储单元1101,用于存储IoT设备1100的程序代码和数据。
其中,处理单元1102可以是处理器或控制器,例如可以是CPU,通用处理器,DSP,ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本发明实施例公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。通信单元1103可以是收发器、收发电路等。
当处理单元1102为处理器,通信单元1103为收发器,存储单元1101为存储器时,本发明实施例所涉及的IoT设备可以为图11B所示的IoT设备。
参阅图11B所示,该IoT设备1110包括:处理器1112、收发器1113、存储器1111。可选的,IoT设备1110还可以包括总线1114。其中,收发器1113、处理器1112以及存储器1111可以通过总线1114相互连接;总线1114可以是PCI总线或EISA总线等。所述总线1114可以分为地址总线、数据总线、控制总线等。为便于表示,图11B中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
因此,本发明实施例提供的IoT设备,接收到基站发送的包括多个难题的广播消息后,根据待发送数据的大小从该多个难题中确定对应难度的难题,计算出该难题的答案后将该答案与待发送的数据一起发送给基站,从而延长了数据发送的周期,进而减小了计算难题对传输数据造成的影响,同时减小了因IoT设备被劫持向基站发起DDoS攻击对基站和核心网设备的影响。
在本发明实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
结合本发明实施例公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(Random Access Memory,RAM)、闪存、只读存储器(Read Only Memory,ROM)、可擦除可编程只读存储器(Erasable Programmable ROM,EPROM)、电可擦可编程只读存储器(Electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于基站或IoT设备中。当然,处理器和存储介质也可以作为分立组件存在于基站或IoT设备中。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
Claims (22)
1.一种传输数据的方法,其特征在于,包括:
基站发送包括多个难题puzzle的广播消息,其中,所述多个难题的难度不同;
所述基站从物联网IoT设备接收第一数据、第一难题的指示信息和所述第一难题的答案,其中,所述第一难题是所述IoT设备根据所述第一数据的大小从所述多个难题中确定的;
所述基站在所述第一难题的难度与所述第一数据的大小匹配,且所述第一难题的答案正确时,向核心网设备发送所述第一数据或者对所述第一数据解密后的数据;或者
所述基站在所述第一难题的难度与所述第一数据的大小不匹配时,禁止向核心网设备发送所述第一数据或者对所述第一数据解密后的数据;或者
所述基站在所述第一难题的答案不正确时,禁止向核心网设备发送所述第一数据或者对所述第一数据解密后的数据。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述基站发送包括签名信息的所述广播消息,所述签名信息用于所述IoT设备验证所述广播消息的完整性以及所述广播消息的发送端是否为所述基站。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
所述基站在第一时刻与第二时刻的差值小于预设的时间阈值时,处理所述第一数据、所述第一难题的指示信息和所述第一难题的答案,其中,所述第一时刻是所述基站发送所述广播消息的时刻,所述第二时刻是所述基站接收到承载所述第一数据、所述第一难题的指示信息和所述第一难题的答案的消息的时刻。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述方法还包括:
所述基站从所述IoT设备接收完整性验证信息,所述完整性验证信息用于验证第一消息的完整性以及所述第一消息的发送端是否为所述IoT设备,所述第一消息为承载所述第一数据、所述第一难题的指示信息和所述第一难题的答案的消息;
所述基站在所述第一消息的完整性验证通过,且确定所述第一消息的发送端是所述IoT设备,且所述第一难题的难度与所述第一数据的大小匹配,且所述第一难题的答案正确时,向所述核心网设备发送所述第一数据或者对所述第一数据解密后的数据;或者
所述基站在所述第一难题的难度与所述第一数据的大小匹配,且所述第一难题的答案正确时,向所述核心网设备发送所述完整性验证消息。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括:
所述基站发送包括第一指示信息的所述广播消息,所述第一指示信息用于指示接收到所述广播消息的IoT设备从所述多个难题中确定难度与待发送的数据的大小匹配的难题。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述方法还包括:
所述基站发送包括第二指示信息的所述广播消息,所述第二指示信息用于指示接收到所述广播消息的IoT设备在发送数据时同时发送所述多个难题中的一个难题的答案。
7.一种传输数据的方法,其特征在于,包括:
物联网IoT设备从基站接收包括多个难题puzzle的广播消息;
所述IoT设备根据第一数据的大小从所述多个难题中确定第一难题并计算出所述第一难题的答案,所述第一难题的难度与所述第一数据的大小匹配;
所述IoT设备向所述基站发送所述第一数据、所述第一难题的指示信息和所述第一难题的答案。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
所述IoT设备从基站接收包括签名信息的所述广播消息,所述签名信息用于验证所述广播消息的完整性以及所述广播消息的发送端是否为所述基站;
所述IoT设备在所述广播消息的完整性验证通过,且确定所述广播消息的发送端是所述基站时,根据所述第一数据的大小从所述多个难题中确定所述第一难题。
9.根据权利要求7或8所述的方法,其特征在于,所述方法还包括:
所述IoT设备向所述基站发送完整性验证信息,所述完整性验证信息用于验证第一消息的完整性以及所述第一消息的发送端是否为所述IoT设备,所述第一消息是承载所述第一数据、所述第一难题的指示信息和所述第一难题的答案的消息。
10.根据权利要求7至9中任一项所述的方法,其特征在于,所述方法还包括:
所述IoT设备从所述基站接收包括第一指示信息的所述广播消息;
所述IoT设备根据所述第一指示信息从所述多个难题中确定难度与所述第一数据的大小匹配的难题。
11.根据权利要求7至10中任一项所述的方法,其特征在于,所述方法还包括:
所述IoT设备从所述基站接收包括第二指示信息的所述广播消息;
所述IoT设备根据所述第二指示信息确定在发送数据时同时发送所述多个难题中的一个难题的答案。
12.一种传输数据的装置,其特征在于,所述装置包括处理单元和通信单元,
所述处理单元用于通过所述通信单元发送包括多个难题puzzle的广播消息,其中,所述多个难题的难度不同;以及用于通过所述通信单元从物联网IoT设备接收第一数据、第一难题的指示信息和所述第一难题的答案,其中,所述第一难题是所述IoT设备根据所述第一数据的大小从所述多个难题中确定的;以及用于在所述第一难题的难度与所述第一数据的大小匹配,且所述第一难题的答案正确时,向核心网设备发送所述第一数据或者对所述第一数据解密后的数据;或者在所述第一难题的难度与所述第一数据的大小不匹配时,禁止向核心网设备发送所述第一数据或者对所述第一数据解密后的数据;或者在所述第一难题的答案不正确时,禁止向核心网设备所述第一数据或者对所述第一数据解密后的数据。
13.根据权利要求12所述的装置,其特征在于,所述处理单元还用于:
通过所述通信单元发送包括签名信息的所述广播消息,所述签名信息用于所述IoT设备验证所述广播消息的完整性以及所述广播消息的发送端是否为所述基站。
14.根据权利要求12或13所述的装置,其特征在于,所述处理单元还用于:
在第一时刻与第二时刻的差值小于预设的时间阈值时,处理所述第一数据、所述第一难题的指示信息和所述第一难题的答案,其中,所述第一时刻是所述基站发送所述广播消息的时刻,所述第二时刻是所述基站接收到承载所述第一数据、所述第一难题的指示信息和所述第一难题的答案的消息的时刻。
15.根据权利要求12至14中任一项所述的装置,其特征在于,所述处理单元还用于:
通过所述通信单元从所述IoT设备接收完整性验证信息,所述完整性验证信息用于验证第一消息的完整性以及所述第一消息的发送端是否为所述IoT设备,所述第一消息为承载所述第一数据、所述第一难题的指示信息和所述第一难题的答案的消息;以及用于在所述第一消息的完整性验证通过,且确定所述第一消息的发送端是所述IoT设备,且所述第一难题的难度与所述第一数据的大小匹配,且所述第一难题的答案正确时,向所述核心网设备发送所述第一数据或者对所述第一数据解密后的数据;或者在所述第一难题的难度与所述第一数据的大小匹配,且所述第一难题的答案正确时,向所述核心网设备发送所述完整性验证消息。
16.根据权利要求12至15中任一项所述的装置,其特征在于,所述处理单元还用于:
通过所述通信单元发送包括第一指示信息的所述广播消息,所述第一指示信息用于指示接收到所述广播消息的IoT设备从所述多个难题中确定难度与待发送的数据的大小匹配的难题。
17.根据权利要求12至16中任一项所述的装置,其特征在于,所述处理单元还用于:
通过所述通信单元发送包括第二指示信息的所述广播消息,所述第二指示信息用于指示接收到所述广播消息的IoT设备在发送数据时同时发送所述多个难题中的一个难题的答案。
18.一种传输数据的装置,其特征在于,所述装置包括处理单元和通信单元,
所述处理单元用于通过所述通信单元从基站接收包括多个难题puzzle的广播消息;以及用于根据第一数据的大小从所述多个难题中确定第一难题并计算出所述第一难题的答案,所述第一难题的难度与所述第一数据的大小匹配;以及用于通过所述通信单元向所述基站发送所述第一数据、所述第一难题的指示信息和所述第一难题的答案。
19.根据权利要求18所述的装置,其特征在于,所述处理单元还用于:
通过所述通信单元从基站接收包括签名信息的所述广播消息,所述签名信息用于验证所述广播消息的完整性以及所述广播消息的发送端是否为所述基站;以及用于在所述广播消息的完整性验证通过,且确定所述广播消息的发送端是所述基站时,根据所述第一数据的大小从所述多个难题中确定所述第一难题。
20.根据权利要求18或19所述的装置,其特征在于,所述处理单元还用于:
通过所述通信单元向所述基站发送完整性验证信息,所述完整性验证信息用于验证第一消息的完整性以及所述第一消息的发送端是否为所述IoT设备,所述第一消息是承载所述第一数据、所述第一难题的指示信息和所述第一难题的答案的消息。
21.根据权利要求18至20中任一项所述的装置,其特征在于,所述处理单元还用于:
通过所述通信单元从所述基站接收包括第一指示信息的所述广播消息;
以及用于根据所述第一指示信息从所述多个难题中确定难度与所述第一数据的大小匹配的难题。
22.根据权利要求18至21中任一项所述的装置,其特征在于,所述处理单元还用于:
通过所述通信单元从所述基站接收包括第二指示信息的所述广播消息;
以及用于根据所述第二指示信息确定在发送数据时同时发送所述多个难题中的一个难题的答案。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610933023.7A CN108011856B (zh) | 2016-10-31 | 2016-10-31 | 一种传输数据的方法和装置 |
PCT/CN2017/092883 WO2018076798A1 (zh) | 2016-10-31 | 2017-07-14 | 一种传输数据的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610933023.7A CN108011856B (zh) | 2016-10-31 | 2016-10-31 | 一种传输数据的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108011856A true CN108011856A (zh) | 2018-05-08 |
CN108011856B CN108011856B (zh) | 2020-05-08 |
Family
ID=62023178
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610933023.7A Active CN108011856B (zh) | 2016-10-31 | 2016-10-31 | 一种传输数据的方法和装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108011856B (zh) |
WO (1) | WO2018076798A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109003083A (zh) * | 2018-07-27 | 2018-12-14 | 山东渔翁信息技术股份有限公司 | 一种基于区块链的ca认证方法、装置及电子设备 |
CN111552270A (zh) * | 2020-04-29 | 2020-08-18 | 北京汽车股份有限公司 | 用于车载诊断的安全认证和数据传输方法及装置 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11882449B1 (en) | 2019-11-21 | 2024-01-23 | Cable Television Laboratories, Inc. | Systems and methods for protecting cellular network messages |
CN112887971B (zh) * | 2019-11-30 | 2023-03-21 | 华为技术有限公司 | 数据传输方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1985460A (zh) * | 2004-01-09 | 2007-06-20 | 科尔街有限公司 | 用于ocsp和分布式ocsp的通信有效实时凭证 |
US20070157300A1 (en) * | 2005-12-29 | 2007-07-05 | Samsung Electronics Co., Ltd. | Method and apparatus to protect server from DOS attack |
CN101778387A (zh) * | 2010-01-08 | 2010-07-14 | 西安电子科技大学 | 抵抗无线局域网接入认证拒绝服务攻击的方法 |
CN102143494A (zh) * | 2011-03-25 | 2011-08-03 | 华为终端有限公司 | 数据上报方法、数据上报装置和m2m设备 |
US8321955B2 (en) * | 2003-08-26 | 2012-11-27 | Wu-Chang Feng | Systems and methods for protecting against denial of service attacks |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103297961B (zh) * | 2012-03-05 | 2018-03-09 | 上海诺基亚贝尔股份有限公司 | 一种用于设备间安全通信的设备与系统 |
CN104780536B (zh) * | 2015-04-03 | 2019-06-11 | 宇龙计算机通信科技(深圳)有限公司 | 一种物联网设备的认证方法及终端 |
-
2016
- 2016-10-31 CN CN201610933023.7A patent/CN108011856B/zh active Active
-
2017
- 2017-07-14 WO PCT/CN2017/092883 patent/WO2018076798A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8321955B2 (en) * | 2003-08-26 | 2012-11-27 | Wu-Chang Feng | Systems and methods for protecting against denial of service attacks |
CN1985460A (zh) * | 2004-01-09 | 2007-06-20 | 科尔街有限公司 | 用于ocsp和分布式ocsp的通信有效实时凭证 |
US20070157300A1 (en) * | 2005-12-29 | 2007-07-05 | Samsung Electronics Co., Ltd. | Method and apparatus to protect server from DOS attack |
CN101778387A (zh) * | 2010-01-08 | 2010-07-14 | 西安电子科技大学 | 抵抗无线局域网接入认证拒绝服务攻击的方法 |
CN102143494A (zh) * | 2011-03-25 | 2011-08-03 | 华为终端有限公司 | 数据上报方法、数据上报装置和m2m设备 |
Non-Patent Citations (2)
Title |
---|
L.Q.CHEN,P.MORRISEY,N.P.SMART,ET AL: "security notions and generic constructions for client puzzles", 《INTERNATIONAL CONFERENCE ON THE THEORY AND APPLICATION OF CRYPTOLOGY AND INFORMATION SECURITY》 * |
刘晓婷: "无线网络认证协议抗拒绝攻击技术", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109003083A (zh) * | 2018-07-27 | 2018-12-14 | 山东渔翁信息技术股份有限公司 | 一种基于区块链的ca认证方法、装置及电子设备 |
CN111552270A (zh) * | 2020-04-29 | 2020-08-18 | 北京汽车股份有限公司 | 用于车载诊断的安全认证和数据传输方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2018076798A1 (zh) | 2018-05-03 |
CN108011856B (zh) | 2020-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10785019B2 (en) | Data transmission method and apparatus | |
CN107948189B (zh) | 非对称密码身份鉴别方法、装置、计算机设备及存储介质 | |
CN108352015B (zh) | 用于基于区块链的系统结合钱包管理系统的安全多方防遗失存储和加密密钥转移 | |
Cui et al. | HCPA-GKA: A hash function-based conditional privacy-preserving authentication and group-key agreement scheme for VANETs | |
CN104753917B (zh) | 基于id的密钥管理系统及方法 | |
CN104270249B (zh) | 一种从无证书环境到基于身份环境的签密方法 | |
CN108199835B (zh) | 一种多方联合私钥解密方法 | |
CN107809411A (zh) | 移动网络的认证方法、终端设备、服务器和网络认证实体 | |
US20020025046A1 (en) | Controlled proxy secure end to end communication | |
CN104301108B (zh) | 一种从基于身份环境到无证书环境的签密方法 | |
CN110268676A (zh) | 基于身份的自认证签名方案的私有密钥计算系统和方法 | |
CN107483212A (zh) | 一种双方协作生成数字签名的方法 | |
US20140208117A1 (en) | Server apparatus and program | |
CN105812349B (zh) | 一种基于身份信息的非对称密钥分发及消息加密方法 | |
KR20170057549A (ko) | 해시함수 기반의 대규모 동시 전자서명 서비스 시스템 및 그 방법 | |
CN111769938B (zh) | 一种区块链传感器的密钥管理系统、数据验证系统 | |
CN109309566B (zh) | 一种认证方法、装置、系统、设备及存储介质 | |
CN108011856A (zh) | 一种传输数据的方法和装置 | |
CN112104453A (zh) | 一种基于数字证书的抗量子计算数字签名系统及签名方法 | |
US6910129B1 (en) | Remote authentication based on exchanging signals representing biometrics information | |
Shim | Cryptanalysis of mutual authentication and key exchange for low power wireless communications | |
US10924278B2 (en) | Method and apparatus for authentication and encryption service employing unbreakable encryption | |
Zhang et al. | Robust and efficient password authenticated key agreement with user anonymity for session initiation protocol‐based communications | |
Zhu | A provable privacy-protection system for multi-server environment | |
CN113545004A (zh) | 具有减少攻击面的认证系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |