基于网络的数字签名方法及网络数字签名设备与流程

文档序号:14747474发布日期:2018-06-22 00:03阅读:222来源:国知局

本发明涉及数字签名领域,具体地,涉及一种基于网络的数字签名方法及网络数字签名设备。



背景技术:

数字签名技术在网络安全方面的应用日益成熟。常用的数字签名装置例如为USB-key签名设备。若用户需要进行网上交易、转账等操作时,其需要通过USB接口将USB-key签名设备与计算机连接,然后通过USB接口将待签名的数据信息发送至该USB-key签名设备,以进行数字签名,之后,USB-key签名设备再通过USB接口反馈签名后的数据信息。

虽然通过USB-key签名设备可以在一定程度上提高用户支付的安全性,但是用户需要购买该USB-key签名设备,因此为用户增加成本。此外,由于该USB-key签名设备是基于USB接口进行通信的,因此用户需要随身携带该USB-key签名设备,并且其交易终端必须支持USB通信,才能够使用USB-key签名设备进行数字签名。一旦用户没有携带该USB-key签名设备,则其无法进行签名。并且,用户使用例如智能手机、平板电脑等不支持USB通信的移动终端设备,也无法实现数字签名。

此外,现有的USB-key签名设备仅能够与一个用户进行绑定。也就是说,一个USB-key签名设备仅能够为所绑定的一个用户提供数字签名支持。因此,无法通过一个USB-key签名设备为多个用户提供数字签名支持。

由此可以看出,现有的USB-key签名设备在应用方面存在诸多的局限性。



技术实现要素:

本发明的目的是提供一种基于网络的数字签名方法及网络数字签名设备,以实现基于网络的、为多个用户提供数字签名支持的机制。

为了实现上述目的,本发明提供一种基于网络的数字签名方法。该方法包括:从用户接收包括用户特征信息和用户身份认证信息的用户账户建立请求,并根据所述用户账户建立请求中的所述用户特征信息和所述用户身份认证信息为所述用户建立用户账户、和与该用户账户对应的签名密钥;从数据源接收包括用户特征信息和待签名数据的数字签名请求,根据所述数字签名请求中的所述用户特征信息确定与该用户特征信息对应的用户账户、和与所确定出的用户账户对应的签名密钥;以及利用所确定出的签名密钥对所述待签名数据进行签名。

优选地,该方法还包括:从用户接收包括用户特征信息、用户身份认证信息和第一链路特征信息的注册请求,其中,该第一链路特征信息用于指示到签名确认方的第一链路;利用已建立的用户账户,根据所述注册请求中的所述用户特征信息和所述用户身份认证信息对所述用户进行认证;以及在所述用户通过认证的情况下,将所述第一链路特征信息注册到与所述注册请求中的所述用户特征信息和所述用户身份认证信息对应的用户账户。

优选地,该方法还包括:在利用所确定出的签名密钥对所述待签名数据进行签名之前,先经由在所述用户账户中注册的所述第一链路特征信息所指示的第一链路,向所述签名确认方发送签名确认请求信息,并从所述签名确认方接收针对所述签名确认请求信息的签名确认信息;在所接收到的签名确认信息表示准许的情况下,再利用所确定出的签名密钥对所述待签名数据进行签名。

优选地,所述签名确认请求信息包括所述待签名数据的关键特征信息。

优选地,所述签名确认信息包括所述签名确认方的身份认证信息,以及所述方法还包括:在接收到所述签名确认信息之后,先根据所述签名确认信息中包括的所述签名确认方的身份认证信息对所述签名确认方进行身份验证;在所述签名确认方通过认证的情况下,再利用所确定出的签名密钥对所述待签名数据进行签名。

优选地,经由所述第一链路,从所述签名确认方接收所述签名确认信息。

优选地,所述签名确认请求信息包括第二链路特征信息,其中,该第二链路特征信息用于指示经由其接收所述签名确认信息的第二链路;以及经由所述第二链路,从所述签名确认方接收所述签名确认信息。

本发明还提供一种网络数字签名设备。该设备包括:用于从用户接收包括用户特征信息和用户身份认证信息的用户账户建立请求,并根据所述用户账户建立请求中的所述用户特征信息和所述用户身份认证信息为所述用户建立用户账户、和与该用户账户对应的签名密钥的装置;用于从数据源接收包括用户特征信息和待签名数据的数字签名请求,根据所述数字签名请求中的所述用户特征信息确定与该用户特征信息对应的用户账户、和与所确定出的用户账户对应的签名密钥的装置;以及用于利用所确定出的签名密钥对所述待签名数据进行签名的装置。

优选地,该设备还包括:用于从用户接收包括用户特征信息、用户身份认证信息和第一链路特征信息的注册请求的装置,其中,该第一链路特征信息用于指示到签名确认方的第一链路;用于利用已建立的用户账户,根据所述注册请求中的所述用户特征信息和所述用户身份认证信息对所述用户进行认证的装置;以及用于在所述用户通过认证的情况下,将所述第一链路特征信息注册到与所述注册请求中的所述用户特征信息和所述用户身份认证信息对应的用户账户的装置。

优选地,该设备还包括:用于在利用所确定出的签名密钥对所述待签名数据进行签名之前,先经由在所述用户账户中注册的所述第一链路特征信息所指示的第一链路,向所述签名确认方发送签名确认请求信息,并从所述签名确认方接收针对所述签名确认请求信息的签名确认信息的装置;以及在所接收到的签名确认信息表示准许的情况下,再利用所确定出的签名密钥对所述待签名数据进行签名。

优选地,所述签名确认请求信息包括所述待签名数据的关键特征信息。

优选地,所述签名确认信息包括所述签名确认方的身份认证信息,以及所述设备还包括:用于在接收到所述签名确认信息之后,先根据所述签名确认信息中包括的所述签名确认方的身份认证信息对所述签名确认方进行身份验证的装置;以及在所述签名确认方通过认证的情况下,再利用所确定出的签名密钥对所述待签名数据进行签名。

优选地,经由所述第一链路,从所述签名确认方接收所述签名确认信息。

优选地,所述签名确认请求信息包括第二链路特征信息,其中,该第二链路特征信息用于指示经由其接收所述签名确认信息的第二链路;以及经由所述第二链路,从所述签名确认方接收所述签名确认信息。

通过以上技术方案,可以实现基于网络的数字签名。由此,以各种方式接入网络的各种移动或固定设备均可以向本发明提供的网络数字签名设备发送签名请求,消除了现有的USB-key签名设备在通信方式和便携性方面的局限性,使得可以在网络覆盖的任何区域内进行签名。此外,本发明提供的网络数字签名设备可以基于与每个用户账户对应的签名密钥来对多个用户的待签名数据进行数字签名,因此,不需要为每位用户定制一个签名装置,仅通过本发明提供的一个网络数字签名设备就可以为多个用户提供数字签名支持。这样,不仅为用户节省成本,而且用户不需要随身携带签名设备,从而为用户带来便利。

本发明的其他特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:

图1是根据本发明的实施方式的基于网络的数字签名方法的流程图;

图2是在实施本发明的一种实施方式的数字签名方法时,用户、数据源及网络数字签名设备之间的消息流图;以及

图3是在实施本发明的另一种实施方式的数字签名方法时,用户、签名确认方、数据源及网络数字签名设备之间的消息流图。

具体实施方式

以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。

图1示出了根据本发明的实施方式的基于网络的数字签名方法的流程图。该方法可以由网络数字签名设备来执行。如图1所示,该方法可以包括:步骤S1,从用户接收包括用户特征信息和用户身份认证信息的用户账户建立请求,并根据所述用户账户建立请求中的所述用户特征信息和所述用户身份认证信息为所述用户建立用户账户、和与该用户账户对应的签名密钥;步骤S2,从数据源接收包括用户特征信息和待签名数据的数字签名请求,根据所述数字签名请求中的所述用户特征信息确定与该用户特征信息对应的用户账户、和与所确定出的用户账户对应的签名密钥;以及步骤S3,利用所确定出的签名密钥对所述待签名数据进行签名。

具体地,用户首先要在网络数字签名设备中建立用户账户。如图2所示,用户可以向网络数字签名设备发送用户账户建立请求,其中,该用户账户建立请求可以包括用户的用户特征信息和用户身份认证信息。所述用户特征信息可以包括该用户的标识,例如,用户名、身份证号等等,并且每个用户的用户特征信息唯一。所述用户身份认证信息可以例如包括密码、用户的私密信息(例如,用户上过的小学、第一份工作的公司等)等等。在网络数字签名设备接收到所述用户发来的用户账户建立请求之后,其可以根据该请求中包括的用户特征信息和用户身份认证信息,来为所述用户建立一个用户账户。同时,还建立一个与该用户账户对应的签名密钥。在所述网络数字签名设备中,每个用户账户都有专属的签名密钥,该签名密钥用于对各自的用户的待签名数据进行数字签名。

多个用户都可以通过步骤S1来在网络数字签名设备中建立自己专属的用户账户,并且网络数字签名设备可以为每个用户账户建立一个专属的签名密钥。

接下来,想要进行数字签名的用户可以指示待签名数据所在的数据源向网络数字签名设备发送数字签名请求。该数字签名请求中除了包括待签名数据,还包括用户特征信息,其中,该用户特征信息表明是哪个用户想要对该待签名数据进行数字签名。所述网络数字签名设备可以从数据源接收所述数字签名请求,并根据该签名请求中包括的用户特征信息来确定与该用户特征信息对应的用户账户、和与所确定出的用户账户对应的签名密钥。

接下来,网络数字签名设备就可以利用所确定出的签名密钥对所述待签名数据进行签名。

通过上述方法,可以实现基于网络的数字签名。由此,以各种方式接入网络的各种移动或固定设备均可以向本发明提供的网络数字签名设备发送签名请求,消除了现有的USB-key签名设备在通信方式和便携性方面的局限性,使得可以在网络覆盖的任何区域内进行签名。此外,所述网络数字签名设备可以基于与每个用户账户对应的签名密钥来对多个用户的待签名数据进行数字签名,因此,不需要为每位用户定制一个签名装置,仅通过一个网络数字签名设备就可以为多个用户提供数字签名支持。这样,不仅为用户节省成本,而且用户不需要随身携带签名设备,从而为用户带来便利。

在本发明的另一实施方式中,还需要签名确认方来在进行数字签名之前,对签名进行确认。在得到来自签名确认方的许可之后,网络数字签名设备再对待签名数据进行数字签名。签名确认方可以由用户来指定,用户可以将到该签名确认方的链路特征信息注册到对应的用户账户中。这样,网络数字签名设备就可以在进行签名之前,经由该链路特征信息所指示的链路向签名确认方请求签名确认。

具体地,如图3所示,所述方法还可以包括:从用户接收包括用户特征信息、用户身份认证信息和第一链路特征信息的注册请求,其中,该第一链路特征信息用于指示到签名确认方的第一链路。例如,所述第一链路特征信息可以为IP地址、手机号等等。之后,利用已建立的用户账户,根据所述注册请求中包括的用户特征信息和用户身份认证信息对所述用户进行认证,以确认该用户是否为合法用户。在所述用户通过认证的情况下,将所述第一链路特征信息注册到与所述注册请求中的所述用户特征信息和所述用户身份认证信息对应的用户账户中。此时,用户账户中至少包括以下三种信息:用户特征信息、用户身份认证信息、以及指示到该用户指定的签名确认方的链路的链路特征信息。

之后,所述方法还可以包括:在利用所确定出的签名密钥对所述待签名数据进行签名之前,先经由在所述用户账户中注册的所述第一链路特征信息所指示的第一链路,向所述签名确认方发送签名确认请求信息,以由该签名确认方对签名进行确认。之后,从所述签名确认方接收针对所述签名确认请求信息的签名确认信息。在所接收到的签名确认信息表示准许的情况下,再利用所确定出的签名密钥对所述待签名数据进行签名。

通过用户授权签名确认方,并在签名之前向该签名确认方进行签名确认,在得到签名确认方的许可之后再进行签名,由此可以提高数字签名的安全性。

在本发明的一个优选实施方式中,所述签名确认请求信息中可以包括所述待签名数据的关键特征信息。其中,所述关键特征信息可以包括指示期望对待签名数据进行数字签名的用户的用户特征信息、所述待签名数据的内容等等。这样,签名确认方在接收到所述签名确认请求信息之后,其可以根据该签名确认请求信息中包括的待签名数据的关键特征信息,来做出是否许可签名的决定。这样,可以进一步提高数字签名的安全性。

此外,在本发明的另一优选实施方式中,签名确认方还可以将其身份认证信息包括在签名确认信息中,并向网络数字签名设备发送包括签名确认方的身份认证信息(例如,签名确认方的标识)的签名确认信息。网络数字签名设备可以在接收到所述签名确认信息之后,先根据所述签名确认信息中包括的所述签名确认方的身份认证信息对所述签名确认方进行身份验证。在所述签名确认方通过认证的情况下,再利用所确定出的签名密钥对所述待签名数据进行签名。由此,数字签名的安全性进一步得到提升。

在本发明中,所述第一链路可以为双向链路。也就是说,所述网络数字签名设备可以经由所述第一链路向所述签名确认方发送所述签名确认请求信息,并且可以经由所述第一链路从签名确认方接收所述签名确认信息。例如,所述签名确认方与所述网络数字签名设备之间可以按照TCP协议来建立第一链路,此时所建立的第一链路为可靠的双向链路,网络数字签名设备既通过该第一链路发送签名确认请求信息,也通过该第一链路接收签名确认信息。

可替换地,在本发明的另一实施方式中,签名确认请求信息的发送以及签名确认信息的接收也可以经由不同的链路来进行。在这种情况下,所述网络数字签名设备可以将第二特征链路信息包括在签名确认请求信息中,并经由第一链路将该签名确认请求信息发送至签名确认方。其中,该第二链路特征信息可以指示经由其接收所述签名确认信息的第二链路。所述签名确认方在接收到所述签名确认请求信息之后,其可以从该签名确认请求信息中提取出该第二特征链路信息,并经由该第二特征链路信息所指示的第二链路向网络数字签名设备发送所述签名确认信息。在这种情况下,所述网络数字签名设备可以经由该第二链路从所述签名确认方接收所述签名确认信息。相比于采用单个链路进行数据收发,通过使用不同的链路来进行数据收发可以减小单个链路上的负载量,并且操作简便。

在采用两条链路进行数据收发时,所述第一链路既可以为双向链路(根据TCP协议来建立),也可以为单向链路(可以根据UDP协议来建立),并且所述第二链路既可以为双向链路,也可以为单向链路。对此,本发明并不进行限定。

本发明还提供一种网络数字签名设备。该设备可以包括:用于从用户接收包括用户特征信息和用户身份认证信息的用户账户建立请求,并根据所述用户账户建立请求中的所述用户特征信息和所述用户身份认证信息为所述用户建立用户账户、和与该用户账户对应的签名密钥的装置;用于从数据源接收包括用户特征信息和待签名数据的数字签名请求,根据所述数字签名请求中的所述用户特征信息确定与该用户特征信息对应的用户账户、和与所确定出的用户账户对应的签名密钥的装置;以及用于利用所确定出的签名密钥对所述待签名数据进行签名的装置。

此外,该设备还可以包括:用于从用户接收包括用户特征信息、用户身份认证信息和第一链路特征信息的注册请求的装置,其中,该第一链路特征信息用于指示到签名确认方的第一链路;用于利用已建立的用户账户,根据所述注册请求中的所述用户特征信息和所述用户身份认证信息对所述用户进行认证的装置;以及用于在所述用户通过认证的情况下,将所述第一链路特征信息注册到与所述注册请求中的所述用户特征信息和所述用户身份认证信息对应的用户账户的装置。

该设备还可以包括:用于在利用所确定出的签名密钥对所述待签名数据进行签名之前,先经由在所述用户账户中注册的所述第一链路特征信息所指示的第一链路,向所述签名确认方发送签名确认请求信息,并从所述签名确认方接收针对所述签名确认请求信息的签名确认信息的装置;以及在所接收到的签名确认信息表示准许的情况下,再利用所确定出的签名密钥对所述待签名数据进行签名。

所述签名确认请求信息可以包括所述待签名数据的关键特征信息。

此外,所述签名确认信息可以包括所述签名确认方的身份认证信息,以及所述设备还包括:用于在接收到所述签名确认信息之后,先根据所述签名确认信息中包括的所述签名确认方的身份认证信息对所述签名确认方进行身份验证的装置;以及在所述签名确认方通过认证的情况下,再利用所确定出的签名密钥对所述待签名数据进行签名。

可以经由所述第一链路,从所述签名确认方接收所述签名确认信息。

可替换地,所述签名确认请求信息包括第二链路特征信息,其中,该第二链路特征信息用于指示经由其接收所述签名确认信息的第二链路;以及经由所述第二链路,从所述签名确认方接收所述签名确认信息。

综上所述,通过本发明提供的基于网络的数字签名方法及网络数字签名设备,可以实现基于网络的数字签名。由此,以各种方式接入网络的各种移动或固定设备来均可以向本发明提供的网络数字签名设备发送签名请求,消除了现有的USB-key签名设备在通信方式和便携性方面的局限性,使得可以在网络覆盖的任何区域内进行签名。此外,本发明提供的网络数字签名设备可以基于与每个用户账户对应的签名密钥来对多个用户的待签名数据进行数字签名,因此,不需要为每位用户定制一个签名装置,仅通过本发明提供的一个网络数字签名设备就可以为多个用户提供数字签名支持。这样,不仅为用户节省成本,而且用户不需要随身携带签名设备,从而为用户带来便利。

以上结合附图详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种简单变型,这些简单变型均属于本发明的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明对各种可能的组合方式不再另行说明。

此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明的思想,其同样应当视为本发明所公开的内容。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1