设定预共享密钥的方法、服务器及客户端装置
技术领域
本发明涉及移动网络通信技术领域,尤其涉及一种设定预共享密钥(Pre-shared Key,PSK)的方法、服务器及客户端装置。
背景技术
随着移动网络的发展和扩大,数字家庭将成为一种未来的趋势,随着这种趋势的发展,将会有越来越多的装置和设备需要和家庭中的服务器,如网关(Gateway)透过无线网络连接,并且利用WEP/WPA等预共享密钥(pre-shared key,PSK)传送模式来保护传送的数据。而基于对成本及占用空间的考虑,数字家庭中的大多数客户端装置和设备只提供无线网络(wireless)接口供使用者进行登录设定,而不再额外提供如USB、Ethernet、Control Panel等其它的接口。因此,使用者在未进行网络安全设定时,客户端装置无法和网关(Gateway)联机,从而无法利用无线网络对客户端装置进行登录设定。
现有技术中,通常在客户端装置上提供一个额外的硬件接口,如USB、Ethernet、RS232或Control Panel供使用者设定,在进行设定时关闭网关(Gateway)的网络安全保护功能,使客户端装置与网关(Gateway)连接,使用者通过无线网络登录客户端装置并完成设定。然而,额外提供的硬件接口会增加产品的成本和大小,并且将网络安全保护功能暂时关闭以进行客户端装置设定的方式既不方便也存在PSK被窃取的风险。
发明内容
有鉴于此,有必要提供一种设定预共享密钥的方法、服务器及客户端装置,以增强设定预共享密钥的安全性。
本发明提供一种设定预共享密钥的服务器,与至少一客户端装置通信连接,该服务器包括:
接收单元,用于接收使用者通过该客户端装置输入的需要与该服务器通信连接的客户端装置的MAC地址,以及该客户端装置发送的DHCP discover消息,其中,该DHCP discover消息中携带的携带任选字段包含了该客户端装置预存的公钥与MAC地址。
MAC地址判断单元,判断该使用者通过该客户端装置发送的MAC地址与DHCP discover消息中包含的MAC地址是否一致。
密钥生成单元,当该MAC地址判断单元判断该使用者通过该客户端装置发送的MAC地址与该客户端装置发送的DHCP discover消息中包含的MAC地址一致时,根据该客户端装置发送的DHCP discover消息中包含的公钥对该服务器端的PSK进行加密计算。以及
处理单元,用于构建一DHCP offer消息,并发送至该客户端装置,其中,该DHCP offer消息中的携带任选字段包含该进行加密计算的PSK。还用于构建一包含安全设置命令的携带任选字段,并将一携带该携带任选字段的DHCP ACK消息发送至该客户端装置,使该客户端装置响应该携带任选字段中的安全设置命令,相应地启动WEP/WPA,对会话数据进行加密。
本发明还提供一种设定预共享密钥的客户端装置,该客户端装置与一服务器通信连接,该客户端装置包括:
处理单元,用于构建一DHCP discover消息,并将该DHCP discover消息发送至该服务器,其中,该DHCP discover消息中携带的携带任选字段中包含了该客户端装置预存的公钥与MAC地址。
接收单元,用于接收该服务器发送的DHCP offer消息及DHCP ACK消息,其中,该DHCP offer消息中的携带任选字段包含一该服务器根据该DHCP discover消息中包含的公钥对该服务器端的PSK进行加密计算的PSK,该DHCP ACK消息中的携带任选字段包含安全设置命令。
密钥生成单元,当该接收单元接收该DHCP offer消息后,用于利用该客户端装置预存的私钥对该DHCP offer消息中包含的PSK进行解密计算。以及
处理单元,当该接收单元接收该DHCP ACK消息后,响应携带任选字段中的安全设置命令,相应地按照该安全设置命令启动WEP/WPA,对会话数据进行加密。
本发明还提供一种设定预共享密钥的方法,包括:
接收由使用者通过一客户端装置发送的MAC地址及由该客户端装置发送的DHCP discover消息,其中,该DHCP discover消息中携带的携带任选字段中包含该客户端装置预存的公钥与MAC地址,并判断该使用者通过该客户端装置发送的MAC地址与该DHCP discover消息中包含的MAC地址是否一致。
当判断该使用者通过该客户端装置发送的MAC地址与该DHCP discover消息中包含的MAC地址一致时,根据该DHCP discover消息的携带任选字段中包含的公钥对一PSK进行加密计算,并发送一DHCP offer消息至该客户端装置,其中,该DHCP offer消息中的携带任选字段包含该加密计算得到的PSK。以及
发送一包括携带了安全设置命令的携带任选字段的DHCP ACK消息至该客户端装置,以使该客户端装置响应该携带任选字段中的安全设置命令启动WEP/WPA,对会话数据进行加密。
本发明还提供一种设定预共享密钥的方法,包括:
使用者输入并发送MAC地址至一服务器。
构建一DHCP discover消息,并将该DHCP discover消息发送至该服务器,其中,该DHCP discover消息中的携带任选字段中包含了预存的公钥与MAC地址。
接收该服务器发送的DHCP offer消息,其中,该DHCP offer消息中的携带任选字段中包含一进行加密计算的PSK,并利用预存的私钥对该服务器发送的DHCP offer消息中包含的PSK进行解密计算。以及
接收该服务器发送的一包含安全设置命令的携带任选字段的DHCP ACK消息,并响应该携带任选字段中的安全设置命令,相应地按照该安全设置命令启动WEP/WPA,对会话数据进行加密。
相对于现有技术,本发明提供的设定预共享密钥的方法、服务器及客户端装置,通过一计算机输入需要与服务器进行通信连接的客户端装置的MAC地址,并利用现有的DHCP通讯协议和public key/private key的加解密方式来传送PSK,使得服务器无需设置额外的硬件接口,也能够安全地传送PSK,而不会被窃取。
附图说明
图1为本发明实施方式中的设定预共享密钥的服务器与客户端装置的模块示意图。
图2为本发明实施方式中的设定预共享密钥的方法流程图。
主要元件符号说明
客户端装置 |
10 |
密钥生成单元 |
11、22 |
接收单元 |
12、21 |
存储单元 |
13、25 |
处理单元 |
14、24 |
服务器 |
20 |
MAC地址判断单元 |
23 |
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
下面将结合附图,对本发明作进一步的详细说明。
请参阅图1,为本发明实施方式中的设定预共享密钥(pre-shared key,PSK)的服务器与客户端装置的模块示意图,该客户端装置10通过无线网络与服务器20进行通信连接,该客户端装置10可以是计算机或者手机等智能装置。在其他实施方式中,该服务器20可以通过无线网络与多个客户端装置10进行通信连接。其中,该客户端装置10包括密钥生成单元11、接收单元12、存储单元13和处理单元14。服务器20包括接收单元21、密钥生成单元22、MAC(Media Access Control,介质访问控制)地址判断单元23和处理单元24以及存储单元25。
当客户端装置10首次使用时,即该客户端装置10需要通过无线网络与服务器20进行通信连接,使用者通过客户端装置10输入该客户端装置10的MAC地址,并通过无线网络传送至服务器20中。当服务器20通过接收单元21接收该MAC地址时,处理单元24将该接收到的MAC地址存储在存储单元25中。当该客户端装置10完成使用者输入并发送MAC地址至服务器20时,处理单元14构建一DHCP(Dynamic Host Configuration Protocol,动态主机设置协议)discover消息,将该DHCP discover消息发送至服务器20,服务器20的接收单元21将该接收到的DHCP discover消息存储在服务器20的存储单元25中。其中,在该DHCP discover消息中携带任选字段,以通知服务器20需要对该客户端装置10进行身份认证,该携带任选字段中包含了该客户端装置10的公钥与MAC地址。当该接收单元21接收到由客户端装置10发送的使用者输入的MAC地址与客户端装置10发送的DHCP discover消息时,MAC地址判断单元23将客户端装置10发送的使用者输入的MAC地址与DHCP discover消息的携带任选字段中包含的MAC地址进行比较,以判断两个MAC地址是否一致。当判断客户端装置10发送的使用者输入的MAC地址与DHCP discover消息的携带任选字段中包含的MAC地址一致时,密钥生成单元22根据DHCP discover消息的携带任选字段中包含的公钥对服务器20端的PSK进行加密计算,并发送一DHCP offer消息至客户端装置10。其中,该DHCP offer消息中的携带任选字段包含该进行加密计算的PSK。该PSK为至少一个客户端装置10与服务器20进行会话的密钥。
当接收单元12接收到服务器20发送的DHCP offer消息后,密钥生成单元11提取DHCP offer消息的携带任选字段中包含的PSK,并利用该客户端装置10预存的私钥进行计算,以解密该PSK,并将该解密得到的PSK存储在存储单元13中。当PSK解密完成时,该处理单元14发送一DHCP request消息至服务器20,其中,该DHCP request消息的携带任选字段中包含确认字符,以通知服务器20所发送的PSK已经接受无误。
当接收单元21接收到客户端装置10发送的DHCP request消息后,处理单元24响应该DHCP request消息中的携带确认字符,构建一新的携带任选字段,并在该携带任选字段中放入相应的安全设置命令,将一携带该携带任选字段的DHCP ACK消息发送至客户端装置10。接收单元12接收到该DHCP ACK消息后,响应携带任选字段中的安全设置命令,相应地按照该安全设置命令启动WEP/WPA,对会话数据进行加密。此时,该客户端装置10完成PSK的设定,当该客户端装置10再次与服务器20进行数据通信时,WEP/WPA相应地对所需传输的数据进行加密,从而实现该客户端装置10与服务器20之间的安全会话。
请参阅图2,为本发明的设定预共享密钥的方法流程图,该方法包括:
步骤S40,使用者通过客户端装置10输入首次需要与该服务器20进行通信连接的客户端装置10的MAC地址,并通过无线网络传送至该服务器20中。
步骤S41,该客户端装置10的处理单元14构建一DHCP discover消息,并将该DHCP discover消息发送至服务器20。其中,在该DHCP discover消息中的携带任选字段中包含了该客户端装置10的公钥与MAC地址。
该服务器20将由客户端装置10发送的使用者输入的MAC地址和DHCP discover消息存储在存储单元25中。
步骤S42,MAC地址判断单元23将客户端装置10所发送的使用者输入的MAC地址与DHCP discover消息的携带任选字段中包含的MAC地址进行比较,以判断两个MAC地址是否一致。若是,则进入步骤S43,否则,结束。
步骤S43,当判断客户端装置10发送的使用者输入的MAC地址与DHCP discover消息的携带任选字段中包含的MAC地址一致时,密钥生成单元22根据DHCP discover消息的携带任选字段中包含公钥对服务器20端的PSK进行加密计算,并发送一DHCP offer消息至客户端装置10。其中,该DHCP offer消息中的携带任选字段包含该进行加密计算的PSK。
该PSK为至少一个客户端装置10与服务器20进行会话的密钥。
步骤S44,客户端装置10的密钥生成单元11提取DHCP offer消息的携带任选字段中包含的PSK,并利用该客户端装置10预存的私钥进行计算,以解密该PSK,并将该解密得到的PSK存储在存储单元13中。
步骤S45,该客户端装置10的处理单元14发送一DHCP request消息至服务器20,其中,该DHCP request消息的携带任选字段中包含确认字符,以通知服务器20所发送的PSK已经接受无误。
步骤S46,服务器20的处理单元24响应该DHCP request消息中的携带确认字符,构建一新的携带任选字段,并在该携带任选字段中放入相应的安全设置命令,将一携带该携带任选字段的DHCP ACK消息发送至客户端装置10。
步骤S47,客户端装置10的接收单元12接收到该DHCP ACK消息后,响应携带任选字段中的安全设置命令,相应地按照该安全设置命令启动WEP/WPA,对会话数据进行加密。
使用上述的设定预共享密钥的方法、服务器及客户端装置,通过客户端装置10输入需要与服务器进行通信连接的客户端装置的MAC地址,并利用现有的DHCP通讯协议和public key/private key的加解密方式来传送PSK,使得服务器无需设置额外的硬件接口,也能够安全地传送PSK,而不会被窃取。
可以理解的是,对于本领域的普通技术人员来说,可以根据本发明的技术构思做出其它各种相应的改变与变形,而所有这些改变与变形都应属于本发明权利要求的保护范围。