CN105530253A - 基于CA证书的Restful架构下的无线传感器网络接入认证方法 - Google Patents
基于CA证书的Restful架构下的无线传感器网络接入认证方法 Download PDFInfo
- Publication number
- CN105530253A CN105530253A CN201510947803.2A CN201510947803A CN105530253A CN 105530253 A CN105530253 A CN 105530253A CN 201510947803 A CN201510947803 A CN 201510947803A CN 105530253 A CN105530253 A CN 105530253A
- Authority
- CN
- China
- Prior art keywords
- web server
- certificate
- pki
- random number
- party application
- 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
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- 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/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0442—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
-
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
- H04L9/3213—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于CA证书的Restful架构下的无线传感器网络接入认证方法,将传感器节点和汇聚节点自组织成为网络,将汇聚节点连接到基于Restful架构的Web服务器,客户端与Web服务器之间的认证,汇聚节点与Web服务器之间的认证、传感器节点与汇聚节点之间的认证以及客户端与汇聚节点之间的认证均基于CA证书完成,用户通过客户端访问Web服务器获取无线传感器节点的数据。本发明能有效防止恶意攻击者对数据的破坏,保护无线传感器网络中数据的安全。
Description
技术领域
本发明涉及计算机网络技术领域,尤其涉及一种基于CA证书的Restful架构下的无线传感器网络接入认证方法。
背景技术
无线传感器网络(WirelessSensorNetworks,WSN)是由一组微型传感器节点以自组织方式构成的无线网络,其目的是协作地感知、采集和处理网路覆盖地理区域中感知对象的信息,并发布给观察者。无线传感器网络中的每个传感器具有一个或多个节点,传感器节点通常是一个微型的嵌入式***。每个节点来监测自己的感知范围对象,监测特定的行为,使用节点来采集数据,将采集到的数据传送到最近的汇聚节点,随后进入汇聚阶段,从接近节点所采集到的数据进行分析和处理,然后将结果根据需要发送给基站,基站将最终结果传送给观察员。
由于传感器网络配置环境一般比较恶劣,加之无线网络本身固有的脆弱性,因而极易受到各种各样的攻击。为保证信息的安全传递,需要有一种机制来验证通信各方身份的合法性。在传统的有线网络中,公钥基础设施有效地解决了这个问题,它通过对数字证书的使用和管理,来提供全面的公钥加密和数字签名服务。通过公钥基础设施,可以将公钥与合法拥有者的身份绑定起来,从而建立并维护一个可信的网络环境。然而,非对称加密体制需要很高的计算、通信和存储开销,这决定了在资源受限的传感器上使用数字签名和公钥证书机制是不可行的。为保证信息的安全传递,需要有一种机制来验证通信各方身份的合法性,必须建立一套综合考虑安全性、效率和性能并进行合理的传感器网络身份认证方案。
发明内容
本发明的目的是提供一种基于CA证书的Restful架构下的无线传感器网络接入认证方法,有效防止恶意攻击者对数据的破坏,保护无线传感器网络中数据的安全。
本发明采用的技术方案为:一种基于CA证书的Restful架构下的无线传感器网络接入认证方法,将传感器节点和汇聚节点自组织成为网络,将汇聚节点连接到基于Restful架构的Web服务器,客户端与Web服务器之间的认证,汇聚节点与Web服务器之间的认证、传感器节点与汇聚节点之间的认证以及客户端与汇聚节点之间的认证均基于CA证书完成,用户通过客户端访问Web服务器获取无线传感器节点的数据。
还包括第三方应用程序与Web服务器之间的基于令牌的认证。
认证过程中,被认证方持有第一CA证书、第一公钥和第一私钥,认证方持有第二CA证书、第二公钥和第二私钥,认证过程包括如下步骤:
A被认证方向认证方发送接入请求,并接收认证方返回的第一随机数和第二CA证书;
B被认证方用自身保存的CA公钥对接收到的第二CA证书进行验证,若验证通过,进入步骤C,否则进入步骤D;
C被认证方获取第二CA证书中的携带的第二公钥,采用自身保存的第一私钥对第一随机数进行加密,并采用获取的第二公钥对第一私钥加密后的第一随机数再进行加密;
D被认证方确定认证方为非法身份,拒绝向认证方发送数据信息;
E被认证方将第一公钥携带在自身保存的第一CA证书中,采用获取第二公钥对第一CA证书进行加密,并将加密后的第一CA证书,以及再加密后的第一随机数发送给认证方;
F认证方采用自身保存的第二私钥,对接收到的加密后的第一CA证书解密,获取第一CA证书,并根据自身保存的CA公钥对获取的第一CA证书进行验证,若验证通过,则进入步骤G,否则进入步骤H;
G认证方获取第一CA证书中携带的第一公钥,采用自身保存的第二私钥,对再加密后的第一随机数进行解密,并采用第一公钥对解密后的第一随机数再解密;
H认证方确定解密结果与自身发送的第一随机数相同时,向被认证方返回确认通知和加密后的第二随机数;
I被认证方获取第二随机数,并将第二随机数作为会话密钥。
在认证过程中,被认证方采用错误检查纠正算法生成并保存第一公钥和第一私钥,认证方采用错误检查纠正算法生成并保存第二公钥和第二私钥。
汇聚节点与Web服务器之间的认证过程还包括对汇聚节点的ID的认证,具体为:
被认证方采用获取的第一公钥对自身的ID进行加密,并发送给认证方;
认证方采用自身保存的第一私钥对加密后的ID进行解密,获取被认证方的ID,并验证被认证方的ID是否合法。
第三方应用程序与Web服务器之间的认证采用基于restful架构的令牌认证,认证过程分为两种情况:
情况一:用户在与Web服务器完成身份认证后进行身份注册,注册时对传感器数据的操作权进行授权,表明所拥有的传感器的数据是仅个人可见、全部可见或者某些人可见,此时第三方应用程序与Web服务器之间的认证,包括以下步骤:
A1、第三方应用程序向Web服务器发出访问数据请求,进入步骤B1;
B1、Web服务器决定是否生成临时令牌返回给第三方应用程序,若不允许,则拒绝访问;若允许,则进入步骤C1;
C1、Web服务器发送临时令牌给第三方应用程序,进入步骤D1;
D1、第三方应用程序接收临时令牌,并向Web服务器再次发送携带临时令牌的数据访问请求,进入步骤E1;
E1、Web服务器收到数据访问请求后对临时令牌进行解析,判断临时令牌是否失效,若未失效,则返回给第三方应用程序想要访问的数据;若失效,则重新生成临时令牌返回给第三方应用程序,第三方应用程序使用新的临时令牌发送数据访问请求;
情况二:用户在与Web服务器完成身份认证后进行身份注册,注册时对所拥有的传感器数据的操作权没有进行授权或第三方应用程序不是授权的可见方,此时第三方应用程序与Web服务器之间的认证步骤有:
A2、第三方应用程序向Web服务器发出访问数据请求,进入步骤B2;
B2、Web服务器向用户询问是否允许访问数据,若不允许,则拒绝访问;若允许,则进入步骤C2;
C2、用户给予Web服务器授权,Web服务器发送临时令牌给第三方应用程序,,进入步骤D2;
D2、第三方应用程序接收临时令牌,并向Web服务器再次发送携带临时令牌的数据访问请求,进入步骤E2;
E2、Web服务器收到数据访问请求后对临时令牌进行解析,判断临时令牌是否失效,若未失效,则返回给第三方应用程序想要访问的数据;若失效,则进入步骤B2;
基于CA证书的Restful架构下的无线传感器网络接入认证方法,其特征在于:
步骤C1和步骤C2中,Web服务器内部以当前时间的元素生成一个临时令牌返回给第三方应用程序;
步骤E1和步骤E2中,对临时令牌进行解析,还原成临时令牌的生成时间,从而判断临时令牌是否失效。
本发明将传感器节点和汇聚节点自组织成为网络,将汇聚节点连接到基于Restful架构的Web服务器,客户端与Web服务器之间的认证,汇聚节点与Web服务器之间的认证、传感器节点与汇聚节点之间的认证以及客户端与汇聚节点之间的认证均基于CA证书完成,用户通过客户端访问Web服务器获取无线传感器节点的数据。本发明能有效防止恶意攻击者对数据的破坏,保护无线传感器网络中数据的安全。
附图说明
图1为本发明基于Restful架构的无线传感器网络拓扑图;
图2为本发明的身份认证拓扑图;
图3为本发明中基于CA证书的认证方与被认证方的认证流程图;
图4为本发明中汇聚节点与Web服务器之间的认证流程图;
图5为本发明中的第三方应用程序与Web服务器之间的身份认证流程图。
具体实施方式
本发明所述的基于CA证书的Restful架构下的无线传感器网络接入认证方法,将传感器节点sensor和汇聚节点sinknode自组织成为网络,将汇聚节点sinknode连接到基于Restful架构的Web服务器,客户端user与Web服务器之间的认证、汇聚节点sinknode与Web服务器之间的认证、传感器节点sensor与汇聚节点sinknode之间的认证以及客户端user与汇聚节点sinknode之间的认证均基于CA证书完成,客户端user、Web服务器、汇聚节点sinknode和传感器节点sensor均具有CA证书中心颁发的CA证书;第三方应用程序与Web服务器之间的认证,采用基于restful架构的令牌认证;用户通过客户端user访问Web服务器获取无线传感器节点的数据
REST全称是RepresentationalStateTransfer,即表述性状态转移,指的是一组架构约束条件和原则,如果一个架构符合REST的约束条件和原则,就称其为Restful架构。目前HTTP是唯一与REST相关的实例。
Restful架构遵循无状态通信原则。无状态通信原则指的是客户端user和Web服务器交互的过程中各次请求之间是无状态的。REST要求状态要么被放入资源状态中,要么被保存在客户端user上,即Web服务器不能保持除了单次请求之外的任何与其通信的客户端user的通信状态。此种通信状态使得Web服务器的可用空间具有可伸缩性,如果Web服务器需要保持客户端user状态,那么大量的客户端user交互会严重影响Web服务器的内存可用空间(footprint)。为实现无状态通信,基于Restful架构的认证请求应当不依赖于cookie或session,且每一个请求都应当携带某种类型的认证凭证。
CA证书内含电子签证机关的信息、公钥用户信息、公钥、私钥、权威机构的签字和有效期等。鉴别CA证书的真伪需用CA公钥对CA证书上的签字进行验证,验证通过,该CA证书就被认为是有效的。目前,证书的格式和验证方法普遍遵循X.509国际标准。
图1为基于Restful架构的无线传感器网络拓扑图,一个汇聚节点sinknode连接若干传感器节点sensor,传感器节点sensor用于收集测量数据,汇聚节点sinknode主要负责操控传感器节点sensor收集数据、接受所有传感器节点sensor的数据以及与外网连接,可看作网关节点。一个Web服务器可接入大量汇聚节点sinknode,Web服务器用来存储汇聚节点sinknode发送来的测量数据,用户可以通过网页的客户端user登录Web服务器,通过浏览器发送数据操作请求支配节点完成任务或者查看Web服务器中保存的收集数据。若用户拥有私人汇聚节点sinknode,则客户端user可直接与汇聚节点sinknode建立连接而不需要通过Web服务器来查看或操控数据。
图2为本发明的身份认证拓扑图,在整个认证***中,客户端user、Web服务器、汇聚节点sinknode和传感器节点sensor都具有CA证书中心颁发的CA证书,并且四者都保存有验证CA证书的CA公钥。第三方应用程序与Web服务器之间进行令牌认证。
在认证流程中,统一把客户端user与Web服务器之间的认证,汇聚节点sinknode与Web服务器之间的认证,传感器节点sensor与汇聚节点sinknode之间的认证以及客户端user与汇聚节点sinknode之间的认证中的前者称为被认证方,后者称为认证方,被认证方持有第一CA证书、第一公钥和第一私钥,认证方持有第二CA证书、第二公钥和第二私钥,由第一公钥加密的数据只能由第一私钥进行解密,由第一私钥加密的数据只能由第一公钥进行解密,同理,由第二公钥加密的数据只能由第二私钥进行解密,由第二私钥加密的数据只能由第二公钥进行解密,因此,即使被认证方和认证方认证过程中的数据包被截取,非法者由于没有密钥不能获取关键数据,因而不能进行身份冒充对数据造成威胁。
在本实施例中,由于汇聚节点sinknode与传感器节点sensor的计算能力有限,不能有效地支持运算复杂度较大的算法,例如,公钥加密RSA算法,当采用RSA算法进行认证时,会消耗很长的认证时间,从而降低通信网络间的通信效率。因此为了提高通信网络间的通信效率,该认证过程中传感器节点sensor,汇聚节点sinknode,Web服务器和客户端user采用错误检查纠正(ErrorCorrectingCode,ECC)算法生成并保存第一公钥、第一私钥、第二公钥和第二私钥,其相应的加密和解密算法也是根据ECC算法进行加密和解密的。
图3为本发明中,客户端user与Web服务器之间的认证,汇聚节点sinknode与Web服务器之间的认证,传感器节点sensor与汇聚节点sinknode之间的认证以及客户端user与汇聚节点sinknode之间的认证,认证过程包括如下步骤:
S101、被认证方向认证方发送接入请求,并接收认证方返回的第一随机数和第二CA证书;
在本实施例中,当被认证方与认证方通信时,先要向认证方发送接入请求,认证方接收到该接入请求后,生成第一随机数,并向被认证方返回第一随机数。为了进一步提高被认证方发送的数据信息的安全性,认证方还要向被认证方返回自身保存的第二CA证书。
S102、被认证方用自身保存的CA公钥对接收到的第二CA证书进行验证,若验证通过,进入步骤S103,否则进入步骤S104;
在本实施例中,被认证方可以根据自身保存的CA公钥,对接收到的第二CA证书进行验证,即对认证方进行验证。
S103、被认证方获取第二CA证书中的携带的第二公钥,采用自身保存的第一私钥对第一随机数进行加密,并采用获取的第二公钥对第一私钥加密后的第一随机数再进行加密;
当验证通过时,即确定认证方合法时,被认证方获取第二CA证书中携带的第二公钥,采用自身保存的第一私钥对该第一随机数进行加密,并采用第二公钥对加密后的第一随机数再进行加密。
S104、被认证方确定认证方为非法身份,拒绝向认证方发送数据信息;
当验证不通过时,即确定被认证方非法时,被认证方拒绝向认证方发送数据信息。
S105、被认证方将第一公钥携带在自身保存的第一CA证书中,采用获取的第二公钥对第一CA证书进行加密,并将加密后的第一CA证书,以及再加密后的第一随机数发送给认证方;
在本实施例中,被认证方将自身保存的该第一公钥携带在第一CA证书中,并采用获取第二公钥对第一CA证书进行加密,将加密后的该第一CA证书,以及步骤S103中该再加密后的第一随机数发送给认证方。
S106、认证方采用自身保存的第二私钥,对接收到的加密后的第一CA证书解密,获取第一CA证书,并根据自身保存的CA公钥对获取的第一CA证书进行验证,若验证通过,则进入步骤S107,否则进入步骤S110;
认证方采用自身保存的第二私钥对加密后的第二CA证书解密,获取第二CA证书,根据自身保存的CA公钥对获取的第一CA证书进行验证,即对被认证方进行验证。
S107、认证方获取第一CA证书中携带的第一公钥,采用自身保存的第二私钥,对再加密后的第一随机数进行解密,并采用第一公钥对解密后的第一随机数再解密;
当验证通过时,认证方获取第一CA证书中携带的第一公钥,并采用自身保存的第二私钥对该再加密后的第一随机数进行解密,采用第一公钥,对解密后的第一随机数再进行解密。
S108、认证方确定解密结果与自身发送的第一随机数相同时,向被认证方返回确认通知和采用第一公钥加密后的第二随机数;
在本实施例中,当认证方对再加密后的第一随机数进行两次解密后的解密结果,与自身发送的该第一随机数相同时,确定被认证方安全,向被认证方返回确认通知和采用第一公钥加密后的第二随机数,第二随机数用于对通信过程中的数据信息进行加密。
S109、被认证方采用第一私钥对接收到的加密后第二随机数进行解密,获取第二随机数,并将第二随机数作为会话密钥。
S110、认证方确定被认证方为非法身份,拒绝接收被认证方发送的数据信息;
在本实施例中,被认证方采用自身保存的第一私钥对接收到的加密后第二随机数进行解密,获取第二随机数,并将第二随机数作为通信过程中的数据信息的会话密钥。
在上述过程中,被认证方在验证接收到的第二CA证书通过时,即验证认证方通过时,获取第二CA证书中携带的第二公钥,采用自身保存的第一私钥对接收到的第一随机数进行加密,并采用第二公钥对第一私钥加密后的第一随机数再进行加密,采用第二公钥对携带第一公钥的第一CA证书进行加密,将加密后的第一CA证书,以及再加密后的第一随机数发送到认证方,认证方采用自身保存的第二私钥对加密后的第一CA证书解密,并在验证该第一CA证书通过时,获取第一公钥,采用自身保存的第二私钥对再加密后的第一随机数解密,并采用第一公钥对解密后的第一随机数再解密,在确定解密结果与自身发送的第一随机数相同时,向汇聚节点sinknode返回确认通知和采用第一公钥加密后的用于对通信过程中的数据信息进行加密的第二随机数,极大的提高了被认证方发送的数据信息的安全性。
在实际应用中,非法的汇聚节点sinknode可能会使用两个以上的不同ID频繁的向Web服务器方发送接入请求,即对该Web服务器进行恶意攻击,由于身份验证过程需要一定的时间,因此会导致Web服务器由于同时进行的验证过程过多而产生数据积压,最终使Web服务器瘫痪。为了防止非法的汇聚节点sinknode对Web服务器的攻击,在本实施例中,Web服务器对接收到的汇聚节点sinknode的加密后的CA证书解密之前,还要接收汇聚节点sinknode发送的该节点的序列号(Identity,ID),并对该ID进行验证,当验证该ID合法时,再进行后续步骤。
图4为本发明中汇聚节点sinknode与Web服务器之间的认证,具体包括以下步骤:
S201:汇聚节点sinknode向Web服务器发送注册请求。
在本实施例中,汇聚节点sinknode与Web服务器第一次建立连接时进行身份注册,即将自身的ID发送给Web服务器,Web服务器保存汇聚节点sinknode的ID。
S202:汇聚节点sinknode向Web服务器发送接入请求,并接收Web服务器返回的第一随机数和第二CA证书。
在本实施例中,当汇聚节点sinknode与Web服务器通信时,先要向Web服务器发送接入请求,Web服务器接收到该接入请求后,生成第一随机数,并向汇聚节点sinknode返回第一随机数。为了进一步提高汇聚节点sinknode发送的数据信息的安全性,Web服务器还要向汇聚节点sinknode返回自身保存的第二CA证书。
S203:汇聚节点sinknode根据自身保存的CA公钥,及接收到的第二CA证书,对Web服务器进行验证,若通过验证,则进行步骤S204,否则进行步骤S205。
在本实施例中,汇聚节点sinknode可以根据自身保存的CA公钥,对接收到的第二CA证书进行验证,即对Web服务器进行验证。
S204:汇聚节点sinknode获取第二CA证书中携带的第二公钥,采用第一私钥对第一随机数加密,并采用获取的第二公钥对第一私钥加密后的第一随机数再进行加密。
当验证通过时,即确定Web服务器合法时,汇聚节点sinknode获取第二CA证书中携带的第二公钥,采用该第一私钥对该第一随机数进行加密,并采用第二公钥对加密后的第一随机数再进行加密。
S205:汇聚节点sinknode确定Web服务器为非法的Web服务器,拒绝向Web服务器发送数据信息。
当验证不通过时,即确定Web服务器非法时,汇聚节点sinknode拒绝向Web服务器发送数据信息。
S206:汇聚节点sinknode将第一公钥携带在自身保存的第一CA证书中,采用获取的第二公钥对其自身的ID进行加密,对该第一CA证书进行加密,并将加密后的ID、第一CA证书,以及再加密后的第一随机数发送给Web服务器。
在本实施例中,为了进一步提高汇聚节点sinknode发送的数据信息的安全性,汇聚节点sinknode将自身保存的第一公钥携带在第一CA证书中,并采用获取的第二公钥对该第一CA证书进行加密,将加密后的第二CA证书,以及步骤S204中再加密后的第一随机数发送到Web服务器。并且,为了防止非法的汇聚节点sinknode对Web服务器的攻击,汇聚节点sinknode还要采用第二公钥对自身的ID加密,并将加密后的ID也发送给Web服务器。
S207:Web服务器采用自身保存的第二私钥,对加密后的ID解密,获取该ID,验证该ID的合法性,若验证通过,则进行步骤S208,否则进行步骤S212。
Web服务器先采用第二私钥对加密后的ID解密,获取汇聚节点sinknode的ID,并判断该ID是否保存在Web服务器本地,若是则为合法,否则,不合法。
S208:Web服务器采用自身保存的第二私钥,对加密后的该第一CA证书解密,获取该第一CA证书,根据自身保存的CA公钥对获取的该第一CA证书进行验证,若验证通过,则进行步骤S209,否则进行步骤S212。
当Web服务器确定汇聚节点sinknode的ID合法时,采用第二私钥对加密后的第一CA证书进行解密,获取第一CA证书,并根据自身保存的CA公钥对该第一CA证书进行验证,即进一步验证汇聚节点sinknode是否安全。
S209:Web服务器获取第一CA证书中携带的第一公钥,采用自身保存的第二私钥,对加密后的第一随机数解密,并采用第一公钥,对解密后的第一随机数再解密,判断解密结果与自身发送的该第一随机数是否相同,若相同,则进行步骤S210,否则,进行步骤S212。
当验证第一CA证书通过时,获取第一CA证书中携带的第一公钥,采用第二私钥对再加密后的第一随机数进行解密,并采用获得的第一公钥对解密后的第一随机数再进行解密,获得解密结果,判断解密结果与自身发送的该第一随机数是否相同,从而判断汇聚节点sinknode是否安全。
S210:Web服务器采用第一公钥对第二随机数进行加密,将确认通知和加密后的第二随机数返回汇聚节点sinknode。
当确定该解密结果与自身发送的第一随机数相同时,Web服务器确定汇聚节点sinknode安全,生成确认通知和第二随机数,采用第一公钥对第二随机数进行加密,将该确认通知和加密后的第二随机数发送给汇聚节点sinknode。
S211:汇聚节点sinknode接收Web服务器返回的确认通知和加密后的第二随机数,采用自身保存的第一私钥对加密后的第二随机数解密,获取该第二随机数,并将第二随机数作为会话密钥。
汇聚节点sinknode接收到该确认通知后,采用第一私钥对该加密后的第二随机数进行解密,获取第二随机数,采用第二随机数对待发送的数据信息加密,即Web服务器与汇聚节点sinknode约定采用第二随机数作为后续的会话密钥。
S212:Web服务器确定汇聚节点sinknode不安全,拒绝接收汇聚节点sinknode发送的数据信息。
当Web服务器确定汇聚节点sinknode的ID不合法时,或验证该第一CA证书不通过时,或确定解密结果与自身发送的第一随机数不相同时,确定汇聚节点sinknode不安全,拒绝接收汇聚节点sinknode发送的数据信息。
其中,上述过程中的第一公钥和第一私钥为汇聚节点sinknode根据ECC算法生成并保存的,第二公钥和第二私钥为Web服务器根据ECC算法生成并保存的,其相应的加密和解密算法也是根据ECC算法进行加密和解密的。
在上述过程中,汇聚节点sinknode接收Web服务器返回的第一随机数,采用自身保存的第一私钥对第一随机数加密,并将自身保存的第一公钥及加密后的第一随机数返回,Web服务器采用第一公钥对加密后的第一随机数进行解密,根据解密结果是否与自身发送的第一随机数相同,判断汇聚节点sinknode是否安全,当确定安全时,接收汇聚节点sinknode发送的数据信息。由于本发明实施例中采用第一私钥进行加密的第一随机数,只能采用第一公钥解密,如果该第一公钥被非法的汇聚节点sinknode窃取,则非法的汇聚节点sinknode采用窃取的第一公钥对第一随机数进行加密后,Web服务器不能采用第一公钥对加密后的第一随机数进行解密,从而不能正确的获取第一随机数,拒绝非法的汇聚节点sinknode发送的数据信息,因此提高了汇聚节点sinknode发送给Web服务器的数据信息的安全性。
并且,为了防止非法的汇聚节点sinknode对Web服务器的攻击,导致Web服务器因数据积压而瘫痪,汇聚节点sinknode还向Web服务器发送其自身的ID,Web服务器验证该ID的合法性,当验证通过时才进行后续的步骤,否则确定汇聚节点sinknode不安全,拒绝接收汇聚节点sinknode发送的数据信息。
同时,Web服务器还向汇聚节点sinknode返回第二CA证书,汇聚节点sinknode在验证第二CA证书通过后,确定Web服务器合法,获取第二CA证书中携带的第二公钥,采用第二公钥对自身的ID和携带第一公钥的第一CA证书进行加密,并对第一私钥加密后的第一随机数再进行加密,将加密后的ID和第一CA证书,以及再加密后的第一随机数返回Web服务器,Web服务器在确定汇聚节点sinknode的ID和第一CA证书合法后,采用相应的解密方式对该再加密后的第一随机数进行解密,获得解密结果,再根据该解密结果与该第一随机数是否相同,判断汇聚节点sinknode是否安全,进一步提高了汇聚节点sinknode发送的数据信息的安全性。
另外,上述过程中的第一公钥、第一私钥、第二公钥和第二私钥均为根据ECC算法生成的,由于汇聚节点sinknode能够有效的支持该ECC算法,因此提高了汇聚节点sinknode与移动通信网络间的通信效率。
图5为本发明中的第三方应用程序与Web服务器之间的身份认证流程图,第三方应用程序与Web服务器之间的认证采用基于Restful架构的令牌认证,一个访问令牌可以被用来唯一的识别和认证一个用户,用户每个请求都需要携带令牌来实现访问的安全性,这里令牌的发放分为两种情况:
情况一:用户在与Web服务器完成身份认证后进行身份注册,注册时对传感器数据的操作权进行授权,表明所拥有的传感器的数据是仅个人可见、全部可见或者某些人可见,此时第三方应用程序与Web服务器之间的认证依次包括以下步骤:
S301:第三方应用程序向Web服务器发出访问数据请求;
S302:Web服务器决定是否生成临时令牌Token返回给第三方应用程序,若不允许,则拒绝访问;若允许,则进入步骤S303;
S303:Web服务器发送临时令牌Token给第三方应用程序;
Web服务器内部以当前时间的元素生成一个临时令牌Token返回给第三方应用程序;
S304:第三方应用程序接收临时令牌Token,并向Web服务器再次发送携带临时令牌Token的数据访问请求;
S305:Web服务器收到数据访问请求后对临时令牌Token进行解析,判断临时令牌Token是否失效,若未失效,则返回给第三方应用程序想要访问的数据;若失效,则重新生成临时令牌Token返回给第三方应用程序,第三方应用程序使用新的临时令牌Token发送数据访问请求;
Web服务器收到请求后对临时令牌Token进行解析还原出临时令牌Token的生成时间,判断临时令牌Token是否失效,若未失效,则返回给第三方应用程序想要访问的数据;若失效,则重新生成临时令牌Token返回给第三方应用程序,第三方应用程序使用新的临时令牌Token发送数据访问请求。
情况二:用户在与Web服务器完成身份认证后进行身份注册,注册时对所拥有的传感器数据的操作权没有进行授权或第三方应用程序不是授权的可见方,此时第三方应用程序与Web服务器之间的认证步骤有:
S401:第三方应用程序向Web服务器发出访问数据请求;
S402:Web服务器向用户询问是否允许访问数据,若不允许,则拒绝访问;若允许,则进入步骤S403;
S403:用户给予Web服务器授权,Web服务器发送临时令牌Token给第三方应用程序;
Web服务器内部以当前时间的元素生成一个临时令牌Token返回给第三方应用程序;
S404:第三方应用程序接收临时令牌Token,并向Web服务器再次发送携带临时令牌Token的数据访问请求;
S405:Web服务器收到数据访问请求后对临时令牌Token进行解析,判断临时令牌Token是否失效,若未失效,则返回给第三方应用程序想要访问的数据;若失效,进入步骤S402。
现有的令牌认证通常采用动态口令技术。动态口令技术是对传统的静态口令技术的改进,用户要拥有一些凭证,如***颁发的临时令牌Token,且临时令牌Token上的数字是不断变化的,而且与认证的Web服务器是同步的,因此用户登录到***的口令也是不断地变化的,即所谓的“一次一密”。
现有的动态口令技术有两种同步方案:时间同步、事件同步。
1.时间同步,是指临时令牌Token采用时间作为动态口令的一个种子,Web服务器通过采用时间作为一个种子验证临时令牌Token产生的口令。
2.事件同步,是指临时令牌Token每次产生动态口令时以当前的计数作为一个种子,每次产生完成动态口令后,该计数会自动递增,Web服务器同样采用次数作为验证时的种子。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (7)
1.一种基于CA证书的Restful架构下的无线传感器网络接入认证方法,其特征在于:将传感器节点和汇聚节点自组织成为网络,将汇聚节点连接到基于Restful架构的Web服务器,客户端与Web服务器之间的认证,汇聚节点与Web服务器之间的认证、传感器节点与汇聚节点之间的认证以及客户端与汇聚节点之间的认证均基于CA证书完成,用户通过客户端访问Web服务器获取无线传感器节点的数据。
2.根据权利要求1所述的基于CA证书的Restful架构下的无线传感器网络接入认证方法,其特征在于:还包括第三方应用程序与Web服务器之间的基于令牌的认证。
3.根据权利要求1所述的基于CA证书的Restful架构下的无线传感器网络接入认证方法,其特征在于:认证过程中,被认证方持有第一CA证书、第一公钥和第一私钥,认证方持有第二CA证书、第二公钥和第二私钥,认证过程包括如下步骤:
被认证方向认证方发送接入请求,并接收认证方返回的第一随机数和第二CA证书;
被认证方用自身保存的CA公钥对接收到的第二CA证书进行验证,若验证通过,进入步骤C,否则进入步骤D;
被认证方获取第二CA证书中的携带的第二公钥,采用自身保存的第一私钥对第一随机数进行加密,并采用获取的第二公钥对第一私钥加密后的第一随机数再进行加密;
被认证方确定认证方为非法身份,拒绝向认证方发送数据信息;
被认证方将第一公钥携带在自身保存的第一CA证书中,采用获取第二公钥对第一CA证书进行加密,并将加密后的第一CA证书,以及再加密后的第一随机数发送给认证方;
认证方采用自身保存的第二私钥,对接收到的加密后的第一CA证书解密,获取第一CA证书,并根据自身保存的CA公钥对获取的第一CA证书进行验证,若验证通过,则进入步骤G,否则进入步骤H;
认证方获取第一CA证书中携带的第一公钥,采用自身保存的第二私钥,对再加密后的第一随机数进行解密,并采用第一公钥对解密后的第一随机数再解密;
认证方确定解密结果与自身发送的第一随机数相同时,向被认证方返回确认通知和加密后的第二随机数;
被认证方获取第二随机数,并将第二随机数作为会话密钥。
4.根据权利要求3所述的基于CA证书的Restful架构下的无线传感器网络接入认证方法,其特征在于:在认证过程中,被认证方采用错误检查纠正算法生成并保存第一公钥和第一私钥,认证方采用错误检查纠正算法生成并保存第二公钥和第二私钥。
5.根据权利要求3或4所述的基于CA证书的Restful架构下的无线传感器网络接入认证方法,其特征在于:汇聚节点与Web服务器之间的认证过程还包括对汇聚节点的ID的认证,具体为:
被认证方采用获取的第一公钥对自身的ID进行加密,并发送给认证方;
认证方采用自身保存的第一私钥对加密后的ID进行解密,获取被认证方的ID,并验证被认证方的ID是否合法。
6.根据权利要求2所述的基于CA证书的Restful架构下的无线传感器网络接入认证方法,其特征在于,第三方应用程序与Web服务器之间的认证采用基于restful架构的令牌认证,认证过程分为两种情况:
情况一:用户在与Web服务器完成身份认证后进行身份注册,注册时对传感器数据的操作权进行授权,表明所拥有的传感器的数据是仅个人可见、全部可见或者某些人可见,此时第三方应用程序与Web服务器之间的认证,包括以下步骤:
A1、第三方应用程序向Web服务器发出访问数据请求,进入步骤B1;
B1、Web服务器决定是否生成临时令牌返回给第三方应用程序,若不允许,则拒绝访问;若允许,则进入步骤C1;
C1、Web服务器发送临时令牌给第三方应用程序,进入步骤D1;
D1、第三方应用程序接收临时令牌,并向Web服务器再次发送携带临时令牌的数据访问请求,进入步骤E1;
E1、Web服务器收到数据访问请求后对临时令牌进行解析,判断临时令牌是否失效,若未失效,则返回给第三方应用程序想要访问的数据;若失效,则重新生成临时令牌返回给第三方应用程序,第三方应用程序使用新的临时令牌发送数据访问请求;
情况二:用户在与Web服务器完成身份认证后进行身份注册,注册时对所拥有的传感器数据的操作权没有进行授权或第三方应用程序不是授权的可见方,此时第三方应用程序与Web服务器之间的认证步骤有:
A2、第三方应用程序向Web服务器发出访问数据请求,进入步骤B2;
B2、Web服务器向用户询问是否允许访问数据,若不允许,则拒绝访问;若允许,则进入步骤C2;
C2、用户给予Web服务器授权,Web服务器发送临时令牌给第三方应用程序,,进入步骤D2;
D2、第三方应用程序接收临时令牌,并向Web服务器再次发送携带临时令牌的数据访问请求,进入步骤E2;
E2、Web服务器收到数据访问请求后对临时令牌进行解析,判断临时令牌是否失效,若未失效,则返回给第三方应用程序想要访问的数据;若失效,则进入步骤B2。
7.根据权利要求6所述的方法,其特征在于,基于CA证书的Restful架构下的无线传感器网络接入认证方法,其特征在于:
步骤C1和步骤C2中,Web服务器内部以当前时间的元素生成一个临时令牌返回给第三方应用程序;
步骤E1和步骤E2中,对临时令牌进行解析,还原成临时令牌的生成时间,从而判断临时令牌是否失效。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510947803.2A CN105530253B (zh) | 2015-12-17 | 2015-12-17 | 基于CA证书的Restful架构下的无线传感器网络接入认证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510947803.2A CN105530253B (zh) | 2015-12-17 | 2015-12-17 | 基于CA证书的Restful架构下的无线传感器网络接入认证方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105530253A true CN105530253A (zh) | 2016-04-27 |
CN105530253B CN105530253B (zh) | 2018-12-28 |
Family
ID=55772235
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510947803.2A Active CN105530253B (zh) | 2015-12-17 | 2015-12-17 | 基于CA证书的Restful架构下的无线传感器网络接入认证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105530253B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107241341A (zh) * | 2017-06-29 | 2017-10-10 | 北京五八信息技术有限公司 | 访问控制方法及装置 |
CN107872445A (zh) * | 2016-09-28 | 2018-04-03 | 华为技术有限公司 | 接入认证方法、设备和认证*** |
CN107918731A (zh) * | 2016-10-11 | 2018-04-17 | 百度在线网络技术(北京)有限公司 | 用于控制对开放接口进行访问的权限的方法和装置 |
CN108429732A (zh) * | 2018-01-23 | 2018-08-21 | 平安普惠企业管理有限公司 | 一种获取资源的方法及*** |
CN109286639A (zh) * | 2018-11-29 | 2019-01-29 | 郑静 | 一种基于RESTful架构的电子认证兼容控制***及使用方法 |
CN109391594A (zh) * | 2017-08-09 | 2019-02-26 | 中国电信股份有限公司 | 安全认证***和方法 |
CN110351385A (zh) * | 2019-07-11 | 2019-10-18 | 苏州高博软件技术职业学院 | 一种家庭网关***及数据转发方法 |
CN111988779A (zh) * | 2020-07-13 | 2020-11-24 | 北京工业大学 | 基于可信连接架构的无线传感器网络节点接入认证方法 |
CN114070649A (zh) * | 2021-12-15 | 2022-02-18 | 武汉天喻信息产业股份有限公司 | 一种设备间的安全通信方法及*** |
CN114629651A (zh) * | 2020-12-14 | 2022-06-14 | 南京如般量子科技有限公司 | 一种基于ca的抗量子计算通信方法及*** |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112073964B (zh) * | 2020-10-26 | 2021-11-19 | 河南大学 | 一种基于椭圆曲线加密的无人机与基站通信身份认证方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101729565A (zh) * | 2009-12-31 | 2010-06-09 | 卓望数码技术(深圳)有限公司 | 一种传感器的安全访问方法、传感器及安全访问*** |
CN102916810A (zh) * | 2011-08-05 | 2013-02-06 | ***通信集团公司 | 传感器认证方法、***和装置 |
US20130086645A1 (en) * | 2011-09-29 | 2013-04-04 | Oracle International Corporation | Oauth framework |
CN103220285A (zh) * | 2013-04-10 | 2013-07-24 | 中国科学技术大学苏州研究院 | 泛在业务环境下基于RESTful接口的接入*** |
US20140085050A1 (en) * | 2012-09-25 | 2014-03-27 | Aliphcom | Validation of biometric identification used to authenticate identity of a user of wearable sensors |
-
2015
- 2015-12-17 CN CN201510947803.2A patent/CN105530253B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101729565A (zh) * | 2009-12-31 | 2010-06-09 | 卓望数码技术(深圳)有限公司 | 一种传感器的安全访问方法、传感器及安全访问*** |
CN102916810A (zh) * | 2011-08-05 | 2013-02-06 | ***通信集团公司 | 传感器认证方法、***和装置 |
US20130086645A1 (en) * | 2011-09-29 | 2013-04-04 | Oracle International Corporation | Oauth framework |
US20140085050A1 (en) * | 2012-09-25 | 2014-03-27 | Aliphcom | Validation of biometric identification used to authenticate identity of a user of wearable sensors |
CN103220285A (zh) * | 2013-04-10 | 2013-07-24 | 中国科学技术大学苏州研究院 | 泛在业务环境下基于RESTful接口的接入*** |
Non-Patent Citations (1)
Title |
---|
孙胜耀: "《中国优秀硕士学位论文全文数据库信息科技辑》", 15 August 2014 * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107872445A (zh) * | 2016-09-28 | 2018-04-03 | 华为技术有限公司 | 接入认证方法、设备和认证*** |
CN107872445B (zh) * | 2016-09-28 | 2021-01-29 | 华为技术有限公司 | 接入认证方法、设备和认证*** |
CN107918731A (zh) * | 2016-10-11 | 2018-04-17 | 百度在线网络技术(北京)有限公司 | 用于控制对开放接口进行访问的权限的方法和装置 |
CN107241341B (zh) * | 2017-06-29 | 2020-07-07 | 北京五八信息技术有限公司 | 访问控制方法及装置 |
CN107241341A (zh) * | 2017-06-29 | 2017-10-10 | 北京五八信息技术有限公司 | 访问控制方法及装置 |
CN109391594A (zh) * | 2017-08-09 | 2019-02-26 | 中国电信股份有限公司 | 安全认证***和方法 |
CN108429732B (zh) * | 2018-01-23 | 2021-01-08 | 平安普惠企业管理有限公司 | 一种获取资源的方法及*** |
CN108429732A (zh) * | 2018-01-23 | 2018-08-21 | 平安普惠企业管理有限公司 | 一种获取资源的方法及*** |
CN109286639A (zh) * | 2018-11-29 | 2019-01-29 | 郑静 | 一种基于RESTful架构的电子认证兼容控制***及使用方法 |
CN110351385A (zh) * | 2019-07-11 | 2019-10-18 | 苏州高博软件技术职业学院 | 一种家庭网关***及数据转发方法 |
CN110351385B (zh) * | 2019-07-11 | 2022-03-11 | 苏州高博软件技术职业学院 | 一种家庭网关***及数据转发方法 |
CN111988779A (zh) * | 2020-07-13 | 2020-11-24 | 北京工业大学 | 基于可信连接架构的无线传感器网络节点接入认证方法 |
CN111988779B (zh) * | 2020-07-13 | 2022-10-18 | 北京工业大学 | 基于可信连接架构的无线传感器网络节点接入认证方法 |
CN114629651A (zh) * | 2020-12-14 | 2022-06-14 | 南京如般量子科技有限公司 | 一种基于ca的抗量子计算通信方法及*** |
CN114070649A (zh) * | 2021-12-15 | 2022-02-18 | 武汉天喻信息产业股份有限公司 | 一种设备间的安全通信方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN105530253B (zh) | 2018-12-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105530253A (zh) | 基于CA证书的Restful架构下的无线传感器网络接入认证方法 | |
Liu et al. | A survey on secure data analytics in edge computing | |
Al‐Turjman et al. | An overview of security and privacy in smart cities' IoT communications | |
Garg et al. | Toward secure and provable authentication for Internet of Things: Realizing industry 4.0 | |
Moghadam et al. | An efficient authentication and key agreement scheme based on ECDH for wireless sensor network | |
Turkanovic et al. | An improved dynamic password-based user authentication scheme for hierarchical wireless sensor networks | |
RU2420895C2 (ru) | Детерминистическое предварительное распределение ключей и функциональное управление ключами для сетей мобильных датчиков на теле | |
Razouk et al. | A new security middleware architecture based on fog computing and cloud to support IoT constrained devices | |
CN105516980A (zh) | 一种基于Restful架构的无线传感器网络令牌认证方法 | |
CN112788042B (zh) | 物联网设备标识的确定方法及物联网设备 | |
EP2805298B1 (en) | Methods and apparatus for reliable and privacy protecting identification of parties' mutual friends and common interests | |
Park et al. | A selective group authentication scheme for IoT-based medical information system | |
CN103313246B (zh) | 一种无线传感网双因子认证方法和装置及其网络 | |
Dua et al. | Replay attack prevention in Kerberos authentication protocol using triple password | |
Hasan et al. | WORAL: A witness oriented secure location provenance framework for mobile devices | |
Saeed et al. | Pseudonym Mutable Based Privacy for 5G User Identity. | |
Srikanth et al. | An efficient Key Agreement and Authentication Scheme (KAAS) with enhanced security control for IIoT systems | |
Chen et al. | Enhanced authentication protocol for the Internet of Things environment | |
Chunka et al. | An efficient user authentication and session key agreement in wireless sensor network using smart card | |
Alrababah et al. | A survey: Authentication protocols for wireless sensor network in the internet of things; keys and attacks | |
Wazid et al. | TACAS-IoT: trust aggregation certificate-based authentication Scheme for edge-enabled IoT systems | |
Weng et al. | A lightweight anonymous authentication and secure communication scheme for fog computing services | |
Badar et al. | Secure authentication protocol for home area network in smart grid-based smart cities | |
Wang et al. | Lightweight blockchain-enhanced mutual authentication protocol for UAVs | |
Kumar et al. | An efficient anonymous user authentication and key agreement protocol for wireless sensor networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |