CN101616005A - 签名方法、装置以及签名验证方法、装置和系统 - Google Patents
签名方法、装置以及签名验证方法、装置和系统 Download PDFInfo
- Publication number
- CN101616005A CN101616005A CN200910089904A CN200910089904A CN101616005A CN 101616005 A CN101616005 A CN 101616005A CN 200910089904 A CN200910089904 A CN 200910089904A CN 200910089904 A CN200910089904 A CN 200910089904A CN 101616005 A CN101616005 A CN 101616005A
- Authority
- CN
- China
- Prior art keywords
- signature
- algorithm
- identification information
- algorithm identification
- option
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供了一种签名方法、装置以及签名验证方法、装置和系统。所述签名方法包括:在安全邻居发现消息中添加生成签名的算法标识信息;发送所述安全邻居发现消息。所述签名验证方法包括:从接收到的安全邻居发现消息中,提取生成签名的算法标识信息;利用所述算法标识信息对应的生成算法对所述签名进行验证。所述签名验证系统包括:签名装置和签名验证装置。本发明实施例可有效保证签名验证的准确性和可靠性,满足对多种不同算法签名的验证处理。
Description
技术领域
本发明涉及通信领域,特别是涉及一种签名方法、装置以及签名验证方法、装置和系统。
背景技术
在IPv6协议中,同一链路上面的节点利用邻居发现(NeighborDiscovery,ND)来找到彼此的存在,来断定彼此的链路层地址,来发现路由器以及来维护各个处于活动状态的邻居的可达路径信息。IPv6邻居发现协议使用的消息格式属于ICMPv6消息。
其中,邻居发现报文的形式和ICMPv6的形式相似。所有的ND的功能都可以通过如下报文实现:路由请求报文,路由宣告报文,邻居请求报文和邻居宣告报文,以及重定向报文。如表1所示,一个ND数据包包括NDP报文头(NDP Message header),它由ICMPv6报文头(ICMPv6Header)等组成。
表1
加密生成地址(Cryptographically Generated Addresses,CGA)描述了在安全邻居发现(Secure Neighbor Discovery,SEND)协议中的一种将公共签名密钥与一个IPv6地址邦定的方法。一个CGA是一个IPv6地址,CGA中的接口标识符由公钥和其它一些参数计算一个单向哈希函数生成。通过重新计算的哈希值与接口标识符的比较,可以验证公钥和地址的联系。通过附带一个公钥,一些辅助参数及对应于这一公钥的私钥对消息的签名,可以保护从一个IPv6地址发送来的消息。用公钥计算出一个加密的哈希值来生成一个IPv6地址的接口标识符,再加上网络前缀,就构成一个IPv6地址。这样生成的IPv6地址叫做加密生成地址。相应的私钥可以用来对从此地址发出的消息进行签名。
安全邻居发现SEND协议引入了授权发现机制和地址所有者证明机制。对安全邻居发现,CGA可用来判断地址所有者的回复正确与否,这个过程是通过使用生成地址的密钥签名消息来实现的,从而确保安全邻居发现消息的发送端是声明的地址所有者。
现有的SEND协议中所实现的CGA仅支持RSA&SHA-1算法生成签名。RSA&SHA-1算法生成签名是所有主机和路由器共同默认的。当路由器向主机发送安全邻居发现消息时,就会使用RSA&SHA-1算法生成签名,并将签名选项添加到路由宣告消息的选项中。主机接收到此路由宣告消息时,使用相同RSA&SHA-1算法对签名选项中的签名进行验证。
在CGA支持多加密算法和多哈希算法的时候,路由器有可能使用不同的算法来生成签名。但是因为现有的宣告消息中,主机接收到路由器发送的安全邻居发现消息时无法知道使用哪种算法生成的签名,因此,无法对签名进行验证,验证签名就会失败。
发明内容
本发明实施例提供了一种签名方法、装置以及签名验证方法、装置和系统,可以实现对签名的生成算法进行识别,提高签名验证的准确性和可靠性。
本发明实施例提供了一种签名方法,包括:
在安全邻居发现消息中添加生成签名的算法标识信息;
发送所述安全邻居发现消息。
本发明实施例提供了一种签名装置,包括:
添加模块,用于在安全邻居发现消息中添加生成签名的算法标识信息;
发送模块,用于发送所述安全邻居发现消息。
本发明实施例提供了一种签名验证方法,包括:
从接收到的安全邻居发现消息中,提取生成签名的算法标识信息;
利用所述算法标识信息对应的算法对所述签名进行验证。
本发明实施例提供了一种签名验证装置,包括:
提取模块,用于从接收到的安全邻居发现消息中,提取生成签名的算法标识信息;
验证模块,用于利用该算法标识信息对应的算法对所述签名进行验证。
本发明实施例提供了一种签名验证系统,包括:
签名装置,用于在安全邻居发现消息中添加生成签名的算法标识信息,并发送;
签名验证装置,用于从接收到的安全邻居发现消息中,提取生成签名的所述算法标识信息,并利用所述算法标识信息对应的算法对所述签名进行验证。
本发明实施例可通过安全邻居发现消息中的算法标识信息确认生成签名的算法,根据该算法标识信息可有效对签名进行验证,提高签名验证的准确性和可靠性,可满足对各种不同算法签名的验证处理。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明签名方法实施例一的流程图;
图2为本发明签名方法实施例二的流程图;
图3为本发明实施例的应用场景示意图;
图4为本发明签名方法实施例三的流程图;
图5为本发明签名方法实施例四的流程图;
图6为本发明签名验证方法实施例一的流程图;
图7为本发明签名验证方法实施例二的流程图;
图8为本发明签名验证方法实施例三的流程图;
图9为本发明签名装置实施例的结构示意图;
图10为本发明签名验证装置实施例的结构示意图;
图11为本发明签名验证系统实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明签名方法实施例一的流程图。该签名方法包括:
步骤101、在安全邻居发现消息中添加生成签名的算法标识信息;
步骤102、发送所述安全邻居发现消息。
本发明实施例中的算法标识信息表示生成签名时的算法信息,通过该算法标识信息可判定生成签名的算法。当主机接收到带有生成签名的算法标识信息的安全邻居消息时,可解析得到所述算法标识信息,根据所述算法标识信息确定生成签名的算法,对安全邻居发现消息中的签名进行验证。
本发明实施例通过在安全邻居发现消息中加入生成签名的算法标识信息,可有效提高签名验证的准确性和可靠性,满足对多种不同算法签名的验证处理。
图2为本发明签名方法实施例二的流程图。该签名方法包括:
步骤201、在安全邻居发现消息的签名选项中,添加生成签名的算法标识信息。
本步骤中,可在签名选项的算法(Algorithm)字段中添加算法标识信息。其中,所述算法标识信息可为一特定的数值,每个数值代表一个特定的签名的生成算法,如1可代表RSA&SHA-1算法,2可代表RSA&MD-5算法,3可代表ECC&SHA-1算法,4可代表ECC&MD-5算法。具体地,可在现有SEND消息的签名选项格式中添加8-bit的算法字段,即Algorithm字段,用来标识邻居发现消息的发送端生成签名的算法。
下面对现有SEND协议中定义的签名选项进行说明。现有的SEND协议中定义的签名选项为RSA签名选项,RSA签名选项允许在NDP报文中添加基于公钥算法的签名,如表2所示,现有的RSA签名报文格式如下:
表2
其中各个字段含义如下:
Type:12;
Length:RSA签名选项的总长度为8个字节;
Reserved:是一个16位的区域,被留作后用,此值发送端在发送时,必须设为0,接收端则应该忽略此值;
Key Hash:128位的区域,包含着最重要的128位的SHA-1哈希值,它的作用是产生签名所需的公钥,是将具体的签名和接收端知道的某一特定的公钥相关联起来,这个公钥或者放置在接收端证书的高速缓冲区中,或者存放在同一报文的CGA选项中;
Digital Signature:可变长度的区域包含着PKCS#1v1.5签名,这个签名值是由RSASSA-PKCS1-v1_5算法和SHA-1哈希值,按照参考文献13中所定义的方法计算出来的,Digital Signature紧跟在Key Hash域之后,DigitalSignature的长度是由RSA签名选项的长度减去其它区域的长度得出;
Padding:这段的长度是可变的,其长度依赖于签名之后剩余的长度。
而本发明实施例在现有的签名选项中,增加了一个Algorithm字段,存放算法标识信息,如表3所示:
表3
该Algorithm字段可以为8-bit,用来标识安全邻居发现消息的发送端是使用何种算法生成签名的,同时,将Reserved字段由原来的16-bit改为8-bit,Reserved字段和其他字段的功能不变。
步骤202、将添加了生成签名的算法标识信息的安全邻居发现消息发送出去。
这样,当接收端接收到该安全邻居发现消息时,即可从该安全邻居发现消息的签名选项中,获得所述算法标识信息,根据所述算法标识信息的数值,确定生成签名的算法,对签名进行验证。例如,得到的算法标识信息数值为1时,则表示生成签名的算法是RSA&SHA-1算法,因此,可根据RSA&SHA-1算法对签名进行验证,具体验证过程与现有技术中签名的验证方法相同或类似,在此不再赘述。
可以看出,本发明实施例在生成签名时可采用多种加密算法和多种哈希算法,且在生成签名时,在签名选项中添加代表生成签名的算法的算法标识信息,以便接收端接收到该签名时,获得所述算法标识信息,对签名进行验证。
图3为本发明实施例的应用场景示意图。现有的SEND协议可使用在主机11和12,与路由器10之间的数据包交互,如主机11与路由器10之间;或者在主机和主机之间的数据包交互,如主机11与主机12之间。本实施例也可应用于路由器和主机,或者主机与主机之间发送安全邻居发现消息中,在安全邻居发现消息中添加新的签名选项时,发送端不但要将生成的签名填充到Digital Signature字段中,同时还要将代表生成签名的算法标识信息填充到Algorithm字段中,如果利用RSA&SHA-1算法进行加密,则将Algorithm赋值为1。这样接收端即可根据从签名选项中获得的算法标识信息对签名进行验证。
实际应用中,邻居发现服务可通过如下5种ICMPv6报文类型来执行:
1、路由器宣告,要求路由器周期性地发送多点传送路由器宣告消息,宣告其可用性及其可到达的在线节点、用于配置的链路和Internet参数。这些宣告包含对所使用的网络地址前缀、建议的路程段极限值及本地的MTU的指示,也包括指明节点应使用的自动配置类型的标志。
2、路由器请求,主机可以请求本地路由器立即发送其路由器宣告。路由器必须周期性地发送这些宣告,但是在收到路由器请求报文时,不必等到下一个预定传送时间到达,而是应立即发送宣告信息。
3、邻居宣告,节点在收到邻居请求报文时或者链路层地址改变时,发出邻居宣告报文。
4、邻居请求,节点发送邻居请求来请求邻居的链路层地址,以验证它先前所获得并保存在告诉缓存中的邻居链路层地址的可达性,或者验证它自己的地址在本地链路上是唯一的。
5、重定向。路由器发送重定向报文以通知主机,对于特定的目的地自己不是最佳的路由器。
因此,本发明实施例中所述的安全邻居发现消息,可以为路由请求消息、路由宣告消息、邻居请求消息、邻居宣告消息或者重定向消息等,其可具有上述相同或类似的签名方法。
本发明实施例签名方法中,通过在签名选项中添加Algorithm字段,并在Algorithm字段中加入算法标识信息,保证了签名验证的顺利处理,提高了签名验证的准确性和可靠性,保证了CGA机制在SEND协议中的正常使用,可满足多种生成签名算法的验证。
上述实施例是在签名选项中添加算法标识信息,实际应用中也可在其它选项中添加算法标识信息,如在安全邻居发现消息的加密生成地址选项中添加生成签名的算法标识信息。
下面对现有技术中的加密生成地址选项进行说明。具体地,SEND协议中定义了CGA选项,对发送端的CGA协议进行验证。如表4所示,CGA选项的报文格式如下:
表4
其中,各字段的具体含义如下:
Type:11;
Length:总长度为8个字节;
Pad Length:此区域CGA参数域结束开始,一直到报文结束,发送端在发送报文时必须将此部分内容置为0,接收端应该忽略此部分内容;
Reserved:预留8位,发送端必须将此值设为0,接收端也必须忽略此值;
CGA Parameters:如果CGA选项和RSA签名选项同时出现的话,那么CGA参数中的公钥必须和RSA签名选项中的使用的公钥相同;对于收到两种不同公钥的包必须丢弃;
Padding:可变长度区域,作用在于将报文的总长度变成8的整倍数,具体长度值由Pad Length域定。
如表5所示,每一个上述CGA报文的CGA参数数据(CGA Parameters)结构格式如下:
表5
其中,各字段的具体含义如下:
Modifier:是一个128bits的无符号整数,可以是任何值,用于在CGA生成的时候执行哈希的扩展和通过给地址增加随机性来增强私密性;
Subnet Prefix:CGA64bits的子网前缀;
Collision Count:一个8bit的无符号整数,取值只能为0,1,2;在CGA生成过程中,相同地址检测检测出冲突的时候,为了解决这个冲突,冲突计数会增加;
Public Key:长度可变,包含地址拥有者的公钥;SEND协议应该使用RSA公/密钥对,使用RSA时,对应的验证预算必须是rsaEncryption,1.2.840.113549.1.1.1,RSA公钥必须使用在RFC3279中说明的RSAPublicKey类型;RSA密钥长度至少为384bits,其它的公钥类型在实施时可能导致不相容所以不适合在SEND中使用,公钥的长度由ASN.1 encoding决定;
Extension Fields:这是一个可选的长度可变的区域,在当前的规范中没有使用。在未来的版本中可能会用到这一区域作为CGA参数数据结构的扩展数据条目。IETF标准要求说明扩展区域的使用。实施的时候必须忽略任何未被使用的扩展区域。
如表6所示,在RFC4581标准中定义的上述Extension Fields的格式如下:
表6
其中,各字段的功能如下:
Extension Type:扩展字段类型的标识,为16-bit;
Extension Data Length:16-bit无符号整数,表示此扩展选项的长度,单位为字节;
Extension Data:扩展选项具体内容。
图4为本发明签名方法实施例三的流程图。该签名方法包括:
步骤301、在安全邻居发现消息的加密生成地址选项的算法扩展选项中,添加生成签名的算法标识信息。
本步骤中,可在加密生成地址选项的算法扩展选项的Algorithm字段中添加算法标识信息。具体地,本发明实施例中可在加密生成地址选项的Extension Fields中添加一个新类型的算法扩展选项,如表7所示的算法(Algorithm)扩展选项。
表7
其中,各字段功能如下:
Type:类型号;
Length:此扩展选项的长度;
Algorithm:生成签名所使用的算法,其值的定义和含义可与上述实施例二中的相同,可以是多种加密算法和多种哈希算法的组合,在此不再赘述。
步骤302、将加密生成地址选项的算法扩展选项中添加有生成签名的算法标识信息的安全邻居发现消息发送出去。
这样,接收端可从接收到的安全邻居发现消息的加密生成地址选项中获得生成签名的算法标识信息,根据该算法标识信息对签名进行验证。具体地,可从加密生成地址选项的算法扩展选项的Algorithm字段中,提取对应于生成签名的算法的算法标识信息,例如,Algorithm字段值为1时,表示发送端使用RSA&SHA-1算法生成签名,或者Algorithm字段值为4时,表示发送端使用ECC&MD-5算法生成签名,根据该算法标识信息对应的算法即可对签名进行验证。
本发明实施例可应用于路由器和主机之间,或者主机与主机之间发送安全邻居发现消息中,将使用生成签名的算法标识信息填充到算法扩展选项的Algorithm字段中,然后将此算法扩展选项加入到CGA参数选项的ExtensionFields字段结构中,使其随着数据包传递到接收端,接收端读取到CGA参数选项的Extension Fields字段结构时,从携带的新的算法扩展选项中的Algorithm字段获得其算法标识信息,得出安全邻居发现消息中签名的生成算法,根据该算法对签名进行验证。
本发明实施例中所述的安全邻居发现消息,可以为路由请求消息、路由宣告消息、邻居请求消息、邻居宣告消息或者重定向消息等,其可具有上述相同或类似的签名方法。
本发明实施例签名方法,通过在安全邻居发现消息中加密生成地址选项中添加带有Algorithm字段的算法扩展选项,并在所述Algorithm字段中添加算法标识信息,保证了签名验证的顺利处理,提高了签名验证的准确性和可靠性,保证了CGA机制在SEND协议中的正常使用,可满足对多种算法签名的验证处理。
图5为本发明签名方法实施例四的流程图。该签名方法包括:
步骤401、在安全邻居发现消息的加密生成地址的加密算法扩展选项中加入加密算法标识信息,在加密生成地址的哈希算法扩展选项中加入哈希算法标识信息。
本步骤中,可在加密生成地址选项的Extension Fields中添加两个算法扩展选项,一个算法扩展选项是加密算法扩展选项,另一个是哈希算法扩展选项。如表8所示的加密算法(Encryption Algorithm)扩展选项:
表8
其中,各字段功能如下:
Type:类型号;
Length:此扩展字段的长度;
Encryption Algorithm:生成签名所使用的加密算法,可以定义如下:加密算法RSA标识为1,加密算法ECC标识为2;
如表9所示的哈希算法(Hash Algorithm)扩展选项:
表9
其中,各字段功能如下:
Type:类型号;
Length:此扩展字段的长度;
Hash Algorithm:生成签名所使用的哈希算法,可以定义如下:哈希算法SHA-1标识为1,哈希算法MD-5标识为2。
这样,可在加密算法扩展选项的Encryption Algorithm字段中,添加加密算法标识信息,在哈希算法扩展选项的Hash Algorithm字段中,添加哈希算法标识信息。
步骤402、将添加了生成签名的算法标识信息的安全邻居发现消息发送出去。
这样,接收端在接收到安全邻居发现消息后,即可对安全邻居发现消息的加密生成地址选项中的加密算法扩展选项的Encryption Algorithm字段中,获得加密算法标识信息,从哈希算法扩展选项的Hash Algorithm字段中,获得哈希算法标识信息,根据获得的加密算法标识信息和哈希算法标识信息对获签名进行验证。例如,从加密算法扩展选项的Encryption Algorithm字段中获得的值为1时,表示生成签名时用到的加密算法为RSA算法,从哈希算法扩展选项的Hash Algorithm字段中获得的值为1时,表示生成签名时用到的哈希算法为SHA-l算法,即发送端在生成签名时的算法是RSA&SHA-1算法,因此,接收端可根据该算法对签名进行验证。
本发明实施例中,路由器和主机之间,或者主机与主机之间发送安全邻居发现消息时,可将要使用生成签名的加密算法标识信息填充到加密算法扩展选项的Encryption Algorithm字段中,同时把要使用生成签名的哈希算法标识信息填充到哈希算法扩展选项的Hash Algorithm字段中,并将加密算法扩展选项与哈希算法扩展选项加入到CGA参数选项的Extension Fields字段结构中,使其随着安全邻居消息数据包传递到接收端主机。接收端主机接收到安全邻居发现消息,对数据包进行相应的处理,从携带的新的加密算法扩展选项中的Encryption Algorithm字段获得加密算法标识信息,获得与所述加密算法标识信息对应的加密算法,同时从携带的新的哈希算法扩展选项中的Hash Algorithm字段获得哈希算法标识信息,获得与所述哈希算法标识信息对应的哈希算法,利用所获得的加密算法和哈希算法对签名进行验证。
本发明实施例签名方法,通过在加密生成地址选项中的加密算法扩展选项和哈希算法扩展选项中分别添加加密算法标识信息和哈希算法标识信息,可有效实现签名的验证,保证了签名的顺利处理,提高了签名验证的准确性和可靠性,保证CGA机制在SEND协议中的正常使用,可满足对多种算法签名的验证处理。
图6为本发明签名验证方法实施例一的流程图。该验证方法包括:
步骤501、从接收到的安全邻居发现消息中,提取生成签名的算法标识信息;
步骤502、利用所述算法标识信息对应的算法对所述签名进行验证。
本发明实施可接收上述签名方法实施例中所发送的安全邻居发送消息,并从中提取生成签名的算法标识信息,根据该算法标识信息对应的生成签名的算法,对签名进行验证。
本发明实施例通过从安全邻居发现消息中获取生成签名的算法标识信息,对签名进行验证,可有效提高签名验证的准确性和可靠性,满足各种不同签名算法的验证。
图7为本发明签名验证方法实施例二的流程图。该验证方法包括:
步骤601、从接收到的安全邻居发现信息的签名选项中,提取生成签名的算法标识信息。
具体地,本发明实施例中可从接收到安全邻居发现消息的签名选项的Algorithm字段中,提取算法标识信息,其中,该Algorithm字段中的数值即代表所述算法标识信息,Algorithm字段的具体位置,以及Algorithm字段中的数值的具体定义可参考上述本发明签名方法实施例二中的说明,在此不再赘述。
步骤602、利用得到的算法标识信息对应的算法对所述签名进行验证。
根据从签名选项的Algorithm字段中获得的值,即可确定发送端生成签名时的算法,如Algorithm字段值为1时,表明生成签名的算法是RSA&SHA-1算法,因此,利用该RSA&SHA-1算法即可对签名进行验证。其具体验证过程与现有技术中签名的验证方法相同或类似,在此不再赘述。
图8为本发明签名验证方法实施例三的流程图。该验证方法包括:
步骤701、从接收到的安全邻居发现信息的加密生成地址选项中,提取生成签名的算法标识信息。
本发明实施例接收到的安全邻居发现消息的加密地址选项中携带有生成签名的算法标识信息,具体地,该算法标识信息可添加在加密地址选项的算法扩展选项的Alogrithm字段中,其中,该Algorithm字段中的数值即代表所述算法标识信息,所述的算法扩展选项以及Algorithm字段的位置,以及Algorithm字段中的数值的具体定义可参考上述本发明签名方法实施例三中的说明,在此不再赘述。
步骤702、利用得到的算法标识信息对应的算法对所述签名进行验证。
根据从加密生成地址的算法扩展选项中的Algorithm字段中获得的数值值,即可确定发送端在生成签名时的算法,如Algorithm字段值为1时,表明生成签名的算法是RSA&SHA-1算法,因此,利用该RSA&SHA-1算法即可对签名进行验证。其具体验证过程与现有技术中签名验证方法相同或类似,在此不再赘述。
此外,本发明实施例步骤701中,也可从加密生成地址的加密算法扩展选项和哈希算法扩展选项中获得算法标识信息,即从加密算法扩展选项的Encryption Algorithm字段中获得加密算法标识信息,从哈希算法扩展选项的Hash Algorithm字段中,获得哈希算法标识信息,相应地,在步骤702中,可根据获得的加密算法标识信息和哈希算法标识信息对获签名进行验证。例如,从加密算法扩展选项的Encryption Algorithm字段中获得的值为1时,表示生成签名时用到的加密算法为RSA算法,从哈希算法扩展选项的HashAlgorithm字段中获得的值为1时,表示生成签名时用到的哈希算法为SHA-1算法,即发送端在生成签名时的算法是RSA&SHA-1算法,因此,可利用该RSA&SHA-1算法对签名进行验证。其中,加密算法扩展选项和哈希算法扩展选项以及Encryption Algorithm字段、Hash Algorithm字段的位置,和Encryption Algorithm字段、Hash Algorithm字段数值对应的算法,可参考上述本发明签名方法实施例四中的说明,在此不再赘述。
本发明实施例验证方法,可从安全邻居发现消息中加密生成地址选项中获取生成签名的算法标识信息,根据获得的算法标识信息对接收到的签名进行验证,有效保证了对签名验证的顺利处理,提高了签名验证的准确性和可靠性,保证了CGA机制在SEND协议中的正常使用,可实现对多种签名的验证处理。
图9为本发明签名装置实施例的结构示意图。该签名装置包括:添加模块11和发送模块12,其中,
添加模块11,用于在安全邻居发现消息中添加生成签名的算法标识信息;
发送模块12,用于发送所述安全邻居发现消息。
本发明实施例中,添加模块11可在安全邻居发现消息中添加生成签名的算法标识信息,并将其通过发送模块12发送出去。使得接收端可根据接收到安全邻居信息中的算法标识信息对签名进行验证,提高签名验证的准确性和可靠性。
具体地,本发明实施例中的添加模块11可用于在所述安全邻居发现消息的签名选项中,添加生成签名的所述算法标识信息,其具体实现过程可参考上述本发明签名方法实施例二中的说明,在此不再赘述。
或者,本发明实施例中的添加模块11也可用于在所述安全邻居发现消息的加密生成地址选项中,添加生成签名的所述算法标识信息,其具体实现过程可参考上述本发明签名方法实施例三或实施例四中的说明,在此不再赘述。
本发明实施例通过在安全邻居发现消息中加入生成签名的算法标识信息,可有效提高签名验证的准确性和可靠性,满足对多种不同算法签名的验证处理。
图10为本发明签名验证装置实施例的结构示意图。该签名验证装置包括:提取模块21和验证模块22,其中,
提取模块21,用于从接收到的安全邻居发现消息中,提取生成签名的算法标识信息;
验证模块22,用于利用该算法标识信息对应的生成算法对所述签名进行验证。
本发明实施例中,提取模块21可从接收到的安全邻居发现消息中获得生成签名的算法标识信息,并将其发送给验证模块22,由验证模块22根据该算法标识信息对应的算法对签名进行验证,提高签名验证的准确性和可靠性。
具体地,本发明实施例中的提取模块21可用于从接收到的所述安全邻居发现信息的签名选项中,提取生成签名的算法标识信息,其具体地实现过程可参考上述本发明签名验证方法实施例二中的说明,在此不再赘述。
或者,本发明实施例中的提取模块21也可用于从接收到的安全邻居发现信息的加密生成地址选项中,提取生成签名的算法标识信息,其具体实现过程可参考上述本发明签名验证方法实施例三中的说明,在此不再赘述。
本发明实施例通过从接收到的安全邻居消息中获取生成签名的算法标识信息,对签名进行验证,可有效提高签名验证的准确性和可靠性,满足对多种非不同算法签名的验证处理。
图11为本发明签名验证系统实施例的结构示意图。该签名验证系统包括:签名装置1和签名验证装置2,其中,
签名装置1,用于在安全邻居发现消息中添加生成签名的算法标识信息,并发送;
签名验证装置2,用于从接收到的安全邻居发现消息中,提取生成签名的所述算法标识信息,并利用所述算法标识信息对应的算法对所述签名进行验证。
本发明签名装置1可在生成签名时在安全邻居发现消息中添加生成签名的算法标识信息,使得签名验证装置2可根据该算法标识信息对签名进行验证,有效保证了签名验证的准确性和可靠性,可满足对多种签名验证的处理。其中,本发明实施例中所述的签名装置1可具有与上述本发明签名装置实施例相同的结构和功能,签名验证装置2可具有与上述本发明签名验证装置实施例相同的结构和功能,在此不再赘述。
本发明实施例通过在安全邻居消息中添加生成签名的算法标识信息,在进行签名验证时可根据该算法标识信息对签名进行验证,可有效提高签名验证的准确性和可靠性,满足对多种非不同算法签名的验证处理。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围。
Claims (12)
1、一种签名方法,其特征在于,包括:
在安全邻居发现消息中添加生成签名的算法标识信息;
发送所述安全邻居发现消息。
2、根据权利要求1所述的签名方法,其特征在于,所述在安全邻居发现消息中添加生成签名的算法标识信息包括:
在安全邻居发现消息的签名选项中,添加生成签名的所述算法标识信息。
3、根据权利要求2所述的签名方法,其特征在于,所述添加生成签名的所述算法标识信息包括:
在所述签名选项的算法字段中添加所述算法标识信息。
4、根据权利要求1所述的签名方法,其特征在于,所述在安全邻居发现消息中添加生成签名的算法标识信息包括:
在安全邻居发现消息的加密生成地址选项中,添加生成签名的所述算法标识信息。
5、根据权利要求4所述的签名方法,其特征在于,所述添加生成签名的所述算法标识信息包括:
在所述加密生成地址选项的算法扩展选项中,添加所述算法标识信息。
6、根据权利要求5所述的签名方法,其特征在于,所述添加所述算法标识信息包括:
在所述算法扩展选项的算法字段中添加所述算法标识信息。
7、根据权利要求4所述的签名方法,其特征在于,所述算法标识信息包括加密算法标识信息和哈希算法标识信息,所述添加生成签名的算法标识信息包括:
在所述加密生成地址选项的加密算法扩展选项中添加所述加密算法标识信息,在所述加密生成地址选项的哈希算法扩展选项中添加所述哈希算法标识信息。
8、一种签名装置,其特征在于,包括:
添加模块,用于在安全邻居发现消息中添加生成签名的算法标识信息;
发送模块,用于发送所述安全邻居发现消息。
9、根据权利要求8所述的签名装置,其特征在于,所述添加模块用于在所述安全邻居发现消息的签名选项中,添加生成签名的所述算法标识信息;或者,
所述添加模块,用于在所述安全邻居发现消息的加密生成地址选项中,添加生成签名的所述算法标识信息。
10、一种签名验证方法,其特征在于,包括:
从接收到的安全邻居发现消息中,提取生成签名的算法标识信息;
利用所述算法标识信息对应的算法对所述签名进行验证。
11、一种签名验证装置,其特征在于,包括:
提取模块,用于从接收到的安全邻居发现消息中,提取生成签名的算法标识信息;
验证模块,用于利用所述算法标识信息对应的算法对所述签名进行验证。
12、一种签名验证系统,其特征在于,包括:
签名装置,用于在安全邻居发现消息中添加生成签名的算法标识信息,并发送;
签名验证装置,用于从接收到的安全邻居发现消息中,提取生成签名的所述算法标识信息,并利用所述算法标识信息对应的算法对所述签名进行验证。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910089904A CN101616005A (zh) | 2009-07-27 | 2009-07-27 | 签名方法、装置以及签名验证方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910089904A CN101616005A (zh) | 2009-07-27 | 2009-07-27 | 签名方法、装置以及签名验证方法、装置和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101616005A true CN101616005A (zh) | 2009-12-30 |
Family
ID=41495435
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910089904A Pending CN101616005A (zh) | 2009-07-27 | 2009-07-27 | 签名方法、装置以及签名验证方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101616005A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103647650A (zh) * | 2013-12-18 | 2014-03-19 | 用友软件股份有限公司 | 基于规则定义的自动签名/验签装置和自动签名/验签方法 |
CN103841156A (zh) * | 2012-11-26 | 2014-06-04 | 腾讯科技(深圳)有限公司 | 一种基于端对端协议的文件下载保护方法、装置,及系统 |
CN112861189A (zh) * | 2021-02-04 | 2021-05-28 | 北京百度网讯科技有限公司 | 签名的生成方法和验证方法、装置、设备和介质 |
CN116846564A (zh) * | 2023-08-30 | 2023-10-03 | 北京格尔国信科技有限公司 | 一种支持多算法的签名验签方法、系统、终端及存储介质 |
-
2009
- 2009-07-27 CN CN200910089904A patent/CN101616005A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103841156A (zh) * | 2012-11-26 | 2014-06-04 | 腾讯科技(深圳)有限公司 | 一种基于端对端协议的文件下载保护方法、装置,及系统 |
CN103647650A (zh) * | 2013-12-18 | 2014-03-19 | 用友软件股份有限公司 | 基于规则定义的自动签名/验签装置和自动签名/验签方法 |
CN103647650B (zh) * | 2013-12-18 | 2017-02-08 | 用友网络科技股份有限公司 | 基于规则定义的自动签名/验签装置和自动签名/验签方法 |
CN112861189A (zh) * | 2021-02-04 | 2021-05-28 | 北京百度网讯科技有限公司 | 签名的生成方法和验证方法、装置、设备和介质 |
CN112861189B (zh) * | 2021-02-04 | 2024-02-06 | 北京百度网讯科技有限公司 | 签名的生成方法和验证方法、装置、设备和介质 |
CN116846564A (zh) * | 2023-08-30 | 2023-10-03 | 北京格尔国信科技有限公司 | 一种支持多算法的签名验签方法、系统、终端及存储介质 |
CN116846564B (zh) * | 2023-08-30 | 2024-02-02 | 北京格尔国信科技有限公司 | 一种支持多算法的签名验签方法、系统、终端及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8098823B2 (en) | Multi-key cryptographically generated address | |
US7624264B2 (en) | Using time to determine a hash extension | |
US7370197B2 (en) | Method and system for authenticating messages | |
US7203837B2 (en) | Methods and systems for unilateral authentication of messages | |
CN101160924B (zh) | 在通信系统中分发证书的方法 | |
US7409544B2 (en) | Methods and systems for authenticating messages | |
KR101234784B1 (ko) | 아이디 기반 암호화 방법 및 그 장치 | |
CN101960814B (zh) | Ip地址委派 | |
US8261062B2 (en) | Non-cryptographic addressing | |
US7436833B2 (en) | Communication system, router, method of communication, method of routing, and computer program product | |
CN101640631B (zh) | 一种数据包处理的方法和装置 | |
US7949876B2 (en) | Method and nodes for optimized and secure communication between routers and hosts | |
US20050041634A1 (en) | Verifying location of a mobile node | |
CN101848085B (zh) | 通信系统、验证设备、报文身份的验证及签名方法 | |
US11558194B2 (en) | Secured protection of advertisement parameters in a zero trust low power and lossy network | |
Thubert et al. | Address protected neighbor discovery for low-power and lossy networks | |
CN101616005A (zh) | 签名方法、装置以及签名验证方法、装置和系统 | |
CN107948124A (zh) | 一种arp条目更新管理方法、装置及系统 | |
Castelluccia et al. | Protecting AODV against Impersonation attacks | |
Zapata | Key management and delayed verification for ad hoc networks | |
KR102316860B1 (ko) | 신호를 방출하는 송신기 및 신호를 수신하는 수신기 | |
Kun et al. | Anonymous authentication with unlinkability for wireless environments | |
JP2007166552A (ja) | 通信装置及び暗号通信方法 | |
KR100917392B1 (ko) | IPv6 네트워크에서 인접 노드의 탐색 메시지를송수신하는 방법 | |
CN114760079B (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 | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20091230 |