CN105871790B - 用于传输数据的方法、装置和系统 - Google Patents

用于传输数据的方法、装置和系统 Download PDF

Info

Publication number
CN105871790B
CN105871790B CN201510036840.8A CN201510036840A CN105871790B CN 105871790 B CN105871790 B CN 105871790B CN 201510036840 A CN201510036840 A CN 201510036840A CN 105871790 B CN105871790 B CN 105871790B
Authority
CN
China
Prior art keywords
hash function
terminal equipment
target
terminal
finger print
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.)
Active
Application number
CN201510036840.8A
Other languages
English (en)
Other versions
CN105871790A (zh
Inventor
肖晶
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201510036840.8A priority Critical patent/CN105871790B/zh
Priority to PCT/CN2016/071359 priority patent/WO2016116034A1/zh
Publication of CN105871790A publication Critical patent/CN105871790A/zh
Application granted granted Critical
Publication of CN105871790B publication Critical patent/CN105871790B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Telephonic Communication Services (AREA)
  • Telephone Function (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

提供一种用于传输数据的方法、装置和系统,该方法包括:第一终端设备接收第二终端设备发送的第一哈希函数列表,从第一哈希函数列表中确定第一哈希函数,确定与第一哈希函数相对应的第一指纹信息,向第二终端设备发送第一哈希函数和第一指纹信息;第一终端设备向第二终端设备发送第二哈希函数列表,接收第二终端发送的从第二哈希函数列表中确定的第二哈希函数和与第二哈希函数相对应的第二指纹信息;第一终端设备根据第一哈希函数、第一指纹信息、第二哈希函数和第二指纹信息与第二终端设备进行认证处理,以建立DTLS协议连接传输数据,能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,从而提高传输的可靠性和实用性。

Description

用于传输数据的方法、装置和系统
技术领域
本发明涉及通信领域,并且更具体地,涉及用于传输数据的方法、装置和系统。
背景技术
目前,已知有一种基于H.323协议的媒体通信技术(例如,视频会议技术等),该媒体通信技术能够通过该H.323协议建立会话连接,进而可以通过该会话连接与其他终端设备进行协商,以建立数据传输连接,从而完成与其他终端设备的媒体通信。
随着使用者对通信安全性方面要求的日益提高,如何提高上述媒体通信技术的安全性,成为急需解决的问题。
发明内容
本发明实施例提供一种用于传输数据的方法、装置和系统,能够提高传输数据的安全性。
第一方面,提供了一种用于传输数据的方法,应用于包括第一终端设备、第二终端设备的通信系统中,该第一终端设备与该第二终端设备之间通过H.323协议进行通信,该方法包括:该第一终端设备接收该第二终端设备发送的第一哈希函数列表,该第一哈希函数列表包括该第二终端设备所支持的至少一个哈希函数,从该第一哈希函数列表中确定第一哈希函数,并确定与该第一哈希函数相对应的第一指纹信息,向该第二终端设备发送该第一哈希函数和该第一指纹信息,其中,该第一哈希函数属于该第一终端设备支持的哈希函数,第一哈希函数和该第一指纹信息用于对该第一终端设备进行认证;该第一终端设备向该第二终端设备发送第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个哈希函数,接收该第二终端发送的第二哈希函数和第二指纹信息,其中,该第二哈希函数是该第二终端设备从该第二哈希函数列表中确定的,且该第二哈希函数属于该第二终端设备支持的哈希函数,该第二指纹信息是与该第二哈希函数相对应的指纹信息,第二哈希函数和该第二指纹信息用于对该第二终端设备进行认证;该第一终端设备根据该第一哈希函数、该第一指纹信息、该第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与第二终端设备之间传输数据。
结合第一方面,在第一方面的第一种实现方式中,该方法还包括:该第一终端设备向该第二终端设备发送第一端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号;该第一终端设备接收该第二终端设备发送的第二端口号,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;该第一终端设备根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第二终端设备之间传输数据。
结合第一方面及其上述实现方式,在第一方面的第二种实现方式中,在该第一终端设备根据该第一哈希函数、该第一指纹信息、该第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理之前,该方法还包括:该第一终端设备向该第二终端设备发送第一角色指示信息,该第一角色指示信息用于指示该第一终端设备支持的角色,该角色为“主动”和“被动”中的至少一种;该第一终端设备接收该第二终端设备发送的第二角色指示信息,该第二角色指示信息用于指示该第二终端设备支持的角色;以及该第一终端设备根据该第一哈希函数、该第一指纹信息、该第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理,包括:该第一终端设备根据该第一哈希函数、该第一指纹信息、该第二哈希函数、该第二指纹信息、该第一终端设备支持的角色和该第二终端设备支持的角色与该第二终端设备进行认证处理。
第二方面,提供了一种用于传输数据的方法,应用于包括第一终端设备、第二终端设备的通信系统中,该第一终端设备与该第二终端设备之间通过H.323协议进行通信,该方法包括:该第一终端设备接收该第二终端设备发送的第一哈希函数列表,该第一哈希函数列表包括该第二终端设备所支持的至少一个哈希函数;该第一终端设备从该第一哈希函数列表中确定目标哈希函数,并确定与该目标哈希函数相对应的指纹信息,其中,该目标哈希函数属于该第一终端设备所支持的哈希函数;该第一终端设备向该第二终端设备发送该目标哈希函数和该指纹信息;该第一终端设备根据该目标哈希函数和该指纹信息与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与第二终端设备之间传输数据。
结合第二方面,在第二方面的第一种实现方式中,在该第一终端设备从该第一哈希函数列表中确定目标哈希函数之前,该方法还包括:该第一终端设备接收该第二终端设备发送的角色指示信息,该角色指示信息用于指示该第二终端设备支持的角色,该角色为“主动”和“被动”中的至少一种;该第一终端设备根据角色指示信息,确定该第二终端设备支持的角色;以及该第一终端设备从该第一哈希函数列表中确定目标哈希函数,包括:该第一终端设备在确定该第一终端设备支持的角色包括“主动”且该第二终端设备支持的角色包括“被动”时,从该第一哈希函数列表中确定目标哈希函数。
结合第二方面及其上述实现方式,在第二方面的第二种实现方式中,该第一终端设备从该第一哈希函数列表中确定目标哈希函数,包括:该第一终端设备根据自身所支持的哈希函数,从该第一哈希函数列表中确定目标哈希函数。
结合第二方面及其上述实现方式,在第二方面的第三种实现方式中,在该第一终端设备从该第一哈希函数列表中确定目标哈希函数之前,该方法还包括:该第一终端设备向该第二终端设备发送第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个哈希函数,以便于该第二终端设备根据该第二哈希函数列表,确定该第一哈希函数列表,其中,该第一哈希函数列表所包括的哈希函数属于该第二哈希函数列表;以及该第一终端设备从该第一哈希函数列表中确定目标哈希函数,包括:该第一终端设备确定该第一哈希函数列表中任一哈希函数为目标哈希函数。
结合第二方面及其上述实现方式,在第二方面的第四种实现方式中,该方法还包括:该第一终端设备向该第二终端设备发送第一端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号;该第一终端设备接收该第二终端设备发送的第二端口号,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;该第一终端设备根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第二终端设备之间传输数据。
第三方面,提供了一种用于传输数据的方法,应用于包括第一终端设备、第二终端设备的通信系统中,该第一终端设备与该第二终端设备之间通过H.323协议进行通信,该方法包括:该第二终端设备向该第一终端设备发送第一哈希函数列表,该第一哈希函数列表包括该第二终端设备所支持的至少一个哈希函数;该第二终端设备接收该第一终端设备发送的目标哈希函数以及与该目标哈希函数相对应的指纹信息,其中,该目标哈希函数是该第一终端设备从该第一哈希函数列表中确定的,且该目标哈希函数属于该第一终端设备所支持的哈希函数;该第二终端设备根据该目标哈希函数和该指纹信息与该第一终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与第二终端设备之间传输数据。
结合第三方面,在第三方面的第一种实现方式中,在该第二终端设备接收该第一终端设备发送的目标哈希函数以及与该目标哈希函数相对应的指纹信息之前,该方法还包括:该第二终端设备向该第一终端设备发送角色指示信息,该角色指示信息用于指示该第二终端设备支持的角色,该角色为“主动”或“被动”中的至少一种,以便于该第一终端设备在确定该第一终端设备支持的角色包括“主动”且该第二终端设备支持的角色包括“被动”时,从该第一哈希函数列表中确定目标哈希函数。
结合第三方面及其上述实现方式,在第三方面的第二种实现方式中,该目标哈希函数是该第一终端设备根据自身所支持的哈希函数从该第一哈希函数列表中确定的。
结合第三方面及其上述实现方式,在第三方面的第三种实现方式中,在该第二终端设备接收该第一终端设备发送的目标哈希函数以及与该目标哈希函数相对应的指纹信息之前,该方法还包括:该第二终端设备接收该第一终端设备发送的第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个哈希函数;该第二终端设备根据该第二哈希函数列表,确定该第一哈希函数列表,以使该第一哈希函数列表所包括的哈希函数属于该第二哈希函数列表。
结合第三方面及其上述实现方式,在第三方面的第四种实现方式中,该方法还包括:该第二终端设备接收该第一终端设备发送的第一端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号;该第二终端设备向该第一终端设备发送第二端口号,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;该第二终端设备根据该第一端口号和该第二端口号与该第一终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第一终端设备之间传输数据。
第四方面,提供了一种用于传输数据的方法,应用于包括第一终端设备、第二终端设备和网关设备的通信系统中,该第一终端设备与该网关设备之间通过H.323协议通信,该第二终端设备与该网关设备之间通过会话初始化协议SIP通信,该方法包括:该网关设备接收该第二终端设备发送的至少一个第一哈希函数,该第一哈希函数属于该第二终端设备所支持的哈希函数,向该第一终端设备发送记录有该第一哈希函数的第一哈希函数列表,接收该第一终端设备发送的目标第一哈希函数和第一指纹信息,其中,该目标第一哈希函数是该第一终端设备从该第一哈希函数列表中确定的,且该目标第一哈希函数属于该第一终端设备支持的哈希函数,该第一指纹信息是与该目标第一哈希函数相对应的指纹信息,该目标第一哈希函数和第一指纹信息用于对该第一终端设备进行认证;该网关设备接收该第一终端设备发送的第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个第二哈希函数,向该第二终端设备发送该第二哈希函数的部分或全部,接收该第二终端设备发送的目标第二哈希函数和第二指纹信息,其中,该目标第二哈希函数是该第二终端设备从该第二哈希函数的部分或全部中确定的,且该目标第二哈希函数属于该第二终端设备支持的哈希函数,该第二指纹信息是与该目标第二哈希函数相对应的指纹信息,该目标第二哈希函数和第二指纹信息用于对该第二终端设备进行认证;该网关设备向该第二终端设备发送该目标第一哈希函数和该第一指纹信息,并向该第一终端设备发送该目标第二哈希函数和该第二指纹信息,以便于该第一终端设备和该第二终端设备根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数和该第二指纹信息进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据。
结合第四方面,在第四方面的第一种实现方式中,该方法还包括:该网关设备接收该第一终端设备发送的第一角色指示信息及该第二终端设备发送的第二角色指示信息,该第一角色指示信息用于指示该第一终端设备支持的角色,该第二角色指示信息用于指示该第二终端设备支持的角色,该角色为“主动”和“被动”中的至少一种;该网关设备向该第二终端设备发送该第一角色指示信息,并向该第一终端设备发送该第二角色指示信息,以便于该第一终端设备和该第二终端设备根据该第一哈希函数、该第一指纹信息、该第二哈希函数、该第二指纹信息、该第一终端设备支持的角色和该第二终端设备支持的角色进行认证处理。
结合第四方面及其上述实现方式,在第四方面的第二种实现方式中,该方法还包括:该网关设备接收该第一终端设备发送的第一端口号及该第二终端设备发送的第二端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;该网关设备向该第二终端设备转发该第一端口号,并向该第一终端设备转发该第二端口号,以便于该第一终端设备和该第二终端设备根据该第一端口号和该第二端口号建立SCTP连接,并通过该SCTP连接传输数据。
第五方面,提供了一种用于传输数据的方法,应用于包括第一终端设备、第二终端设备和网关设备的通信系统中,该第一终端设备与该网关设备之间通过H.323协议通信,该第二终端设备与该网关设备之间通过会话初始化协议SIP通信,该方法包括:该第一终端设备接收该网关设备发送的第一哈希函数列表,其中,该第一哈希函数列表中记录有该第二终端设备发送给该网关设备的至少一个第一哈希函数,该第一哈希函数属于该第二终端设备所支持的哈希函数,从该第一哈希函数列表中确定目标第一哈希函数,并确定与该目标第一哈希函数相对应的第一指纹信息,其中,该目标第一哈希函数属于该第一终端设备支持的哈希函数,该目标第一哈希函数和该第一指纹信息用于对该第一终端设备进行认证,向该网关设备发送该目标第一哈希函数和该第一指纹信息,以便于该网关设备将该目标第一哈希函数和该第一指纹信息发送给该第二终端设备;该第一终端设备向该网关设备发送第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个第二哈希函数,接收该网关设备发送的目标第二哈希函数和第二指纹信息,其中,该目标第二哈希函数是该第二终端设备从该网关设备发送的该第二哈希函数的部分或全部中确定的,且该目标第二哈希函数属于该第二终端设备支持的哈希函数,该第二指纹信息是与该目标第二哈希函数相对应的指纹信息,该目标第二哈希函数和该第二指纹信息用于对该第二终端设备进行认证;该第一终端设备根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与第二终端设备之间传输数据。
结合第五方面,在第五方面的第一种实现方式中,该方法还包括:该第一终端设备向该网关设备发送第一端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号,以便于该网关设备将该第一端口号发送给该第二终端设备;该第一终端设备接收该网关设备发送的第二端口号,该第二端口号是该第二终端设备发送给该网关设备的,且该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;该第一终端设备根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第二终端设备之间传输数据。
结合第五方面及其上述实现方式,在第五方面的第二种实现方式中,在该第一终端设备根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理之前,该方法还包括:该第一终端设备向该网关设备发送第一角色指示信息,该第一角色指示信息用于指示该第一终端设备支持的角色,该角色为“主动”和“被动”中的至少一种,以便于该网关设备将该第一角色指示信息发送给该第二终端设备;该第一终端设备接收该网关设备发送的第二角色指示信息,该第二角色指示信息是该第二终端设备发送给该网关设备的,且该第二角色指示信息用于指示该第二终端设备支持的角色;以及该第一终端设备根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理,包括:该第一终端设备根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数、该第二指纹信息、该第一终端设备支持的角色和该第二终端设备支持的角色与该第二终端设备进行认证处理。
第六方面,提供了一种用于传输数据的方法,应用于包括第一终端设备、第二终端设备和网关设备的通信系统中,该第一终端设备与该网关设备之间通过H.323协议通信,该第二终端设备与该网关设备之间通过会话初始化协议SIP通信,该方法包括:该网关设备接收该第一终端设备发送的哈希函数列表,该哈希函数列表包括该第一终端设备所支持的至少一个哈希函数;该网关设备根据该哈希函数列表与该第二终端设备进行协商处理,以从该哈希函数列表中确定至少一个备选哈希函数,其中,该备选哈希函数属于该第二终端设备支持的哈希函数;该网关设备向该第一终端设备发送该备选哈希函数,以便于该第一终端设备从该备选哈希函数中确定目标哈希函数,并确定与该目标哈希函数相对应的指纹信息;该网关设备接收该第一终端设备发送的该目标哈希函数和该指纹信息,并向该第二终端发送该目标哈希函数和该指纹信息,以便于该第一终端设备和该第二终端设备根据该目标哈希函数和该指纹信息进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据。
结合第六方面,在第六方面的第一种实现方式中,该网关设备根据该哈希函数列表与该第二终端设备进行协商处理,以从该哈希函数列表中确定至少一个备选哈希函数,包括:该网关设备向该第二终端设备发送待验证哈希函数,该待验证哈希函数是该哈希函数列表中的任一哈希函数;该网关设备接收该第二终端设备发送的验证消息,该验证消息用于指示该待验证哈希函数是否属于该第二终端设备支持的哈希函数;该网关设备在根据该验证消息,确定该待验证哈希函数属于该第二终端设备支持的哈希函数时,将该待验证哈希函数确定为备选哈希函数。
结合第六方面及其上述实现方式,在第六方面的第二种实现方式中,该网关设备在根据该验证消息,确定该待验证哈希函数属于该第二终端设备支持的哈希函数时,将该待验证哈希函数确定为备选哈希函数,包括:该网关设备在确定该验证消息携带有该待验证哈希函数时,确定该待验证哈希函数属于该第二终端设备支持的哈希函数,并将该待验证哈希函数确定为备选哈希函数。
结合第六方面及其上述实现方式,在第六方面的第三种实现方式中,该方法还包括:该网关设备接收该第一终端设备发送的第一端口号及该第二终端设备发送的第二端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;该网关设备向该第二终端设备转发该第一端口号,并向该第一终端设备转发该第二端口号,以便于该第一终端设备和该第二终端设备根据该第一端口号和该第二端口号建立SCTP连接,并通过该SCTP连接传输数据。
第七方面,提供了一种用于传输数据的方法,应用于包括第一终端设备、第二终端设备和网关设备的通信系统中,该第一终端设备与该网关设备之间通过H.323协议通信,该第二终端设备与该网关设备之间通过会话初始化协议SIP通信,该方法包括:该第一终端设备向该网关设备发送哈希函数列表,该哈希函数列表包括该第一终端设备所支持的至少一个哈希函数,以便于该网关设备根据该哈希函数列表与该第二终端设备进行协商处理,以从该哈希函数列表中确定至少一个备选哈希函数,其中,该备选哈希函数属于该第二终端设备支持的哈希函数;该第一终端设备接收该网关设备发送的该备选哈希函数;该第一终端设备从该备选哈希函数中确定目标哈希函数,并确定与该目标哈希函数相对应的指纹信息;该第一终端设备向该网关设备发送该目标哈希函数和该指纹信息,以便于该网关设备向该第二终端转发该目标哈希函数和该指纹信息;该第一终端设备根据该目标哈希函数和该指纹信息,与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据。
结合第七方面,在第七方面的第一种实现方式中,该方法还包括:该第一终端设备向该网关设备发送第一端口号,以便于该网关设备向该第二终端设备转发该第一端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号;该第一终端设备接收该网关设备发送的第二端口号,该第二端口号是该第二终端设备发送给该网关设备的,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;该第一终端设备根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以通过该SCTP连接传输数据。
第八方面,提供了一种用于传输数据的装置,配置于包括该装置和第二终端设备的通信系统中,该装置与该第二终端设备之间通过H.323协议进行通信,该装置包括:接收单元,用于接收该第二终端设备发送的第一哈希函数列表,该第一哈希函数列表包括该第二终端设备所支持的至少一个哈希函数;处理单元,用于从该第一哈希函数列表中确定第一哈希函数,并确定与该第一哈希函数相对应的第一指纹信息;发送单元,用于向该第二终端设备发送该第一哈希函数和该第一指纹信息,其中,该第一哈希函数属于该装置支持的哈希函数,第一哈希函数和该第一指纹信息用于针对该装置的认证;该发送单元还用于向该第二终端设备发送第二哈希函数列表,该第二哈希函数列表包括该装置所支持的至少一个哈希函数;该接收单元还用于接收该第二终端发送的第二哈希函数和第二指纹信息,其中,该第二哈希函数是该第二终端设备从该第二哈希函数列表中确定的,且该第二哈希函数属于该第二终端设备支持的哈希函数,该第二指纹信息是与该第二哈希函数相对应的指纹信息,第二哈希函数和该第二指纹信息用于对该第二终端设备进行认证;该处理单元还用于根据该第一哈希函数、该第一指纹信息、该第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与第二终端设备之间传输数据。
结合第八方面,在第八方面的第一种实现方式中,该发送单元还用与向该第二终端设备发送第一端口号,该第一端口号是该装置所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号;该接收单元还用与接收该第二终端设备发送的第二端口号,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;该处理单元还用于根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第二终端设备之间传输数据。
结合第八方面及其上述实现方式,在第八方面的第二种实现方式中,该发送单元还用于向该第二终端设备发送第一角色指示信息,该第一角色指示信息用于指示该装置支持的角色,该角色为“主动”和“被动”中的至少一种;该接收单元还用于接收该第二终端设备发送的第二角色指示信息,该第二角色指示信息用于指示该第二终端设备支持的角色;以及该处理单元具体用于根据该第一哈希函数、该第一指纹信息、该第二哈希函数、该第二指纹信息、该装置支持的角色和该第二终端设备支持的角色与该第二终端设备进行认证处理。
第九方面,提供了一种用于传输数据的装置,配置于包括该装置和第二终端设备的通信系统中,该装置与该第二终端设备之间通过H.323协议进行通信,该装置包括:接收单元,用于接收该第二终端设备发送的第一哈希函数列表,该第一哈希函数列表包括该第二终端设备所支持的至少一个哈希函数;处理单元,用于从该第一哈希函数列表中确定目标哈希函数,并确定与该目标哈希函数相对应的指纹信息,其中,该目标哈希函数属于该装置所支持的哈希函数;发送单元,用于向该第二终端设备发送该目标哈希函数和该指纹信息;该处理单元还用于根据该目标哈希函数和该指纹信息与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与第二终端设备之间传输数据。
结合第九方面,在第九方面的第一种实现方式中,该接收单元还用于接收该第二终端设备发送的角色指示信息,该角色指示信息用于指示该第二终端设备支持的角色,该角色为“主动”和“被动”中的至少一种;该处理单元还用于根据角色指示信息,确定该第二终端设备支持的角色,并在确定该装置支持的角色包括“主动”且该第二终端设备支持的角色包括“被动”时,从该第一哈希函数列表中确定目标哈希函数。
结合第九方面及其上述实现方式,在第九方面的第二种实现方式中,该处理单元具体用于根据自身所支持的哈希函数,从该第一哈希函数列表中确定目标哈希函数。
结合第九方面及其上述实现方式,在第九方面的第三种实现方式中,该发送单元还用于向该第二终端设备发送第二哈希函数列表,该第二哈希函数列表包括该装置所支持的至少一个哈希函数,以便于该第二终端设备根据该第二哈希函数列表,确定该第一哈希函数列表,其中,该第一哈希函数列表所包括的哈希函数属于该第二哈希函数列表;以及该处理单元具体用于确定该第一哈希函数列表中任一哈希函数为目标哈希函数。
结合第九方面及其上述实现方式,在第九方面的第四种实现方式中,该发送单元还用于向该第二终端设备发送第一端口号,该第一端口号是该装置所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号;该接收单元还用于接收该第二终端设备发送的第二端口号,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;该处理单元还用与根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第二终端设备之间传输数据。
第十方面,提供了一种用于传输数据的装置,配置于包括第一终端设备和该装置的通信系统中,该第一终端设备与该装置之间通过H.323协议进行通信,该装置包括:发送单元,用于向该第一终端设备发送第一哈希函数列表,该第一哈希函数列表包括该装置所支持的至少一个哈希函数;接收单元,用于接收该第一终端设备发送的目标哈希函数以及与该目标哈希函数相对应的指纹信息,其中,该目标哈希函数是该第一终端设备从该第一哈希函数列表中确定的,且该目标哈希函数属于该第一终端设备所支持的哈希函数;处理单元,用于根据该目标哈希函数和该指纹信息与该第一终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与装置之间传输数据。
结合第十方面,在第十方面的第一种实现方式中,该发送单元还用于向该第一终端设备发送角色指示信息,该角色指示信息用于指示该装置支持的角色,该角色为“主动”或“被动”中的至少一种,以便于该第一终端设备在确定该第一终端设备支持的角色包括“主动”且该装置支持的角色包括“被动”时,从该第一哈希函数列表中确定目标哈希函数。
结合第十方面及其上述实现方式,在第十方面的第二种实现方式中,该目标哈希函数是该第一终端设备根据自身所支持的哈希函数从该第一哈希函数列表中确定的。
结合第十方面及其上述实现方式,在第十方面的第三种实现方式中,该接收单元还用于接收该第一终端设备发送的第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个哈希函数;该处理单元还用于根据该第二哈希函数列表,确定该第一哈希函数列表,以使该第一哈希函数列表所包括的哈希函数属于该第二哈希函数列表。
结合第十方面及其上述实现方式,在第十方面的第四种实现方式中,该接收单元还用于接收该第一终端设备发送的第一端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号;该发送单元还用于向该第一终端设备发送第二端口号,该第二端口号是该装置所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;该处理单元还用于根据该第一端口号和该第二端口号与该第一终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第一终端设备之间传输数据。
第十一方面,提供了一种用于传输数据的装置,其特征在于,配置于包括第一终端设备、第二终端设备和该装置的通信系统中,该第一终端设备与该装置之间通过H.323协议通信,该第二终端设备与该装置之间通过会话初始化协议SIP通信,该装置包括:接收单元,用于接收该第二终端设备发送的至少一个第一哈希函数,该第一哈希函数属于该第二终端设备所支持的哈希函数,并接收该第一终端设备发送的第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个第二哈希函数;发送单元,用于向该第一终端设备发送记录有该第一哈希函数的第一哈希函数列表,并向该第二终端设备发送该第二哈希函数的部分或全部;该接收单元还用于接收该第一终端设备发送的目标第一哈希函数和第一指纹信息,并接收该第二终端设备发送的目标第二哈希函数和第二指纹信息其中,该目标第一哈希函数是该第一终端设备从该第一哈希函数列表中确定的,且该目标第一哈希函数属于该第一终端设备支持的哈希函数,该第一指纹信息是与该目标第一哈希函数相对应的指纹信息,该目标第一哈希函数和第一指纹信息用于对该第一终端设备进行认证,该目标第二哈希函数是该第二终端设备从该第二哈希函数的部分或全部中确定的,且该目标第二哈希函数属于该第二终端设备支持的哈希函数,该第二指纹信息是与该目标第二哈希函数相对应的指纹信息,该目标第二哈希函数和第二指纹信息用于对该第二终端设备进行认证;该发送单元还用于向该第二终端设备发送该目标第一哈希函数和该第一指纹信息,并向该第一终端设备发送该目标第二哈希函数和该第二指纹信息,以便于该第一终端设备和该第二终端设备根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数和该第二指纹信息进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据。
结合第十一方面,在第十一方面的第一种实现方式中,该接收单元还用于接收该第一终端设备发送的第一角色指示信息及该第二终端设备发送的第二角色指示信息,该第一角色指示信息用于指示该第一终端设备支持的角色,该第二角色指示信息用于指示该第二终端设备支持的角色,该角色为“主动”和“被动”中的至少一种;该发送单元还用于向该第二终端设备发送该第一角色指示信息,并向该第一终端设备发送该第二角色指示信息,以便于该第一终端设备和该第二终端设备根据该第一哈希函数、该第一指纹信息、该第二哈希函数、该第二指纹信息、该第一终端设备支持的角色和该第二终端设备支持的角色进行认证处理。
结合第十一方面及其上述实现方式,在第十一方面的第二种实现方式中,该接收单元还用于接收该第一终端设备发送的第一端口号及该第二终端设备发送的第二端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;该发送单元还用于向该第二终端设备转发该第一端口号,并向该第一终端设备转发该第二端口号,以便于该第一终端设备和该第二终端设备根据该第一端口号和该第二端口号建立SCTP连接,并通过该SCTP连接传输数据。
第十二方面,提供了一种用于传输数据的装置,配置于包括该装置、第二终端设备和网关设备的通信系统中,该装置与该网关设备之间通过H.323协议通信,该第二终端设备与该网关设备之间通过会话初始化协议SIP通信,该装置包括:接收单元,用于接收该网关设备发送的第一哈希函数列表,其中,该第一哈希函数列表中记录有该第二终端设备发送给该网关设备的至少一个第一哈希函数,该第一哈希函数属于该第二终端设备所支持的哈希函数;处理单元,用于从该第一哈希函数列表中确定目标第一哈希函数,并确定与该目标第一哈希函数相对应的第一指纹信息,其中,该目标第一哈希函数属于该装置支持的哈希函数,该目标第一哈希函数和该第一指纹信息用于针对该装置的认证;发送单元,用于向该网关设备发送该目标第一哈希函数和该第一指纹信息,以便于该网关设备将该目标第一哈希函数和该第一指纹信息发送给该第二终端设备,用于向该网关设备发送第二哈希函数列表,该第二哈希函数列表包括该装置所支持的至少一个第二哈希函数;该接收单元还用于接收该网关设备发送的目标第二哈希函数和第二指纹信息,其中,该目标第二哈希函数是该第二终端设备从该网关设备发送的该第二哈希函数的部分或全部中确定的,且该目标第二哈希函数属于该第二终端设备支持的哈希函数,该第二指纹信息是与该目标第二哈希函数相对应的指纹信息,该目标第二哈希函数和该第二指纹信息用于对该第二终端设备进行认证;该处理单元还用于根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与第二终端设备之间传输数据。
结合第十二方面,在第十二方面的第一种实现方式中,该发送单元还用于向该网关设备发送第一端口号,该第一端口号是该装置所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号,以便于该网关设备将该第一端口号发送给该第二终端设备;该接收单元还用于接收该网关设备发送的第二端口号,该第二端口号是该第二终端设备发送给该网关设备的,且该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;该处理单元还用于根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第二终端设备之间传输数据。
结合第十二方面及其上述实现方式,在第十二方面的第二种实现方式中,该发送单元还用于向该网关设备发送第一角色指示信息,该第一角色指示信息用于指示该装置支持的角色,该角色为“主动”和“被动”中的至少一种,以便于该网关设备将该第一角色指示信息发送给该第二终端设备;该接收单元还用于接收该网关设备发送的第二角色指示信息,该第二角色指示信息是该第二终端设备发送给该网关设备的,且该第二角色指示信息用于指示该第二终端设备支持的角色;以及该处理单元具体用于根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数、该第二指纹信息、该装置支持的角色和该第二终端设备支持的角色与该第二终端设备进行认证处理。
第十三方面,提供了一种用于传输数据的装置,配置于包括第一终端设备、第二终端设备和该装置的通信系统中,该第一终端设备与该装置之间通过H.323协议通信,该第二终端设备与该装置之间通过会话初始化协议SIP通信,该装置包括:接收单元,用于接收该第一终端设备发送的哈希函数列表,该哈希函数列表包括该第一终端设备所支持的至少一个哈希函数;处理单元,用于根据该哈希函数列表与该第二终端设备进行协商处理,以从该哈希函数列表中确定至少一个备选哈希函数,其中,该备选哈希函数属于该第二终端设备支持的哈希函数;发送单元,用于向该第一终端设备发送该备选哈希函数,以便于该第一终端设备从该备选哈希函数中确定目标哈希函数,并确定与该目标哈希函数相对应的指纹信息;该接收单元还用于接收该第一终端设备发送的该目标哈希函数和该指纹信息;该发送单元还用于向该第二终端发送该目标哈希函数和该指纹信息,以便于该第一终端设备和该第二终端设备根据该目标哈希函数和该指纹信息进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据。
结合第十三方面,在第十三方面的第一种实现方式中,该发送单元还用于向该第二终端设备发送待验证哈希函数,该待验证哈希函数是该哈希函数列表中的任一哈希函数;该接收单元还用于接收该第二终端设备发送的验证消息,该验证消息用于指示该待验证哈希函数是否属于该第二终端设备支持的哈希函数;该处理单元具体用于在根据该验证消息,确定该待验证哈希函数属于该第二终端设备支持的哈希函数时,将该待验证哈希函数确定为备选哈希函数。
结合第十三方面及其上述实现方式,在第十三方面的第二种实现方式中,该处理单元具体用于在确定该验证消息携带有该待验证哈希函数时,确定该待验证哈希函数属于该第二终端设备支持的哈希函数,并将该待验证哈希函数确定为备选哈希函数。
结合第十三方面及其上述实现方式,在第十三方面的第三种实现方式中,该接收单元还用于接收该第一终端设备发送的第一端口号及该第二终端设备发送的第二端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;该发送单元还用于向该第二终端设备转发该第一端口号,并向该第一终端设备转发该第二端口号,以便于该第一终端设备和该第二终端设备根据该第一端口号和该第二端口号建立SCTP连接,并通过该SCTP连接传输数据。
第十四方面,提供了一种用于传输数据的装置,配置于包括该装置、第二终端设备和网关设备的通信系统中,该装置与该网关设备之间通过H.323协议通信,该第二终端设备与该网关设备之间通过会话初始化协议SIP通信,该装置包括:发送单元,用于向该网关设备发送哈希函数列表,该哈希函数列表包括该装置所支持的至少一个哈希函数,以便于该网关设备根据该哈希函数列表与该第二终端设备进行协商处理,以从该哈希函数列表中确定至少一个备选哈希函数,其中,该备选哈希函数属于该第二终端设备支持的哈希函数;接收单元,用于接收该网关设备发送的该备选哈希函数;处理单元,用于从该备选哈希函数中确定目标哈希函数,并确定与该目标哈希函数相对应的指纹信息;该发送单元还用于向该网关设备发送该目标哈希函数和该指纹信息,以便于该网关设备向该第二终端转发该目标哈希函数和该指纹信息;该处理单元还用于根据该目标哈希函数和该指纹信息,与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据。
结合第十四方面,在第十四方面的第一种实现方式中,该发送单元还用于向该网关设备发送第一端口号,以便于该网关设备向该第二终端设备转发该第一端口号,该第一端口号是该装置所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号;该接收单元还用于接收该网关设备发送的第二端口号,该第二端口号是该第二终端设备发送给该网关设备的,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;该处理单元还用于根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以通过该SCTP连接传输数据。
第十五方面,提供了一种用于传输数据的系统,包括第一终端设备、第二终端设备和网关设备,该第一终端设备与该网关设备之间通过H.323协议通信,该第二终端设备与该网关设备之间通过会话初始化协议SIP通信,其中,该网关设备用于接收该第二终端设备发送的至少一个第一哈希函数,该第一哈希函数属于该第二终端设备所支持的哈希函数,向该第一终端设备发送记录有该第一哈希函数的第一哈希函数列表,接收该第一终端设备发送的目标第一哈希函数和第一指纹信息,其中,该目标第一哈希函数是该第一终端设备从该第一哈希函数列表中确定的,且该目标第一哈希函数属于该第一终端设备支持的哈希函数,该第一指纹信息是与该目标第一哈希函数相对应的指纹信息,该目标第一哈希函数和第一指纹信息用于对该第一终端设备进行认证,用于接收该第一终端设备发送的第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个第二哈希函数,向该第二终端设备发送该第二哈希函数的部分或全部,接收该第二终端设备发送的目标第二哈希函数和第二指纹信息,其中,该目标第二哈希函数是该第二终端设备从该第二哈希函数的部分或全部中确定的,且该目标第二哈希函数属于该第二终端设备支持的哈希函数,该第二指纹信息是与该目标第二哈希函数相对应的指纹信息,该目标第二哈希函数和第二指纹信息用于对该第二终端设备进行认证,用于向该第二终端设备发送该目标第一哈希函数和该第一指纹信息,并向该第一终端设备发送该目标第二哈希函数和该第二指纹信息,以便于该第一终端设备和该第二终端设备根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数和该第二指纹信息进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据;该第一终端设备用于接收该网关设备发送的第一哈希函数列表,其中,该第一哈希函数列表中记录有该第二终端设备发送给该网关设备的至少一个第一哈希函数,该第一哈希函数属于该第二终端设备所支持的哈希函数,从该第一哈希函数列表中确定目标第一哈希函数,并确定与该目标第一哈希函数相对应的第一指纹信息,其中,该目标第一哈希函数属于该第一终端设备支持的哈希函数,该目标第一哈希函数和该第一指纹信息用于对该第一终端设备进行认证,向该网关设备发送确定的该目标第一哈希函数和该第一指纹信息,以便于该网关设备将该目标第一哈希函数和该第一指纹信息发送给该第二终端设备,用于向该网关设备发送第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个第二哈希函数,接收该网关设备发送的目标第二哈希函数和第二指纹信息,其中,该目标第二哈希函数是该第二终端设备从该网关设备发送的该第二哈希函数的部分或全部中确定的,且该目标第二哈希函数属于该第二终端设备支持的哈希函数,该第二指纹信息是与该目标第二哈希函数相对应的指纹信息,该目标第二哈希函数和该第二指纹信息用于对该第二终端设备进行认证,用于根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与第二终端设备之间传输数据。
第十六方面,提供了一种用于传输数据的系统,包括第一终端设备、第二终端设备和网关设备,该第一终端设备与该网关设备之间通过H.323协议通信,该第二终端设备与该网关设备之间通过会话初始化协议SIP通信,其中,该网关设备用于接收该第一终端设备发送的哈希函数列表,该哈希函数列表包括该第一终端设备所支持的至少一个哈希函数,用于根据该哈希函数列表与该第二终端设备进行协商处理,以从该哈希函数列表中确定至少一个备选哈希函数,其中,该备选哈希函数属于该第二终端设备支持的哈希函数,用于向该第一终端设备发送该备选哈希函数,以便于该第一终端设备从该备选哈希函数中确定目标哈希函数,并确定与该目标哈希函数相对应的指纹信息,用于接收该第一终端设备发送的该目标哈希函数和该指纹信息,并向该第二终端发送该目标哈希函数和该指纹信息,以便于该第一终端设备和该第二终端设备根据该目标哈希函数和该指纹信息进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据;该第一终端设备用于向该网关设备发送哈希函数列表,该哈希函数列表包括该第一终端设备所支持的至少一个哈希函数,以便于该网关设备根据该哈希函数列表与该第二终端设备进行协商处理,以从该哈希函数列表中确定至少一个备选哈希函数,其中,该备选哈希函数属于该第二终端设备支持的哈希函数,用于接收该网关设备发送的该备选哈希函数,用于从该备选哈希函数中确定目标哈希函数,并确定与该目标哈希函数相对应的指纹信息,用于向该网关设备发送该目标哈希函数和该指纹信息,以便于该网关设备向该第二终端转发该目标哈希函数和该指纹信息,用于根据该目标哈希函数和该指纹信息,与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据。
根据本发明实施例的用于传输数据的方法、装置和系统,通过使第一终端设备基于H.323协议来与第二终端设备协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间基于该哈希函数和指纹信息进行认证处理并建立DTLS协议连接,从而使第一终端设备和第二终端设备之间能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明一实施例的传输数据的方法的示意性流程图。
图2是根据本发明另一实施例的传输数据的方法的示意性流程图。
图3是根据本发明再一实施例的传输数据的方法的示意性流程图。
图4是根据本发明再一实施例的传输数据的方法的示意性流程图。
图5是根据本发明再一实施例的传输数据的方法的示意性流程图。
图6是根据本发明再一实施例的传输数据的方法的示意性流程图。
图7是根据本发明再一实施例的传输数据的方法的示意性流程图。
图8是根据本发明一实施例的传输数据的装置的示意性框图。
图9是根据本发明另一实施例的传输数据的装置的示意性框图。
图10是根据本发明再一实施例的传输数据的装置的示意性框图。
图11是根据本发明再一实施例的传输数据的装置的示意性框图。
图12是根据本发明再一实施例的传输数据的装置的示意性框图。
图13是根据本发明再一实施例的传输数据的装置的示意性框图。
图14是根据本发明再一实施例的传输数据的装置的示意性框图。
图15是根据本发明一实施例的传输数据的设备的示意性框图。
图16是根据本发明另一实施例的传输数据的设备的示意性框图。
图17是根据本发明再一实施例的传输数据的设备的示意性框图。
图18是根据本发明再一实施例的传输数据的设备的示意性框图。
图19是根据本发明再一实施例的传输数据的设备的示意性框图。
图20是根据本发明再一实施例的传输数据的设备的示意性框图。
图21是根据本发明再一实施例的传输数据的设备的示意性框图。
图22是根据本发明再一实施例的传输数据的系统的示意性架构图。
图23是根据本发明再一实施例的传输数据的设备的示意性架构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的技术方案可以应用于各种实现媒体通信的通信系统,例如:视频会议系统。在该通信系统中的该终端设备可以配置有视频编解码模块、音频编解码模块,信令模块、控制模块、配置模块、其他功能模块等组成,主要功能是接收和发起对远端会场终端的呼叫,把本地摄像机、MIC采集的视频和音频码流编码后发送给远端,同时把远端的视频和音频码流进行解码并输出到本端的显示器和喇叭上,从而,两个或两个以上的终端设备在上述硬件设备的支撑下,可以基于该通信系统提供的各种标准协议进行视频通信。
其中,终端设备(Endpoint)可以是用户设备(UE,User Equipment)等,如智能移动终端或计算机等,它们经由互联网或数据传输线缆等交换语音和/或数据,还可以是网络侧设备,如多点控制单元(MCU,Multi-point Control Unit)或选择性转发单元(SelectiveForwarding Unit)。
另外,作为上述标准协议的会话建立协议,可以列举H.323协议和会话初始化协议(SIP,Session Initiation Protocol),即,在本发明实施例中,两个需要进行数据(如视频会议的数据)传输的终端设备中,两个终端设备均可以为使用H.323协议建立会话连接的设备(即,情况1),或者,一个终端设备可以为使用H.323协议建立会话连接的设备,另一个设备可以为使用SIP建立会话连接的设备,(即,情况2)。
下面,分别对以上两种情况下,本发明的用于传输数据的方法的处理流程进行详细说明。
情况1
在本发明实施例中,两个使用H.323协议建立会话连接的设备可以通过以下方式A或方式B协商用于进行安全认证的哈希函数和指纹信息,以建立DTLS连接。应注意,该DTLS连接可以是基于用户数据报协议(UDP,User Datagram Protocol)的,也可以是基于传输控制协议(TCP,Transmission Control Protocol)的。
方式A
图1示出了根据本发明一实施例的传输数据的方法100的示意性流程图。应用于包括第一终端设备、第二终端设备的通信系统中,该第一终端设备与该第二终端设备之间通过H.323协议进行通信,如图1所示,该方法100包括:
S110,该第一终端设备根据该H.323协议,接收该第二终端设备发送的第一哈希函数列表,该第一哈希函数列表包括该第二终端设备所支持的至少一个哈希函数,从该第一哈希函数列表中确定第一哈希函数,并确定与该第一哈希函数相对应的第一指纹信息,向该第二终端设备发送该第一哈希函数和该第一指纹信息,其中,该第一哈希函数属于该第一终端设备支持的哈希函数,第一哈希函数和该第一指纹信息用于对该第一终端设备进行认证;
S120,该第一终端设备根据该H.323协议,向该第二终端设备发送第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个哈希函数,接收该第二终端发送的第二哈希函数和第二指纹信息,其中,该第二哈希函数是该第二终端设备从该第二哈希函数列表中确定的,且该第二哈希函数属于该第二终端设备支持的哈希函数,该第二指纹信息是与该第二哈希函数相对应的指纹信息,第二哈希函数和该第二指纹信息用于对该第二终端设备进行认证;
S130,该第一终端设备根据该第一哈希函数、该第一指纹信息、该第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与第二终端设备之间传输数据。
具体地说,在本发明实施例中,第一终端设备(以下,为了便于理解和区分,记做:终端设备#α)与第二终端设备(以下,为了便于理解和区分,记做:终端设备#β)可以配置于使用H.323协议(具体地说,是使用H.323协议建立会话连接)的通信系统,从而,终端设备#α与终端设备#β之间能够基于该H.323协议进行通信,例如,传输信令。
终端设备#β可以将其能够支持的哈希函数记录在哈希函数列表#β(即,第一哈希函数列表的一例)中,根据H.323协议将该哈希函数列表#β表封装入通信系统所提供的能够在终端设备#α与终端设备#β之间传输的消息内,并将该消息传输至终端设备#α。
类似的,终端设备#α可以将其能够支持的哈希函数记录在哈希函数列表#α(即,第二哈希函数列表的一例)中,根据H.323协议将该哈希函数列表#α表封装入通信系统所提供的能够在终端设备#α与终端设备#β之间传输的消息内,并将该消息传输至终端设备#β。
可选地,该第一哈希函数列表承载于第一终端设备发送给第二终端设备的终端能力集(Terminal Capability Set)消息,该第二哈希函数列表承载于第二终端设备发送给第一终端设备的终端能力集消息。
从而,能够利用现有协议中提供的消息承载上述哈希函数列表#α和哈希函数列表#β,提高了本发明的通用性和实用性。
应理解,以上列举的终端能力集消息,仅为承载上述哈希函数列表#α和哈希函数列表#β的消息的示例性说明,本发明并为限定于此,其他能够在终端设备#α与终端设备#β之间传输的消息,或者说,终端设备#α与终端设备#β能够基于H.323协议收发的消息,均落入本发明的保护范围内。
需要说明的是,在本发明实施例中,终端设备#β记录在哈希函数列表#β中的哈希函数可以是终端设备#β所支持的全部哈希函数,也可以是终端设备#β所支持的部分哈希函数,本发明并未特别限定,例如,该哈希函数列表所记录的哈希函数的数量可以根据系统(或标准)规定或该哈希函数列表所承载于的消息的容量(或者说,该消息所能够承载的信息量)任意变更。
类似的,终端设备#α记录在哈希函数列表#α中的哈希函数可以是终端设备#α所支持的全部哈希函数,也可以是终端设备#α所支持的部分哈希函数,本发明并未特别限定,例如,该哈希函数列表所记录的哈希函数的数量可以根据系统(或标准)规定或该哈希函数列表所承载于的消息的容量(或者说,该消息所能够承载的信息量)任意变更。
从而,终端设备#α能够接收到上述携带哈希函数列表#β的消息,并基于H.323协议对该消息解封装从而获取哈希函数列表#β。
并且,终端设备#β能够接收到上述携带哈希函数列表#α的消息,并基于H.323协议对该消息解封装从而获取哈希函数列表#α。
其后,该终端设备#α可以将该哈希函数列表#β中的哈希函数与其自身支持的哈希函数进行对照处理,从而确定该哈希函数列表#β中,属于该终端设备#α能够支持的哈希函数,作为用于终端设备#β所进行的针对该终端设备#α的认证的哈希函数#α(即,第一哈希函数)。
例如,作为示例而非限定,该终端设备#α可以按规定的顺序(例如,从该哈希函数列表#β中的第一个哈希函数)开始,执行上述对照处理,当确定一个既属于该哈希函数列表#β又属于终端设备#α能够支持的哈希函数时,将该哈希函数作为哈希函数#α,并结束上述对照处理。
或者,该终端设备#α可以在确定哈希函数列表#β中所有属于该终端设备#α能够支持的哈希函数之后,从所确定的哈希函数中选择任一哈希函数,作为该哈希函数#α。
在如上所述确定了哈希函数#α之后,终端设备#α可以确定与该哈希函数#α相对应的指纹信息(即,第一指纹信息,以下,为了便于区分,记做指纹信息#α),并且,该过程可以与现有技术中确定一个哈希函数相对应的指纹信息的过程相似,这里,为了避免赘述,省略其详细说明。
类似的,该终端设备#β可以将该哈希函数列表#α中的哈希函数与其自身支持的哈希函数进行对照处理,从而确定该哈希函数列表#α中,属于该终端设备#β能够支持的哈希函数,作为用于终端设备#α所进行的针对该终端设备#β的认证的哈希函数#β(即,第二哈希函数),并且,终端设备#β可以确定与该哈希函数#β相对应的指纹信息(即,第二指纹信息,以下,为了便于区分,记做指纹信息#β)。
其后,终端设备#α可以根据H.323协议,将其确定的该哈希函数#α及指纹信息#α封装入通信系统所提供的能够在终端设备#α与终端设备#β之间传输的消息内,并将该消息传输至终端设备#β。
并且,终端设备#β可以根据H.323协议,将其确定的该哈希函数#β及指纹信息#β封装入通信系统所提供的能够在终端设备#α与终端设备#β之间传输的消息内,并将该消息传输至终端设备#α。
可选地,该第一哈希函数和该第一指纹信息承载于开启逻辑信道(Open LogicalChannel)消息,该第二哈希函数和该第二指纹信息承载于开启逻辑信道确认(OpenLogical Channel Ack)消息;或
该第二哈希函数和该第二指纹信息承载于开启逻辑信道消息,该第一哈希函数和该第一指纹信息承载于开启逻辑信道确认消息。从而,能够利用现有协议中提供的消息承载该目标哈希函数和指纹信息,提高了本发明的通用性和实用性。
应理解,以上列举的开启逻辑信道消息和开启逻辑信道确认消息,仅为示例性说明,本发明并为限定于此,其他能够在终端设备#α与终端设备#β之间传输的消息,或者说,终端设备#α与终端设备#β能够基于H.323协议收发的消息,均落入本发明的保护范围内。
由此,终端设备#α和终端设备#β双方能够获知目标哈希函数和指纹信息,从而,终端设备#α与终端设备#β可以根据如上所述确定的哈希函数#α、指纹信息#α、哈希函数#β和指纹信息#β进行安全认证处理,并且,该安全认证处理可以在DTLS握手阶段进行。
即,终端设备#α可以根据哈希函数#α和指纹信息#α生成验证信息#α1(例如,终端设备#α可以根据哈希函数#α和指纹信息#α生成一个代码),并将该验证信息通过DTLS信令发送给终端设备#β。
并且,终端设备#β根据哈希函数#α和指纹信息#α生成验证信息#α2(例如,终端设备#β可以根据哈希函数#α和指纹信息#α生成一个代码)。
从而,当终端设备#β确定终端设备#α通过DTLS所发送的上述验证信息#α1与其生成的验证信息#α2一致时,终端设备#β可以确定终端设备#α通过安全验证,可以与该终端设备#α建立DTLS连接。
类似的,终端设备#β可以根据哈希函数#β和指纹信息#β生成验证信息#β1(例如,终端设备#β可以根据哈希函数#β对指纹信息#β进行加密而生成一个代码),并将该验证信息发送给终端设备#α。
并且,终端设备#α根据哈希函数#β和指纹信息#β生成验证信息#β2(例如,终端设备#α可以根据哈希函数#β对指纹信息#β进行加密而生成一个代码)。
从而,当终端设备#α确定终端设备#β所发送的上述验证信息#β1与其生成的验证信息#β2一致时,终端设备#α可以确定终端设备#β通过安全验证,可以与该终端设备#β建立DTLS连接。
可选地,在该第一终端设备根据该第一哈希函数、该第一指纹信息、该第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理之前,该方法还包括:
该第一终端设备根据该H.323协议,接收该第二终端设备发送的第二角色指示信息,该第二角色指示信息用于指示该第二终端设备支持的角色,该角色为“主动”和“被动”中的至少一种;
该第一终端设备根据该H.323协议,向该第二终端设备发送的第一角色指示信息,该第一角色指示信息用于指示该第一终端设备支持的角色;以及
该第一终端设备根据该第一哈希函数、该第一指纹信息、该第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理,包括:
该第一终端设备根据该第一哈希函数、该第一指纹信息、该第二哈希函数、该第二指纹信息、该第一终端设备支持的角色和该第二终端设备支持的角色与该第二终端设备进行认证处理。
具体地说,在本发明实施例中,系统可以提供三种角色,即,“主动”、“被动”以及“主动被动皆可”(以下,为了便于理解和说明,简称为:“皆可”),终端设备#α和终端设备#β可以通知对方彼此的角色,从而根据该角色,确定上述DTLS握手的发起方。
例如,如果终端设备#α的角色为“主动”,终端设备#β的角色为“被动”或“皆可”(即,终端设备#β支持的角色包括“被动”),则终端设备#α可以作为上述DTLS握手的发起方。
再例如,如果终端设备#α的角色为“主动”或“皆可”(即,终端设备#α支持的角色包括“主动”),终端设备#β的角色为“被动”,则终端设备#α可以作为上述DTLS握手的发起方。
应理解,以上列举的终端设备的角色与DTLS握手的发起方之间的关系仅为示例性说明,本发明并未限定于此。
可选地,该第二角色指示信息与该第一哈希函数列表承载于同一消息,该第一角色指示信息与该第二哈希函数列表承载于同一消息。
具体地说,在本发明实施例中,终端设备#β可以将上述哈希函数列表#β与上述第二角色指示信息通过同一消息,同时发送给终端设备#α,并且,终端设备#α可以将上述哈希函数列表#α与上述第一角色指示信息通过同一消息,同时发送给终端设备#β从而,缩减信息交互流程,能够减少在终端设备#α与终端设备#β之间交互的消息的数量,提高处理效率。
在完成上述DTLS握手之后,终端设备#α和终端设备#β可以建立DTLS协议连接。在本发明实施例中,终端设备#α与终端设备#β建立DTLS协议连接的方法和过程可以与现有技术相似,这里为了避免赘述,省略其详细说明。
在如上述所述,建立了DTLS协议连接之后,终端设备#α与终端设备#β可以通过该DTLS协议连接传输视频会议的相关数据。例如,终端设备#α与终端设备#β可以根据RFC6347规定的流程进行鉴权认证交换,并在鉴权认证成功后,开启逻辑信道,进行数据传输。
另外,终端设备#α与终端设备#β可以在该DTLS协议连接的基础上,建立应用层协议连接,例如,流控制传输协议(SCTP,Stream Control Transmission Protocol)连接,并通过该SCTP连接传输数据。
应理解,以上列举的SCTP仅为传输层协议的示例性说明,本发明并未限定于此,其他用于传输数据的等各种传输层协议均落入本发明的保护范围内。以下,为了便于理解和说明,以基于DTLS协议连接建立SCTP连接的过程为例,进行说明。
可选地,该方法还包括:
该第一终端设备向该第二终端设备发送第一端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号;
该第一终端设备接收该第二终端设备发送的第二端口号,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;
该第一终端设备根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第二终端设备之间传输数据。
具体地说,终端设备#α能够确定基于该DTLS协议连接的端口号,进而,可以从中选择用于与终端设备#β建立SCTP连接的端口号(以下,为了便于理解和区分,记做:端口号#α),并且,终端设备#α可以根据H.323协议,将该端口号#α发送给终端设备#β。
类似地,终端设备#β能够确定基于该DTLS协议连接的端口号,进而,可以从中选择用于与终端设备#α建立SCTP连接的端口号(以下,为了便于理解和区分,记做:端口号#β),并且,终端设备#β可以根据H.323协议,将该端口号#β发送给终端设备#α。
可选地,该第一端口号承载于终端能力集消息或开启逻辑信道消息,该第二端口号承载于终端能力集消息或开启逻辑信道消息。
具体地说,在终端设备#α和终端设备#β已经能够确认即将建立DTLS协议连接的情况下,它们能够在建立DTLS协议连接之前,将所选择用于建立SCTP连接的端口号发送给对方。
因此,在本发明实施例中,终端设备#α可以通过上述Open Logical Channel消息,将其选择的端口号(即,端口号#α)发送给终端设备#β。终端设备#β可以通过上述OpenLogical Channel消息,将其选择的端口号(即,端口号#β)发送给终端设备#α。
另外,终端设备#α和终端设备#β还可以通过终端能力集消息,将所选择用于建立SCTP连接的端口号发送给对方。
因此,在本发明实施例中,终端设备#α可以通过上述Terminal Capability Set消息,或通过更新Terminal Capability Set消息,将其选择的端口号(即,端口号#α)发送给终端设备#β。终端设备#β可以通过上述Terminal Capability Set消息,或通过更新Terminal Capability Set消息,将其选择的端口号(即,端口号#β)发送给终端设备#α。
可选地,该第一端口号与该第一哈希函数及该第一指纹信息承载于同一类消息,该第二端口号与该第二哈希函数及该第二指纹信息承载于同一消息。
可选地,该第一端口号与该第二哈希函数列表承载于同一类消息,该第二端口号与该第一哈希函数列表承载于同一消息。
通过上述交互流程,终端设备#α与终端设备#β能够获知彼此所使用的端口号,从而能够根据该端口号,建立SCTP连接,并进行数据传输,并且,根据该端口号建立SCTP连接以及通过该SCTP连接传输数据的方法和过程可以与现有技术相似,这里,为了避免赘述,省略其详细说明。
需要说明的是,以上列举的终端设备#α与终端设备#β之间协商哈希函数,以建立DTLS连接的过程,但本发明并不限定于此,其他用于建立DTLS连接的参数均可以通过终端设备#α与终端设备#β之间的协商过程确定,并且,该协商过程与上述方法100中过列举的协商过程相似。
另外,在本发明实施例中,如上所述确定的哈希函数#α及哈希函数#β可以是相同的,也可以是不同的,本发明并未特别限定。
根据本发明实施例的用于传输数据的方法,通过使第一终端设备和第二终端设备基于H.323协议来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
方式B
图2示出了从第一终端设备(即,后述决策设备)角度描述的,根据本发明一实施例的传输数据的方法200的示意性流程图。该应用于包括第一终端设备、第二终端设备的通信系统中,该第一终端设备与该第二终端设备之间通过H.323协议进行通信,如图2所示,该方法200包括:
S210,该第一终端设备根据该H.323协议,接收该第二终端设备发送的第一哈希函数列表,该第一哈希函数列表包括该第二终端设备所支持的至少一个哈希函数;
S220,该第一终端设备从该第一哈希函数列表中确定目标哈希函数,并确定与该目标哈希函数相对应的指纹信息,其中,该目标哈希函数属于该第一终端设备所支持的哈希函数;
S230,该第一终端设备根据该H.323协议,向该第二终端设备发送该目标哈希函数和该指纹信息;
S240,该第一终端设备根据该目标哈希函数和该指纹信息与该第二终端设备建立数据包传输层安全性协议DTLS协议连接,以通过该DTLS协议连接与第二终端设备之间传输数据。
具体地说,在本发明实施例中,第一终端设备(以下,为了便于理解和区分,记做:终端设备#1)与第二终端设备(以下,为了便于理解和区分,记做:终端设备#2)可以配置于使用H.323协议(具体地说,是使用H.323协议建立会话连接)的通信系统,从而,终端设备#1与终端设备#2之间能够基于该H.323协议进行通信,例如,传输信令。
在本发明实施例中,终端设备#1与终端设备#2可以通过协商确定哈希函数和指纹信息(也可以称为:安全参数),从而,可以基于该哈希函数和指纹信息建立数据包传输层安全性(DTLS,Datagram Transport Layer Security)协议,以通过该DTLS协议进行数据传输,从而,能够有效利用DTLS协议的安全认证机制(即,基于哈希函数和指纹信息的加密和认证)提高数据传输的安全性。
另外,终端设备#1与终端设备#2协商确定哈希函数和指纹信息的过程可以是:二者中的一个进行决策的终端设备(即,决策设备)从双方支持的哈希函数中确定一个最终用于上述加密和认证的目标哈希函数,将该目标哈希函数和指纹信息发送给另一个设备,并基于该目标哈希函数和其对应的指纹信息发起DTLS连接建立过程,即DTLS握手以下,为了便于理解,作为示例而非限定,以该终端设备#1作为该决策设备为例,对该传输数据的方法100进行详细说明。
首先,终端设备#2可以将其能够支持的哈希函数记录在哈希函数列表(以下,为了便于理解和区分,记做:第一哈希函数列表)中,根据H.323协议将该第一哈希函数列表封装入通信系统所提供的能够在终端设备#1与终端设备#2之间传输的消息内,并将该消息传输至终端设备#1。
可选地,该第一哈希函数列表承载于终端能力集消息。
具体地说,作为承载上述第一哈希函数列表的消息,可以列举终端设备能力集(Terminal Capability Set)消息。从而,能够利用现有协议中提供的消息承载该第一哈希函数列表,提高了本发明的通用性和实用性。
应理解,以上列举的终端能力集消息,仅为承载上述第一哈希函数列表的消息的示例性说明,本发明并为限定于此,其他能够在终端设备#1与终端设备#2之间传输的消息,或者说,终端设备#1与终端设备#2能够基于H.323协议收发的消息,均落入本发明的保护范围内。
需要说明的是,在本发明实施例中,终端设备#2记录在第一哈希函数列表中的哈希函数可以是终端设备#2所支持的全部哈希函数,也可以是终端设备#2所支持的部分哈希函数,本发明并未特别限定,例如,该哈希函数列表所记录的哈希函数的数量可以根据系统(或标准)规定或该哈希函数列表所承载于的消息的容量(或者说,该消息所能够承载的信息量)任意变更。
从而,在S210中,终端设备#1能够接收到上述携带第一哈希函数列表的消息,并基于H.323协议对该消息解封装从而获取上述第一哈希函数列表。
可选地,在该第一终端设备从该第一哈希函数列表中确定目标哈希函数之前,该方法还包括:
该第一终端设备根据该H.323协议,接收该第二终端设备发送的角色指示信息,该角色指示信息用于指示该第二终端设备支持的角色,该角色为“主动”和“被动”中的至少一种;
该第一终端设备根据角色指示信息,确定该第二终端设备支持的角色;以及
该第一终端设备从该第一哈希函数列表中确定目标哈希函数,包括:
该第一终端设备在确定该第一终端设备支持的角色包括“主动”且该第二终端设备支持的角色包括“被动”时,从该第一哈希函数列表中确定目标哈希函数。
具体地说,在本发明实施例中,系统可以提供三种角色,即,上述“主动”、“被动”和“皆可”。
角色为“主动”的终端设备可以作为上述决策设备,并且,将角色为”“被动”或“皆可”的终端设备确认为活动终端,即,视频会议的参与者,需要与其建立后述DTLS连接,并传输视频会议的相关数据(例如,视频数据及音频数据等)。
因此,终端设备#2在可以将用于指示其支持的角色的信息(即,角色指示信息)发送给终端设备#1,需要说明的是,由于本说明书是以终端设备#1作为决策终端为例进行说明,因此,需要使终端设备#2的角色为“被动”或“皆可”,或者说,该角色指示信息所指示的角色需要包括“被动”,即,该终端设备#2的角色为“被动”或“皆可”。
从而,终端设备#1在确定自身能够支持“主动”角色(或者说,能够作为上述决策设备),并且,根据上述角色支持信息确定终端设备#2能够支持“被动”(或者说,终端设备#2的角色为“被动”或“皆可”)角色之后,在S220,从该第一哈希函数列表确定一个终端设备#1与终端设备#2均能够支持的哈希函数,作为用于建立后述DTLS连接的目标哈希函数。
可选地,该角色指示信息与该第一哈希函数列表承载于同一消息。
具体地说,在本发明实施例中,终端设备#2可以将上述第一哈希函数列表与角色指示信息通过同一消息,同时发送给终端设备#1,从而,缩减信息交互流程,能够减少在终端设备#1与终端设备#2之间交互的消息的数量,提高处理效率。
在S220中,终端设备#1可以通过以下方式1和方式2中的任一方式,确定目标哈希函数的方式。
方式1
可选地,该第一终端设备从该第一哈希函数列表中确定目标哈希函数,包括:
该第一终端设备根据自身所支持的哈希函数,从该第一哈希函数列表中确定目标哈希函数
具体地说,在本发明实施例中,该终端设备#1可以将该第一哈希函数列表中的哈希函数与其自身支持的哈希函数进行对照处理,从而确定该第一哈希函数列表中,属于该终端设备#1能够支持的哈希函数,作为目标哈希函数。
例如,作为示例而非限定,该终端设备#1可以按规定的顺序(例如,从该第一哈希函数列表中的第一个哈希函数)开始,执行上述对照处理,当确定一个即属于该第一哈希函数列表又属于终端设备#1能够支持的哈希函数时,将该哈希函数作为目标哈希函数,并结束上述对照处理。
或者,该终端设备#1可以在确定第一哈希函数列表中所有属于该终端设备#1能够支持的哈希函数之后,从所确定的哈希函数中选择任一哈希函数,作为该目标哈希函数。
根据该方式1提供的流程,终端设备#2仅根据其自身能够支持的哈希函数,便能够确定该第一哈希函数列表,或者,上述第一哈希函数列表可以是预先(例如,出厂时)配置在该终端设备#2中的,从而,能够减少终端设备#2的处理负担,降低对终端设备#2的性能要求。
方式2
可选地,在该第一终端设备从该第一哈希函数列表中确定目标哈希函数之前,该方法还包括:
该第一终端设备根据该H.323协议,向该第二终端设备发送第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个哈希函数,以便于该第二终端设备根据该第二哈希函数列表,确定该第一哈希函数列表,其中,该第一哈希函数列表所包括的哈希函数属于该第二哈希函数列表;以及
该第一终端设备从该第一哈希函数列表中确定目标哈希函数,包括:
该第一终端设备确定该第一哈希函数列表中任一哈希函数为目标哈希函数。
具体地说,在S210之前,终端设备#1可以将其能够支持的哈希函数记录在哈希函数列表(以下,为了便于理解和区分,记做:第二哈希函数列表)中,根据H.323协议将该第二哈希函数列表封装入通信系统所提供的能够在终端设备#1与终端设备#2之间传输的消息内,并将该消息传输至终端设备#1。
可选地,该第二哈希函数列表承载于终端能力集消息。
具体地说,作为承载上述第二哈希函数列表的消息,可以列举终端能力集消息,从而,能够利用现有协议中提供的消息承载该第二哈希函数列表,提高了本发明的通用性和实用性。
应理解,以上列举的终端能力集消息,仅为承载上述第二哈希函数列表的消息的示例性说明,本发明并为限定于此,其他能够在终端设备#1与终端设备#2之间传输的消息,或者说,终端设备#1与终端设备#2能够基于H.323协议收发的消息,均落入本发明的保护范围内。
需要说明的是,在本发明实施例中,终端设备#1记录在第二哈希函数列表中的哈希函数可以是终端设备#1所支持的全部哈希函数,也可以是终端设备#1所支持的部分哈希函数,本发明并未特别限定,例如,该哈希函数列表所记录的哈希函数的数量可以根据系统(或标准)规定或该哈希函数列表所承载于的消息的容量(或者说,该消息所能够承载的信息量)任意变更。
终端设备#2能够接收到上述携带第二哈希函数列表的消息,并基于H.323协议对该消息解封装从而获取上述第二哈希函数列表。
从而,该终端设备#2可以将该第二哈希函数列表中的哈希函数与其自身支持的哈希函数进行对照处理,从而确定该第一哈希函数列表中,属于该终端设备#2能够支持的哈希函数,并将该哈希函数记录在第二哈希函数列表中。例如,作为示例而非限定,该终端设备#2可以按规定的顺序(例如,从该第二哈希函数列表中的第一个哈希函数)开始,执行上述对照处理,当确定一个即属于该第二哈希函数列表又属于终端设备#2能够支持的哈希函数时,将该哈希函数记录在第一哈希函数列表中。并且,此情况下,终端设备#2可以根据第二哈希函数列表需要记录的哈希函数的数量适当调整上述对照处理的次数。
从而,终端设备#1在S210中所接收到的第一哈希函数列表中所记录的哈希函数均为终端设备#1和终端设备#2双方均能够支持的哈希函数,因此,在S220中,终端设备#1可以从所确定的哈希函数中选择任一哈希函数,作为目标哈希函数。
根据该方式2提供的流程,终端设备#1只需执行简单的选择动作,便能够确认目标哈希函数,并且,上述第二哈希函数列表可以是预先(例如,出厂时)配置在该终端设备#1中的,从而,能够减少终端设备#1的处理负担,降低对终端设备#1的性能要求。
在如上所述确定了目标哈希函数之后,终端设备#1可以确定与该目标哈希函数相对应的指纹信息,并且,该过程可以与现有技术中,确定一个哈希函数相对应的指纹信息的过程相似,这里,为了避免赘述,省略其详细说明。
从而,在S230,终端设备#1可以根据H.323协议,将目标哈希函数与该指纹信息封装入通信系统所提供的能够在终端设备#1与终端设备#2之间传输的消息内,并将该消息传输至终端设备#2。
可选地,该目标哈希函数和该指纹信息承载于开启逻辑信道消息。
具体地说,作为承载上述目标哈希函数和指纹信息的消息,可以列举开启逻辑信道(Open Logical Channel)消息,从而,能够利用现有协议中提供的消息承载该目标哈希函数和指纹信息,提高了本发明的通用性和实用性。
应理解,以上列举的开启逻辑信道消息,仅为承载上述目标哈希函数和指纹信息的消息的示例性说明,本发明并为限定于此,其他能够在终端设备#1与终端设备#2之间传输的消息,或者说,终端设备#1与终端设备#2能够基于H.323协议收发的消息,均落入本发明的保护范围内。
从而,终端设备#2能够接收到上述携带目标哈希函数和指纹信息的消息,并基于H.323协议对该消息解封装从而获取上述目标哈希函数和指纹信息。
由此,终端设备#1和终端设备#2双方能够获知目标哈希函数和指纹信息,从而,在S240,终端设备#1和终端设备#2可以根据该目标哈希函数和指纹信息建立DTLS连接,例如,终端设备#1可以根据目标哈希函数和指纹信息与终端设备#2进行安全认证(也可以称为:DTLS握手)。
即,终端设备#1可以根据目标哈希函数和指纹信息生成验证信息#1(例如,终端设备#1可以根据目标哈希函数对指纹信息进行加密而生成一个代码),并将该验证信息#1发送给终端设备#2。
并且,终端设备#2可以根据目标哈希函数和指纹信息生成验证信息#2(例如,终端设备#2可以根据目标哈希函数对指纹信息进行加密而生成一个代码),并将该验证信息#2发送给终端设备#1。
从而,当终端设备#2确定终端设备#1所发送的上述验证信息#1与其生成的验证信息#2一致时,终端设备#2可以确定终端设备#1通过安全验证,可以与该终端设备#1建立DTLS连接。
类似的,当终端设备#1确定终端设备#2所发送的上述验证信息#2与其生成的验证信息#1一致时,终端设备#1可以确定终端设备#2通过安全验证,可以与该终端设备#2建立DTLS连接。
在本发明实施例中,终端设备#1与终端设备#2建立DTLS协议连接的方法和过程可以与现有技术相似,这里,为了避免赘述,省略其详细说明。
可选地,在该第二终端设备根据该目标哈希函数和该指纹信息与该第一终端设备建立DTLS协议连接之前,该方法还包括:
该第二终端设备根据该H.323协议,向该第二终端设备发送的确认信息,该确认信息用于指示该第二终端设备接收到了该目标哈希函数和该指纹信息。
具体地说,终端设备#2在获取上述目标哈希函数和指纹信息之后,可以根据H.323协议,将用于指示终端设备#2已接收到该目标哈希函数的确认信息封装入通信系统所提供的能够在终端设备#1与终端设备#2之间传输的消息内,并将该消息传输至终端设备#1。
可选地,该确认信息承载于开启逻辑信道确认消息。
具体地说,作为承载上述确认信息的消息,可以列举开启逻辑信道确认(OpenLogical Channel Ack)消息,从而,能够利用现有协议中提供的消息承载该确认信息,提高了本发明的通用性和实用性。
应理解,以上列举的开启逻辑信道确认消息,仅为承载上述确认信息的消息的示例性说明,本发明并为限定于此,其他能够在终端设备#1与终端设备#2之间传输的消息,或者说,终端设备#1与终端设备#2能够基于H.323协议收发的消息,均落入本发明的保护范围内。
从而,终端设备#1能够接收到上述携带确认信息的消息,并基于H.323协议对该消息解封装从而获取上述确认信息,进而确定终端设备#2已接收到目标哈希函数,并可以执行上述S240中的动作。
通过使终端设备#2在接收到目标哈希函数和指纹信息之后,向终端设备#1返回确认信息,终端设备#1可以根据该确认信息确定终端设备#2已做好执行建立DTLS的准备,从而,能够进一步提高本发明实施例的用于传输数据的方法的可靠性。
在如上述所述,建立了DTLS协议连接之后,终端设备#1与终端设备#2可以通过该DTLS协议连接传输视频会议的相关数据。例如,终端设备#1与终端设备#2可以根据RFC6347规定的流程进行鉴权认证交换,并在鉴权认证成功后,开启逻辑信道,进行数据传输。
另外,终端设备#1与终端设备#2可以在该DTLS协议连接的基础上,建立应用层协议连接,例如,流控制传输协议(SCTP,Stream Control Transmission Protocol)连接,并通过该SCTP连接传输数据。
应理解,以上列举的SCTP仅为应用层协议的示例性说明,本发明并未限定于此,其他用于传输数据的等各种应用层协议均落入本发明的保护范围内。以下,为了便于理解和说明,以基于DTLS协议连接建立SCTP连接的过程为例,进行说明。
可选地,该方法还包括:
该第一终端设备向该第二终端设备发送第一端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号;
该第一终端设备接收该第二终端设备发送的第二端口号,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;
该第一终端设备根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第二终端设备之间传输数据。
具体地说,在如上所述建立了DTLS协议连接后,终端设备#1能够确定基于DTLS协议连接的端口号,进而,可以从中选择用于与终端设备#2建立SCTP连接的端口号(以下,为了便于理解和区分,记做:端口号#1),并且,终端设备#1可以根据H.323协议,将该端口号#1发送给终端设备#2。
类似地,终端设备#2能够确定基于DTLS协议连接的端口号,进而,可以从中选择用于与终端设备#1建立SCTP连接的端口号(以下,为了便于理解和区分,记做:端口号#2),并且,终端设备#2可以根据H.323协议,将该端口号#2发送给终端设备#1。
可选地,该第一端口号承载于终端能力集消息或开启逻辑信道消息,以及
该第二端口号承载于终端能力集消息或开启逻辑信道消息。
具体地说,在如上所述确定了目标哈希函数和指纹信息之后,终端设备#1和终端设备#2已经能够确认即将建立的DTLS协议连接,从而,能够在建立DTLS协议连接之前,将所选择用于建立SCTP连接的端口号发送给对方。
因此,在本发明实施例中,终端设备#1可以通过上述Open Logical Channel消息,将其选择的端口号(即,端口号#1)发送给终端设备#2。终端设备#2可以通过上述OpenLogical Channel消息,将其选择的端口号(即,端口号#2)发送给终端设备#1。
另外,终端设备#1和终端设备#2还可以通过终端能力集消息,将所选择用于建立SCTP连接的端口号发送给对方。例如,终端设备#1可以通过上述Terminal Capability Set消息,或通过更新Terminal Capability Set消息,将其选择的端口号(即,端口号#1)发送给终端设备#2。终端设备#2可以通过上述Terminal Capability Set消息,或通过更新Terminal Capability Set消息,将其选择的端口号(即,端口号#2)发送给终端设备#1。
可选地,该第一端口号与该第二哈希函数列表承载于同一类消息。
具体地说,终端设备#1可以将端口号#1、第二哈希函数列表和角色信息承载于同一类消息中。类似地,终端设备#2可以将端口号#2和第一哈希函数列表承载于同一类消息中。
可选地,该第一端口号与该目标哈希函数及该指纹信息承载于同一消息。
具体地说,终端设备#1可以将端口号#1、目标哈希函数和指纹信息承载于同一消息中。
类似地,终端设备#2可以将端口号#2和确认信息承载于同一消息中。
从而,能够减少终端设备#1与终端设备#2之间信令交互,提高通信效率。
通过上述交互流程,终端设备#1与终端设备#2能够获知彼此所使用的端口号,从而能够根据该端口号,建立SCTP连接,并进行数据传输,并且,根据该端口号建立SCTP连接以及通过该SCTP连接传输数据的方法和过程可以与现有技术相似,这里,为了避免赘述,省略其详细说明。
需要说明的是,以上列举的终端设备#1与终端设备#2之间协商哈希函数,以建立DTLS连接的过程,但本发明并不限定于此,其他用于建立DTLS连接的参数均可以通过终端设备#1与终端设备#2之间的协商过程确定,并且,该协商过程与上述方法200中过列举的协商过程相似。
另外,以上说明中“该第一终端设备与该第二终端设备之间通过H.323协议进行通信”是指在进行认证处理之前的交互哈希函数列表、哈希函数和指纹信息时通过H.323协议进行通信,在如上所述确定了用于进行认证的第一哈希函数、第一指纹信息、第二哈希函数和第二指纹信息之后,可以根据DTLS协议提供的信令或消息进行上述认证处理,即,该第一终端设备与该第二终端设备之间在进行认证处理时可以不通过H.323协议进行通信。
根据本发明实施例的用于传输数据的方法,通过使第一终端设备和第二终端设备基于H.323协议来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
情况2
在本发明实施例中,使用H.323协议建立会话连接的设备和使用SIP建立会话连接的设备可以经由网关设备通过以下方式C或方式D协商用于进行安全认证的哈希函数和指纹信息,以建立DTLS连接。应注意,该DTLS连接可以是基于UDP的,也可以是基于TCP的。
方式C
图3示出了从网关设备角度描述的,根据本发明另一实施例的传输数据的方法300的示意性流程图。该应用于包括第一终端设备、第二终端设备和网关设备的通信系统中,该第一终端设备与该网关设备之间通过H.323协议通信,该第二终端设备与该网关设备之间通过会话初始化协议SIP通信,如图3所示,该方法300包括:
S310,该网关设备接收该第二终端设备发送的至少一个第一哈希函数,该第一哈希函数属于该第二终端设备所支持的哈希函数,向该第一终端设备发送记录有该第一哈希函数的第一哈希函数列表,接收该第一终端设备发送的目标第一哈希函数和第一指纹信息,其中,该目标第一哈希函数是该第一终端设备从该第一哈希函数列表中确定的,且该目标第一哈希函数属于该第一终端设备支持的哈希函数,该第一指纹信息是与该目标第一哈希函数相对应的指纹信息,该目标第一哈希函数和第一指纹信息用于对该第一终端设备进行认证;
S320,该网关设备接收该第一终端设备发送的第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个第二哈希函数,向该第二终端设备发送该第二哈希函数的部分或全部,接收该第二终端设备发送的目标第二哈希函数和第二指纹信息,其中,该目标第二哈希函数是该第二终端设备从该第二哈希函数的部分或全部中确定的,且该目标第二哈希函数属于该第二终端设备支持的哈希函数,该第二指纹信息是与该目标第二哈希函数相对应的指纹信息,该目标第二哈希函数和第二指纹信息用于对该第二终端设备进行认证;
S330,该网关设备向该第二终端设备发送该目标第一哈希函数和该第一指纹信息,并向该第一终端设备发送该目标第二哈希函数和该第二指纹信息,以便于该第一终端设备和该第二终端设备根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数和该第二指纹信息进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据。
目前,随着视频会议技术等媒体通信技术的发展和普及,并且,该媒体通信技术能够提供多种会话(也可以称为“呼叫”)建立协议,从而,终端设备能够根据自身能力(例如,所支持的会话建立协议),选择相应的会话建立协议建立会话连接,进而可以通过该会话连接与其他终端设备进行协商,以建立数据传输连接,从而完成与其他终端设备的媒体通信。
作为上述会话建立协议,可以列举H.323协议和会话初始化协议(SIP,SessionInitiation Protocol)。并且,不同的会话协议对应不同的数据传输连接,例如,H.323协议对应基于H.235协议的数据传输连接,SIP对应基于数据包传输层安全性(DTLS,DatagramTransport Layer Security)协议的数据传输连接。
由于不同的数据传输连接无法兼容(例如,无法识别对方的编码格式等),如果两个终端设备分别使用H.323协议和SIP建立会话,则该会话(或者说,数据传输连接)将在网关设备处终结,由网关设备对在两个终端设备之间传输的数据进行转发(例如,对编码格式进行转换等),因此,增大的网关设备的负担,降低了系统的传输性能,严重影响用户体验。
与此相对,根据本发明实施例的用于传输数据的方法300,第一终端设备和第二终端设备经由网关设备协商安全参数,能够在第一终端设备和第二终端设备之间建立基于该安全参数的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,而无需网关设备的转发,从而能够减小网关设备的负担,提高系统的传输性能,改善影响用户体验。
具体地说,在本发明实施例中,第一终端设备(以下,为了便于理解和区分,记做:终端设备#X)与可以配置于使用H.323协议(具体地说,是使用H.323协议建立会话连接)的子通信系统,第二终端设备(以下,为了便于理解和区分,记做:终端设备#Y)可以配置于使用SIP协议(具体地说,是使用SIP协议建立会话连接)的子通信系统,从而,终端设备#X与网关设备之间能够基于该H.323协议进行通信,例如,传输信令,终端设备#Y与网关设备之间能够基于该SIP协议进行通信,例如,传输信令。
在本发明实施例中,终端设备#X与终端设备#Y可以经由网关设备协商确定哈希函数和指纹信息(也可以称为:安全参数)从而,可以基于该哈希函数和指纹信息建立数据包传输层安全性协议(DTLS,Datagram Transport Layer Security),以通过该DTLS协议进行数据传输,从而,能够有效利用DTLS协议的安全认证机制(即,基于哈希函数和指纹信息的加密和认证)提高数据传输的安全性。
终端设备#X可以将其能够支持的哈希函数(即,第二哈希函数)记录在第二哈希函数列表中,根据H.323协议将该第二哈希函数列表封装入通信系统所提供的能够在终端设备#X与网关设备之间传输的消息内,并将该消息传输至网关设备。可选地,该第一终端设备发送给该网关设备的第二哈希函数列表承载于该第一终端设备发送给该网关设备的终端能力集消息中。具体地说,作为承载上述哈希函数列表的消息,可以列举终端设备能力集(Terminal Capability Set)消息,从而,能够利用现有协议中提供的消息承载该哈希函数列表,提高了本发明的通用性和实用性。应理解,以上列举的终端能力集消息,仅为承载上述第二哈希函数列表的消息的示例性说明,本发明并为限定于此,其他能够在终端设备#X与网关设备之间传输的消息,或者说,终端设备#X与网关设备能够基于H.323协议收发的消息,均落入本发明的保护范围内。需要说明的是,在本发明实施例中,终端设备#X记录在第二哈希函数列表中的第二哈希函数可以是终端设备#X所支持的全部哈希函数,也可以是终端设备#X所支持的部分哈希函数,本发明并未特别限定,例如,该第二哈希函数列表所记录的第二哈希函数的数量可以根据系统(或标准)规定或该哈希函数列表所承载于的消息的容量(或者说,该消息所能够承载的信息量)任意变更。以下,为了避免赘述,省略在对终端设备#X与网关设备之间通信时出现的相同过相似情况的说明。
并且,终端设备#Y可以根据SIP规定的传输方式,将其能够支持的第一哈希函数封装入通信系统所提供的能够在终端设备#Y与网关设备之间传输的消息内,并将该消息传输至网关设备。
可选地,该第二终端设备发送给该网关设备的第一哈希函数承载于该第二终端设备发送给该网关设备的SIP消息的会话描述协议(SDP,Session Descrption Protocol)消息体中。
具体地说,作为承载第一哈希函数的消息,可以列举包含SDP消息体的SIP消息,从而,能够利用现有协议中提供的消息承载该哈希函数列,提高了本发明的通用性和实用性。
应理解,以上列举的SDP消息,仅为承载上述第一哈希函数的消息的示例性说明,本发明并为限定于此,其他能够在终端设备#Y与网关设备之间传输的消息,或者说,终端设备#Y与网关设备能够基于SIP规定的方式收发的消息,均落入本发明的保护范围内。需要说明的是,在本发明实施例中,终端设备#Y发送给网关设备的第一哈希函数可以是终端设备#Y所支持的全部哈希函数,也可以是终端设备#Y所支持的部分哈希函数,本发明并未特别限定。并且,当第一哈希函数为多个的情况下,第二终端设备可以通过多条SDP消息(即,每条SDP消息承载一个第一哈希函数)将该多个第一哈希函数分别传输给网关设备。以下,为了避免赘述,省略在对终端设备#Y与网关设备之间通信时出现的相同或相似情况的说明。
由此,网关设备能够接收到上述携带第二哈希函数列表的消息,并基于H.323协议对该消息解封装从而获取上述第二哈希函数列表,并获取记录在该第二哈希函数列表中的第二哈希函数。其后,网关设备可以基于SIP将上述第二哈希函数的部分或全部传输至终端设备#Y,例如,网关设备可以首先从该第二哈希函数列表中选择任一(例如,第二哈希函数列表中的首个)哈希函数,并根据SIP将该哈希函数封装入通信系统所提供的能够在网关设备与终端设备#Y之间传输的消息内,并将该消息传输至终端设备#Y,并且,网关设备还可以通过类似的方法,将第二哈希函数列表中剩余的哈希函数传输至#Y。
从而,终端设备#Y能够接收到(一条或多条)携带上述第二哈希函数的消息,并基于SIP对该消息解封装从而获取上述第二哈希函数的部分或全部。并且,终端设备#Y可以将第二哈希函数的部分或全部与其自身支持的哈希函数进行对照处理,从而,从该第二哈希函数的部分或全部中,确定一个或多个属于终端设备#Y能够支持的哈希函数(即,目标第二哈希函数)。并且,终端设备#Y可以确定与该目标第二哈希函数相对应的指纹信息(即,第二指纹信息)。其后,终端设备#Y可以通过例如SDP消息等,将如上所述确定的目标第二哈希函数和第二指纹信息发送给网关设备。
具体过程可以是,网关设备首先从该第二哈希函数列表中选择任一哈希函数,封装在SIP invite(邀请)消息的SDP消息体中发送给终端设备#Y,并且,之后所需要发送的第二哈希函数列表中的其他哈希函数,可以封装在SIP Update(更新)消息的SDP消息体中发送给终端设备#Y。
终端设备#Y在接收到一个哈希函数后,如果确认能够支持该哈希函数,则将该哈希函数封装在SIP响应消息(如SIP 183响应消息,SIP Update响应消息)的SDP消息体中发送给网关设备。并且,终端设备#Y将确认能够支持的其中一个哈希函数作为目标第二哈希函数,并将该目标第二哈希函数及其对应的指纹信息(即所述第二指纹信息)封装在SIPUpdate(更新)消息的SDP消息体中发送给网关设备。
其后,网关设备可以根据H.323协议,通过例如开启逻辑信道消息或终端能力集消息等,将该目标第二哈希函数和第二指纹信息发送给终端设备#X。
由此,终端设备#X能够获知用于针对终端设备#Y的验证的哈希函数和指纹信息,即,上述目标第二哈希函数和第二指纹信息。
相应地,网关设备能够接收到上述携带终端设备#Y所支持的(一个或多个)第一哈希函数的消息,并根据SIP规定的方式对该消息解封装从而获取上述第一哈希函数。
其后,网关设备将该第一哈希函数的部分或全部记录在一个哈希函数列表(即,第一哈希函数列表)中,并且,可以基于H.323协议,通过例如终端能力集消息,将上述第一哈希函数列表发送至终端设备#X。
从而,终端设备#X能够接收到携带上述第一哈希函数列表的消息,并基于H.323协议,对该消息解封装从而获取上述第一哈希函数列表,进而能够获知终端设备#Y能够支持的上述第一哈希函数的部分或全部。并且,终端设备#X可以将第一哈希函数的部分或全部与其自身支持的哈希函数进行对照处理,从而,从该第一哈希函数的部分或全部中,确定一个或多个属于终端设备#X能够支持的哈希函数(即,目标第一哈希函数)。并且,终端设备#Y可以确定与该目标第一哈希函数相对应的指纹信息(即,第一指纹信息)。其后,终端设备#X可以通过例如开启逻辑信道消息等,将如上所述确定的目标第一哈希函数和第一指纹信息发送给网关设备。
其后,网关设备可以根据SIP,通过例如SDP消息等,将该目标第一哈希函数和第一指纹信息发送给终端设备#Y。
由此,终端设备#Y能够获知用于针对终端设备#X的验证的哈希函数和指纹信息,即,上述目标第一哈希函数和第一指纹信息。
以下,为了便于理解和说明,将目标第一哈希函数记做哈希函数#X,将第一指纹信息记做指纹信息#X,将目标第二哈希函数记做哈希函数#Y,将第二指纹信息记做指纹信息#Y。即,终端设备#X和终端设备#Y双方能够获知用于对彼此进行认证的哈希函数和指纹信息,从而,终端设备#X与终端设备#Y可以根据如上所述确定的哈希函数#X、指纹信息#X、哈希函数#Y和指纹信息#Y进行安全认证(也可以称为:DTLS握手)。
即,终端设备#X可以根据哈希函数#X和指纹信息#X生成验证信息#X1(例如,终端设备#X可以根据哈希函数#X和指纹信息#X生成一个代码),并将该验证信息通过DTLS信令发送给终端设备#Y。
并且,终端设备#Y根据哈希函数#X和指纹信息#X生成验证信息#X2(例如,终端设备#Y可以根据哈希函数#X和指纹信息#X生成一个代码)。
从而,当终端设备#Y确定终端设备#X通过DTLS所发送的上述验证信息#X1与其生成的验证信息#X2一致时,终端设备#Y可以确定终端设备#X通过安全验证,可以与该终端设备#X建立DTLS连接。
类似的,终端设备#Y可以根据哈希函数#Y和指纹信息#Y生成验证信息#Y1(例如,终端设备#Y可以根据哈希函数#Y对指纹信息#Y进行加密而生成一个代码),并将该验证信息发送给终端设备#X。
并且,终端设备#X根据哈希函数#Y和指纹信息#Y生成验证信息#Y2(例如,终端设备#X可以根据哈希函数#Y对指纹信息#Y进行加密而生成一个代码)。
从而,当终端设备#X确定终端设备#Y所发送的上述验证信息#Y1与其生成的验证信息#Y2一致时,终端设备#X可以确定终端设备#Y通过安全验证,可以与该终端设备#Y建立DTLS连接。
可选地,该方法还包括:
该网关设备接收该第一终端设备发送的第一角色指示信息及该第二终端设备发送的第二角色指示信息,该第一角色指示信息用于指示该第一终端设备支持的角色,该第二角色指示信息用于指示该第二终端设备支持的角色,该角色为“主动”和“被动”中的至少一种;
该网关设备向该第二终端设备发送该第一角色指示信息,并向该第一终端设备发送该第二角色指示信息,以便于该第一终端设备和该第二终端设备根据该第一哈希函数、该第一指纹信息、该第二哈希函数、该第二指纹信息、该第一终端设备支持的角色和该第二终端设备支持的角色进行认证处理。
具体地说,在本发明实施例中,系统可以提供三种角色,即,“主动”、“被动”以及“主动被动皆可”(以下,为了便于理解和说明,简称为:“皆可”),终端设备#X和终端设备#Y可以经由网关设备通知对方彼此的角色。
例如,终端设备#X可以通过终端能力集消息或开启逻辑信道消息将用于支持其能够支持的角色的信息(即,第一角色指示信息)发送给网关设备,网关设备通过SDP消息将该第一角色指示信息发送给终端设备#Y。
再例如,终端设备#Y可以通过SDP消息将用于支持其能够支持的角色的信息(即,第二角色指示信息)发送给网关设备,网关设备通过终端能力集消息或开启逻辑信道将该第二角色指示信息发送给终端设备#X。
从而根据该角色,确定上述DTLS握手的发起方。
例如,如果终端设备#X的角色为“主动”,终端设备#Y的角色为“被动”或“皆可”(即,终端设备#Y支持的角色包括“被动”),则终端设备#X可以作为上述DTLS握手的发起方。
再例如,如果终端设备#X的角色为“主动”或“皆可”(即,终端设备#X支持的角色包括“主动”),终端设备#Y的角色为“被动”,则终端设备#X可以作为上述DTLS握手的发起方。
应理解,以上列举的终端设备的角色与DTLS握手的发起方之间的关系仅为示例性说明,本发明并未限定于此。
在完成上述DTLS握手之后,终端设备#X和终端设备#Y可以建立DTLS协议连接。在本发明实施例中,终端设备#X与终端设备#Y建立DTLS协议连接的方法和过程可以与现有技术相似,这里为了避免赘述,省略其详细说明。
在如上述所述,建立了DTLS协议连接之后,终端设备#X与终端设备#Y可以通过该DTLS协议连接传输视频会议的相关数据。例如,终端设备#X与终端设备#Y可以根据RFC6347规定的流程进行鉴权认证交换,并在鉴权认证成功后,开启逻辑信道,进行数据传输。
另外,终端设备#X与终端设备#Y可以在该DTLS协议连接的基础上,建立应用层协议连接,例如,流控制传输协议(SCTP,Stream Control Transmission Protocol)连接,并通过该SCTP连接传输数据。
应理解,以上列举的SCTP仅为应用层协议的示例性说明,本发明并未限定于此,其他用于传输数据的等各种应用层协议均落入本发明的保护范围内。以下,为了便于理解和说明,以基于DTLS协议连接建立SCTP连接的过程为例,进行说明。
可选地,该方法还包括:
该方法还包括:
该第一终端设备向该网关设备发送第一端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号,以便于该网关设备将该第一端口号发送给该第二终端设备;
该第一终端设备接收该网关设备发送的第二端口号,该第二端口号是该第二终端设备发送给该网关设备的,且该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;
该第一终端设备根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第二终端设备之间传输数据。
具体地说,终端设备#X能够确定基于该DTLS协议连接的端口号,进而,可以从中选择用于与终端设备#Y建立SCTP连接的端口号(以下,为了便于理解和区分,记做:端口号#X),并且,终端设备#X可以根据H.323协议,通过例如开启逻辑信道消息或终端能力集消息等将该端口号#X发送给网关设备,从而,网关设备能够通过例如SDP等消息将该端口号#X发送给终端设备#Y。
类似地,终端设备#Y能够确定基于该DTLS协议连接的端口号,进而,可以从中选择用于与终端设备#X建立SCTP连接的端口号(以下,为了便于理解和区分,记做:端口号#Y),并且,终端设备#Y可以根据SIP,通过例如SDP消息将该端口号#Y发送给网关设备,从而,网关设备能够通过例如开启逻辑信道消息或终端能力集消息等,将该端口号#X发送给终端设备#X。
通过上述交互流程,终端设备#X与终端设备#Y能够获知彼此所使用的端口号,从而能够根据该端口号,建立SCTP连接,并进行数据传输,并且,根据该端口号建立SCTP连接以及通过该SCTP连接传输数据的方法和过程可以与现有技术相似,这里,为了避免赘述,省略其详细说明。
需要说明的是,以上列举的终端设备#X与终端设备#Y之间协商哈希函数,以建立DTLS连接的过程,但本发明并不限定于此,其他用于建立DTLS连接的参数均可以通过终端设备#X与终端设备#Y之间的协商过程确定,并且,该协商过程与上述方法300中过列举的协商过程相似。
另外,在本发明实施例中,如上所述确定的哈希函数#X及哈希函数#Y可以是相同的,也可以是不同的,本发明并未特别限定。
根据本发明实施例的用于传输数据的方法,使用H.323协议第一终端设备和使用SIP的第二终端设备经由网关设备来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
方式D
图4示出了从网关设备角度描述的,根据本发明另一实施例的传输数据的方法400的示意性流程图。该应用于包括第一终端设备、第二终端设备和网关设备的通信系统中,该第一终端设备与该网关设备之间通过H.323协议通信,该第二终端设备与该网关设备之间通过会话初始化协议SIP通信,如图4所示,该方法400包括:
S410,该网关设备接收该第一终端设备发送的哈希函数列表,该哈希函数列表包括该第一终端设备所支持的至少一个哈希函数;
S420,该网关设备根据该哈希函数列表与该第二终端设备进行协商处理,以从该哈希函数列表中确定至少一个备选哈希函数,其中,该备选哈希函数属于该第二终端设备支持的哈希函数;
S430,该网关设备向该第一终端设备发送该备选哈希函数,以便于该第一终端设备从该备选哈希函数中确定目标哈希函数,并确定与该目标哈希函数相对应的指纹信息;
S440,该网关设备接收该第一终端设备发送的该目标哈希函数和该指纹信息,并向该第二终端发送该目标哈希函数和该指纹信息,以便于该第一终端设备和该第二终端设备根据该目标哈希函数和该指纹信息建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据。
目前,随着视频会议技术等媒体通信技术的发展和普及,并且,该媒体通信技术能够提供多种会话(也可以称为“呼叫”)建立协议,从而,终端设备能够根据自身能力(例如,所支持的会话建立协议),选择相应的会话建立协议建立会话连接,进而可以通过该会话连接与其他终端设备进行协商,以建立数据传输连接,从而完成与其他终端设备的媒体通信。
作为上述会话建立协议,可以列举H.323协议和会话初始化协议(SIP,SessionInitiation Protocol)。并且,不同的会话协议对应不同的数据传输连接,例如,H.323协议对应基于H.235协议的数据传输连接,SIP对应基于数据包传输层安全性(DTLS,DatagramTransport Layer Security)协议的数据传输连接。
由于不同的数据传输连接无法兼容(例如,无法识别对方的编码格式等),如果两个终端设备分别使用H.323协议和SIP建立会话,则该会话(或者说,数据传输连接)将在网关设备处终结,由网关设备对在两个终端设备之间传输的数据进行转发(例如,对编码格式进行转换等),因此,增大的网关设备的负担,降低了系统的传输性能,严重影响用户体验。
与此相对,根据本发明实施例的用于传输数据的方法200,第一终端设备和第二终端设备经由网关设备协商安全参数,能够在第一终端设备和第二终端设备之间建立基于该安全参数的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,而无需网关设备的转发,从而能够减小网关设备的负担,提高系统的传输性能,改善影响用户体验。
具体地说,在本发明实施例中,第一终端设备(以下,为了便于理解和区分,记做:终端设备#A)与可以配置于使用H.323协议(具体地说,是使用H.323协议建立会话连接)的子通信系统,第二终端设备(以下,为了便于理解和区分,记做:终端设备#B)可以配置于使用SIP协议(具体地说,是使用SIP协议建立会话连接)的子通信系统,从而,终端设备#A与网关设备之间能够基于该H.323协议进行通信,例如,传输信令,终端设备#B与网关设备之间能够基于该SIP协议进行通信,例如,传输信令。
在本发明实施例中,终端设备#A与终端设备#B可以经由网关设备协商确定哈希函数和指纹信息(也可以称为:安全参数)从而,可以基于该哈希函数和指纹信息建立数据包传输层安全性协议(DTLS,Datagram Transport Layer Security),以通过该DTLS协议进行数据传输,从而,能够有效利用DTLS协议的安全认证机制(即,基于哈希函数和指纹信息的加密和认证)提高数据传输的安全性。
首先,终端设备#A可以将其能够支持的哈希函数记录在哈希函数列表中,根据H.323协议将该哈希函数列表封装入通信系统所提供的能够在终端设备#A与网关设备之间传输的消息内,并将该消息传输至网关设备。
可选地,该第一终端设备发送给该网关设备的哈希函数列表承载于该第一终端设备发送给该网关设备的终端能力集消息中。
具体地说,作为承载上述哈希函数列表的消息,可以列举终端设备能力集(Terminal Capability Set)消息,从而,能够利用现有协议中提供的消息承载该哈希函数列表,提高了本发明的通用性和实用性。
应理解,以上列举的终端能力集消息,仅为承载上述哈希函数列表的消息的示例性说明,本发明并为限定于此,其他能够在终端设备#A与网关设备之间传输的消息,或者说,终端设备#A与网关设备能够基于H.323协议收发的消息,均落入本发明的保护范围内。
需要说明的是,在本发明实施例中,终端设备#A记录在哈希函数列表中的哈希函数可以是终端设备#A所支持的全部哈希函数,也可以是终端设备#A所支持的部分哈希函数,本发明并未特别限定,例如,该哈希函数列表所记录的哈希函数的数量可以根据系统(或标准)规定或该哈希函数列表所承载于的消息的容量(或者说,该消息所能够承载的信息量)任意变更。
从而,在S410中,网关设备能够接收到上述携带哈希函数列表的消息,并基于H.323协议对该消息解封装从而获取上述哈希函数列表。
在S420,网关设备可以根据上述哈希函数列表,基于SIP,进行与终端设备#B之间的协商处理,以从哈希函数列表中确定终端设备#B所能够支持的(一个或多个)备选哈希函数。作为示例而非限定,可以列举以下协商处理的具体过程。
可选地,该网关设备根据该哈希函数列表与该第二终端设备进行协商处理,以从该哈希函数列表中确定至少一个备选哈希函数,包括:
该网关设备向该第二终端设备发送待验证哈希函数,该待验证哈希函数是该哈希函数列表中的任一哈希函数;
该网关设备接收该第二终端设备发送的验证消息,该验证消息用于指示该待验证哈希函数是否属于该第二终端设备支持的哈希函数;
该网关设备在根据该验证消息,确定该待验证哈希函数属于该第二终端设备支持的哈希函数时,将该待验证哈希函数确定为备选哈希函数。
具体的,网关设备可以从该哈希函数列表中选择任一(例如,哈希函数列表中的首个)哈希函数,作为待验证哈希函数,并根据SIP将该待验证哈希函数封装入通信系统所提供的能够在网关设备与终端设备#B之间传输的消息内,并将该消息传输至终端设备#B。
可选地,该网关设备发送给该第二终端设备的待验证哈希函数承载于该网关设备发送给该第二终端设备的SIP消息中的会话描述协议邀请SDP Offer消息体中。从而,能够利用现有协议中提供的消息承载该待验证哈希函数,提高了本发明的通用性和实用性。
终端设备#B能够接收到上述待验证哈希函数的消息,并基于SIP对该消息解封装从而获取上述待验证哈希函数。
并且,终端设备#B可以将该待验证哈希函数与其自身支持的哈希函数进行对照处理,从而确定该待验证哈希函数是否属于终端设备#B能够支持的哈希函数。
如果终端设备#B确定该待验证哈希函数属于终端设备#B能够支持的哈希函数,则可以向根据SIP,向网关设备发送指示该终端设备#B能够支持该待验证哈希函数的验证消息(以下,为了便于理解和区分,记做:第一类型的验证消息)。从而,网关设备在接收到该第一类型的验证消息时,可以确定发送给终端设备#B的待验证哈希函数属于该终端设备#B能够支持该待验证哈希函数,进而将该待验证哈希函数确定为备选哈希函数。
如果终端设备#B确定该待验证哈希函数不属于终端设备#B能够支持的哈希函数,则可以向根据SIP,向网关设备发送指示该终端设备#B不支持该待验证哈希函数的验证消息(以下,为了便于理解和区分,记做:第二类型的验证消息)。从而,网关设备在接收到该第二类型的验证消息时,可以确定发送给终端设备#B的待验证哈希函数不属于该终端设备#B能够支持该待验证哈希函数,进而不将该待验证哈希函数确定为备选哈希函数。
可选地,该网关设备在根据该验证消息,确定该待验证哈希函数属于该第二终端设备支持的哈希函数时,将该待验证哈希函数确定为备选哈希函数,包括:
该网关设备在确定该验证消息携带有该待验证哈希函数时,确定该待验证哈希函数属于该第二终端设备支持的哈希函数,并将该待验证哈希函数确定为备选哈希函数。
具体地说,在本发明实施例中,作为区分上述第一类型的验证消息与第二类型的验证消息的方法,网关设备可以判定验证消息中是否携带有该网关设备发送给该终端设备#B的待验证哈希函数。
例如,如果终端设备#B判定网关设备所发送的待验证哈希函数属于该终端设备#B所支持的哈希函数,则可以将该待验证哈希函数封装在上述验证消息中,并发送给网关设备,从而,网关设备在确定该验证消息中携带有待验证哈希函数时,可以确定该验证消息为第一类型的验证消息,即,所携带的待验证哈希函数属于备选哈希函数。
或者,如果终端设备#B判定网关设备所发送的待验证哈希函数不属于该终端设备#B所支持的哈希函数,则可以不将不携带任何哈希函数的验证消息发送给网关设备,从而,网关设备在确定该验证消息中不携带待验证哈希函数时,可以确定该验证消息为第二类型的验证消息,即,所发送给终端设备#B的待验证哈希函数不属于备选哈希函数。
可选地,该第二终端设备发送给该网关设备的验证消息为SIP消息,且该第二终端设备发送给该网关设备的待验证哈希函数承载于在该SIP消息的SDP Answer消息体中。从而,能够利用现有协议中提供的消息作为该验证消息,提高了本发明的通用性和实用性。
从而,网关设备可以在确定出一个备选哈希函数后(例如,网关设备可以依次选取多个待验证哈希函数,并与终端设备#B进行多次协商,直至确定一个备选哈希函数),停止上述协商过。
或者,网关设备也可以与终端设备#B进行N(即,哈希函数列表包括的哈希函数的数量)次协商,以确定出该哈希函数列表中所有能够作为备选哈希函数的哈希函数。
在如上所述确定了(一个或多个)备选哈希函数之后,在S430中,该网关设备可以根据H.323协议将该备选哈希函数封装入通信系统所提供的能够在终端设备#A与网关设备之间传输的消息内,并将该消息传输至终端设备#A。
可选地,该网关设备发送给该第一终端设备的备选哈希函数承载于该网关设备发送给该第一终端设备的终端能力集消息中。
具体地说,作为承载上述备选哈希函数的消息,可以列举终端设备能力集(Terminal Capability Set)消息,从而,能够利用现有协议中提供的消息承载该备选哈希函数,提高了本发明的通用性和实用性。
应理解,以上列举的终端能力集消息,仅为承载上述备选哈希函数的消息的示例性说明,本发明并为限定于此,其他能够在终端设备#A与网关设备之间传输的消息,或者说,终端设备#A与网关设备能够基于H.323协议收发的消息,均落入本发明的保护范围内。
这样,终端设备#A能够接收到上述备选哈希函数的消息,并基于H.323协议对该消息解封装从而获取上述备选哈希函数。由于该备选哈希函数为终端设备#A和终端设备#B双方均能够支持的哈希函数,因此,终端设备#A可以从备选哈希函数中选择任一哈希函数,作为目标哈希函数。
在如上所述确定了目标哈希函数之后,终端设备#A可以确定与该目标哈希函数相对应的指纹信息,并且,该过程可以与现有技术中,确定一个哈希函数相对应的指纹信息的过程相似,这里,为了避免赘述,省略其详细说明。
其后,终端设备#A可以根据H.323协议,将目标哈希函数与该指纹信息封装入通信系统所提供的能够在终端设备#A与网关设备之间传输的消息内,并将该消息传输至网关设备。
可选地,该第一终端设备发送给该网关设备的目标哈希函数和指纹信息承载于该第一终端设备发送给该网关设备的开启逻辑信道消息中。
具体地说,作为承载上述目标哈希函数和指纹信息的消息,可以列举开启逻辑信道(Open Logical Channel)消息,从而,能够利用现有协议中提供的消息承载该目标哈希函数和指纹信息,提高了本发明的通用性和实用性。
应理解,以上列举的开启逻辑信道消息,仅为承载上述目标哈希函数和指纹信息的消息的示例性说明,本发明并为限定于此,其他能够在终端设备#A与网关设备之间传输的消息,或者说,终端设备#A与网关设备能够基于H.323协议收发的消息,均落入本发明的保护范围内。
从而,在S440中,网关设备能够接收到上述携带目标哈希函数和指纹信息的消息,并基于H.323协议对该消息解封装从而获取上述目标哈希函数和指纹信息。并且,可以根据SIP,将目标哈希函数与该指纹信息封装入通信系统所提供的能够在终端设备#B与网关设备之间传输的消息内,并将该消息传输至终端设备#B。
可选地,该网关设备发送给该第二终端设备的目标哈希函数和指纹信息承载于该网关设备发送给该第二终端设备的SIP消息中的SDP Offer消息体中。从而,能够利用现有协议中提供的消息承载该目标哈希函数和指纹信息,提高了本发明的通用性和实用性。
应理解,以上列举的开启逻辑信道消息,仅为承载上述目标哈希函数和指纹信息的消息的示例性说明,本发明并为限定于此,其他能够在终端设备#B与网关设备之间传输的消息,或者说,终端设备#B与网关设备能够基于SIP收发的消息,均落入本发明的保护范围内。
从而,终端设备#B能够接收到上述携带目标哈希函数和指纹信息的消息,并基于SIP对该消息解封装从而获取上述目标哈希函数和指纹信息。
可选地,该方法还包括:
该网关设备接收该第二终端设备发送的确认信息,该确认信息用于指示该第二终端设备已收到该目标哈希函数和该指纹信息;
该网关设备向该第一终端设备发送该确认信息,以便于该第一终端设备基于该确认信息,根据该目标哈希函数和该指纹信息与该第二终端设备建立DTLS协议连接。
具体地说,终端设备#B在获取上述目标哈希函数和指纹信息之后,可以根据SIP协议,将用于指示终端设备#B已收到该目标哈希函数的确认信息封装入通信系统所提供的能够在终端设备#B与网关设备之间传输的消息内,并将该消息传输至网关设备。
可选地,该第二终端设备发送给该网关设备的确认信息承载于该第二终端设备发送给该网关设备的SIP消息中的SDP Answer消息体中。从而,能够利用现有协议中提供的消息承载该确认信息,提高了本发明的通用性和实用性。
从而,网关设备能够接收到上述携带确认信息的消息,并基于SIP对该消息解封装从而获取上述确认信息,并且,可以基于H.323协议将确认信息封装入通信系统所提供的能够在终端设备#A与网关设备之间传输的消息内,并将该消息传输至终端设备#A。
可选地,该网关设备发送给该第一终端设备的确认信息承载于该网关设备发送给该第一终端设备的开启逻辑信道响应消息中。
具体地说,作为承载上述确认信息的消息,可以列举开启逻辑信道响应消息,从而,能够利用现有协议中提供的消息承载该确认信息,提高了本发明的通用性和实用性。
从而,终端设备#A能够接收到上述携带确认信息的消息,并基于H.323协议对该消息解封装从而获取上述确认信息,进而确定终端设备#B已接收到上述目标哈希函数,从而可以执行上述建立DTLS协议连接的动作。
通过使终端设备#B在接收到目标哈希函数和指纹信息之后,通过网关设备向终端设备#A返回确认信息,终端设备#A可以根据该确认信息确定终端设备#B已做好建立DTLS协议连接的准备,从而,能够进一步提高本发明实施例的用于传输数据的方法的可靠性。
由此,终端设备#A和终端设备#B双方能够获知目标哈希函数和指纹信息,从而,终端设备#A和终端设备#B可以根据目标哈希函数和指纹信息之间建立DTLS协议连接。例如,终端设备#A可以根据目标哈希函数和指纹信息与终端设备#A进行安全认证(也可以称为:DTLS握手)。
即,终端设备#A可以根据目标哈希函数和指纹信息生成验证信息#A(例如,终端设备#A可以根据目标哈希函数对指纹信息进行加密而生成一个代码),并将该验证信息#A发送给终端设备#B。
并且,终端设备#B可以根据目标哈希函数和指纹信息生成验证信息#B(例如,终端设备#B可以根据目标哈希函数对指纹信息进行加密而生成一个代码),并将该验证信息#B发送给终端设备#A。
从而,当终端设备#B确定终端设备#A所发送的上述验证信息#A与其生成的验证信息#B一致时,终端设备#B可以确定终端设备#A通过安全验证,可以与该终端设备#A建立DTLS连接。
类似的,当终端设备#A确定终端设备#B所发送的上述验证信息#B与其生成的验证信息#A一致时,终端设备#A可以确定终端设备#B通过安全验证,可以与该终端设备#A建立DTLS连接。
并且,建立DTLS协议连接的过程可以与现有技术相似,这里为了避免赘述,省略其详细说明。
应理解,以上列举的DTLS握手的过程仅为示例性说明,本发明并未限定于此,例如,终端设备#A与终端设备#B还可以根据RFC 6347规定的流程进行鉴权认证交换,并在鉴权认证成功后,开启逻辑信道,进行数据传输。
其后,终端设备#A与终端设备#B可以通过该DTLS协议连接传输视频会议的相关数据。例如,终端设备#A与终端设备#B可以在该DTLS协议连接的基础上,建立应用层协议连接,例如,流控制传输协议(SCTP,Stream Control Transmission Protocol)连接,并通过该SCTP连接传输数据。
应理解,以上列举的SCTP仅为应用层协议的示例性说明,本发明并未限定于此,其他用于传输数据的等各种应用层协议均落入本发明的保护范围内。以下,为了便于理解和说明,以基于DTLS协议连接建立SCTP连接的过程为例,进行说明。
可选地,该方法还包括:
该第一终端设备向该网关设备发送第一端口号,以便于该网关设备向该第二终端设备转发该第一端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号;
该第一终端设备接收该网关设备发送的第二端口号,该第二端口号是该第二终端设备发送给该网关设备的,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;
该第一终端设备根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以通过该SCTP连接传输数据。
具体地说,在如上所述建立了DTLS协议连接后,终端设备#A能够确定基于DTLS协议连接的端口号,进而,可以从中选择用于与终端设备#B建立SCTP连接的端口号(以下,为了便于理解和区分,记做:端口号#A),并且,终端设备#A可以根据H.323协议,将该端口号#A发送给网关设备。
从而,网关设备可以根据H.323协议接收到来自终端设备#A的端口号#A,并根据SIP将该端口号#A发送给终端设备#B。
类似地,终端设备#B能够确定基于DTLS协议连接的端口号,进而,可以从中选择用于与终端设备#A建立SCTP连接的端口号(以下,为了便于理解和区分,记做:端口号#B),并且,终端设备#B可以根据SIP,将该端口号#B发送给网关设备。
从而,网关设备可以根据SIP接收到来自终端设备#B的端口号#B,并根据H.323协议将该端口号#B发送给终端设备#A。
可选地,该第一终端设备发送给该网关设备的第一端口号承载于开启逻辑信道消息中,
该网关设备发送给该第一终端设备的第二端口号承载于开启逻辑信道响应消息中,
该网关设备发送给该第二终端设备的第一端口号承载于SIP消息的SDP Offer消息体中,
该第二终端设备发送给该网关设备的第二端口号承载于SIP消息的SDP Answer消息体中。
具体地说,在如上所述确定了目标哈希函数和指纹信息之后,终端设备#A和终端设备#B已经能够确认即将建立的DTLS协议连接,从而,能够在建立DTLS协议连接之前,将所选择用于建立SCTP连接的端口号发送给对方。
因此,在本发明实施例中,终端设备#A可以通过上述Open Logical Channel消息,将其选择的端口号(即,端口号#A)发送给网关设备。网关设备可以通过上述Open LogicalChannel Ack消息,将终端设备#B选择的端口号(即,端口号#B)发送给终端设备#A。
并且,网关设备可以通过上述SIP更新消息的SDP消息体,将终端设备#A选择的端口号(即,端口号#A)发送给终端设备#B。终端设备#B可以通过上述SIP更新响应消息的SDP消息体,将其选择的端口号(即,端口号#B)发送给网关设备。
可选地,该第一终端设备发送给该网关设备的该第一端口号、该目标哈希函数及该指纹信息承载于同一消息,
该网关设备发送给该第二终端设备的该第一端口号、该目标哈希函数及该指纹信息承载于同一消息。
具体地说,终端设备#A和网关设备可以将端口号#A、目标哈希函数和指纹信息承载于同一消息中。
类似地,终端设备#B和网关设备可以将端口号#B和确认信息承载于同一消息中。
从而,能够减少系统的信令交互,提高通信效率。
通过上述交互流程,终端设备#A与终端设备#B能够获知彼此所使用的端口号,从而能够根据该端口号,建立SCTP连接,并进行数据传输,并且,根据该端口号建立SCTP连接以及通过该SCTP连接传输数据的方法和过程可以与现有技术相似,这里,为了避免赘述,省略其详细说明。
需要说明的是,以上列举的终端设备#A与终端设备#B之间协商哈希函数,以建立DTLS连接的过程,但本发明并不限定于此,其他用于建立DTLS连接的参数均可以通过终端设备#A与终端设备#B之间的协商过程确定,并且,该协商过程与上述方法400中过列举的协商过程相似。
根据本发明实施例的用于传输数据的方法,使用H.323协议第一终端设备和使用SIP的第二终端设备经由网关设备来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
图5示出了从第二终端设备(使用H.323协议与上述第一终端设备进行通信的设备,例如,上述终端设备#2)角度描述的根据本发明再一实施例的传输数据的方法500的示意性流程图,该方法500应用于包括第一终端设备、第二终端设备的通信系统中,所述第一终端设备与所述第二终端设备之间通过H.323协议进行通信,如图5所示,所述方法500包括:
S510,该第二终端设备根据该H.323协议,向该第一终端设备发送的第一哈希函数列表,该第一哈希函数列表包括该第二终端设备所支持的至少一个哈希函数;
S520,该第二终端设备根据该H.323协议,接收该第一终端设备发送的目标哈希函数以及与该目标哈希函数相对应的指纹信息,其中,该目标哈希函数是该第一终端设备从该第一哈希函数列表中确定的,且该目标哈希函数属于该第一终端设备所支持的哈希函数;
S530,该第二终端设备根据该目标哈希函数和该指纹信息与该第一终端设备建立数据包传输层安全性协议DTLS协议连接,以通过该DTLS协议连接与第二终端设备之间传输数据。
可选地,在该第二终端设备根据该H.323协议,接收该第一终端设备发送的目标哈希函数以及与该目标哈希函数相对应的指纹信息之前,该方法还包括:
该第二终端设备根据该H.323协议,向该第二终端设备发送角色指示信息,该角色指示信息用于指示该第二终端设备支持的角色,该角色为“主动”或“被动”中的至少一种,以便于该第一终端设备在确定该第一终端设备支持的角色包括“主动”且该第二终端设备支持的角色包括“被动”时,从该第一哈希函数列表中确定目标哈希函数。
可选地,该角色指示信息与该第一哈希函数列表承载于同一消息。
可选地,该目标哈希函数是该第一终端设备根据自身所支持的哈希函数从该第一哈希函数列表中确定的。
可选地,在该第二终端设备根据该H.323协议,接收该第一终端设备发送的目标哈希函数以及与该目标哈希函数相对应的指纹信息之前,该方法还包括:
该第二终端设备根据该H.323协议,接收该第一终端设备发送的第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个哈希函数;
该第二终端设备根据该第二哈希函数列表,确定该第一哈希函数列表,以使该第一哈希函数列表所包括的哈希函数属于该第二哈希函数列表。
可选地,在该第二终端设备根据该目标哈希函数和该指纹信息与该第一终端设备建立DTLS协议连接之前,该方法还包括:
该第二终端设备根据该H.323协议,向该第二终端设备发送的确认信息,该确认信息用于指示该第二终端设备支持该目标哈希函数和该指纹信息。
可选地,该第一哈希函数列表承载于终端能力集消息,以及
该目标哈希函数和该指纹信息承载于开启逻辑信道消息。
可选地,该方法还包括:
该第二终端设备接收该第一终端设备发送的第一端口号,该第一端口号是该DTLS协议连接提供的端口号中该第一终端设备所使用的用于建立流控制传输协议SCTP连接的端口号;
该第二终端设备向该第一终端设备发送第二端口号,该第二端口号是该DTLS协议连接提供的端口号中该第二终端设备所使用的用于建立SCTP连接的端口号;
该第二终端设备根据该第一端口号和该第二端口号与该第一终端设备建立SCTP连接,以通过该SCTP连接与第一终端设备之间传输数据。
可选地,该第一端口号承载于开启逻辑信道消息,以及
该第二端口号承载于开启逻辑信道确认消息。
可选地,该第一端口号与该目标哈希函数及该指纹信息承载于同一消息。
在该方法500中,第二终端设备的动作与上述方法200中终端设备#2的动作相似,第一终端设备的动作与上述方法200中终端设备#1的动作相似,为了避免赘述,省略其详细说明。
根据本发明实施例的用于传输数据的方法,通过使第一终端设备基于H.323协议来与第二终端设备协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
图6示出了从第一终端设备(即,使用H.323协议经由网关设备与使用SIP的终端设备进行通信的设备,例如,上述终端设备#X)角度描述的根据本发明再一实施例的传输数据的方法600的示意性流程图,该方法600应用于包括第一终端设备、第二终端设备和网关设备的通信系统中,该第一终端设备与该网关设备之间通过H.323协议通信,该第二终端设备与该网关设备之间通过会话初始化协议SIP通信,如图6所示,该方法600包括:
S610,该第一终端设备接收该网关设备发送的第一哈希函数列表,其中,该第一哈希函数列表中记录有该第二终端设备发送给该网关设备的至少一个第一哈希函数,该第一哈希函数属于该第二终端设备所支持的哈希函数,从该第一哈希函数列表中确定目标第一哈希函数,并确定与该目标第一哈希函数相对应的第一指纹信息,其中,该目标第一哈希函数属于该第一终端设备支持的哈希函数,该目标第一哈希函数和该第一指纹信息用于对该第一终端设备进行认证,向该网关设备发送该目标第一哈希函数和该第一指纹信息,以便于该网关设备将该目标第一哈希函数和该第一指纹信息发送给该第二终端设备;
S620,该第一终端设备向该网关设备发送第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个第二哈希函数,接收该网关设备发送的目标第二哈希函数和第二指纹信息,其中,该目标第二哈希函数是该第二终端设备从该网关设备发送的该第二哈希函数的部分或全部中确定的,且该目标第二哈希函数属于该第二终端设备支持的哈希函数,该第二指纹信息是与该目标第二哈希函数相对应的指纹信息,该目标第二哈希函数和该第二指纹信息用于对该第二终端设备进行认证;
S630,该第一终端设备根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与第二终端设备之间传输数据。
可选地,该方法还包括:
该第一终端设备向该网关设备发送第一端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号,以便于该网关设备将该第一端口号发送给该第二终端设备;
该第一终端设备接收该网关设备发送的第二端口号,该第二端口号是该第二终端设备发送给该网关设备的,且该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;
该第一终端设备根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第二终端设备之间传输数据。
可选地,在该第一终端设备根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理之前,该方法还包括:
该第一终端设备向该网关设备发送第一角色指示信息,该第一角色指示信息用于指示该第一终端设备支持的角色,该角色为“主动”和“被动”中的至少一种,以便于该网关设备将该第一角色指示信息发送给该第二终端设备;
该第一终端设备接收该网关设备发送的第二角色指示信息,该第二角色指示信息是该第二终端设备发送给该网关设备的,且该第二角色指示信息用于指示该第二终端设备支持的角色;以及
该第一终端设备根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理,包括:
该第一终端设备根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数、该第二指纹信息、该第一终端设备支持的角色和该第二终端设备支持的角色与该第二终端设备进行认证处理。
在该方法600中,第一终端设备的动作与上述方法300中终端设备#X的动作相似,第二终端设备的动作与上述方法300中终端设备#Y的动作相似,网关设备的动作与上述方法300中网关设备的动作相似与上述为了避免赘述,省略其详细说明。
根据本发明实施例的用于传输数据的方法600,使用H.323协议第一终端设备和使用SIP的第二终端设备通过网关设备来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且,而无需网关设备的转发,从而能够减小网关设备的负担,提高系统的传输性能,改善影响用户体验。
图7示出了从第一终端设备(即,使用H.323协议经由网关设备与使用SIP的终端设备进行通信的设备,例如,上述终端设备#A)角度描述的根据本发明再一实施例的传输数据的方法700的示意性流程图,该方法700应用于包括第一终端设备、第二终端设备和网关设备的通信系统中,该第一终端设备与该网关设备之间通过H.323协议通信,该第二终端设备与该网关设备之间通过会话初始化协议SIP通信,如图7所示,该方法700包括:
该第一终端设备向该网关设备发送哈希函数列表,该哈希函数列表包括该第一终端设备所支持的至少一个哈希函数,以便于该网关设备根据该哈希函数列表与该第二终端设备进行协商处理,以从该哈希函数列表中确定至少一个备选哈希函数,其中,该备选哈希函数属于该第二终端设备支持的哈希函数;
该第一终端设备接收该网关设备发送的该备选哈希函数;
该第一终端设备从该备选哈希函数中确定目标哈希函数,并确定与该目标哈希函数相对应的指纹信息;
该第一终端设备向该网关设备发送该目标哈希函数和该指纹信息,以便于该网关设备向该第二终端转发该目标哈希函数和该指纹信息;
该第一终端设备根据该目标哈希函数和该指纹信息,与该第二终端设备建立数据包传输层安全性协议DTLS协议连接,以通过该DTLS协议连接传输数据。
可选地,该备选哈希函数是该网关设备根据该第二终端设备发送的验证消息确定的,该验证消息用于指示该网关设备发送给该第二终端设备的待验证哈希函数是否属于该第二终端设备支持的哈希函数,该待验证哈希函数是该哈希函数列表中的任一哈希函数。
可选地,该备选哈希函数是该网关设备在确定该验证消息携带有该待验证哈希函数时,根据该待验证哈希函数确定的。
可选地,该网关设备发送给该第二终端设备的待验证哈希函数承载于该网关设备发送给该第二终端设备的SIP消息的会话描述协议邀请SDP Offer消息体中,
该第二终端设备发送给该网关设备的验证消息为SIP消息,且该第二终端设备发送给该网关设备的待验证哈希函数承载于在该SIP消息的SDP响应Answer消息体中。
可选地,该第一终端设备发送给该网关设备的哈希函数列表承载于该第一终端设备发送给该网关设备的终端能力集消息中,
该网关设备发送给该第一终端设备的备选哈希函数承载于该网关设备发送给该第一终端设备的终端能力集消息中,
该第一终端设备发送给该网关设备的目标哈希函数和指纹信息承载于该第一终端设备发送给该网关设备的开启逻辑信道消息中。
可选地,在该第一终端设备根据该目标哈希函数和该指纹信息,与该第二终端设备建立数据包传输层安全性协议DTLS协议连接之前,该方法还包括:
该第一终端设备接收该网关设备发送的确认信息,该确认信息是该第二终端设备发送给该网关设备的,该确认信息用于指示该第二终端设备支持该目标哈希函数和该指纹信息;以及
该第一终端设备根据该目标哈希函数和该指纹信息,与该第二终端设备建立数据包传输层安全性协议DTLS协议连接,包括:
该第一终端设备基于该确认信息,根据该目标哈希函数和该指纹信息与该第二终端设备建立DTLS协议连接。
可选地,该网关设备发送给该第一终端设备的确认信息承载于该网关设备发送给该第一终端设备的开启逻辑信道响应消息中。
可选地,该方法还包括:
该第一终端设备向该网关设备发送第一端口号,以便于该网关设备向该第二终端设备转发该第一端口号,该第一端口号是该DTLS协议连接提供的端口号中该第一终端设备所使用的用于建立流控制传输协议SCTP连接的端口号;
该第一终端设备接收该网关设备发送的第二端口号,该第二端口号是该第二终端设备发送给该网关设备的,该第二端口号是该DTLS协议连接提供的端口号中该第二终端设备所使用的用于建立SCTP连接的端口号;
该第一终端设备根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以通过该SCTP连接传输数据。
可选地,该第一终端设备发送给该网关设备的第一端口号承载于开启逻辑信道消息中,
该网关设备发送给该第一终端设备的第二端口号承载于开启逻辑信道响应消息中。
可选地,该第一终端设备发送给该网关设备的该第一端口号、该目标哈希函数及该指纹信息承载于同一消息。
在该方法700中,第一终端设备的动作与上述方法400中终端设备#A的动作相似,第二终端设备的动作与上述方法400中终端设备#B的动作相似,网关设备的动作与上述方法700中网关设备的动作相似与上述为了避免赘述,省略其详细说明。
根据本发明实施例的用于传输数据的方法700,使用H.323协议第一终端设备和使用SIP的第二终端设备通过网关设备来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且,而无需网关设备的转发,从而能够减小网关设备的负担,提高系统的传输性能,改善影响用户体验。
以上,结合图1至图7详细说明了根据本发明实施例的用于传输数据的方法,下面,结合图8至图14详细说明根据本发明实施例的用于传输数据的装置。
图8示出了根据本发明实施例的用于传输数据的装置800的示意性框图。该装置800配置于包括该装置800和第二终端设备的通信系统中,该装置800与该第二终端设备之间通过H.323协议进行通信,该装置800包括:
接收单元810,用于接收该第二终端设备发送的第一哈希函数列表,该第一哈希函数列表包括该第二终端设备所支持的至少一个哈希函数;
处理单元820,用于从该第一哈希函数列表中确定第一哈希函数,并确定与该第一哈希函数相对应的第一指纹信息;
发送单元830,用于向该第二终端设备发送该第一哈希函数和该第一指纹信息,其中,该第一哈希函数属于该装置支持的哈希函数,第一哈希函数和该第一指纹信息用于针对该装置的认证;
该发送单元830还用于向该第二终端设备发送的第二哈希函数列表,该第二哈希函数列表包括该装置所支持的至少一个哈希函数;
该接收单元810还用于接收该第二终端发送的第二哈希函数和第二指纹信息,其中,该第二哈希函数是该第二终端设备从该第二哈希函数列表中确定的,且该第二哈希函数属于该装置支持的哈希函数,该第二指纹信息是与该第二哈希函数相对应的指纹信息,第二哈希函数和该第二指纹信息用于对该第二终端设备进行认证;
该处理单元820还用于根据该第一哈希函数、该第一指纹信息、该第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与第二终端设备之间传输数据。
可选地,该发送单元还用与向该第二终端设备发送第一端口号,该第一端口号是该装置所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号;
该接收单元还用与接收该第二终端设备发送的第二端口号,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;
该处理单元还用于根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第二终端设备之间传输数据。
可选地,该发送单元还用于向该第二终端设备发送第一角色指示信息,该第一角色指示信息用于指示该装置支持的角色,该角色为“主动”和“被动”中的至少一种;
该接收单元还用于接收该第二终端设备发送的第二角色指示信息,该第二角色指示信息用于指示该第二终端设备支持的角色;以及
该处理单元具体用于根据该第一哈希函数、该第一指纹信息、该第二哈希函数、该第二指纹信息、该装置支持的角色和该第二终端设备支持的角色与该第二终端设备进行认证处理。
根据本发明实施例的用于传输数据的装置800可对应于本发明实施例的方法中的第一终端设备(例如,上述终端设备#α),并且,该用于传输数据的装置800中的各单元即模块和上述其他操作和/或功能分别为了实现图1中的方法100的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的用于传输数据的装置,通过使第一终端设备和第二终端设备基于H.323协议来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
图9示出了根据本发明实施例的用于传输数据的装置900的示意性框图。该装置900配置于包括该装置900和第二终端设备的通信系统中,该装置900与第二终端设备之间通过H.323协议进行通信,该装置900包括:
接收单元910,用于接收该第二终端设备发送的第一哈希函数列表,该第一哈希函数列表包括该第二终端设备所支持的至少一个哈希函数;
处理单元920,用于从该第一哈希函数列表中确定目标哈希函数,并确定与该目标哈希函数相对应的指纹信息,其中,该目标哈希函数属于该装置所支持的哈希函数;
发送单元930,用于向该第二终端设备发送该目标哈希函数和该指纹信息;
该处理单元940还用于根据该目标哈希函数和该指纹信息与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与第二终端设备之间传输数据。
可选地,该接收单元还用于接收该第二终端设备发送的角色指示信息,该角色指示信息用于指示该第二终端设备支持的角色,该角色为“主动”和“被动”中的至少一种;
该处理单元还用于根据角色指示信息,确定该第二终端设备支持的角色,并在确定该装置支持的角色包括“主动”且该第二终端设备支持的角色包括“被动”时,从该第一哈希函数列表中确定目标哈希函数。
可选地,该处理单元具体用于根据自身所支持的哈希函数,从该第一哈希函数列表中确定目标哈希函数。
可选地,该发送单元还用于向该第二终端设备发送第二哈希函数列表,该第二哈希函数列表包括该装置所支持的至少一个哈希函数,以便于该第二终端设备根据该第二哈希函数列表,确定该第一哈希函数列表,其中,该第一哈希函数列表所包括的哈希函数属于该第二哈希函数列表;以及
该处理单元具体用于确定该第一哈希函数列表中任一哈希函数为目标哈希函数。
可选地,该发送单元还用于向该第二终端设备发送第一端口号,该第一端口号是该装置所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号;
该接收单元还用于接收该第二终端设备发送的第二端口号,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;
该处理单元还用与根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第二终端设备之间传输数据。
根据本发明实施例的用于传输数据的装置900可对应于本发明实施例的方法中的第一终端设备(例如,上述终端设备#1),并且,该用于传输数据的装置900中的各单元即模块和上述其他操作和/或功能分别为了实现图2中的方法200的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的用于传输数据的装置,通过使第一终端设备和第二终端设备基于H.323协议来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
图10示出了根据本发明实施例的用于传输数据的装置1000的示意性框图。该装置1000配置于包括第一终端设备和该装置1000的通信系统中,该装置1000与第一终端设备之间通过H.323协议进行通信,该装置1000包括:
发送单元1100,用于向该第一终端设备发送的第一哈希函数列表,该第一哈希函数列表包括该装置所支持的至少一个哈希函数;
接收单元1200,用于接收该第一终端设备发送的目标哈希函数以及与该目标哈希函数相对应的指纹信息,其中,该目标哈希函数是该第一终端设备从该第一哈希函数列表中确定的,且该目标哈希函数属于该第一终端设备所支持的哈希函数;
处理单元1300,用于根据该目标哈希函数和该指纹信息与该第一终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与装置之间传输数据。
可选地,该发送单元还用于向该第一终端设备发送角色指示信息,该角色指示信息用于指示该装置支持的角色,该角色为“主动”或“被动”中的至少一种,以便于该第一终端设备在确定该第一终端设备支持的角色包括“主动”且该装置支持的角色包括“被动”时,从该第一哈希函数列表中确定目标哈希函数。
可选地,该目标哈希函数是该第一终端设备根据自身所支持的哈希函数从该第一哈希函数列表中确定的。
可选地,该接收单元还用于接收该第一终端设备发送的第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个哈希函数;
该处理单元还用于根据该第二哈希函数列表,确定该第一哈希函数列表,以使该第一哈希函数列表所包括的哈希函数属于该第二哈希函数列表。
可选地,该接收单元还用于接收该第一终端设备发送的第一端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号;
该发送单元还用于向该第一终端设备发送第二端口号,该第二端口号是该装置所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;
该处理单元还用于根据该第一端口号和该第二端口号与该第一终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第一终端设备之间传输数据。
根据本发明实施例的用于传输数据的装置1000可对应于本发明实施例的方法中的第二终端设备(例如,上述终端设备#2),并且,该用于传输数据的装置1000中的各单元即模块和上述其他操作和/或功能分别为了实现图5中的方法500的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的用于传输数据的装置,通过使第一终端设备和第二终端设备基于H.323协议来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
图11示出了根据本发明实施例的用于传输数据的装置1100的示意性框图。该装置1100配置于包括第一终端设备、第二终端设备和该装置的通信系统中,该装置1100与第一终端设备之间通过H.323协议进行通信,装置1100与第二终端设备之间通过SIP进行通信,该装置1100包括:
接收单元1110,用于接收该第二终端设备发送的至少一个第一哈希函数,该第一哈希函数属于该第二终端设备所支持的哈希函数,并接收该第一终端设备发送的第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个第二哈希函数;
发送单元1120,用于向该第一终端设备发送记录有该第一哈希函数的第一哈希函数列表,并向该第二终端设备发送该第二哈希函数的部分或全部;
该接收单元1110还用于接收该第二终端设备发送的目标第一哈希函数和第一指纹信息,并接收该第二终端设备发送的目标第二哈希函数和第二指纹信息其中,该目标第一哈希函数是该第一终端设备从该第一哈希函数列表中确定的,且该目标第一哈希函数属于该第一终端设备支持的哈希函数,该第一指纹信息是与该目标第一哈希函数相对应的指纹信息,该目标第一哈希函数和第一指纹信息用于对该第一终端设备进行认证,该目标第二哈希函数是该第二终端设备从该第二哈希函数的部分或全部中确定的,且该目标第二哈希函数属于该第二终端设备支持的哈希函数,该第二指纹信息是与该目标第二哈希函数相对应的指纹信息,该目标第二哈希函数和第二指纹信息用于对该第二终端设备进行认证;
该发送单元1120还用于向该第二终端设备发送该目标第一哈希函数和该第一指纹信息,并向该第一终端设备发送该目标第二哈希函数和该第二指纹信息,以便于该第一终端设备和该第二终端设备根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数和该第二指纹信息进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据。
可选地,该接收单元还用于接收该第一终端设备发送的第一角色指示信息及该第二终端设备发送的第二角色指示信息,该第一角色指示信息用于指示该第一终端设备支持的角色,该第二角色指示信息用于指示该第二终端设备支持的角色,该角色为“主动”和“被动”中的至少一种;
该发送单元还用于向该第二终端设备发送该第一角色指示信息,并向该第一终端设备发送该第二角色指示信息,以便于该第一终端设备和该第二终端设备根据该第一哈希函数、该第一指纹信息、该第二哈希函数、该第二指纹信息、该第一终端设备支持的角色和该第二终端设备支持的角色进行认证处理。
可选地,该接收单元还用于接收该第一终端设备发送的第一端口号及该第二终端设备发送的第二端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;
该发送单元还用于向该第二终端设备转发该第一端口号,并向该第一终端设备转发该第二端口号,以便于该第一终端设备和该第二终端设备根据该第一端口号和该第二端口号建立SCTP连接,并通过该SCTP连接传输数据。
根据本发明实施例的用于传输数据的装置1100可对应于本发明实施例的方法中的网关设备,并且,该用于传输数据的装置1100中的各单元即模块和上述其他操作和/或功能分别为了实现图3中的方法300的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的用于传输数据的装置,第一终端设备和第二终端设备经由网关设备协商安全参数,能够在第一终端设备和第二终端设备之间建立基于该安全参数的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,而无需网关设备的转发,从而能够减小网关设备的负担,提高系统的传输性能,改善影响用户体验。并且,根据本发明实施例的用于传输数据的装置,使用H.323协议第一终端设备和使用SIP的第二终端设备经由网关设备来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
图12示出了根据本发明实施例的用于传输数据的装置1200的示意性框图。该装置1200配置于包括该装置1200、第二终端设备和网关设备的通信系统中,该装置1200与网关设备之间通过H.323协议进行通信,网关设备与第二终端设备之间通过SIP进行通信,该装置1200包括:
接收单元1210,用于接收该网关设备发送的第一哈希函数列表,其中,该第一哈希函数列表中记录有该第二终端设备发送给该网关设备的至少一个第一哈希函数,该第一哈希函数属于该第二终端设备所支持的哈希函数;
处理单元1220,用于从该第一哈希函数列表中确定目标第一哈希函数,并确定与该目标第一哈希函数相对应的第一指纹信息,其中,该目标第一哈希函数属于该装置支持的哈希函数,该目标第一哈希函数和该第一指纹信息用于针对该装置的认证;
发送单元1230,用于向该网关设备发送该目标第一哈希函数和该第一指纹信息,以便于该网关设备将该目标第一哈希函数和该第一指纹信息发送给该第二终端设备,用于向该网关设备发送第二哈希函数列表,该第二哈希函数列表包括该装置所支持的至少一个第二哈希函数;
该接收单元1210还用于接收该网关设备发送的目标第二哈希函数和第二指纹信息,其中,该目标第二哈希函数是该第二终端设备从该网关设备发送的该第二哈希函数的部分或全部中确定的,且该目标第二哈希函数属于该第二终端设备支持的哈希函数,该第二指纹信息是与该目标第二哈希函数相对应的指纹信息,该目标第二哈希函数和该第二指纹信息用于对该第二终端设备进行认证;
该处理单元1220还用于根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与第二终端设备之间传输数据。
可选地,该发送单元还用于向该网关设备发送第一端口号,该第一端口号是该装置所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号,以便于该网关设备将该第一端口号发送给该第二终端设备;
该接收单元还用于接收该网关设备发送的第二端口号,该第二端口号是该第二终端设备发送给该网关设备的,且该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;
该处理单元还用于根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第二终端设备之间传输数据。
可选地,该发送单元还用于向该网关设备发送第一角色指示信息,该第一角色指示信息用于指示该装置支持的角色,该角色为“主动”和“被动”中的至少一种,以便于该网关设备将该第一角色指示信息发送给该第二终端设备;
该接收单元还用于接收该网关设备发送的第二角色指示信息,该第二角色指示信息是该第二终端设备发送给该网关设备的,且该第二角色指示信息用于指示该第二终端设备支持的角色;以及
该处理单元具体用于根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数、该第二指纹信息、该装置支持的角色和该第二终端设备支持的角色与该第二终端设备进行认证处理。
根据本发明实施例的用于传输数据的装置1200可对应于本发明实施例的方法中的第一终端设备(例如,上述终端设备#X),并且,该用于传输数据的装置1200中的各单元即模块和上述其他操作和/或功能分别为了实现图6中的方法600的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的用于传输数据的装置,第一终端设备和第二终端设备经由网关设备协商安全参数,能够在第一终端设备和第二终端设备之间建立基于该安全参数的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,而无需网关设备的转发,从而能够减小网关设备的负担,提高系统的传输性能,改善影响用户体验。并且,根据本发明实施例的用于传输数据的装置,使用H.323协议第一终端设备和使用SIP的第二终端设备经由网关设备来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
图13示出了根据本发明实施例的用于传输数据的装置1300的示意性框图。该装置1300配置于包括第一终端设备、第二终端设备和该装置的通信系统中,该装置1300与第一终端设备之间通过H.323协议进行通信,装置1300与第二终端设备之间通过SIP进行通信,该装置1300包括:
接收单元1310,用于接收该第一终端设备发送的哈希函数列表,该哈希函数列表包括该第一终端设备所支持的至少一个哈希函数;
处理单元1320,用于根据该哈希函数列表与该第二终端设备进行协商处理,以从该哈希函数列表中确定至少一个备选哈希函数,其中,该备选哈希函数属于该第二终端设备支持的哈希函数;
发送单元1330,用于向该第一终端设备发送该备选哈希函数,以便于该第一终端设备从该备选哈希函数中确定目标哈希函数,并确定与该目标哈希函数相对应的指纹信息;
该接收单元1310还用于接收该第一终端设备发送的该目标哈希函数和该指纹信息;
该发送单元1330还用于向该第二终端发送该目标哈希函数和该指纹信息,以便于该第一终端设备和该第二终端设备根据该目标哈希函数和该指纹信息进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据。
可选地,该发送单元还用于向该第二终端设备发送待验证哈希函数,该待验证哈希函数是该哈希函数列表中的任一哈希函数;
该接收单元还用于接收该第二终端设备发送的验证消息,该验证消息用于指示该待验证哈希函数是否属于该第二终端设备支持的哈希函数;
该处理单元具体用于在根据该验证消息,确定该待验证哈希函数属于该第二终端设备支持的哈希函数时,将该待验证哈希函数确定为备选哈希函数。
可选地,该处理单元具体用于在确定该验证消息携带有该待验证哈希函数时,确定该待验证哈希函数属于该第二终端设备支持的哈希函数,并将该待验证哈希函数确定为备选哈希函数。
可选地,该接收单元还用于接收该第一终端设备发送的第一端口号及该第二终端设备发送的第二端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;
该发送单元还用于向该第二终端设备转发该第一端口号,并向该第一终端设备转发该第二端口号,以便于该第一终端设备和该第二终端设备根据该第一端口号和该第二端口号建立SCTP连接,并通过该SCTP连接传输数据。
根据本发明实施例的用于传输数据的装置1300可对应于本发明实施例的方法中的网关设备,并且,该用于传输数据的装置1300中的各单元即模块和上述其他操作和/或功能分别为了实现图4中的方法400的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的用于传输数据的装置,第一终端设备和第二终端设备经由网关设备协商安全参数,能够在第一终端设备和第二终端设备之间建立基于该安全参数的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,而无需网关设备的转发,从而能够减小网关设备的负担,提高系统的传输性能,改善影响用户体验。并且,根据本发明实施例的用于传输数据的装置,使用H.323协议第一终端设备和使用SIP的第二终端设备经由网关设备来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
图14示出了根据本发明实施例的用于传输数据的装置1400的示意性框图。该装置1400配置于包括该装置1400、第二终端设备和网关设备的通信系统中,该装置1400与网关设备之间通过H.323协议进行通信,网关设备与第二终端设备之间通过SIP进行通信,该装置1400包括:
发送单元1410,用于向该网关设备发送哈希函数列表,该哈希函数列表包括该装置所支持的至少一个哈希函数,以便于该网关设备根据该哈希函数列表与该第二终端设备进行协商处理,以从该哈希函数列表中确定至少一个备选哈希函数,其中,该备选哈希函数属于该第二终端设备支持的哈希函数;
接收单元1420,用于接收该网关设备发送的该备选哈希函数;
处理单元1430,用于从该备选哈希函数中确定目标哈希函数,并确定与该目标哈希函数相对应的指纹信息;
该发送单元1410还用于向该网关设备发送该目标哈希函数和该指纹信息,以便于该网关设备向该第二终端转发该目标哈希函数和该指纹信息;
该处理单元1430还用于根据该目标哈希函数和该指纹信息,与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据。
可选地,该发送单元还用于向该网关设备发送第一端口号,以便于该网关设备向该第二终端设备转发该第一端口号,该第一端口号是该装置所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号;
该接收单元还用于接收该网关设备发送的第二端口号,该第二端口号是该第二终端设备发送给该网关设备的,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;
该处理单元还用于根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以通过该SCTP连接传输数据。
根据本发明实施例的用于传输数据的装置1400可对应于本发明实施例的方法中的第一终端设备(例如,上述终端设备#A),并且,该用于传输数据的装置1400中的各单元即模块和上述其他操作和/或功能分别为了实现图7中的方法700的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的用于传输数据的装置,第一终端设备和第二终端设备经由网关设备协商安全参数,能够在第一终端设备和第二终端设备之间建立基于该安全参数的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,而无需网关设备的转发,从而能够减小网关设备的负担,提高系统的传输性能,改善影响用户体验。并且,根据本发明实施例的用于传输数据的装置,使用H.323协议第一终端设备和使用SIP的第二终端设备经由网关设备来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
以上,结合图1至图7详细说明了根据本发明实施例的用于传输数据的方法,下面,结合图15至图21详细说明根据本发明实施例的用于传输数据的设备。
图15示出了根据本发明实施例的用于传输数据的设备1500的示意性框图。该设备1500与第二终端设备之间通过H.323协议进行通信,该设备1500包括:
总线1510;
与所述总线1510相连的处理器1520;
与所述总线1510相连的存储器1530;
与所述总线1510相连的收发器1540;
其中,所述处理器1520通过所述总线1510,调用所述存储器1530中存储的程序,以用于控制该收发器接收该第二终端设备发送的第一哈希函数列表,该第一哈希函数列表包括该第二终端设备所支持的至少一个哈希函数,从该第一哈希函数列表中确定第一哈希函数;
用于确定与该第一哈希函数相对应的第一指纹信息;
用于控制该收发器向该第二终端设备发送该第一哈希函数和该第一指纹信息,其中,该第一哈希函数属于该设备1500支持的哈希函数,第一哈希函数和该第一指纹信息用于针对该设备1500的认证;
用于控制该收发器向该第二终端设备发送的第二哈希函数列表,该第二哈希函数列表包括该设备1500所支持的至少一个哈希函数;
用于控制该收发器接收该第二终端发送的第二哈希函数和第二指纹信息,其中,该第二哈希函数是该第二终端设备从该第二哈希函数列表中确定的,且该第二哈希函数属于该设备1500支持的哈希函数,该第二指纹信息是与该第二哈希函数相对应的指纹信息,第二哈希函数和该第二指纹信息用于对该第二终端设备进行认证;
用于根据该第一哈希函数、该第一指纹信息、该第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与第二终端设备之间传输数据。
可选地,该处理器还用于控制该收发器向该第二终端设备发送第一端口号,该第一端口号是该设备1500所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号;
用于控制该收发器接收该第二终端设备发送的第二端口号,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;
用于根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第二终端设备之间传输数据。
可选地,该处理器还用于控制该收发器向该第二终端设备发送第一角色指示信息,该第一角色指示信息用于指示该设备1500支持的角色,该角色为“主动”和“被动”中的至少一种;
用于控制该收发器接收该第二终端设备发送的第二角色指示信息,该第二角色指示信息用于指示该第二终端设备支持的角色;以及
用于根据该第一哈希函数、该第一指纹信息、该第二哈希函数、该第二指纹信息、该设备1500支持的角色和该第二终端设备支持的角色与该第二终端设备进行认证处理。
具体的应用中,设备1500可以嵌入或者本身可以就是例如视频会议终端等终端设备,还可以包括容纳发射电路和接收电路的载体,以允许设备1500和远程位置之间进行数据发射和接收。
总线除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚明起见,在图中将各种总线都标为总线1510。
处理器可以实现或者执行本发明方法实施例中的公开的各步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器,解码器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用解码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。
应理解,在本发明实施例中,该处理器1520可以是中央处理单元(CentralProcessing Unit,简称为“CPU”),该处理器1520还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器1530可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器1530的一部分还可以包括非易失性随机存取存储器。例如,存储器1530还可以存储设备类型的信息。
在实现过程中,上述方法的各步骤可以通过处理器1520中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1530,处理器1520读取存储器1530中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
根据本发明实施例的用于传输数据的设备1500可对应于本发明实施例的方法中的第一终端设备(例如,上述终端设备#α),并且,该用于传输数据的设备1500中的各单元即模块和上述其他操作和/或功能分别为了实现图1中的方法100的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的用于传输数据的设备,通过使第一终端设备和第二终端设备基于H.323协议来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
图16示出了根据本发明实施例的用于传输数据的设备1600的示意性框图。该设备1600与第二终端设备之间通过H.323协议进行通信,该设备1600包括:
总线1610;
与所述总线1610相连的处理器1620;
与所述总线1610相连的存储器1630;
与所述总线1610相连的收发器1640;
其中,所述处理器1620通过所述总线1610,调用所述存储器1630中存储的程序,以用于控制该收发器接收该第二终端设备发送的第一哈希函数列表,该第一哈希函数列表包括该第二终端设备所支持的至少一个哈希函数;
用于从该第一哈希函数列表中确定目标哈希函数,并确定与该目标哈希函数相对应的指纹信息,其中,该目标哈希函数属于该设备1600所支持的哈希函数;
用于控制该收发器向该第二终端设备发送该目标哈希函数和该指纹信息;
用于根据该目标哈希函数和该指纹信息与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与第二终端设备之间传输数据。
可选地,该处理器还用于控制该收发器接收该第二终端设备发送的角色指示信息,该角色指示信息用于指示该第二终端设备支持的角色,该角色为“主动”和“被动”中的至少一种;
用于根据角色指示信息,确定该第二终端设备支持的角色,并在确定该设备1600支持的角色包括“主动”且该第二终端设备支持的角色包括“被动”时,从该第一哈希函数列表中确定目标哈希函数。
可选地,该处理器具体用于根据自身所支持的哈希函数,从该第一哈希函数列表中确定目标哈希函数。
可选地,该处理器还用于控制该收发器向该第二终端设备发送第二哈希函数列表,该第二哈希函数列表包括该设备1600所支持的至少一个哈希函数,以便于该第二终端设备根据该第二哈希函数列表,确定该第一哈希函数列表,其中,该第一哈希函数列表所包括的哈希函数属于该第二哈希函数列表;以及
用于确定该第一哈希函数列表中任一哈希函数为目标哈希函数。
可选地,该处理器还用于控制该收发器向该第二终端设备发送第一端口号,该第一端口号是该设备1600所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号;
用于控制该收发器接收该第二终端设备发送的第二端口号,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;
用于根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第二终端设备之间传输数据。
具体的应用中,设备1600可以嵌入或者本身可以就是例如视频会议终端等终端设备,还可以包括容纳发射电路和接收电路的载体,以允许设备1600和远程位置之间进行数据发射和接收。
总线除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚明起见,在图中将各种总线都标为总线1610。
处理器可以实现或者执行本发明方法实施例中的公开的各步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器,解码器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用解码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。
应理解,在本发明实施例中,该处理器1620可以是中央处理单元(CentralProcessing Unit,简称为“CPU”),该处理器1620还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器1630可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器1630的一部分还可以包括非易失性随机存取存储器。例如,存储器1630还可以存储设备类型的信息。
在实现过程中,上述方法的各步骤可以通过处理器1620中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1630,处理器1620读取存储器1630中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
根据本发明实施例的用于传输数据的设备1600可对应于本发明实施例的方法中的第一终端设备(例如,上述终端设备#1),并且,该用于传输数据的设备1600中的各单元即模块和上述其他操作和/或功能分别为了实现图2中的方法200的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的用于传输数据的设备,通过使第一终端设备和第二终端设备基于H.323协议来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
图17示出了根据本发明实施例的用于传输数据的设备1700的示意性框图。该设备1700与第一终端设备之间通过H.323协议进行通信,该设备1700包括:
总线1710;
与所述总线1710相连的处理器1720;
与所述总线1710相连的存储器1730;
与所述总线1710相连的收发器1740;
其中,所述处理器1720通过所述总线1710,调用所述存储器1730中存储的程序,以用于控制该收发器向该第一终端设备发送的第一哈希函数列表,该第一哈希函数列表包括该设备1700所支持的至少一个哈希函数;
用于控制该收发器接收该第一终端设备发送的目标哈希函数以及与该目标哈希函数相对应的指纹信息,其中,该目标哈希函数是该第一终端设备从该第一哈希函数列表中确定的,且该目标哈希函数属于该第一终端设备所支持的哈希函数;
用于根据该目标哈希函数和该指纹信息与该第一终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与设备1700之间传输数据。
可选地,该处理器还用于控制该收发器向该第一终端设备发送角色指示信息,该角色指示信息用于指示该设备1700支持的角色,该角色为“主动”或“被动”中的至少一种,以便于该第一终端设备在确定该第一终端设备支持的角色包括“主动”且该设备1700支持的角色包括“被动”时,从该第一哈希函数列表中确定目标哈希函数。
可选地,该目标哈希函数是该第一终端设备根据自身所支持的哈希函数从该第一哈希函数列表中确定的。
可选地,该处理器还用于控制该收发器接收该第一终端设备发送的第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个哈希函数;
用于根据该第二哈希函数列表,确定该第一哈希函数列表,以使该第一哈希函数列表所包括的哈希函数属于该第二哈希函数列表。
可选地,该处理器还用于控制该收发器接收该第一终端设备发送的第一端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号;
用于控制该收发器向该第一终端设备发送第二端口号,该第二端口号是该设备1700所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;
用于根据该第一端口号和该第二端口号与该第一终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第一终端设备之间传输数据。
具体的应用中,设备1700可以嵌入或者本身可以就是例如视频会议终端等终端设备,还可以包括容纳发射电路和接收电路的载体,以允许设备1700和远程位置之间进行数据发射和接收。
总线除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚明起见,在图中将各种总线都标为总线1710。
处理器可以实现或者执行本发明方法实施例中的公开的各步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器,解码器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用解码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。
应理解,在本发明实施例中,该处理器1720可以是中央处理单元(CentralProcessing Unit,简称为“CPU”),该处理器1720还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器1730可以包括只读存储器和随机存取存储器,并向处理器20提供指令和数据。存储器1730的一部分还可以包括非易失性随机存取存储器。例如,存储器1030还可以存储设备类型的信息。
在实现过程中,上述方法的各步骤可以通过处理器1720中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1730,处理器1720读取存储器1730中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
根据本发明实施例的用于传输数据的设备1700可对应于本发明实施例的方法中的第二终端设备(例如,上述终端设备#2),并且,该用于传输数据的设备1700中的各单元即模块和上述其他操作和/或功能分别为了实现图5中的方法500的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的用于传输数据的设备,通过使第一终端设备和第二终端设备基于H.323协议来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
图18示出了根据本发明实施例的用于传输数据的设备1800的示意性框图。该设备1800与第一终端设备之间通过H.323协议进行通信,设备1800与第二终端设备之间通过SIP进行通信,该设备1800包括:
总线1810;
与所述总线1810相连的处理器1820;
与所述总线1810相连的存储器1830;
与所述总线1810相连的收发器1840;
其中,所述处理器1820通过所述总线1810,调用所述存储器1830中存储的程序,以用于控制该收发器接收该第二终端设备发送的至少一个第一哈希函数,该第一哈希函数属于该第二终端设备所支持的哈希函数;
用于控制该收发器向该第一终端设备发送记录有该第一哈希函数的第一哈希函数列表;
用于控制该收发器接收该第二终端设备发送的目标第一哈希函数和第一指纹信息,其中,该目标第一哈希函数是该第一终端设备从该第一哈希函数列表中确定的,且该目标第一哈希函数属于该第一终端设备支持的哈希函数,该第一指纹信息是与该目标第一哈希函数相对应的指纹信息,该目标第一哈希函数和第一指纹信息用于对该第一终端设备进行认证;
用于控制该收发器接收该第一终端设备发送的第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个第二哈希函数;
用于控制该收发器向该第二终端设备发送该第二哈希函数的部分或全部;
用于控制该收发器接收该第二终端设备发送的目标第二哈希函数和第二指纹信息,其中,该目标第二哈希函数是该第二终端设备从该第二哈希函数的部分或全部中确定的,且该目标第二哈希函数属于该第二终端设备支持的哈希函数,该第二指纹信息是与该目标第二哈希函数相对应的指纹信息,该目标第二哈希函数和第二指纹信息用于对该第二终端设备进行认证;
用于控制该收发器向该第二终端设备发送该目标第一哈希函数和该第一指纹信息,并向该第一终端设备发送该目标第二哈希函数和该第二指纹信息,以便于该第一终端设备和该第二终端设备根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数和该第二指纹信息进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据。
可选地,该处理器还用于控制该收发器接收该第一终端设备发送的第一角色指示信息及该第二终端设备发送的第二角色指示信息,该第一角色指示信息用于指示该第一终端设备支持的角色,该第二角色指示信息用于指示该第二终端设备支持的角色,该角色为“主动”和“被动”中的至少一种;
用于控制该收发器向该第二终端设备发送该第一角色指示信息,并向该第一终端设备发送该第二角色指示信息,以便于该第一终端设备和该第二终端设备根据该第一哈希函数、该第一指纹信息、该第二哈希函数、该第二指纹信息、该第一终端设备支持的角色和该第二终端设备支持的角色进行认证处理。
可选地,该处理器还用于控制该收发器接收该第一终端设备发送的第一端口号及该第二终端设备发送的第二端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;
用于控制该收发器向该第二终端设备转发该第一端口号,并向该第一终端设备转发该第二端口号,以便于该第一终端设备和该第二终端设备根据该第一端口号和该第二端口号建立SCTP连接,并通过该SCTP连接传输数据。
具体的应用中,设备1800可以嵌入或者本身可以就是例如网关等网关设备,还可以包括容纳发射电路和接收电路的载体,以允许设备1800和远程位置之间进行数据发射和接收。
总线除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚明起见,在图中将各种总线都标为总线1810。
处理器可以实现或者执行本发明方法实施例中的公开的各步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器,解码器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用解码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。
应理解,在本发明实施例中,该处理器1820可以是中央处理单元(CentralProcessing Unit,简称为“CPU”),该处理器1820还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器1830可以包括只读存储器和随机存取存储器,并向处理器1820提供指令和数据。存储器1830的一部分还可以包括非易失性随机存取存储器。例如,存储器1830还可以存储设备类型的信息。
在实现过程中,上述方法的各步骤可以通过处理器1820中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1830,处理器1820读取存储器1830中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
根据本发明实施例的用于传输数据的设备1800可对应于本发明实施例的方法中的网关设备,并且,该用于传输数据的设备1800中的各单元即模块和上述其他操作和/或功能分别为了实现图3中的方法300的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的用于传输数据的设备,第一终端设备和第二终端设备经由网关设备协商安全参数,能够在第一终端设备和第二终端设备之间建立基于该安全参数的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,而无需网关设备的转发,从而能够减小网关设备的负担,提高系统的传输性能,改善影响用户体验。并且,根据本发明实施例的用于传输数据的设备,使用H.323协议第一终端设备和使用SIP的第二终端设备经由网关设备来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
图19示出了根据本发明实施例的用于传输数据的设备1900的示意性框图。该设备1900与网关设备之间通过H.323协议进行通信,网关设备与第二终端设备之间通过SIP进行通信,该设备1900包括:
总线1910;
与所述总线1910相连的处理器1920;
与所述总线1910相连的存储器1930;
与所述总线1910相连的收发器1940;
其中,所述处理器1920通过所述总线1910,调用所述存储器1930中存储的程序,以用于控制该收发器接收该网关设备发送的第一哈希函数列表,其中,该第一哈希函数列表中记录有该第二终端设备发送给该网关设备的至少一个第一哈希函数,该第一哈希函数属于该第二终端设备所支持的哈希函数;
用于从该第一哈希函数列表中确定目标第一哈希函数,并确定与该目标第一哈希函数相对应的第一指纹信息,其中,该目标第一哈希函数属于该设备1900支持的哈希函数,该目标第一哈希函数和该第一指纹信息用于针对该设备1900的认证;
用于控制该收发器向该网关设备发送该目标第一哈希函数和该第一指纹信息,以便于该网关设备将该目标第一哈希函数和该第一指纹信息发送给该第二终端设备;
用于控制该收发器向该网关设备发送第二哈希函数列表,该第二哈希函数列表包括该设备1900所支持的至少一个第二哈希函数;
用于控制该收发器接收该网关设备发送的目标第二哈希函数和第二指纹信息,其中,该目标第二哈希函数是该第二终端设备从该网关设备发送的该第二哈希函数的部分或全部中确定的,且该目标第二哈希函数属于该第二终端设备支持的哈希函数,该第二指纹信息是与该目标第二哈希函数相对应的指纹信息,该目标第二哈希函数和该第二指纹信息用于对该第二终端设备进行认证;
用于根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与第二终端设备之间传输数据。
可选地,该处理器还用于控制该收发器向该网关设备发送第一端口号,该第一端口号是该设备1900所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号,以便于该网关设备将该第一端口号发送给该第二终端设备;
用于控制该收发器接收该网关设备发送的第二端口号,该第二端口号是该第二终端设备发送给该网关设备的,且该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;
用于根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以在该DTLS协议连接上,通过该SCTP连接与第二终端设备之间传输数据。
可选地,该处理器还用于控制该收发器向该网关设备发送第一角色指示信息,该第一角色指示信息用于指示该设备1900支持的角色,该角色为“主动”和“被动”中的至少一种,以便于该网关设备将该第一角色指示信息发送给该第二终端设备;
用于控制该收发器接收该网关设备发送的第二角色指示信息,该第二角色指示信息是该第二终端设备发送给该网关设备的,且该第二角色指示信息用于指示该第二终端设备支持的角色;以及
用于根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数、该第二指纹信息、该设备1900支持的角色和该第二终端设备支持的角色与该第二终端设备进行认证处理。
具体的应用中,设备1900可以嵌入或者本身可以就是例如视频会议终端等终端设备,还可以包括容纳发射电路和接收电路的载体,以允许设备1900和远程位置之间进行数据发射和接收。
总线除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚明起见,在图中将各种总线都标为总线1910。
处理器可以实现或者执行本发明方法实施例中的公开的各步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器,解码器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用解码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。
应理解,在本发明实施例中,该处理器1920可以是中央处理单元(CentralProcessing Unit,简称为“CPU”),该处理器1920还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器1930可以包括只读存储器和随机存取存储器,并向处理器1920提供指令和数据。存储器1930的一部分还可以包括非易失性随机存取存储器。例如,存储器1930还可以存储设备类型的信息。
在实现过程中,上述方法的各步骤可以通过处理器1920中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1930,处理器1920读取存储器1930中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
根据本发明实施例的用于传输数据的设备1900可对应于本发明实施例的方法中的第一终端设备(例如,上述终端设备#A),并且,该用于传输数据的设备1900中的各单元即模块和上述其他操作和/或功能分别为了实现图6中的方法600的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的用于传输数据的设备,第一终端设备和第二终端设备经由网关设备协商安全参数,能够在第一终端设备和第二终端设备之间建立基于该安全参数的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,而无需网关设备的转发,从而能够减小网关设备的负担,提高系统的传输性能,改善影响用户体验。并且,根据本发明实施例的用于传输数据的设备,使用H.323协议第一终端设备和使用SIP的第二终端设备经由网关设备来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
图20示出了根据本发明实施例的用于传输数据的设备2000的示意性框图。该设备2000与第一终端设备之间通过H.323协议进行通信,设备2000与第二终端设备之间通过SIP进行通信,该设备2000包括:
总线2010;
与所述总线2010相连的处理器2020;
与所述总线2010相连的存储器2030;
与所述总线2010相连的收发器2040;
其中,所述处理器2020通过所述总线2010,调用所述存储器2030中存储的程序,以用于控制该收发器接收该第一终端设备发送的哈希函数列表,该哈希函数列表包括该第一终端设备所支持的至少一个哈希函数;
用于根据该哈希函数列表与该第二终端设备进行协商处理,以从该哈希函数列表中确定至少一个备选哈希函数,其中,该备选哈希函数属于该第二终端设备支持的哈希函数;
用于控制该收发器向该第一终端设备发送该备选哈希函数,以便于该第一终端设备从该备选哈希函数中确定目标哈希函数,并确定与该目标哈希函数相对应的指纹信息;
用于控制该收发器接收该第一终端设备发送的该目标哈希函数和该指纹信息;
用于控制该收发器向该第二终端发送该目标哈希函数和该指纹信息,以便于该第一终端设备和该第二终端设备根据该目标哈希函数和该指纹信息进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据。
可选地,该处理器具体用于控制该收发器向该第二终端设备发送待验证哈希函数,该待验证哈希函数是该哈希函数列表中的任一哈希函数;
用于控制该收发器接收该第二终端设备发送的验证消息,该验证消息用于指示该待验证哈希函数是否属于该第二终端设备支持的哈希函数;
用于在根据该验证消息,确定该待验证哈希函数属于该第二终端设备支持的哈希函数时,将该待验证哈希函数确定为备选哈希函数。
可选地,该处理器具体用于在确定该验证消息携带有该待验证哈希函数时,确定该待验证哈希函数属于该第二终端设备支持的哈希函数,并将该待验证哈希函数确定为备选哈希函数。
可选地,该处理器还用于控制该收发器接收该第一终端设备发送的第一角色指示信息及该第二终端设备发送的第二角色指示信息,该第一角色指示信息用于指示该第一终端设备支持的角色,该第二角色指示信息用于指示该第二终端设备支持的角色,该角色为“主动”和“被动”中的至少一种;
用于控制该收发器向该第二终端设备发送该第一角色指示信息,并向该第一终端设备发送该第二角色指示信息,以便于该第一终端设备和该第二终端设备根据该第一哈希函数、该第一指纹信息、该第二哈希函数、该第二指纹信息、该第一终端设备支持的角色和该第二终端设备支持的角色进行认证处理。
可选地,该处理器还用于控制该收发器接收该第一终端设备发送的第一端口号及该第二终端设备发送的第二端口号,该第一端口号是该第一终端设备所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;
用于控制该收发器向该第二终端设备转发该第一端口号,并向该第一终端设备转发该第二端口号,以便于该第一终端设备和该第二终端设备根据该第一端口号和该第二端口号建立SCTP连接,并通过该SCTP连接传输数据。
具体的应用中,设备2000可以嵌入或者本身可以就是例如网关等网关设备,还可以包括容纳发射电路和接收电路的载体,以允许设备2000和远程位置之间进行数据发射和接收。
总线除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚明起见,在图中将各种总线都标为总线2010。
处理器可以实现或者执行本发明方法实施例中的公开的各步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器,解码器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用解码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。
应理解,在本发明实施例中,该处理器2020可以是中央处理单元(CentralProcessing Unit,简称为“CPU”),该处理器2020还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器2030可以包括只读存储器和随机存取存储器,并向处理器2020提供指令和数据。存储器2030的一部分还可以包括非易失性随机存取存储器。例如,存储器2030还可以存储设备类型的信息。
在实现过程中,上述方法的各步骤可以通过处理器2020中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器2030,处理器2020读取存储器2030中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
根据本发明实施例的用于传输数据的设备2000可对应于本发明实施例的方法中的网关设备,并且,该用于传输数据的设备2000中的各单元即模块和上述其他操作和/或功能分别为了实现图4中的方法400的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的用于传输数据的设备,第一终端设备和第二终端设备经由网关设备协商安全参数,能够在第一终端设备和第二终端设备之间建立基于该安全参数的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,而无需网关设备的转发,从而能够减小网关设备的负担,提高系统的传输性能,改善影响用户体验。并且,根据本发明实施例的用于传输数据的设备,使用H.323协议第一终端设备和使用SIP的第二终端设备经由网关设备来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
图21示出了根据本发明实施例的用于传输数据的设备2100的示意性框图。该设备2100与网关设备之间通过H.323协议进行通信,网关设备与第二终端设备之间通过SIP进行通信,该设备2100包括:
总线2110;
与所述总线2110相连的处理器2120;
与所述总线2110相连的存储器2130;
与所述总线2110相连的收发器2140;
其中,所述处理器2120通过所述总线2110,调用所述存储器2130中存储的程序,以用于控制该收发器向该网关设备发送哈希函数列表,该哈希函数列表包括该设备2100所支持的至少一个哈希函数,以便于该网关设备根据该哈希函数列表与该第二终端设备进行协商处理,以从该哈希函数列表中确定至少一个备选哈希函数,其中,该备选哈希函数属于该第二终端设备支持的哈希函数;
用于控制该收发器接收该网关设备发送的该备选哈希函数;
用于从该备选哈希函数中确定目标哈希函数,并确定与该目标哈希函数相对应的指纹信息;
用于控制该收发器向该网关设备发送该目标哈希函数和该指纹信息,以便于该网关设备向该第二终端转发该目标哈希函数和该指纹信息;
用于根据该目标哈希函数和该指纹信息,与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据。
可选地,该处理器还用于控制该收发器向该网关设备发送第一端口号,以便于该网关设备向该第二终端设备转发该第一端口号,该第一端口号是该设备2100所使用的用于建立基于该DTLS协议连接的流控制传输协议SCTP连接的端口号;
用于控制该收发器接收该网关设备发送的第二端口号,该第二端口号是该第二终端设备发送给该网关设备的,该第二端口号是该第二终端设备所使用的用于建立基于该DTLS协议连接的SCTP连接的端口号;
用于根据该第一端口号和该第二端口号与该第二终端设备建立SCTP连接,以通过该SCTP连接传输数据。
具体的应用中,设备2100可以嵌入或者本身可以就是例如视频会议终端等终端设备,还可以包括容纳发射电路和接收电路的载体,以允许设备2100和远程位置之间进行数据发射和接收。
总线除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚明起见,在图中将各种总线都标为总线2110。
处理器可以实现或者执行本发明方法实施例中的公开的各步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器,解码器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用解码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。
应理解,在本发明实施例中,该处理器2120可以是中央处理单元(CentralProcessing Unit,简称为“CPU”),该处理器2120还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器2130可以包括只读存储器和随机存取存储器,并向处理器2120提供指令和数据。存储器2130的一部分还可以包括非易失性随机存取存储器。例如,存储器2130还可以存储设备类型的信息。
在实现过程中,上述方法的各步骤可以通过处理器2120中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器2130,处理器2120读取存储器2130中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
根据本发明实施例的用于传输数据的设备2100可对应于本发明实施例的方法中的第一终端设备(例如,上述终端设备#A),并且,该用于传输数据的设备2100中的各单元即模块和上述其他操作和/或功能分别为了实现图7中的方法700的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的用于传输数据的设备,第一终端设备和第二终端设备经由网关设备协商安全参数,能够在第一终端设备和第二终端设备之间建立基于该安全参数的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,而无需网关设备的转发,从而能够减小网关设备的负担,提高系统的传输性能,改善影响用户体验。并且,根据本发明实施例的用于传输数据的设备,使用H.323协议第一终端设备和使用SIP的第二终端设备经由网关设备来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
图22示出了根据本发明实施例的用于传输数据的系统2200的示意性架构图。如图22所示,该系统2200包括第一终端设备2210、第二终端设备2220和网关设备2230,该第一终端设备2210与该网关设备2230之间通过H.323协议通信,该第二终端设备2220与该网关设备2230之间通过会话初始化协议SIP通信,其中,
该网关设备2230用于,接收该第二终端设备发送的至少一个第一哈希函数,该第一哈希函数属于该第二终端设备所支持的哈希函数,向该第一终端设备发送记录有该第一哈希函数的第一哈希函数列表,接收该第一终端设备发送的目标第一哈希函数和第一指纹信息,其中,该目标第一哈希函数是该第一终端设备从该第一哈希函数列表中确定的,且该目标第一哈希函数属于该第一终端设备支持的哈希函数,该第一指纹信息是与该目标第一哈希函数相对应的指纹信息,该目标第一哈希函数和第一指纹信息用于对该第一终端设备进行认证,用于接收该第一终端设备发送的第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个第二哈希函数,向该第二终端设备发送该第二哈希函数的部分或全部,接收该第二终端设备发送的目标第二哈希函数和第二指纹信息,其中,该目标第二哈希函数是该第二终端设备从该第二哈希函数的部分或全部中确定的,且该目标第二哈希函数属于该第二终端设备支持的哈希函数,该第二指纹信息是与该目标第二哈希函数相对应的指纹信息,该目标第二哈希函数和第二指纹信息用于对该第二终端设备进行认证,用于向该第二终端设备发送该目标第一哈希函数和该第一指纹信息,并向该第一终端设备发送该目标第二哈希函数和该第二指纹信息,以便于该第一终端设备和该第二终端设备根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数和该第二指纹信息进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据;
该第一终端设备2210用于接收该网关设备发送的第一哈希函数列表,其中,该第一哈希函数列表中记录有该第二终端设备发送给该网关设备的至少一个第一哈希函数,该第一哈希函数属于该第二终端设备所支持的哈希函数,从该第一哈希函数列表中确定目标第一哈希函数,并确定与该目标第一哈希函数相对应的第一指纹信息,其中,该目标第一哈希函数属于该第一终端设备支持的哈希函数,该目标第一哈希函数和该第一指纹信息用于对该第一终端设备进行认证,向该网关设备发送确定的该目标第一哈希函数和该第一指纹信息,以便于该网关设备将该目标第一哈希函数和该第一指纹信息发送给该第二终端设备,用于向该网关设备发送第二哈希函数列表,该第二哈希函数列表包括该第一终端设备所支持的至少一个第二哈希函数,接收该网关设备发送的目标第二哈希函数和第二指纹信息,其中,该目标第二哈希函数是该第二终端设备从该网关设备发送的该第二哈希函数的部分或全部中确定的,且该目标第二哈希函数属于该第二终端设备支持的哈希函数,该第二指纹信息是与该目标第二哈希函数相对应的指纹信息,该目标第二哈希函数和该第二指纹信息用于对该第二终端设备进行认证,用于根据该目标第一哈希函数、该第一指纹信息、该目标第二哈希函数和该第二指纹信息与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接与第二终端设备之间传输数据。
根据本发明实施例的网关设备2230可对应于本发明实施例的方法中的网关设备,并且,该网关设备2230中的各单元即模块和上述其他操作和/或功能分别为了实现图3中的方法300的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的第一终端设备2210可对应于本发明实施例的方法中的第一终端设备(例如,上述终端设备#X),并且,该第一终端设备2210中的各单元即模块和上述其他操作和/或功能分别为了实现图6中的方法600的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的用于传输数据的系统,第一终端设备和第二终端设备经由网关设备协商安全参数,能够在第一终端设备和第二终端设备之间建立基于该安全参数的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,而无需网关设备的转发,从而能够减小网关设备的负担,提高系统的传输性能,改善影响用户体验。并且,根据本发明实施例的用于传输数据的设备,使用H.323协议第一终端设备和使用SIP的第二终端设备经由网关设备来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
图23示出了根据本发明实施例的用于传输数据的系统2300的示意性架构图。如图23所示,该系统2300包括第一终端设备2310、第二终端设备2320和网关设备2330,该第一终端设备2310与该网关设备2330之间通过H.323协议通信,该第二终端设备2320与该网关设备2330之间通过会话初始化协议SIP通信,其中,
该网关设备2330用于,接收该第一终端设备发送的哈希函数列表,该哈希函数列表包括该第一终端设备所支持的至少一个哈希函数,用于根据该哈希函数列表与该第二终端设备进行协商处理,以从该哈希函数列表中确定至少一个备选哈希函数,其中,该备选哈希函数属于该第二终端设备支持的哈希函数,用于向该第一终端设备发送该备选哈希函数,以便于该第一终端设备从该备选哈希函数中确定目标哈希函数,并确定与该目标哈希函数相对应的指纹信息,用于接收该第一终端设备发送的该目标哈希函数和该指纹信息,并向该第二终端发送该目标哈希函数和该指纹信息,以便于该第一终端设备和该第二终端设备根据该目标哈希函数和该指纹信息进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据;
该第一终端设备2310用于,向该网关设备发送哈希函数列表,该哈希函数列表包括该第一终端设备所支持的至少一个哈希函数,以便于该网关设备根据该哈希函数列表与该第二终端设备进行协商处理,以从该哈希函数列表中确定至少一个备选哈希函数,其中,该备选哈希函数属于该第二终端设备支持的哈希函数,用于接收该网关设备发送的该备选哈希函数,用于从该备选哈希函数中确定目标哈希函数,并确定与该目标哈希函数相对应的指纹信息,用于向该网关设备发送该目标哈希函数和该指纹信息,以便于该网关设备向该第二终端转发该目标哈希函数和该指纹信息,用于根据该目标哈希函数和该指纹信息,与该第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过该DTLS协议连接传输数据。
根据本发明实施例的网关设备2330可对应于本发明实施例的方法中的网关设备,并且,该网关设备2330中的各单元即模块和上述其他操作和/或功能分别为了实现图4中的方法400的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的第一终端设备2310可对应于本发明实施例的方法中的第一终端设备(例如,上述终端设备#X),并且,该第一终端设备2310中的各单元即模块和上述其他操作和/或功能分别为了实现图7中的方法700的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的用于传输数据的系统,第一终端设备和第二终端设备经由网关设备协商安全参数,能够在第一终端设备和第二终端设备之间建立基于该安全参数的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,而无需网关设备的转发,从而能够减小网关设备的负担,提高系统的传输性能,改善影响用户体验。并且,根据本发明实施例的用于传输数据的设备,使用H.323协议第一终端设备和使用SIP的第二终端设备经由网关设备来协商哈希函数和指纹信息,能够在第一终端设备和第二终端设备之间建立基于该哈希函数和指纹信息的DTLS协议连接,从而在第一终端设备和第二终端设备能够通过该DTLS协议连接传输数据,进而能够有效利用DTLS协议的安全认证机制提高传输数据的安全性,并且能够使DTLS协议适用于使用H.323协议的终端设备,进而提高终端设备的可靠性和实用性,改善用户体验。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (52)

1.一种用于传输数据的方法,其特征在于,应用于包括第一终端设备、第二终端设备的通信系统中,所述第一终端设备与所述第二终端设备之间通过H.323协议进行通信,所述方法包括:
所述第一终端设备接收所述第二终端设备发送的第一哈希函数列表,所述第一哈希函数列表包括所述第二终端设备所支持的至少一个哈希函数,从所述第一哈希函数列表中确定第一哈希函数,并确定与所述第一哈希函数相对应的第一指纹信息,向所述第二终端设备发送所述第一哈希函数和所述第一指纹信息,其中,所述第一哈希函数属于所述第一终端设备支持的哈希函数,第一哈希函数和所述第一指纹信息用于对所述第一终端设备进行认证;
所述第一终端设备向所述第二终端设备发送第二哈希函数列表,所述第二哈希函数列表包括所述第一终端设备所支持的至少一个哈希函数,接收所述第二终端发送的第二哈希函数和第二指纹信息,其中,所述第二哈希函数是所述第二终端设备从所述第二哈希函数列表中确定的,且所述第二哈希函数属于所述第二终端设备支持的哈希函数,所述第二指纹信息是与所述第二哈希函数相对应的指纹信息,第二哈希函数和所述第二指纹信息用于对所述第二终端设备进行认证;
所述第一终端设备根据所述第一哈希函数、所述第一指纹信息、所述第二哈希函数和所述第二指纹信息与所述第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过所述DTLS协议连接与第二终端设备之间传输数据。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一终端设备向所述第二终端设备发送第一端口号,所述第一端口号是所述第一终端设备所使用的用于建立基于所述DTLS协议连接的流控制传输协议SCTP连接的端口号;
所述第一终端设备接收所述第二终端设备发送的第二端口号,所述第二端口号是所述第二终端设备所使用的用于建立基于所述DTLS协议连接的SCTP连接的端口号;
所述第一终端设备根据所述第一端口号和所述第二端口号与所述第二终端设备建立SCTP连接,以在所述DTLS协议连接上,通过所述SCTP连接与第二终端设备之间传输数据。
3.根据权利要求1或2所述的方法,其特征在于,在所述第一终端设备根据所述第一哈希函数、所述第一指纹信息、所述第二哈希函数和所述第二指纹信息与所述第二终端设备进行认证处理之前,所述方法还包括:
所述第一终端设备向所述第二终端设备发送第一角色指示信息,所述第一角色指示信息用于指示所述第一终端设备支持的角色,所述角色为“主动”和“被动”中的至少一种;
所述第一终端设备接收所述第二终端设备发送的第二角色指示信息,所述第二角色指示信息用于指示所述第二终端设备支持的角色;以及
所述第一终端设备根据所述第一哈希函数、所述第一指纹信息、所述第二哈希函数和所述第二指纹信息与所述第二终端设备进行认证处理,包括:
所述第一终端设备根据所述第一哈希函数、所述第一指纹信息、所述第二哈希函数、所述第二指纹信息、所述第一终端设备支持的角色和所述第二终端设备支持的角色与所述第二终端设备进行认证处理。
4.一种用于传输数据的方法,其特征在于,应用于包括第一终端设备、第二终端设备的通信系统中,所述第一终端设备与所述第二终端设备之间通过H.323协议进行通信,所述方法包括:
所述第一终端设备接收所述第二终端设备发送的第一哈希函数列表,所述第一哈希函数列表包括所述第二终端设备所支持的至少一个哈希函数;
所述第一终端设备从所述第一哈希函数列表中确定目标哈希函数,并确定与所述目标哈希函数相对应的指纹信息,其中,所述目标哈希函数属于所述第一终端设备所支持的哈希函数;
所述第一终端设备向所述第二终端设备发送所述目标哈希函数和所述指纹信息;
所述第一终端设备根据所述目标哈希函数和所述指纹信息与所述第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过所述DTLS协议连接与第二终端设备之间传输数据。
5.根据权利要求4所述的方法,其特征在于,在所述第一终端设备从所述第一哈希函数列表中确定目标哈希函数之前,所述方法还包括:
所述第一终端设备接收所述第二终端设备发送的角色指示信息,所述角色指示信息用于指示所述第二终端设备支持的角色,所述角色为“主动”和“被动”中的至少一种;
所述第一终端设备根据角色指示信息,确定所述第二终端设备支持的角色;以及
所述第一终端设备从所述第一哈希函数列表中确定目标哈希函数,包括:
所述第一终端设备在确定所述第一终端设备支持的角色包括“主动”且所述第二终端设备支持的角色包括“被动”时,从所述第一哈希函数列表中确定目标哈希函数。
6.根据权利要求4或5所述的方法,其特征在于,所述第一终端设备从所述第一哈希函数列表中确定目标哈希函数,包括:
所述第一终端设备根据自身所支持的哈希函数,从所述第一哈希函数列表中确定目标哈希函数。
7.根据权利要求4或5所述的方法,其特征在于,在所述第一终端设备从所述第一哈希函数列表中确定目标哈希函数之前,所述方法还包括:
所述第一终端设备向所述第二终端设备发送第二哈希函数列表,所述第二哈希函数列表包括所述第一终端设备所支持的至少一个哈希函数,以便于所述第二终端设备根据所述第二哈希函数列表,确定所述第一哈希函数列表,其中,所述第一哈希函数列表所包括的哈希函数属于所述第二哈希函数列表;以及
所述第一终端设备从所述第一哈希函数列表中确定目标哈希函数,包括:
所述第一终端设备确定所述第一哈希函数列表中任一哈希函数为目标哈希函数。
8.根据权利要求4或5所述的方法,其特征在于,所述方法还包括:
所述第一终端设备向所述第二终端设备发送第一端口号,所述第一端口号是所述第一终端设备所使用的用于建立基于所述DTLS协议连接的流控制传输协议SCTP连接的端口号;
所述第一终端设备接收所述第二终端设备发送的第二端口号,所述第二端口号是所述第二终端设备所使用的用于建立基于所述DTLS协议连接的SCTP连接的端口号;
所述第一终端设备根据所述第一端口号和所述第二端口号与所述第二终端设备建立SCTP连接,以在所述DTLS协议连接上,通过所述SCTP连接与第二终端设备之间传输数据。
9.一种用于传输数据的方法,其特征在于,应用于包括第一终端设备、第二终端设备的通信系统中,所述第一终端设备与所述第二终端设备之间通过H.323协议进行通信,所述方法包括:
所述第二终端设备向所述第一终端设备发送第一哈希函数列表,所述第一哈希函数列表包括所述第二终端设备所支持的至少一个哈希函数;
所述第二终端设备接收所述第一终端设备发送的目标哈希函数以及与所述目标哈希函数相对应的指纹信息,其中,所述目标哈希函数是所述第一终端设备从所述第一哈希函数列表中确定的,且所述目标哈希函数属于所述第一终端设备所支持的哈希函数;
所述第二终端设备根据所述目标哈希函数和所述指纹信息与所述第一终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过所述DTLS协议连接与第二终端设备之间传输数据。
10.根据权利要求9所述的方法,其特征在于,在所述第二终端设备接收所述第一终端设备发送的目标哈希函数以及与所述目标哈希函数相对应的指纹信息之前,所述方法还包括:
所述第二终端设备向所述第一终端设备发送角色指示信息,所述角色指示信息用于指示所述第二终端设备支持的角色,所述角色为“主动”或“被动”中的至少一种,以便于所述第一终端设备在确定所述第一终端设备支持的角色包括“主动”且所述第二终端设备支持的角色包括“被动”时,从所述第一哈希函数列表中确定目标哈希函数。
11.根据权利要求9或10所述的方法,其特征在于,所述目标哈希函数是所述第一终端设备根据自身所支持的哈希函数从所述第一哈希函数列表中确定的。
12.根据权利要求9或10所述的方法,其特征在于,在所述第二终端设备接收所述第一终端设备发送的目标哈希函数以及与所述目标哈希函数相对应的指纹信息之前,所述方法还包括:
所述第二终端设备接收所述第一终端设备发送的第二哈希函数列表,所述第二哈希函数列表包括所述第一终端设备所支持的至少一个哈希函数;
所述第二终端设备根据所述第二哈希函数列表,确定所述第一哈希函数列表,以使所述第一哈希函数列表所包括的哈希函数属于所述第二哈希函数列表。
13.根据权利要求9或10所述的方法,其特征在于,所述方法还包括:
所述第二终端设备接收所述第一终端设备发送的第一端口号,所述第一端口号是所述第一终端设备所使用的用于建立基于所述DTLS协议连接的流控制传输协议SCTP连接的端口号;
所述第二终端设备向所述第一终端设备发送第二端口号,所述第二端口号是所述第二终端设备所使用的用于建立基于所述DTLS协议连接的SCTP连接的端口号;
所述第二终端设备根据所述第一端口号和所述第二端口号与所述第一终端设备建立SCTP连接,以在所述DTLS协议连接上,通过所述SCTP连接与第一终端设备之间传输数据。
14.一种用于传输数据的方法,其特征在于,应用于包括第一终端设备、第二终端设备和网关设备的通信系统中,所述第一终端设备与所述网关设备之间通过H.323协议通信,所述第二终端设备与所述网关设备之间通过会话初始化协议SIP通信,所述方法包括:
所述网关设备接收所述第二终端设备发送的至少一个第一哈希函数,所述第一哈希函数属于所述第二终端设备所支持的哈希函数,向所述第一终端设备发送记录有所述第一哈希函数的第一哈希函数列表,接收所述第一终端设备发送的目标第一哈希函数和第一指纹信息,其中,所述目标第一哈希函数是所述第一终端设备从所述第一哈希函数列表中确定的,且所述目标第一哈希函数属于所述第一终端设备支持的哈希函数,所述第一指纹信息是与所述目标第一哈希函数相对应的指纹信息,所述目标第一哈希函数和第一指纹信息用于对所述第一终端设备进行认证;
所述网关设备接收所述第一终端设备发送的第二哈希函数列表,所述第二哈希函数列表包括所述第一终端设备所支持的至少一个第二哈希函数,向所述第二终端设备发送所述第二哈希函数的部分或全部,接收所述第二终端设备发送的目标第二哈希函数和第二指纹信息,其中,所述目标第二哈希函数是所述第二终端设备从所述第二哈希函数的部分或全部中确定的,且所述目标第二哈希函数属于所述第二终端设备支持的哈希函数,所述第二指纹信息是与所述目标第二哈希函数相对应的指纹信息,所述目标第二哈希函数和第二指纹信息用于对所述第二终端设备进行认证;
所述网关设备向所述第二终端设备发送所述目标第一哈希函数和所述第一指纹信息,并向所述第一终端设备发送所述目标第二哈希函数和所述第二指纹信息,以便于所述第一终端设备和所述第二终端设备根据所述目标第一哈希函数、所述第一指纹信息、所述目标第二哈希函数和所述第二指纹信息进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过所述DTLS协议连接传输数据。
15.根据权利要求14所述的方法,其特征在于,所述方法还包括:
所述网关设备接收所述第一终端设备发送的第一角色指示信息及所述第二终端设备发送的第二角色指示信息,所述第一角色指示信息用于指示所述第一终端设备支持的角色,所述第二角色指示信息用于指示所述第二终端设备支持的角色,所述角色为“主动”和“被动”中的至少一种;
所述网关设备向所述第二终端设备发送所述第一角色指示信息,并向所述第一终端设备发送所述第二角色指示信息,以便于所述第一终端设备和所述第二终端设备根据所述第一哈希函数、所述第一指纹信息、所述第二哈希函数、所述第二指纹信息、所述第一终端设备支持的角色和所述第二终端设备支持的角色进行认证处理。
16.根据权利要求14或15所述的方法,其特征在于,所述方法还包括:
所述网关设备接收所述第一终端设备发送的第一端口号及所述第二终端设备发送的第二端口号,所述第一端口号是所述第一终端设备所使用的用于建立基于所述DTLS协议连接的流控制传输协议SCTP连接的端口号,所述第二端口号是所述第二终端设备所使用的用于建立基于所述DTLS协议连接的SCTP连接的端口号;
所述网关设备向所述第二终端设备转发所述第一端口号,并向所述第一终端设备转发所述第二端口号,以便于所述第一终端设备和所述第二终端设备根据所述第一端口号和所述第二端口号建立SCTP连接,并通过所述SCTP连接传输数据。
17.一种用于传输数据的方法,其特征在于,应用于包括第一终端设备、第二终端设备和网关设备的通信系统中,所述第一终端设备与所述网关设备之间通过H.323协议通信,所述第二终端设备与所述网关设备之间通过会话初始化协议SIP通信,所述方法包括:
所述第一终端设备接收所述网关设备发送的第一哈希函数列表,其中,所述第一哈希函数列表中记录有所述第二终端设备发送给所述网关设备的至少一个第一哈希函数,所述第一哈希函数属于所述第二终端设备所支持的哈希函数,从所述第一哈希函数列表中确定目标第一哈希函数,并确定与所述目标第一哈希函数相对应的第一指纹信息,其中,所述目标第一哈希函数属于所述第一终端设备支持的哈希函数,所述目标第一哈希函数和所述第一指纹信息用于对所述第一终端设备进行认证,向所述网关设备发送所述目标第一哈希函数和所述第一指纹信息,以便于所述网关设备将所述目标第一哈希函数和所述第一指纹信息发送给所述第二终端设备;
所述第一终端设备向所述网关设备发送第二哈希函数列表,所述第二哈希函数列表包括所述第一终端设备所支持的至少一个第二哈希函数,接收所述网关设备发送的目标第二哈希函数和第二指纹信息,其中,所述目标第二哈希函数是所述第二终端设备从所述网关设备发送的所述第二哈希函数的部分或全部中确定的,且所述目标第二哈希函数属于所述第二终端设备支持的哈希函数,所述第二指纹信息是与所述目标第二哈希函数相对应的指纹信息,所述目标第二哈希函数和所述第二指纹信息用于对所述第二终端设备进行认证;
所述第一终端设备根据所述目标第一哈希函数、所述第一指纹信息、所述目标第二哈希函数和所述第二指纹信息与所述第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过所述DTLS协议连接与第二终端设备之间传输数据。
18.根据权利要求17所述的方法,其特征在于,所述方法还包括:
所述第一终端设备向所述网关设备发送第一端口号,所述第一端口号是所述第一终端设备所使用的用于建立基于所述DTLS协议连接的流控制传输协议SCTP连接的端口号,以便于所述网关设备将所述第一端口号发送给所述第二终端设备;
所述第一终端设备接收所述网关设备发送的第二端口号,所述第二端口号是所述第二终端设备发送给所述网关设备的,且所述第二端口号是所述第二终端设备所使用的用于建立基于所述DTLS协议连接的SCTP连接的端口号;
所述第一终端设备根据所述第一端口号和所述第二端口号与所述第二终端设备建立SCTP连接,以在所述DTLS协议连接上,通过所述SCTP连接与第二终端设备之间传输数据。
19.根据权利要求17或18所述的方法,其特征在于,在所述第一终端设备根据所述目标第一哈希函数、所述第一指纹信息、所述目标第二哈希函数和所述第二指纹信息与所述第二终端设备进行认证处理之前,所述方法还包括:
所述第一终端设备向所述网关设备发送第一角色指示信息,所述第一角色指示信息用于指示所述第一终端设备支持的角色,所述角色为“主动”和“被动”中的至少一种,以便于所述网关设备将所述第一角色指示信息发送给所述第二终端设备;
所述第一终端设备接收所述网关设备发送的第二角色指示信息,所述第二角色指示信息是所述第二终端设备发送给所述网关设备的,且所述第二角色指示信息用于指示所述第二终端设备支持的角色;以及
所述第一终端设备根据所述目标第一哈希函数、所述第一指纹信息、所述目标第二哈希函数和所述第二指纹信息与所述第二终端设备进行认证处理,包括:
所述第一终端设备根据所述目标第一哈希函数、所述第一指纹信息、所述目标第二哈希函数、所述第二指纹信息、所述第一终端设备支持的角色和所述第二终端设备支持的角色与所述第二终端设备进行认证处理。
20.一种用于传输数据的方法,其特征在于,应用于包括第一终端设备、第二终端设备和网关设备的通信系统中,所述第一终端设备与所述网关设备之间通过H.323协议通信,所述第二终端设备与所述网关设备之间通过会话初始化协议SIP通信,所述方法包括:
所述网关设备接收所述第一终端设备发送的哈希函数列表,所述哈希函数列表包括所述第一终端设备所支持的至少一个哈希函数;
所述网关设备根据所述哈希函数列表与所述第二终端设备进行协商处理,以从所述哈希函数列表中确定至少一个备选哈希函数,其中,所述备选哈希函数属于所述第二终端设备支持的哈希函数;
所述网关设备向所述第一终端设备发送所述备选哈希函数,以便于所述第一终端设备从所述备选哈希函数中确定目标哈希函数,并确定与所述目标哈希函数相对应的指纹信息;
所述网关设备接收所述第一终端设备发送的所述目标哈希函数和所述指纹信息,并向所述第二终端发送所述目标哈希函数和所述指纹信息,以便于所述第一终端设备和所述第二终端设备根据所述目标哈希函数和所述指纹信息进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过所述DTLS协议连接传输数据。
21.根据权利要求20所述的方法,其特征在于,所述网关设备根据所述哈希函数列表与所述第二终端设备进行协商处理,以从所述哈希函数列表中确定至少一个备选哈希函数,包括:
所述网关设备向所述第二终端设备发送待验证哈希函数,所述待验证哈希函数是所述哈希函数列表中的任一哈希函数;
所述网关设备接收所述第二终端设备发送的验证消息,所述验证消息用于指示所述待验证哈希函数是否属于所述第二终端设备支持的哈希函数;
所述网关设备在根据所述验证消息,确定所述待验证哈希函数属于所述第二终端设备支持的哈希函数时,将所述待验证哈希函数确定为备选哈希函数。
22.根据权利要求21所述的方法,其特征在于,所述网关设备在根据所述验证消息,确定所述待验证哈希函数属于所述第二终端设备支持的哈希函数时,将所述待验证哈希函数确定为备选哈希函数,包括:
所述网关设备在确定所述验证消息携带有所述待验证哈希函数时,确定所述待验证哈希函数属于所述第二终端设备支持的哈希函数,并将所述待验证哈希函数确定为备选哈希函数。
23.根据权利要求20至22中任一项所述的方法,其特征在于,所述方法还包括:
所述网关设备接收所述第一终端设备发送的第一端口号及所述第二终端设备发送的第二端口号,所述第一端口号是所述第一终端设备所使用的用于建立基于所述DTLS协议连接的流控制传输协议SCTP连接的端口号,所述第二端口号是所述第二终端设备所使用的用于建立基于所述DTLS协议连接的SCTP连接的端口号;
所述网关设备向所述第二终端设备转发所述第一端口号,并向所述第一终端设备转发所述第二端口号,以便于所述第一终端设备和所述第二终端设备根据所述第一端口号和所述第二端口号建立SCTP连接,并通过所述SCTP连接传输数据。
24.一种用于传输数据的方法,其特征在于,应用于包括第一终端设备、第二终端设备和网关设备的通信系统中,所述第一终端设备与所述网关设备之间通过H.323协议通信,所述第二终端设备与所述网关设备之间通过会话初始化协议SIP通信,所述方法包括:
所述第一终端设备向所述网关设备发送哈希函数列表,所述哈希函数列表包括所述第一终端设备所支持的至少一个哈希函数,以便于所述网关设备根据所述哈希函数列表与所述第二终端设备进行协商处理,以从所述哈希函数列表中确定至少一个备选哈希函数,其中,所述备选哈希函数属于所述第二终端设备支持的哈希函数;
所述第一终端设备接收所述网关设备发送的所述备选哈希函数;
所述第一终端设备从所述备选哈希函数中确定目标哈希函数,并确定与所述目标哈希函数相对应的指纹信息;
所述第一终端设备向所述网关设备发送所述目标哈希函数和所述指纹信息,以便于所述网关设备向所述第二终端转发所述目标哈希函数和所述指纹信息;
所述第一终端设备根据所述目标哈希函数和所述指纹信息,与所述第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过所述DTLS协议连接传输数据。
25.根据权利要求24所述的方法,其特征在于,所述方法还包括:
所述第一终端设备向所述网关设备发送第一端口号,以便于所述网关设备向所述第二终端设备转发所述第一端口号,所述第一端口号是所述第一终端设备所使用的用于建立基于所述DTLS协议连接的流控制传输协议SCTP连接的端口号;
所述第一终端设备接收所述网关设备发送的第二端口号,所述第二端口号是所述第二终端设备发送给所述网关设备的,所述第二端口号是所述第二终端设备所使用的用于建立基于所述DTLS协议连接的SCTP连接的端口号;
所述第一终端设备根据所述第一端口号和所述第二端口号与所述第二终端设备建立SCTP连接,以通过所述SCTP连接传输数据。
26.一种用于传输数据的装置,其特征在于,配置于包括所述装置和第二终端设备的通信系统中,所述装置与所述第二终端设备之间通过H.323协议进行通信,所述装置包括:
接收单元,用于接收所述第二终端设备发送的第一哈希函数列表,所述第一哈希函数列表包括所述第二终端设备所支持的至少一个哈希函数;
处理单元,用于从所述第一哈希函数列表中确定第一哈希函数,并确定与所述第一哈希函数相对应的第一指纹信息;
发送单元,用于向所述第二终端设备发送所述第一哈希函数和所述第一指纹信息,其中,所述第一哈希函数属于所述装置支持的哈希函数,第一哈希函数和所述第一指纹信息用于针对所述装置的认证;
所述发送单元还用于向所述第二终端设备发送第二哈希函数列表,所述第二哈希函数列表包括所述装置所支持的至少一个哈希函数;
所述接收单元还用于接收所述第二终端发送的第二哈希函数和第二指纹信息,其中,所述第二哈希函数是所述第二终端设备从所述第二哈希函数列表中确定的,且所述第二哈希函数属于所述第二终端设备支持的哈希函数,所述第二指纹信息是与所述第二哈希函数相对应的指纹信息,第二哈希函数和所述第二指纹信息用于对所述第二终端设备进行认证;
所述处理单元还用于根据所述第一哈希函数、所述第一指纹信息、所述第二哈希函数和所述第二指纹信息与所述第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过所述DTLS协议连接与第二终端设备之间传输数据。
27.根据权利要求26所述的装置,其特征在于,所述发送单元还用与向所述第二终端设备发送第一端口号,所述第一端口号是所述装置所使用的用于建立基于所述DTLS协议连接的流控制传输协议SCTP连接的端口号;
所述接收单元还用与接收所述第二终端设备发送的第二端口号,所述第二端口号是所述第二终端设备所使用的用于建立基于所述DTLS协议连接的SCTP连接的端口号;
所述处理单元还用于根据所述第一端口号和所述第二端口号与所述第二终端设备建立SCTP连接,以在所述DTLS协议连接上,通过所述SCTP连接与第二终端设备之间传输数据。
28.根据权利要求26或27所述的装置,其特征在于,所述发送单元还用于向所述第二终端设备发送第一角色指示信息,所述第一角色指示信息用于指示所述装置支持的角色,所述角色为“主动”和“被动”中的至少一种;
所述接收单元还用于接收所述第二终端设备发送的第二角色指示信息,所述第二角色指示信息用于指示所述第二终端设备支持的角色;以及
所述处理单元具体用于根据所述第一哈希函数、所述第一指纹信息、所述第二哈希函数、所述第二指纹信息、所述装置支持的角色和所述第二终端设备支持的角色与所述第二终端设备进行认证处理。
29.一种用于传输数据的装置,其特征在于,配置于包括所述装置和第二终端设备的通信系统中,所述装置与所述第二终端设备之间通过H.323协议进行通信,所述装置包括:
接收单元,用于接收所述第二终端设备发送的第一哈希函数列表,所述第一哈希函数列表包括所述第二终端设备所支持的至少一个哈希函数;
处理单元,用于从所述第一哈希函数列表中确定目标哈希函数,并确定与所述目标哈希函数相对应的指纹信息,其中,所述目标哈希函数属于所述装置所支持的哈希函数;
发送单元,用于向所述第二终端设备发送所述目标哈希函数和所述指纹信息;
所述处理单元还用于根据所述目标哈希函数和所述指纹信息与所述第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过所述DTLS协议连接与第二终端设备之间传输数据。
30.根据权利要求29所述的装置,其特征在于,所述接收单元还用于接收所述第二终端设备发送的角色指示信息,所述角色指示信息用于指示所述第二终端设备支持的角色,所述角色为“主动”和“被动”中的至少一种;
所述处理单元还用于根据角色指示信息,确定所述第二终端设备支持的角色,并在确定所述装置支持的角色包括“主动”且所述第二终端设备支持的角色包括“被动”时,从所述第一哈希函数列表中确定目标哈希函数。
31.根据权利要求29或30所述的装置,其特征在于,所述处理单元具体用于根据自身所支持的哈希函数,从所述第一哈希函数列表中确定目标哈希函数。
32.根据权利要求29或30所述的装置,其特征在于,所述发送单元还用于向所述第二终端设备发送第二哈希函数列表,所述第二哈希函数列表包括所述装置所支持的至少一个哈希函数,以便于所述第二终端设备根据所述第二哈希函数列表,确定所述第一哈希函数列表,其中,所述第一哈希函数列表所包括的哈希函数属于所述第二哈希函数列表;以及
所述处理单元具体用于确定所述第一哈希函数列表中任一哈希函数为目标哈希函数。
33.根据权利要求29或30所述的装置,其特征在于,所述发送单元还用于向所述第二终端设备发送第一端口号,所述第一端口号是所述装置所使用的用于建立基于所述DTLS协议连接的流控制传输协议SCTP连接的端口号;
所述接收单元还用于接收所述第二终端设备发送的第二端口号,所述第二端口号是所述第二终端设备所使用的用于建立基于所述DTLS协议连接的SCTP连接的端口号;
所述处理单元还用与根据所述第一端口号和所述第二端口号与所述第二终端设备建立SCTP连接,以在所述DTLS协议连接上,通过所述SCTP连接与第二终端设备之间传输数据。
34.一种用于传输数据的装置,其特征在于,配置于包括第一终端设备和所述装置的通信系统中,所述第一终端设备与所述装置之间通过H.323协议进行通信,所述装置包括:
发送单元,用于向所述第一终端设备发送第一哈希函数列表,所述第一哈希函数列表包括所述装置所支持的至少一个哈希函数;
接收单元,用于接收所述第一终端设备发送的目标哈希函数以及与所述目标哈希函数相对应的指纹信息,其中,所述目标哈希函数是所述第一终端设备从所述第一哈希函数列表中确定的,且所述目标哈希函数属于所述第一终端设备所支持的哈希函数;
处理单元,用于根据所述目标哈希函数和所述指纹信息与所述第一终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过所述DTLS协议连接与装置之间传输数据。
35.根据权利要求34所述的装置,其特征在于,所述发送单元还用于向所述第一终端设备发送角色指示信息,所述角色指示信息用于指示所述装置支持的角色,所述角色为“主动”或“被动”中的至少一种,以便于所述第一终端设备在确定所述第一终端设备支持的角色包括“主动”且所述装置支持的角色包括“被动”时,从所述第一哈希函数列表中确定目标哈希函数。
36.根据权利要求34或35所述的装置,其特征在于,所述目标哈希函数是所述第一终端设备根据自身所支持的哈希函数从所述第一哈希函数列表中确定的。
37.根据权利要求34或35所述的装置,其特征在于,所述接收单元还用于接收所述第一终端设备发送的第二哈希函数列表,所述第二哈希函数列表包括所述第一终端设备所支持的至少一个哈希函数;
所述处理单元还用于根据所述第二哈希函数列表,确定所述第一哈希函数列表,以使所述第一哈希函数列表所包括的哈希函数属于所述第二哈希函数列表。
38.根据权利要求34或35所述的装置,其特征在于,所述接收单元还用于接收所述第一终端设备发送的第一端口号,所述第一端口号是所述第一终端设备所使用的用于建立基于所述DTLS协议连接的流控制传输协议SCTP连接的端口号;
所述发送单元还用于向所述第一终端设备发送第二端口号,所述第二端口号是所述装置所使用的用于建立基于所述DTLS协议连接的SCTP连接的端口号;
所述处理单元还用于根据所述第一端口号和所述第二端口号与所述第一终端设备建立SCTP连接,以在所述DTLS协议连接上,通过所述SCTP连接与第一终端设备之间传输数据。
39.一种用于传输数据的装置,其特征在于,配置于包括第一终端设备、第二终端设备和所述装置的通信系统中,所述第一终端设备与所述装置之间通过H.323协议通信,所述第二终端设备与所述装置之间通过会话初始化协议SIP通信,所述装置包括:
接收单元,用于接收所述第二终端设备发送的至少一个第一哈希函数,所述第一哈希函数属于所述第二终端设备所支持的哈希函数,并接收所述第一终端设备发送的第二哈希函数列表,所述第二哈希函数列表包括所述第一终端设备所支持的至少一个第二哈希函数;
发送单元,用于向所述第一终端设备发送记录有所述第一哈希函数的第一哈希函数列表,并向所述第二终端设备发送所述第二哈希函数的部分或全部;
所述接收单元还用于接收所述第一终端设备发送的目标第一哈希函数和第一指纹信息,并接收所述第二终端设备发送的目标第二哈希函数和第二指纹信息其中,所述目标第一哈希函数是所述第一终端设备从所述第一哈希函数列表中确定的,且所述目标第一哈希函数属于所述第一终端设备支持的哈希函数,所述第一指纹信息是与所述目标第一哈希函数相对应的指纹信息,所述目标第一哈希函数和第一指纹信息用于对所述第一终端设备进行认证,所述目标第二哈希函数是所述第二终端设备从所述第二哈希函数的部分或全部中确定的,且所述目标第二哈希函数属于所述第二终端设备支持的哈希函数,所述第二指纹信息是与所述目标第二哈希函数相对应的指纹信息,所述目标第二哈希函数和第二指纹信息用于对所述第二终端设备进行认证;
所述发送单元还用于向所述第二终端设备发送所述目标第一哈希函数和所述第一指纹信息,并向所述第一终端设备发送所述目标第二哈希函数和所述第二指纹信息,以便于所述第一终端设备和所述第二终端设备根据所述目标第一哈希函数、所述第一指纹信息、所述目标第二哈希函数和所述第二指纹信息进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过所述DTLS协议连接传输数据。
40.根据权利要求39所述的装置,其特征在于,所述接收单元还用于接收所述第一终端设备发送的第一角色指示信息及所述第二终端设备发送的第二角色指示信息,所述第一角色指示信息用于指示所述第一终端设备支持的角色,所述第二角色指示信息用于指示所述第二终端设备支持的角色,所述角色为“主动”和“被动”中的至少一种;
所述发送单元还用于向所述第二终端设备发送所述第一角色指示信息,并向所述第一终端设备发送所述第二角色指示信息,以便于所述第一终端设备和所述第二终端设备根据所述第一哈希函数、所述第一指纹信息、所述第二哈希函数、所述第二指纹信息、所述第一终端设备支持的角色和所述第二终端设备支持的角色进行认证处理。
41.根据权利要求39或40所述的装置,其特征在于,所述接收单元还用于接收所述第一终端设备发送的第一端口号及所述第二终端设备发送的第二端口号,所述第一端口号是所述第一终端设备所使用的用于建立基于所述DTLS协议连接的流控制传输协议SCTP连接的端口号,所述第二端口号是所述第二终端设备所使用的用于建立基于所述DTLS协议连接的SCTP连接的端口号;
所述发送单元还用于向所述第二终端设备转发所述第一端口号,并向所述第一终端设备转发所述第二端口号,以便于所述第一终端设备和所述第二终端设备根据所述第一端口号和所述第二端口号建立SCTP连接,并通过所述SCTP连接传输数据。
42.一种用于传输数据的装置,其特征在于,配置于包括所述装置、第二终端设备和网关设备的通信系统中,所述装置与所述网关设备之间通过H.323协议通信,所述第二终端设备与所述网关设备之间通过会话初始化协议SIP通信,所述装置包括:
接收单元,用于接收所述网关设备发送的第一哈希函数列表,其中,所述第一哈希函数列表中记录有所述第二终端设备发送给所述网关设备的至少一个第一哈希函数,所述第一哈希函数属于所述第二终端设备所支持的哈希函数;
处理单元,用于从所述第一哈希函数列表中确定目标第一哈希函数,并确定与所述目标第一哈希函数相对应的第一指纹信息,其中,所述目标第一哈希函数属于所述装置支持的哈希函数,所述目标第一哈希函数和所述第一指纹信息用于针对所述装置的认证;
发送单元,用于向所述网关设备发送所述目标第一哈希函数和所述第一指纹信息,以便于所述网关设备将所述目标第一哈希函数和所述第一指纹信息发送给所述第二终端设备,用于向所述网关设备发送第二哈希函数列表,所述第二哈希函数列表包括所述装置所支持的至少一个第二哈希函数;
所述接收单元还用于接收所述网关设备发送的目标第二哈希函数和第二指纹信息,其中,所述目标第二哈希函数是所述第二终端设备从所述网关设备发送的所述第二哈希函数的部分或全部中确定的,且所述目标第二哈希函数属于所述第二终端设备支持的哈希函数,所述第二指纹信息是与所述目标第二哈希函数相对应的指纹信息,所述目标第二哈希函数和所述第二指纹信息用于对所述第二终端设备进行认证;
所述处理单元还用于根据所述目标第一哈希函数、所述第一指纹信息、所述目标第二哈希函数和所述第二指纹信息与所述第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过所述DTLS协议连接与第二终端设备之间传输数据。
43.根据权利要求42所述的装置,其特征在于,所述发送单元还用于向所述网关设备发送第一端口号,所述第一端口号是所述装置所使用的用于建立基于所述DTLS协议连接的流控制传输协议SCTP连接的端口号,以便于所述网关设备将所述第一端口号发送给所述第二终端设备;
所述接收单元还用于接收所述网关设备发送的第二端口号,所述第二端口号是所述第二终端设备发送给所述网关设备的,且所述第二端口号是所述第二终端设备所使用的用于建立基于所述DTLS协议连接的SCTP连接的端口号;
所述处理单元还用于根据所述第一端口号和所述第二端口号与所述第二终端设备建立SCTP连接,以在所述DTLS协议连接上,通过所述SCTP连接与第二终端设备之间传输数据。
44.根据权利要求42或43所述的装置,其特征在于,所述发送单元还用于向所述网关设备发送第一角色指示信息,所述第一角色指示信息用于指示所述装置支持的角色,所述角色为“主动”和“被动”中的至少一种,以便于所述网关设备将所述第一角色指示信息发送给所述第二终端设备;
所述接收单元还用于接收所述网关设备发送的第二角色指示信息,所述第二角色指示信息是所述第二终端设备发送给所述网关设备的,且所述第二角色指示信息用于指示所述第二终端设备支持的角色;以及
所述处理单元具体用于根据所述目标第一哈希函数、所述第一指纹信息、所述目标第二哈希函数、所述第二指纹信息、所述装置支持的角色和所述第二终端设备支持的角色与所述第二终端设备进行认证处理。
45.一种用于传输数据的装置,其特征在于,配置于包括第一终端设备、第二终端设备和所述装置的通信系统中,所述第一终端设备与所述装置之间通过H.323协议通信,所述第二终端设备与所述装置之间通过会话初始化协议SIP通信,所述装置包括:
接收单元,用于接收所述第一终端设备发送的哈希函数列表,所述哈希函数列表包括所述第一终端设备所支持的至少一个哈希函数;
处理单元,用于根据所述哈希函数列表与所述第二终端设备进行协商处理,以从所述哈希函数列表中确定至少一个备选哈希函数,其中,所述备选哈希函数属于所述第二终端设备支持的哈希函数;
发送单元,用于向所述第一终端设备发送所述备选哈希函数,以便于所述第一终端设备从所述备选哈希函数中确定目标哈希函数,并确定与所述目标哈希函数相对应的指纹信息;
所述接收单元还用于接收所述第一终端设备发送的所述目标哈希函数和所述指纹信息;
所述发送单元还用于向所述第二终端发送所述目标哈希函数和所述指纹信息,以便于所述第一终端设备和所述第二终端设备根据所述目标哈希函数和所述指纹信息进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过所述DTLS协议连接传输数据。
46.根据权利要求45所述的装置,其特征在于,所述发送单元还用于向所述第二终端设备发送待验证哈希函数,所述待验证哈希函数是所述哈希函数列表中的任一哈希函数;
所述接收单元还用于接收所述第二终端设备发送的验证消息,所述验证消息用于指示所述待验证哈希函数是否属于所述第二终端设备支持的哈希函数;
所述处理单元具体用于在根据所述验证消息,确定所述待验证哈希函数属于所述第二终端设备支持的哈希函数时,将所述待验证哈希函数确定为备选哈希函数。
47.根据权利要求46所述的装置,其特征在于,所述处理单元具体用于在确定所述验证消息携带有所述待验证哈希函数时,确定所述待验证哈希函数属于所述第二终端设备支持的哈希函数,并将所述待验证哈希函数确定为备选哈希函数。
48.根据权利要求45至47中任一项所述的装置,其特征在于,所述接收单元还用于接收所述第一终端设备发送的第一端口号及所述第二终端设备发送的第二端口号,所述第一端口号是所述第一终端设备所使用的用于建立基于所述DTLS协议连接的流控制传输协议SCTP连接的端口号,所述第二端口号是所述第二终端设备所使用的用于建立基于所述DTLS协议连接的SCTP连接的端口号;
所述发送单元还用于向所述第二终端设备转发所述第一端口号,并向所述第一终端设备转发所述第二端口号,以便于所述第一终端设备和所述第二终端设备根据所述第一端口号和所述第二端口号建立SCTP连接,并通过所述SCTP连接传输数据。
49.一种用于传输数据的装置,其特征在于,配置于包括所述装置、第二终端设备和网关设备的通信系统中,所述装置与所述网关设备之间通过H.323协议通信,所述第二终端设备与所述网关设备之间通过会话初始化协议SIP通信,所述装置包括:
发送单元,用于向所述网关设备发送哈希函数列表,所述哈希函数列表包括所述装置所支持的至少一个哈希函数,以便于所述网关设备根据所述哈希函数列表与所述第二终端设备进行协商处理,以从所述哈希函数列表中确定至少一个备选哈希函数,其中,所述备选哈希函数属于所述第二终端设备支持的哈希函数;
接收单元,用于接收所述网关设备发送的所述备选哈希函数;
处理单元,用于从所述备选哈希函数中确定目标哈希函数,并确定与所述目标哈希函数相对应的指纹信息;
所述发送单元还用于向所述网关设备发送所述目标哈希函数和所述指纹信息,以便于所述网关设备向所述第二终端转发所述目标哈希函数和所述指纹信息;
所述处理单元还用于根据所述目标哈希函数和所述指纹信息,与所述第二终端设备进行认证处理,以建立数据包传输层安全性协议DTLS协议连接,并通过所述DTLS协议连接传输数据。
50.根据权利要求49所述的装置,其特征在于,所述发送单元还用于向所述网关设备发送第一端口号,以便于所述网关设备向所述第二终端设备转发所述第一端口号,所述第一端口号是所述装置所使用的用于建立基于所述DTLS协议连接的流控制传输协议SCTP连接的端口号;
所述接收单元还用于接收所述网关设备发送的第二端口号,所述第二端口号是所述第二终端设备发送给所述网关设备的,所述第二端口号是所述第二终端设备所使用的用于建立基于所述DTLS协议连接的SCTP连接的端口号;
所述处理单元还用于根据所述第一端口号和所述第二端口号与所述第二终端设备建立SCTP连接,以通过所述SCTP连接传输数据。
51.一种用于传输数据的系统,其特征在于,所述系统包括第一终端设备、第二终端设备和网关设备,所述第一终端设备与所述网关设备之间通过H.323协议通信,所述第二终端设备与所述网关设备之间通过会话初始化协议SIP通信,其中
所述网关设备为根据权利要求39至41中任一项所述的装置;
所述第一终端设备为根据权利要求42至44中任一项所述的装置。
52.一种用于传输数据的系统,其特征在于,所述系统包括第一终端设备、第二终端设备和网关设备,所述第一终端设备与所述网关设备之间通过H.323协议通信,所述第二终端设备与所述网关设备之间通过会话初始化协议SIP通信,其中
所述网关设备为根据权利要求45至48中任一项所述的装置;
所述第一终端设备为根据权利要求49至40中任一项所述的装置。
CN201510036840.8A 2015-01-23 2015-01-23 用于传输数据的方法、装置和系统 Active CN105871790B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201510036840.8A CN105871790B (zh) 2015-01-23 2015-01-23 用于传输数据的方法、装置和系统
PCT/CN2016/071359 WO2016116034A1 (zh) 2015-01-23 2016-01-19 用于传输数据的方法、装置和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510036840.8A CN105871790B (zh) 2015-01-23 2015-01-23 用于传输数据的方法、装置和系统

Publications (2)

Publication Number Publication Date
CN105871790A CN105871790A (zh) 2016-08-17
CN105871790B true CN105871790B (zh) 2019-02-01

Family

ID=56416440

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510036840.8A Active CN105871790B (zh) 2015-01-23 2015-01-23 用于传输数据的方法、装置和系统

Country Status (2)

Country Link
CN (1) CN105871790B (zh)
WO (1) WO2016116034A1 (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1783776A (zh) * 2004-11-29 2006-06-07 中兴通讯股份有限公司 在h.323多媒体通信系统节点间产生共享秘密的方法
CN1881869A (zh) * 2005-11-01 2006-12-20 华为技术有限公司 一种实现加密通信的方法
CN103369707A (zh) * 2012-03-27 2013-10-23 华为终端有限公司 无线网络连接的建立方法及终端设备
CN103428818A (zh) * 2012-05-24 2013-12-04 华为技术有限公司 终端设备发现的方法、设备及系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100334829C (zh) * 2004-02-07 2007-08-29 华为技术有限公司 一种消息传输的实现方法
US8311218B2 (en) * 2009-06-30 2012-11-13 Cisco Technology, Inc. Rounding for security
CN104125654A (zh) * 2013-04-23 2014-10-29 腾讯科技(深圳)有限公司 一种wifi网络的数据传输方法、装置及终端设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1783776A (zh) * 2004-11-29 2006-06-07 中兴通讯股份有限公司 在h.323多媒体通信系统节点间产生共享秘密的方法
CN1881869A (zh) * 2005-11-01 2006-12-20 华为技术有限公司 一种实现加密通信的方法
CN103369707A (zh) * 2012-03-27 2013-10-23 华为终端有限公司 无线网络连接的建立方法及终端设备
CN103428818A (zh) * 2012-05-24 2013-12-04 华为技术有限公司 终端设备发现的方法、设备及系统

Also Published As

Publication number Publication date
WO2016116034A1 (zh) 2016-07-28
CN105871790A (zh) 2016-08-17

Similar Documents

Publication Publication Date Title
CN100525345C (zh) 移动电话、通信终端和电话呼叫方法
CN106878267A (zh) 建立全双工双向通信的方法和系统
US20140196125A1 (en) Deploying wireless docking as a service
CN105025475B (zh) 面向Android系统的移动保密终端实现方法
US8213337B2 (en) IP multimedia subsystem for a multimode wireless device
US20040088567A1 (en) Portable device for securing packet traffic in a host platform
CN108667880A (zh) 一种负载均衡系统、方法及装置
WO2013080702A1 (ja) テレビ電話装置
US20070217430A1 (en) Method and system for initiating communications
US9332094B2 (en) Communication system and method
CN105376059B (zh) 基于电子钥匙进行应用签名的方法和系统
WO2010142170A1 (zh) 一种基于无线局域网保密基础结构的设备调试方法及系统
CN106921843A (zh) 数据传输方法及装置
CN108990169A (zh) 一种数据传输、资源共享方法及用户终端、接入点设备
CN107113223A (zh) 用于消息会话中继协议会话的消息块大小的协商
CN107251512A (zh) 与安全媒体的ims会话的增强建立
CN105871790B (zh) 用于传输数据的方法、装置和系统
CN104105222B (zh) 建立通信
CN109391650A (zh) 一种建立会话的方法及装置
CN106134165B (zh) 工作环境设定系统、便携式终端以及中继装置
CN111683217A (zh) 视频通话方法、系统、设备、网络模组及可读存储介质
CN100502368C (zh) 一种实现多媒体设备之间建立呼叫的方法
CN104519034B (zh) 用于多终端协同娱乐的控制设备及其通信方法
CN105915534A (zh) 一种穿越防火墙的方法和电子设备
CN105933636B (zh) 医用可视通话系统及方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant