买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】用于利用链式签名进行投票的方法_西门子交通有限公司_201780020121.4 

申请/专利权人:西门子交通有限公司

申请日:2017-03-01

公开(公告)日:2021-05-07

公开(公告)号:CN109155089B

主分类号:G07C13/00(20060101)

分类号:G07C13/00(20060101);H04L9/32(20060101)

优先权:["20160329 DE 102016205121.0"]

专利状态码:有效-授权

法律状态:2021.05.07#授权;2019.01.29#实质审查的生效;2019.01.04#公开

摘要:本发明涉及一种用于利用链式签名进行投票的方法,其中设置M个复制品R1,R2,RM用于产生M个冗余消息,其中,M≥2,并且设置N个表决器模块VM1,VM2,VMN,其中N≥2,其中每个表决器模块VM1,VM2,VMN具有用于对冗余消息O1,O2,OM进行投票的表决器V1,V2,VN以及带有用于签署消息的私有子秘钥PR1,PR2,PRN的加密单元K1,K2,KN。将复制品的冗余消息O1,O2,OM递交到每个表决器模块VM1,VM2,VMN,从而每个表决器模块VM1,VM2,VMN的表决器V1,V2,VN基于冗余消息产生投票消息M1,M2,MN。借助N个私有子秘钥PR1,PR2,PRN产生投票消息的签名,其由接收器单元E的公有密钥PU检查。如果检查成功,则接受多个投票消息。此外,本发明还建议一种用于实施用于利用链式签名进行投票的方法的装置。

主权项:1.一种用于利用链式签名进行投票的方法,包括如下步骤:a提供M个复制品R1,R2,RM用于产生M个冗余消息O1,O2,OM,其中M≥2;b提供N个表决器模块VM1,VM2,VMN,其中N≥2,其中每个表决器模块VM1,VM2,VMN具有用于对冗余消息进行投票的表决器V1,V2,VN以及带有用于签署消息的私有子秘钥PR1,PR2,PRN的加密单元K1,K2,KN;c将复制品R1,R2,RM的冗余消息O1,O2,OM递交到每个表决器模块VM1,VM2,VMN,从而每个表决器模块VM1,VM2,VMN的表决器V1,V2,VN基于冗余消息O1,O2,OM产生投票消息M1,M2,MN;d如果第一表决器V1产生第一投票消息,则通过第一表决器模块VM1利用第一私有子秘钥PR1创建第一投票消息的第一签名;e将第n个签名和第n个投票消息从第n个表决器模块递交到第n+1个表决器模块;f将来自第n+1个表决器模块的投票消息与第n个投票消息相比较,并且如果第n个投票消息与第n+1个投票消息一致,则在第n个签名上利用第n+1个表决器模块的第n+1个私有子秘钥创建第n+1个签名;g针对每个n按照升序实施步骤e和f,其中1≤n≤N-1;h将第N个签名和第N个投票消息递交到接收器单元E;i如果接收器加密单元EK利用公有密钥PU成功检查了第N个签名,则通过接收器加密单元EK接受第N个投票消息。

全文数据:用于利用链式签名进行投票的方法技术领域本发明涉及一种用于利用链式签名进行投票的方法以及一种用于实施该方法的装置。背景技术安全技术数据必须被多次冗余地、相同地计算,其中每种计算类型也被称为信道或者复制,或者至少被冗余地检查,以便在信号技术方面被认为是安全的。这适用于所有符合相关标准的安全等级例如IEC61508,CENELECEN50129。通过投票,从多次计算数据得到信号技术上安全的消息。在投票过程中,由一个表决器多次输入的数据或消息彼此比较并且输出“正确的”数据。例如,表决器可以执行多数决定,即如果表决器的多数输入显示特定的消息,则输出该消息。迄今为止,特殊的信号技术安全设备或者信号技术安全部件已经被用于投票。然而,如果表决器也可以在信号技术不安全的设备上、理想地在与投票消息相同的设备上实施,则对于整个系统会更有利。然而,迄今为止,至少在较高的安全级别中,针对表决器仅使用不符合通用标准的专用的硬件。迄今为止,尚不可使用商业的、信号技术不安全的硬件。发明内容本发明要解决的技术问题是,开发一种用于对消息进行投票的方法,所述方法满足较高的安全要求并且可以在商用的硬件上实施。根据本发明的用于利用链式签名进行投票的方法基本上包括如下步骤:在步骤a中,提供多个M个复制品用于产生M个冗余消息,其中M≥2。在步骤b中,提供多个N个表决器模块,其中N≥2,其中每个表决器模块具有用于对冗余消息进行投票的表决器以及带有用于签署消息的私有子秘钥的加密单元。在步骤c中,将复制品的冗余消息递交到每个表决器模块,从而每个表决器模块的表决器基于冗余消息产生投票消息。在另外的步骤d中,如果第一表决器产生第一投票消息,则通过第一表决器模块利用第一私有子秘钥创建第一投票消息的第一签名。在另外的步骤e中,将第n个签名和第n个投票消息从第n个表决器模块递交到第n+1个表决器模块。在另外的步骤f中,将来自第n+1个表决器的投票消息与第n个投票消息相比较,并且如果第n个投票消息与第n+1个投票消息一致,则在第n个签名上利用第n+1个表决器模块的第n+1个私有子秘钥创建第n+1个签名。在另外的步骤g中,针对每个n其中1≤n≤N-1按照升序实施步骤e和f。在另外的步骤h中,将第N个签名和第N个投票消息递交到接收器单元。在另外的步骤i中,如果接收器加密单元利用公有密钥成功检查了第N个签名,则通过接收器加密单元接受第N个投票消息。通过根据本发明的方法,使得投票的原理与加密的方法相结合。在此,前提条件始终是一级的投票成功并且与前面级别的投票结果一致。如果没有该前提条件,则不会通过子秘钥进行子签名。然而,只有当所有签名都存在时,公有密钥才“匹配”由子秘钥产生的签名,并且然后由接收器单元接受投票消息。换言之,接收器单元是验证单元、验证设备或者接收器。通过链式签名的方案,针对投票消息产生了高的安全性。此外,本发明还具有如下优点:该方法可以在信号技术不安全的硬件上、例如在商用PC上实施。优选地,所有私有子秘钥彼此不同。优选地,在消息的哈希值Hashwert上形成签名。由此有利地减少了较长消息的数据量,并且可以更快地运行链式签名的过程。优选地,通过将剩余类中的私有子秘钥相乘得出私有秘钥,并且公有密钥与所得出的私有秘钥相乘在剩余类中得出1,其中由此再次获得原始的哈希值或者原始的消息。这可以优选地且非常快速地实现签名。然后,可以由接收器单元检查原始的哈希值或者原始的消息。优选地,私有秘钥可以交换地从私有子秘钥中计算出,换言之,这意味着,签署的顺序并不重要。因此,只要所有的表决器模块参与,进行验证的表决器模块的顺序就不重要。将第n个表决器模块的投票消息递交到第n+1个表决器模块与将多个复制品R1,R2,RM的冗余消息递交到第n+1个表决器模块在时间上一致其中1≤n≤N-1是有利的。由此减少了链式签名的时间延迟。优选地,每个表决器与其他表决器分开。这意味着,使用与对复制品进行分离相同的技术,或者换言之使用与对复制品进行封装或者隔离相同的技术。由此实现了计算路径的独立性。表决器模块的合适的封装例如可以通过针对SIL3或者SIL4的彩色的仿真器实现,其中SIL表示安全完整性等级。此外,想要在商用PC上实现该方法也是有利的。表决器可以实施为鉴别器表决器或者多数表决器。只有所有的输入端一致,鉴别器表决器才输出投票消息。多数表决器形成多数决定,即如果多数消息具有一致性,则输出该消息。优选地,如果不能形成投票消息,则表决器不输出消息或者输出否定消息。优选地,将投票消息从第n个表决器模块无中断地递交到第n+1个表决器模块,其中1≤n≤N-1。由此减小签署的持续时间。优选地,各个复制品的每个冗余消息可以被安全技术地识别。这例如可以通过与复制品识别的校验和来实现。此外,本发明还建议一种用于实施用于利用链式签名进行投票的方法的装置。所述装置包括多个M个复制品来产生M个冗余消息,其中M≥2。此外,还提供多个N个表决器模块,其中N≥2,其中,每个表决器模块具有用于对冗余消息进行投票的表决器以及用于签署消息的私有子秘钥,其中每个表决器的输入端与每个复制品的输出端连接。每个第n个表决器模块的输出端与每个第n+1个表决器模块的输入端连接以用于传输投票消息和签名,其中1≤n≤N-1,并且设置接收器单元,所述接收器单元接收由第N个表决器模块输出的签名以及投票消息并且利用公有密钥检查第N个签名。此外,本发明还建议一种计算机程序,所述计算机程序可以实现数据处理装置,在所述计算机程序加载到数据处理装置的存储装置中之后,执行用于利用链式签名进行投票的方法。此外,本发明还建议一种计算机可读的存储介质,在所述存储介质上存储有可以实现数据处理装置的程序,在所述程序加载到数据处理装置的存储装置中之后,执行用于利用链式签名进行投票的方法。附图说明上面描述的本发明的特点、特征和优点以及实现方式结合下面对实施例的描述更清楚且明晰地理解,其中结合附图更详细地解释实施例。附图中:图1示出了根据示例性实施方式的用于利用链式签名进行投票的方法的图示,和图2示出了根据示例性实施方式的用于利用链式签名进行投票的装置的图示。具体实施方式图1示出了根据示例性实施的用于利用链式签名进行投票的方法。分别提供多个M个相应的复制品R1、R2、RM用于产生M个冗余消息O1、O2、OM,其中M≥2。这些冗余消息O1、O2、OM在内容上是相同的在意义上是相同的。此外,提供多个M个表决器模块VM1、VM2、VMN,其中,每个表决器模块VM1、VM2、VMN具有用于对冗余消息O1、O2、OM进行投票的表决器V1、V2、VN,并且具有带有用于签署消息的私有子秘钥PR1、PR2、PRN的加密单元K1、K2、KN。将复制品R1、R2、RM的冗余消息O1、O2、OM递交到每个表决器模块VM1、VM2、VM3,从而每个表决器模块VM1、VM2、VMN的表决器V1、V2、VN基于冗余消息产生投票消息。在图1中,这例如通过在每个表决器模块VM1、VM2、VMN上的垂直的虚线图形地表示,在这些虚线上借助所示的箭头表示相应的冗余消息O1、O2、OM。如果第一表决器V1产生第一投票消息M1,则通过第一表决器模块VM1利用第一私有子秘钥PR1创建第一投票消息M1的第一签名。在此,第一签名通过第一私有子秘钥PR1的秘钥算子或者秘钥值pri1被应用于投票消息M1上,或者替换地被应用于在附图中用表示的、消息的哈希值上。然后,该第一签名与第一投票消息M1一起被递交到第二表决器模块VM2。在该第二表决器模块VM2中,现在通过第二表决器V2基于复制品R1、R2、RM的冗余消息O1、O2、OM创建第二投票消息M2。将该第二投票消息与第一投票消息M1相比较。如果两者一致,则在第一签名上借助第二私有子秘钥PR2创建第二签名,这通过具有算子的表示。然后,该第二签名与第一投票消息M1或者与第二投票消息M2一起递交。由于两个投票消息M1、M2作为签署的条件必须一致,因此转发两者中的哪一个并不重要。这在图1中由排他的逻辑“异”符号表示,其对应于“要么…要么…”。例如可以使用第一投票消息M1来递交。该方法现在以这种形式继续用于另外的表决器模块VM1、VM2、VMN。因此,一般地表述如下:将第n个签名和第n个投票消息从第n个表决器模块递交到第n+1个表决器模块。然后将来自第n+1个表决器的投票消息与第n个投票消息相比较,并且如果第n个投票消息与第n+1个投票消息一致,则在第n个签名上利用第n+1个表决器模块的第n+1个私有子秘钥创建第n+1个签名。这针对每个n按照升序实施,其中1≤n≤N-1。因此,在最后的步骤中,在第N-1个签名上通过第N个私有子秘钥PRN创建第N个签名,这在图1中由具有算子的表示。然后,将第N个签名和第N个投票消息MN或者另外的一致的投票消息递交到接收器单元E。在此,如果接收器加密单元EK利用公有密钥PU成功检查了第N个签名,则通过接收器加密单元EK接受第N投票消息MN。下面可以以数学的方式描述该方法。私有秘钥PR下面用pri表示作为私有子秘钥PR1、PR2、PRN用prin表示,其中1≤n≤N借助算子的关联给出,从而在另外的表述中,私有秘钥PR不是prim,因为私有秘钥PR被表示为多个子秘钥P1、P2、PN的关联。由此,私有秘钥PR与公有密钥PU在此表示为pub通过关联在剩余类中得出中性元素1,即其中,a表示每个字符的可能的值的数量,1表示基础字符长度,a1表示彼此不同的秘钥的数量以及≡表示恒等于。因此,私有秘钥PR和公有密钥关于关联在模块上是彼此相反的。通常,处理器在二进制系统中工作,即这对应于a=2并且是优选的变形。通常,比特长度1在128至160比特bit之间,但是也可以是更短的或者更长的比特长度并且因此使用更短和更长的秘钥。如果现在缺少私有子秘钥Pr1、Pr2、PRN的签名,则接收器单元E不能成功地将原始的消息恢复。通过链式签名的方案,针对投票消息产生了高的安全性。该方法可以在信号技术不安全的硬件上、例如在商用PC上实施。通过根据本发明的方法,使得投票的原理与加密的方法相结合。在此,前提条件始终是一级的投票成功并且与前面级别的投票结果一致。如果没有该前提条件,则不会通过子秘钥进行子签名。然而,只有当所有签名都存在时,公有密钥才“匹配”由子秘钥产生的签名,并且然后由接收器单元E接受该消息。考虑不同的合适的算子作为关联例如,还包括矩阵关联。由此例如签名的顺序是重要的,并且通常不能调换。此外,所有私有子秘钥Pri1、Pr2、PrN是彼此不同的。优选地,在消息的哈希值上形成签名。由此,有利地减小了较长消息的数据量,并且可以更快地运行链式签名过程。然而,优选地通过将剩余类中的私有子秘钥PR1、Pr2、PRN相乘得出私有秘钥PR。公有密钥PU与所得出的私有秘钥PR相乘在剩余类中得出1,其中由此再次获得原始的哈希值或者原始的消息。这可以优选地且非常快速地实现签名。例如,通过利用相应的哈希函数从投票消息计算哈希值并且在应用相乘所有的私有子秘钥之后与递交的哈希值相比较,由此由接收器单元E可以检查原始的哈希值或者原始的消息。优选地,私有秘钥PR应该可以交换地从私有子秘钥PR1、PR2、PRN中计算出。然后,只要至少所有的表决器模块VM1、VM2、VMN参与,进行验证的表决器模块VM1、VM2、VMN的顺序就不重要了。这例如在上述相乘中是这种情况。此外,还可以进行同步。如果将第n个表决器模块的投票消息递交到第n+1个表决器模块与将多个复制品R1、R2、RM的冗余消息O1、O2、OM递交到第n+1个表决器模块在时间上一致,其中1≤n≤N-1,则快速的按时间顺序的签名是有意义的。由此减少了链式签名的时间延迟。优选地,每个表决器V1、V2、VN与其他表决器V1、V2、VN分开。这意味着,使用与对复制品进行分离相同的技术,或者换言之使用与对复制品进行封装或者隔离相同的技术。由此实现了计算路径的独立性,由此显著降低了相同的错误输出的风险。表决器模块的合适的封装例如可以通过针对SIL3或者SIL4的彩色的仿真器实现,其中SIL表示安全完整性等级。此外,想要在商用PC上实现该方法也是有利的。表决器V1、V2、VN可以实施为鉴别器表决器或者多数表决器。只有所有的输入端一致,鉴别器表决器才输出投票消息。多数表决器形成多数决定,即如果多数消息具有一致性,则输出该消息。优选地,如果不能形成投票消息,则表决器V1、V2、VN不输出消息或者输出否定消息。这例如是如下情况:多数表决器恰好获得两个相互矛盾的消息。当一个输入消息与其他输入消息不同时,在鉴别器表决器的情况下也是这种情况。优选地,将投票消息从第n个表决器模块无中断地递交到第n+1个表决器模块,其中1≤n≤N-1。优选地,各个复制品R1、R2、RM的每个冗余消息O1、O2、OM可以被安全技术地识别。这例如可以通过与复制品识别的校验和来实现。由此,例如可以识别复制品R1、R2、RM的错误响应。图2示例性示出了用于利用链式签名进行投票的装置的示意图。在此,提供多个M个复制品R1、R2、RM来产生M个冗余消息,其中M≥2。此外,存在多个N个表决器模块VM1、VM2、VMN,其中N≥2。在此,每个表决器模块VM1、VM2、VMN配备有用于对冗余复制品R1、R2、RM的冗余消息O1、O2、OM进行投票的表决器V1、V2、VN以及带有用于签署消息的私有子秘钥PR1、PR2、PRN的加密单元K1、K2、KN,其中每个表决器模块VM1、VM2、VMN的输入端与每个复制品R1、R2、RN的输出端连接。每个第n个表决器模块的输出端与每个第n+1个表决器模块的输入端连接以用于传输投票消息和签名,其中1≤n≤N-1,并且设置接收器单元E,所述接收器单元接收由第N个表决器模块VMN输出的签名以及投票消息并且利用公有密钥PU检查第N个签名。总之,提供一种用于进行投票的、与非对称加密方法相结合的方法。在此多级地使用链式签名。在此,前提条件始终是一级的投票成功并且与前面级别的投票结果一致。如果没有该前提条件,则不会通过子秘钥进行子签名。然而,只有当所有子签名都存在时,公有密钥才“匹配”由子秘钥产生的签名,并且然后由接收器单元E接受该消息。通过链式签名的方案,针对投票消息产生了高的安全性。由此,该方法可以在信号技术不安全的硬件上、例如在商用PC上实施。虽然在细节上通过优选的实施例详细解释和描述了本发明,但是本发明不受所公开的示例的限制,并且本领域技术人员可以从中导出其它变形,而不脱离本发明的保护范围。附图标记列表R1,R2,RM复制品O1,O2,OM冗余的消息VM1,VM2,VMN表决器模块K1,K2,KN加密单元PR1,PR2,PRN私有子秘钥PR私有秘钥E接收器单元EK接收器加密单元PU公有密钥M1,M2,MN投票消息

权利要求:1.一种用于利用链式签名进行投票的方法,包括如下步骤:a提供M个复制品R1,R2,RM用于产生M个冗余消息O1,O2,OM,其中M≥2;b提供N个表决器模块VM1,VM2,VMN,其中N≥2,其中每个表决器模块VM1,VM2,VMN具有用于对冗余消息进行投票的表决器V1,V2,VN以及带有用于签署消息的私有子秘钥PR1,PR2,PRN的加密单元K1,K2,KN;c将复制品R1,R2,RN的冗余消息O1,O2,OM递交到每个表决器模块VM1,VM2,VMN,从而每个表决器模块VM1,VM2,VMN的表决器V1,V2,VN基于冗余消息O1,O2,OM产生投票消息M1,M2,MN;d如果第一表决器V1产生第一投票消息,则通过第一表决器模块VM1利用第一私有子秘钥PR1创建第一投票消息的第一签名;e将第n个签名和第n个投票消息从第n个表决器模块递交到第n+1个表决器模块;f将来自第n+1个表决器的投票消息与第n个投票消息相比较,并且如果第一投票消息与第n+1个投票消息一致,则在第n个签名上利用第n+1个表决器模块的第n+1个私有子秘钥创建第n+1个签名;g针对每个n按照升序实施步骤e和f,其中1≤n≤N-1;h将第N个签名和第N个投票消息递交到接收器单元E;i如果接收器加密单元EK利用公有密钥PU成功检查了第N个签名,则通过接收器加密单元EK接受第N个投票消息。2.根据权利要求1所述的方法,其中,所有私有子秘钥PR1,PR2,PRN彼此不同。3.根据上述权利要求中任一项所述的方法,其中,在消息的哈希值上形成所述签名。4.根据上述权利要求中任一项所述的方法,其中,通过将剩余类中的私有子秘钥PR1,PR2,PRN相乘得出私有秘钥PR,并且公有密钥PU与所得出的私有秘钥PR相乘在剩余类中得出1,其中由此再次获得原始的哈希值或者原始的消息。5.根据上述权利要求中任一项所述的方法,其中,私有秘钥PR能够交换地从私有子秘钥PR1,PR2,PRN中计算出。6.根据上述权利要求中任一项所述的方法,其中,将第n个表决器模块的投票消息递交到第n+1个表决器模块与将多个复制品R1,R2,RN的冗余消息O1,O2,OM递交到第n+1个表决器模块在时间上一致,其中1≤n≤N-1。7.根据上述权利要求中任一项所述的方法,其中,每个表决器V1,V2,VN与其他表决器V1,V2,VN分开。8.根据上述权利要求中任一项所述的方法,其中,所述表决器V1,V2,VN实施为鉴别器表决器或者多数表决器。9.根据上述权利要求中任一项所述的方法,其中,如果不能形成投票消息,则每个表决器V1,V2,VN不产生消息或者产生否定消息。10.根据上述权利要求中任一项所述的方法,其中,将投票消息从第n个表决器模块无中断地递交到第n+1个表决器模块,其中1≤n≤N-1。11.根据上述权利要求中任一项所述的方法,其中对于每个冗余消息O1,O2,ON,安全技术地识别各个复制品R1,R2,RN。12.一种用于实施根据权利要求1至11所述的用于利用链式签名进行投票的方法的装置:-M个复制品R1,R2,RN用于产生M个冗余消息,其中M≥2;-N个表决器模块VM1,VM2,VMN,其中N≥2,其中,每个表决器模块VM1,VM2,VMN具有用于对冗余消息进行投票的表决器V1,V2,VN以及用于签署消息的私有子秘钥PR1,PR2,PRN,其中每个表决器V1,V2,VN的输入端与每个复制品R1,R2,RN的输出端连接;-每个第n个表决器模块的输出端与每个第n+1个表决器模块的输入端连接以用于传输投票消息和签名,其中1≤n≤N-1,并且设置接收器单元E,所述接收器单元接收由第N个表决器模块VMN输出的签名以及投票消息并且利用公有密钥PU检查第N个签名。13.一种计算机程序,所述计算机程序能够实现数据处理装置,在将所述计算机程序加载到数据处理装置的存储部件中之后,执行根据权利要求1至11所述的用于利用链式签名进行投票的方法。14.一种计算机可读的存储介质,在其上存储有能够实现数据处理装置的程序,在将所述程序加载到数据处理装置的存储部件之后,执行根据权利要求1至11所述的用于利用链式签名进行投票的方法。

百度查询: 西门子交通有限公司 用于利用链式签名进行投票的方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。