一种安全传输数据方法,装置和系统制造方法及图纸

技术编号:8836786 阅读:127 留言:0更新日期:2013-06-22 22:12
本发明专利技术提供一种安全传输数据方法,装置和系统。提供一种安全传输数据的方法,其特征在于,包括:用户终端发送一个携带第一鉴权头域的资源访问请求到服务器,所述第一鉴权头域包括用户标识和服务器标识;接收服务器返回的请求响应,所述请求响应包括第二鉴权头域和消息体,所述第二鉴权头域携带第三完整性摘要;所述第三完整性摘要由服务器收到所述资源访问请求后,进一步根据用户密码和消息内容使用第三消息摘要算法计算得出,所述消息体携带由共享密钥加密后的消息内容;其中用户密码是根据资源访问请求携带的用户标识从服务器的存储区中获取;以使得基于CoAP协议的M2M传输能够安全可靠的进行。

【技术实现步骤摘要】

本专利技术涉及通信领域,尤其涉及一种安全传输数据方法,装置和系统
技术介绍
CoAP(Constrained Application Protocol)协议主要是用于机器对机器(Machine-to-Machine, M2M)的场景中,比如:家庭控制器、楼宇自动化、智能能源、传感端网络等。在这样的环境中,这些机器的功能比较简单,一般处理端只有8位,存储空间小,不支持复杂的传输协议,数据传输速率也较低。CoAP提供一种请求/响应的交互模式,支持内嵌的资源发现,包括关键的网概念,比如统一资源标识(Universal Resource Identifier,URI)和内容类型。CoAP可以很容易地翻译到超文本链接协议(Hyper Text TransferProtocoI,HTTP),用于集成到网络中。CoAP中,安全问题很重要,尤其是一些传感数据属于保密数据,例如人的生理特征参数,还有很多的对控制器的操作也需要进行授权检查,而且CoAP的设备通信可能会跨越不信任的中间节点,因此需要端到端的CoAP安全数据传输。端到端安全数据传输包括用户终端和服务器的双向身份认证、防重放攻击以及通信数据的加密和完整性验证。现有技术中没有保证CoAP协议和HTTP协议转换信息和传递消息体分开保护的有效方法,以至于CoAP消息的加密和CoAP与HTTP协议间的转换无法同时实现,以致增加代理装置Proxy后,现有CaAP协议无法在保证加密安全的情况下正常传输。
技术实现思路
本专利技术实施例要解决的技术问题是提供一种安全传输数据方法、用户终端、服务器和系统,以使得M2M的消息传输能够安全可靠的进行。为解决上述技术问题,本专利技术实施例一方面,提供了一种安全传输数据的方法包括:用户终端发送一个携带第一鉴权头域的资源访问请求到服务器,所述第一鉴权头域包括用户标识和服务器标识;接收服务器返回的请求响应,所述请求响应包括第二鉴权头域和消息体,所述第二鉴权头域携带第三完整性摘要;所述第三完整性摘要由服务器收到所述资源访问请求后,进一步根据用户密码和消息内容使用第三消息摘要算法计算得出,所述消息体携带由共享密钥加密后的消息内容;其中用户密码是根据资源访问请求携带的用户标识从服务器的存储区中获取;使用共享密钥解密所述请求响应的消息体获取消息内容,依据所述消息内容和用户密码使用第四消息摘要算法计算第四完整性摘要,在所述第四完整性摘要和与所述请求响应中第三完整性摘要一致时,验证请求响应是有效的。另一方面,提供了一种安全传输数据的方法包括:用户终端发送一个携带有第一鉴权头域和消息体的资源访问请求,所述第一鉴权头域包括用户标识、服务器标识和第一完整性摘要,所述第一完整性摘要是用户终端根据用户密码和消息内容使用第一消息摘要算法计算得出;其中消息体携带有经过共享密钥加密后的消息内容;接收服务器返回的请求响应;所述请求响应是服务器接收所述资源访问请求,验证所述资源访问请求有效后返回的,所述验证资源访问请求有效具体包括:使用共享密钥解密所述资源访问请求的消息体获取消息内容,并根据第一鉴权头域中的用户标识从存储区中获取对应的用户密码,依据所述消息内容和所述获取的用户密码使用第二消息摘要算法计算第二完整性摘要,在所述第二完整性摘要和所述资源访问请求中第一完整性摘要一致时,验证资源访问请求是有效的。另一方面,提供了一种用户终端,包括:第一发送模块,用于发送一个包括第一鉴权头域的资源访问请求到服务器,所述第一鉴权头域携带用户标识和服务器标识;第一接收模块,用于接收服务器返回的请求响应,并传递给第一验证模块,所述请求响应包括第二鉴权头域和消息体;所述第二鉴权头域携带第三完整性摘要;所述第三完整性摘要由服务器收到所述资源访问请求后,进一步根据用户密码和消息内容使用第三消息摘要算法计算得出,所述消息体携带由共享密钥加密后的消息内容;其中用户密码是根据资源访问请求携带的用户标识从服务器的存储区中获取;第一验证模块,用于生成资源访问请求,并向第一发送模块传递;还用于获取来自第一接收模块的请求响应,使用共享密钥解密所述请求响应的消息体获取消息内容,依据所述消息内容和用户密码使用第四消息摘要算法计算第四完整性摘要;在所述第四完整性摘要和所述请求响应中第三完整性摘要一致时,验证请求响应是有效的。另一方面,本专利技术提供了一种服务器,包括:第二接收模块,用于接收发自用户终端的资源访问请求,并传递给第二验证模块,所述资源访问请求携带有用户标识和服务器标识;第二验证模块,用于根据资源访问请求中的用户标识从服务器的存储区获取用户密码;根据所述用户密码和消息内容使用第三消息摘要算法计算第三完整性摘要,传递携带有第二鉴权头域和消息体的请求响应给第二发送模块;其中第二鉴权头域包括所述第三完整性摘要,消息体包括由共享密钥加密后的消息内容;第二发送模块,用于发送来自第二验证模块的所述请求响应给用户终端。另一方面,本专利技术提供了一种用户终端,包括:第三发送模块,用于发送来自第三验证模块的资源访问请求,所述资源访问请求携带有第一鉴权头域和消息体,所述第一鉴权头域携带有用户标识、服务器标识和第一完整性摘要;第三验证模块,用于根据用户密码和消息内容使用第一消息摘要算法计算得出第一完整性摘要并携带在第一鉴权头域,使用共享密钥加密消息内容并携带在消息体中,向第三发送模块传递携带有第一鉴权头域和消息体的资源访问请求;第三接收模块,用于接收服务器返回的请求响应,并传递给第三验证模块。另一方面,本专利技术提供了一种服务器,包括:第四接收模块,用于接收发自用户终端的资源访问请求,并传递给第四验证模块,所述资源访问请求包括第一鉴权头域,所述第一鉴权头域携带有用户标识、服务器标识、消息体和第一完整性摘要;第四验证模块,用于在获得来自第四接收模块的资源访问请求后,获取资源访问请求中携带的经过用户终端加密的消息内容,使用共享密钥解密所述资源访问请求的消息体获取消息内容,使用共享密钥解密所述资源访问请求的消息体获取消息内容,并根据所述第一鉴权头域中的用户标识从存储区中获取用户密码,依据所述的消息内容和所述获取的用户密码使用第二消息摘要算法计算第二完整性摘要;在所述第二完整性摘要和所述资源访问请求中第一完整性摘要一致时,验证所述资源访问请求有效,向第四发送模块传递请求响应;第四发送模块,用于发送来自第四验证模块的请求响应给用户终端。另一方面,本专利技术提供了一种安全传输数据的系统,包括:用户终端,用于发送一个携带第一鉴权头域的资源访问请求到服务器,所述第一鉴权头域包括用户标识和服务器标识;还用于接收请求响应并使用共享密钥解密所述请求响应的消息体获取消息内容,依据所述消息内容和用户密码计算第四完整性摘要,在所述第四完整性摘要与所述请求响应中第三完整性摘要一致时,验证请求响应有效的;服务器,用于接收所述资源访问请求,根据用户密码和消息内容使用第三消息摘要算法计算得出第三完整性摘要并携带在第二鉴权头域中;使用共享密钥加密消息内容并携带在消息体中;其中用户密码是利用资源访问请求携带的用户标识从服务器的存储区中获取;其中消息内容是服务完成资源访问请求的操作后获得;向用户终端发送携带有所述第二鉴权头域和所述消息体的请求响应。另一方面,本专利技术提供了一种安全本文档来自技高网...

【技术保护点】
一种安全传输数据的方法,其特征在于,包括:用户终端向服务器发送一个携带第一鉴权头域的资源访问请求,所述第一鉴权头域包括用户标识和服务器标识;接收服务器返回的请求响应,所述请求响应包括第二鉴权头域和消息体,所述第二鉴权头域携带第三完整性摘要;所述第三完整性摘要由服务器收到所述资源访问请求后,进一步根据用户密码和消息内容使用第三消息摘要算法计算得出,所述消息体携带由共享密钥加密后的消息内容;其中用户密码是根据资源访问请求携带的用户标识从服务器的存储区中获取;使用共享密钥解密所述请求响应的消息体获取消息内容,依据所述消息内容和用户密码使用第四消息摘要算法计算第四完整性摘要,在所述第四完整性摘要和与所述请求响应中第三完整性摘要一致时,验证请求响应是有效的。

【技术特征摘要】
1.一种安全传输数据的方法,其特征在于,包括: 用户终端向服务器发送一个携带第一鉴权头域的资源访问请求,所述第一鉴权头域包括用户标识和服务器标识; 接收服务器返回的请求响应,所述请求响应包括第二鉴权头域和消息体,所述第二鉴权头域携带第三完整性摘要;所述第三完整性摘要由服务器收到所述资源访问请求后,进一步根据用户密码和消息内容使用第三消息摘要算法计算得出,所述消息体携带由共享密钥加密后的消息内容;其中用户密码是根据资源访问请求携带的用户标识从服务器的存储区中获取; 使用共享密钥解密所述请求响应的消息体获取消息内容,依据所述消息内容和用户密码使用第四消息摘要算法计算第四完整性摘要,在所述第四完整性摘要和与所述请求响应中第三完整性摘要一致时,验证请求响应是有效的。2.如权利要求1所述的方法,其特征在于,所述第一鉴权头域包括第一摘要计算参数,所述第一摘要计算参数包含所述用户标识和所述服务器标识,还包括随机标识、资源访问路径和协商密钥参数中的一种或者几种的组合,所述方法进一步包括: 用户终端发送的所述资源访问请求进一步包括根据所述用户密码和第一摘要计算参数中的一种或者几种参数组合使用第一消息摘要算法计算第一完整性摘要; 服务器接收到所述资源访问请求后,根据所述服务器的存储区的用户密码和第一摘要计算参数使用第二消息摘要算法计算第二完整性摘要,其中所述第一消息摘要算法和第二消息摘要算法相同,在所述第一完整性摘要和所述第二完整性摘要相同时,则资源访问请求是有效的。3.如权利要求1或2所述的方法,其特征在于,所述请求响应中的第二鉴权头域进一步包括第二摘要计算参数,所述第二摘要计算参数具体包括用户标识、随机标识、资源访问路径、服务器标识和协商密钥参数中的一种或者几种的组合; 所述第三完整性摘要根据用户密码和消息内容使用第三消息摘要算法计算得出具体包括:所述第三完整性摘要根据用户密码、消息内容和第二摘要计算参数使用第三消息摘要算法计算得出; 所述依据所述消息内容和用户密码使用第四消息摘要算法计算第四完整性摘要具体包括:第四完整性摘要根据用户密码、消息内容和第二摘要计算参数使用第四消息摘要算法计算得出,其中所述第四消息摘要算法和所述第三消息摘要算法相同。4.如权利要求3所述方法,其特征在于,所述资源访问请求中进一步包含随机标识, 所述用户终端发送资源访问请求具体包括:发送携带有随机标识的资源访问请求,所述随机标识由用户终端生成并存储,且携带在第一摘要计算参数中; 所述接受服务器返回的请求响应进一步包括:所述请求响应的第二摘要计算参数中包含随机标识; 所述方法进一步包括用户终端验证所述存储的随机标识和请求响应携带的第二摘要计算参数中的随机标识相同,则请求响应是非重复发送的。5.如权利要求2或3所述方法,其特征在于,所述第一摘要计算参数还包括第一资源版本, 所述根据所述用户密码和第一摘要计算参数中的一种或者几种参数组合使用第一消息摘要算法计算第一完整性摘要还包括:进一步使用所述第一摘要计算参数中的第一资源版本计算第一完整性摘要,并发送携带所述第一资源版本的资源访问请求; 所述方法进一步包括:服务器接收到所述资源访问请求后,比对所述第一资源版本和服务器本地存储的第二资源版本是否相同,相同则所述资源访问请求是非重复发送的; 所述根据所述服务器的存储区的用户密码和第一摘要计算参数使用第二消息摘要算法计算第二完整性摘要还包括:进一步使用所述第一资源版本计算第二完整性摘要,验证所述资源访问请求是有效的。6.如权利要求5所述方法,其特征在于,所述方法还包括: 若所述资源访问请求携带的第一资源版本和服务器本地存储的第二资源版本结果不相同,且所述第一完整性摘要和第二完整性摘要的验证结果是相同时,服务器进一步使用所述第二资源版本计算得出第三完整性摘要,在请求响应中进一步携带第二资源版本,并发送给用户终端。7.如权利要求1-6中任一权利要求所述的方法,其特征在于, 所述用户终端使用的共享密钥是用户终端根据用户标识和用户密码经过密钥的消息摘要算法生成的; 服务器根据资源访问请求中携带的用户标识查询存储的用户密码,并根据所述用户标识和所述用户密码进一步经过所述密钥的消息摘要算法计算生成服务器使用的共享密钥。8.如权利要求1-6中任一权利要求所述的方法,其特征在于, 所述服务器使用的共享密钥 根据协商密钥参数计算获得;用户终端使用的共享密钥则是根据请求响应中携带的协商密钥参数计算获得。9.如权利要求1-8中任一权利要求所述的方法,其特征在于,所述用户终端发送一个携带第一鉴权头域的资源访问请求到服务器进一步包括: 代理接收资源访问请求,根据所述资源访问请求中的用户标识和服务器标识获取用户终端和服务器支持的协议,完成资源访问请求的协议转换生成支持服务器支持的协议的资源访问请求,向服务器发送转换后的资源访问请求。10.如权利要求1-9中任一权利要求所述的方法,其特征在于,所述接收服务器返回的请求响应进一步包括: 代理接收到所述请求响应,根据所述请求响应中的用户标识和服务器标识,完成请求响应的协议转换生成支持用户终端支持的协议的请求响应,向用户终端发送转换后的请求响应。11.一种安全传输数据的方法,其特征在于,包括: 用户终端发送一个携带有第一鉴权头域和消息体的资源访问请求,所述第一鉴权头域包括用户标识、服务器标识和第一完整性摘要,所述第一完整性摘要是用户终端根据用户密码、消息内容使用第一消息摘要算法计算得出;其中消息体携带有经过共享密钥加密后的消息内容; 接收服务器返回的请求响应;所述请求响应是服务器接收所述资源访问请求,验证所述资源访问请求有效后返回的,所述验证资源访问请求有效具体包括:使用共享密钥解密所述资源访问请求的消息体获取消息内容,并根据第一鉴权头域中的用户标识从存储区中获取对应的用户密码,依据所述消息内容、所述获取的用户密码使用第二消息摘要算法计算第二完整性摘要,在所述第二完整性摘要和所述资源访问请求中第一完整性摘要一致时,验证资源访问请求是有效的。12.如权利要求11所述的方法,其特征在于,所述请求响应包括第二鉴权头域,所述第二鉴权头域进一步包括第二摘要计算参数,所述第二摘要计算参数具体包括用户标识、随机标识、资源访问路径、服务器标识和协商密钥参数中的一种或者几种的组合,所述方法进一步包括: 用户终端接收携带有第三完整性摘要的请求响应,所述第三完整性摘要是根据所述用户密码和所述第二摘要计算参数并使用第三消息摘要算法计算获得; 用户终端接收到所述请求响应后,根据用户密码和所述第二摘要计算参数使用第四消息摘要算法计算并获得第四完整性摘要,其中所述第四消息摘要算法和所述第三消息摘要算法相同,在所述第三完整性摘要和所述第四完整性摘要相同时,则所述请求响应是有效的。13.如权利要求11或12所述的方法,其特征在于,所述所述第一鉴权头域包括第一摘要计算参数,所述第一摘要计算参数包含所述用户标识和所述服务器标识,还包括随机标识、资源访问路径和协商密钥参数中的一种或者几种的组合; 所述第一完整性摘要是用户终端根据用户密码和消息内容使用第一消息摘要算法计算得出具体包括:第一完整性摘要是用户终端根据用户密码、消息内容和第一摘要计算参数使用第一消息摘要算法计算得出; 所述依据所述获取消息内容和用户密码使用第二消息摘要算法计算第二完整性摘要具体包括:依据所述获取消息内容、用户密码和第一摘要计算参数使用第二消息摘要算法计算第二完整性摘要,其中所述第一消息摘要算法和所述第二消息摘要算法相同。14.如权利要求13所述方法,其特征在于,所述资源访问请求中进一步包含随机标识,所述用户终端发送资源访 问请求具体包括:发送携带有随机标识的资源访问请求,所述随机标识由用户终端生成并存储,携带在第一摘要计算参数中; 所述接收服务器返回的请求响应进一步包括:所述请求响应的第二摘要计算参数中包含随机标识; 所述方法进一步包括用户终端验证所述存储的随机标识和请求响应携带的第二摘要计算参数中的随机标识相同,则请求响应是非重复发送的。15.如权利要求13或14所述方法,其特征在于,所述第一摘要计算参数包括第一资源版本, 所述第一完整性摘要是用户终端根据用户密码、消息内容使用第一消息摘要算法计算得出包括:用户终端进一步使用所述第一摘要计算参数中的第一资源版本计算第一完整性摘要,并发送携带所述第一资源版本的资源访问请求; 所述方法进一步包括:服务器接收到所述资源访问请求后,比对所述第一资源版本和服务器本地存储的第二资源版本是否相同,相同则所述资源访问请求是非重复发送的; 所述服务器计算第三完整性摘要具体包括:完成资源访问请求操作,更新第二资源版本为第三资源版本,进一步使用所述第三资源版本计算第三完整性摘要,发送携带有所述第三资源版本和第三完整性摘要的请求响应给用户终端; 所述根据用户密码和所述第二摘要计算参数使用第四消息摘要算法计算并获得第四完整性摘要包括:用户终端进一步使用接收的请求响应中携带的第三资源版本计算第四完整性摘要,在验证所述第四完整性摘要和请求响应中携带的第三完整性摘要相同时,保存第三资源版本。16.如权利要求15所述方法,其特征在于,所述方法还包括: 若所述资源访问请求携带的第一资源版本和服务器本地存储的第二资源版本结果不相同,且所述第一完整性摘要和第二完整性摘要的验证结果是相同时,服务器进一步使用所述第二资源版本计算得出第三完整性摘要,并在请求响应中进一步携带第二资源版本,并发送给用户终端。17.如权利要求11-16中任一权利要求所述的方法,其特征在于, 用户终端使用的共享密钥是用户终端根据用户标识和用户密码经过密钥的消息摘要算法生成的; 服务器根据资源访问请求中携带的用户标识查询存储的用户密码,并根据所述用户标识和所述用户密码进一步经过所述密钥的消息摘要算法计算生成服务器使用的共享密钥。18.如权利要求11-16中任一权利要求所述的方法,其特征在于, 服务器使用的共享密钥根据在协商密钥参数计算获得;用户终端使用的共享密钥则是根据请求响应中携带的协商密钥参数计算获得。19.如权利要求11-18 中任一权利要求所述的方法,其特征在于,所述用户终端发送一个携带第一鉴权头域的资源访问请求到服务器具体包括: 代理接收资源访问请求,根据所述资源访问请求中的用户标识和服务器标识获取用户终端和服务器支持的协议,完成资源访问请求的协议转换生成支持服务器支持的协议的资源访问请求,向服务器发送转换后的资源访问请求。20.如权利要求11-19中任一权利要求所述的方法,其特征在于,所述接收服务器返回的请求响应具体包括: 代理接收到所述请求响应,根据所述请求响应中的用户标识和服务器标识,完成请求响应的协议转换生成支持用户终端支持的协议的请求响应,向用户终端发送转换后的请求响应。21.一种用户终端,其特征在于,包括: 第一发送模块,用于发送一个包括第一鉴权头域的资源访问请求到服务器,所述第一鉴权头域携带用户标识和服务器标识; 第一接收模块,用于接收服务器返回的请求响应,并传递给第一验证模块,所述请求响应包括第二鉴权头域和消息体;所述第二鉴权头域携带第三完整性摘要;所述第三完整性摘要由服务器收到所述资源访问请求后,进一步根据用户密码和消息内容使用第三消息摘要算法计算得出,所述消息体携带由共享密钥加密后的消息内容;其中用户密码是根据资源访问请求携带的用户标识从服务器的存储区中获取; 第一验证模块,用于生成资源...

【专利技术属性】
技术研发人员:肖芳英卞永刚张永靖
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1