CN106209352B - 具有前向安全性的有效密钥衍生 - Google Patents

具有前向安全性的有效密钥衍生 Download PDF

Info

Publication number
CN106209352B
CN106209352B CN201610330358.XA CN201610330358A CN106209352B CN 106209352 B CN106209352 B CN 106209352B CN 201610330358 A CN201610330358 A CN 201610330358A CN 106209352 B CN106209352 B CN 106209352B
Authority
CN
China
Prior art keywords
master key
key value
value
session
new
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
CN201610330358.XA
Other languages
English (en)
Other versions
CN106209352A (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.)
NXP BV
Original Assignee
NXP BV
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 NXP BV filed Critical NXP BV
Publication of CN106209352A publication Critical patent/CN106209352A/zh
Application granted granted Critical
Publication of CN106209352B publication Critical patent/CN106209352B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

各种实施例涉及一种用于在主机装置和不同装置间产生会话密钥和新的主密钥的方法、装置和非暂时性媒体,所述方法、装置和非暂时性媒体包括:确定用于与不同装置的安全通信的主密钥值,其中所述主密钥值用作主密钥;使用所述主密钥来衍生出至少一个会话密钥;基于所述主密钥来产生新的主密钥值;删除当前的主密钥值;以及将所述新的主密钥值用作所述主密钥。

Description

具有前向安全性的有效密钥衍生
技术领域
本文所公开的各种实施例大体上涉及安全信道通信,并且更确切地说但非排他地,涉及会话密钥衍生和主密钥安全性。
背景技术
当两个装置想要安全地通信时,它们通常首先建立安全信道。此信道将提供对所交换消息的机密性、完整性和/或验证的保护。实施此安全信道的所选方法通常是基于对称加密。在这种情况下,两个装置首先共享通常被称为主密钥的公用且秘密的对称密钥。主密钥通常在制造时预定义或经由基于公共密钥的密钥交换协议(举例来说,椭圆曲线Diffie-Hellman)来获得。在设计完好的安全信道中,主密钥从不用来对消息加密、验证或签名。替代地,主密钥用于产生所谓的会话密钥,这些会话密钥随后各自在有限的时间段专用于特定任务(如加密或验证)。
发明内容
在下文呈现各种实施例的简要概述。在以下概述中会做出一些简化和省略,这是为了突出并引入各种实施例的一些方面,而不是限制本发明的范围。在稍后的章节中将描述足以让本领域的技术人员能获得且使用本发明性概念的优选实施例的详细描述。
本文所描述的各种实施例涉及一种用指令编码的非暂时性机器可读媒体,这些指令用于由处理器执行,该非暂时性机器可读媒体包括:用于确定用于与不同装置的安全通信的主密钥值的指令,其中主密钥值用作主密钥;用于使用主密钥来衍生出会话密钥的指令;用于基于主密钥来产生新的主密钥值的指令;用于删除当前的主密钥值的指令;以及用于将新的主密钥值用作主密钥的指令。
本文所描述的各种实施例涉及一种参与安全通信会话的装置,该装置包括:存储器;到另一装置的接口,将发生与所述另一装置的安全通信;以及与接口和存储器通信的处理器,该处理器被配置成确定用于与不同装置的安全通信的主密钥值,其中主密钥值用作主密钥,使用主密钥来衍生出会话密钥,基于主密钥来产生新的主密钥值,删除当前的主密钥值,以及将新的主密钥值用作主密钥。
本文所描述的各种实施例涉及一种通过处理器执行的方法,该方法包括:确定用于与不同装置的安全通信的主密钥值,其中主密钥值用作主密钥;使用主密钥来衍生出会话密钥;基于主密钥来产生新的主密钥值;删除当前的主密钥值;以及将新的主密钥值用作主密钥。
描述了各种实施例,其中用于基于主密钥来产生新的主密钥值的指令包括:用于组合会话密钥与使用主密钥衍生出的至少一个另外的会话密钥以形成新的主密钥值的指令。
描述了各种实施例,其中用于基于主密钥来产生新的主密钥值的指令包括:用于组合当前的主密钥值与至少该会话密钥以形成新的主密钥的指令。
描述了各种实施例,其中用于产生新的主密钥值的指令包括用于使用主密钥来对常量值加密的指令。
描述了各种实施例,其中用于产生新的主密钥值的指令包括用于对两个或两个以上加密密钥应用异或函数的指令。
描述了各种实施例,其中用于使用主密钥来衍生出至少一个会话密钥的指令包括:用于使用主密钥来对至少一个常量值加密的指令。
描述了各种实施例,其中用于使用主密钥来衍生出至少一个会话密钥的指令包括:用于组合当前的主密钥值与新的主密钥值以产生会话密钥的指令。
各种实施例另外包括用于定期地重新执行用于产生新的主密钥的指令。
描述了各种实施例,其中用于与不同装置协商主密钥值的指令包括用于与安全元件协商的指令,所述安全元件是与处理器相同的装置的部分。
描述了各种实施例,其中用指令对非暂时性机器可读媒体进行编码,这些指令用于由主机装置内的安全元件执行。
附图说明
为了更好地理解各种实施例,参考附图,其中:
图1示出用于执行安全通信的硬件系统的实例;
图2示出用于产生会话密钥和新的主密钥的方法的第一实例;
图3示出用于产生会话密钥和新的主密钥的方法的第二实例;
图4示出用于产生会话密钥和新的主密钥的方法的第三实例;以及
图5示出用于产生会话密钥和新的主密钥的方法的第四实例。
为了便于理解,已经使用相同附图标记表示具有基本上相同或类似结构或基本上相同或类似功能的元件。
具体实施方式
本文中所呈现的描述和图式示出了各种原理。应了解,本领域的技术人员将能够设计各种布置,尽管本文中未明确地描述或示出这些布置,但这些布置体现这些原理且包括于本发明的范围内。如本文中所使用,除非另外指明(例如,“否则”或者“或在替代方案中”),否则术语“或”是指非排他的或(即,和/或)。另外,本文所描述的各种实施例未必是相互排斥的,并且可以组合以产生并入本文所描述的原理的另外实施例。
如上文所提到,许多安全通信实施方案在装置之间利用共享主密钥,所述共享主密钥则用于产生会话密钥,所述会话密钥实际上用于加密和数字签名等任务。然而,如果主密钥被破解,攻击者将能够自己产生会话密钥且访问任何被拦截通信的内容,包括未来的和过去的通信。
本文所描述的各种实施例尝试通过定期地更改主密钥且丢弃主密钥的所有旧版本来为安全通信提供前向安全性。通信的双方以相同方式更改主密钥,使得不必执行对主密钥的重新协商;替代地,这两个装置都根据相同协议来修改主密钥,且因此始终保持主密钥的相同版本。以此方式,即使当前的主密钥被破解,攻击者也不能访问主密钥的先前版本,且因此可能不能够对先前拦截的通信解密。
图1示出用于执行安全通信的硬件系统100的实例。硬件系统100可以是使用已加密协议进行通信的几乎任何装置。如图所示,装置100包括处理器120、存储器130、安全元件140、网络接口150,以及经由一个或多个系统总线110互连的存储装置160。应理解,在一些方面中,图1构成抽象,且装置100的组件的实际构造可能比所示出的更加复杂。
处理器120可以是能够执行存储在存储器130或存储装置160中的指令或以其它方式处理数据的任何硬件装置。由此,处理器可以包括微处理器、现场可编程门阵列(fieldprogrammable gate array,FPGA)、专用集成电路(application-specific integratedcircuit,ASIC)或其它类似装置。
存储器130可以包括各种存储器,例如,L1、L2或L3高速缓冲存储器或系统存储器。由此,存储器130可以包括静态随机存取存储器(static random access memory,SRAM)、动态RAM(dynamic RAM,DRAM)、闪存存储器、只读存储器(read only memory,ROM),或其它类似存储器装置。
安全元件140可以是用于执行安全功能的装置,例如,存储秘密信息或执行加密处理等。由此,安全元件140可以包括硬件,例如处理器、存储器以及到总线110的接口。硬件装置100的其余部分可以被称作安全元件的主机装置。在各种实施例中,安全元件140和处理器120都实施会话密钥衍生方法,例如本文所描述的实例中的一个实例,以实现其间的安全通信。可替换的是,安全元件140和处理器120中的仅一个可以连同另一外部装置一起实施此方法,所述另一外部装置可经由网络接口访问。
网络接口150可以包括用于实现与其它硬件装置通信的一个或多个装置。例如,网络接口150可以包括网络接口卡(network interface card,NIC),该网络接口卡被配置成根据以太网协议通信。另外,网络接口150可以实施TCP/IP栈以用于根据TCP/IP协议通信。另外或可替换的是,网络接口可以包括近场通信(near-field communication,NFC)芯片、3G芯片或4G芯片以及实现无线通信的适当的天线。用于网络接口150的各种替代的或另外的硬件或配置将是显而易见的。
存储装置160可以包括一个或多个机器可读存储媒体,例如只读存储器(read-only memory,ROM)、随机存取存储器(random-access memory,RAM)、磁盘存储媒体、光学存储媒体、闪存存储器装置或类似存储媒体。在各种实施例中,存储装置160可以存储用于由处理器120执行的指令,或者可以存储数据,处理器120可以对这些数据进行操作。例如,存储装置160可以存储基本操作系统161和多个应用程序162,基本操作系统161用于控制硬件100的各种基本操作,应用程序162用于为用户执行各种功能。例如,应用程序162可以包括网络浏览器、音乐播放器或无线支付应用程序(或无线支付应用程序的非安全部分,其中安全部分驻留在安全元件140上)。
为实现安全通信(例如,与安全元件140或经由网络接口150的安全通信),存储装置160还存储主密钥163和多个会话密钥164。在各种实施例中,主密钥163的初始值在装置制造时预配置为存储在存储装置160中,而在其它实施例中,根据适当的密钥交换协议在两个装置之间协商主密钥163的初始值。在后面的实施例中,存储装置160包括主密钥交换指令165,这些主密钥交换指令165将主密钥值发送到另一装置或从另一装置接收主密钥值。存储装置160还包含加密指令166,例如,可与会话密钥166结合使用以对通信加密的AES实施方案等。
定期地,(在安全通信信道的两端处)产生新会话密钥164以减少会话密钥164将被破解的可能性。由此,存储装置160包括会话密钥产生指令167。为提供前向安全性,会话密钥产生指令167还包括主密钥修改指令168,这些主密钥修改指令168定期地更改主密钥163的值。例如,主密钥修改指令168可以产生新的主密钥值,且随后通过例如用新的主密钥值或其它数据覆写当前的主密钥值或通过释放存储器中存储当前的主密钥值的区域来删除当前的主密钥值。下文将描述会话密钥产生指令167和主密钥修改指令168的各种实例实施例。
将显而易见的是,描述为存储在存储装置160中的各种信息可以另外或可替换地存储在存储器130中。在此方面中,存储器130还可以被视为构成“存储装置”,且存储装置160可以被视为“存储器”。各种其它布置将是显而易见的。另外,存储器130和存储装置160都可以被视为“非暂时性机器可读媒体”。如本文中所使用,术语“非暂时性”将被理解为不包括暂时性信号,但是包括所有形式的存储装置,包括易失性存储器和非易失性存储器这两者。
尽管主机装置100示出为包括每个所描述的组件中的一个组件,但是在各种实施例中,各种组件可以加倍。例如,处理器120可以包括多个微处理器,所述微处理器被配置成独立地执行本文中所描述的方法,或被配置成执行本文中所描述的方法的步骤或子例程,使得多个处理器协作实现本文中描述的功能性。另外,当在云计算系统中实施装置100时,各种硬件组件可以属于单独的物理系统。例如,处理器120可以包括在第一服务器中的第一处理器和在第二服务器中的第二处理器。
图2示出用于产生会话密钥和新的主密钥的方法200的第一实例。方法200可以与图1的会话密钥产生指令167相对应。如图所示,方法200利用当前的主密钥210来产生两个会话密钥240、242。具体来说,方法200使用AES加密算法(例如,在应用到一个区块的ECB模式中)230、232和当前的主密钥210来对两个常量220、222加密。常量220、222可以是方法200的两个实施方案商定的将用于产生会话密钥240、242的任何值。例如,这些常量220、222可以是预配置字面值、商定的变量或其组合。例如,“CST_A”220可以是附加到装置识别符的计数器值,而“CST_B”222可以是附加到装置识别符的当前时间(例如当前小时和分钟)。将显而易见的是,只要是通信的双方商定将使用的值,几乎任何值都可以用作常量220、222。在各种实施例中,选定的常量无需保密。
在已经产生会话密钥240、242之后,可以将会话密钥240、242用作由操作系统或应用程序执行的一般加密操作260的部分。例如,如图所示,会话密钥240、242可以由其它AES过程264、274用来对明文262、272加密以用于将明文262、272作为密文266、276传送到另一装置(或用来将密文266、276解密成可用明文262、272)。应理解,可以类似的商定方式产生另外的会话密钥(未示出)。
在会话密钥产生之后,方法200又通过组合两个会话密钥240、242来产生新的主密钥212以替代当前的主密钥210。具体来说,如图所示,使用异或(XOR)操作250来组合会话密钥。应了解,可以使用其它组合函数,例如与非(NAND)操作、使用另一会话密钥来对一个会话密钥加密,或任何其它变换函数。另外,应了解,可以组合超过两个会话密钥以形成新的主密钥值212。例如,可以将四个会话密钥一起经过异或操作以产生单一主密钥值。
在产生新的主密钥值212之后,新的主密钥值212替代旧主密钥值210。例如,该方法可以用新的主密钥值212覆写主密钥变量或存储器中的空间,由此删除旧主密钥值210。通过删除旧主密钥值210,减少旧主密钥值被破解的几率(并且因此减少会话密钥240、242被破解的几率)。由此,方法200提供前向安全性。应了解,可以定期地执行方法200以刷新会话密钥240、242,并且由此,主密钥的值可以定期地改变。
在知道所使用的方法200的情况下,已经破解会话密钥240、242的攻击者可能产生下一主密钥212,并且由此,可能能够产生未来的每个新会话密钥。为了避免这种情况,各种实施方案还可以利用主密钥的旧值来产生新的主密钥;由此,攻击者将还必须破解主密钥的旧值,所述旧值一般使用与用于保护会话密钥的技术不同的且通常更加严格的技术来进行保护。
图3示出用于产生会话密钥和新的主密钥的方法300的第二实例。方法300可以与图1的会话密钥产生指令167相对应。如可见,方法300与前一个实例方法200极为类似。使用主密钥310对商定的常量320、322加密330、332,以产生会话密钥340、342。会话密钥340、342随后可以被OS或应用程序用于安全通信操作360,以(例如)对明文通信362、372加密364、374以产生已加密通信366、376(或执行反向的解密过程)。
为产生新的主密钥值312,方法300组合旧主密钥值310与会话密钥340、342中的一个或多个会话密钥。如图所示,主密钥310经由异或操作350而与第一会话密钥340组合,组合的结果随后经由另一异或操作352而与第二会话密钥342组合。如前所述,可以利用更少的或另外的会话密钥,并且可以使用替代的或另外的组合技术。
图4示出用于产生会话密钥和新的主密钥的方法400的第三实例。方法400可以与图1的会话密钥产生指令167相对应。如图所示,该方法类似于前一个实例方法300。方法400使用主密钥410来对商定的常量420加密430以产生会话密钥440。会话密钥440随后可以被OS或应用程序用于安全通信操作460,以(例如)对明文通信462加密464以产生已加密通信466(或执行反向的解密过程)。
为产生新的主密钥值412,方法400组合旧主密钥值410与一个会话密钥440。如图所示,组合操作是异或450。如前所述,可以利用更少的或另外的会话密钥,并且可以使用替代的或另外的组合技术。
因此,第三实例方法400类似于第二实例方法300,不同之处在于,可以使用仅单一会话密钥(和主密钥的旧值)来产生新的主密钥412。由此,方法400可以用于在产生每个新会话密钥之后修改主密钥。可替换的是,方法400可以仅用于在产生用于特定功能的会话密钥时修改主密钥。例如,如果实施方案产生用于加密和验证的不同会话密钥,那么方法400可以仅用于每当产生用于加密任务(而不是用于验证任务)的会话密钥时改变主密钥。各种其它修改将是显而易见的。
图5示出用于产生会话密钥和新的主密钥的方法500的第四实例。方法500可以与图1的会话密钥产生指令167相对应。此第四实例方法500示出使用不同的组合函数来产生新的主密钥(以及使用替代的方法来产生会话密钥)。
如图所示,方法500首先使用当前的主密钥值510来产生新的主密钥值512。具体来说,方法500对常量值520加密530,所述常量值520如同先前所述的常量值220、222、320、322、420一样由安全通信的双方商定,在这双方之间共享主密钥。将加密步骤530的结果用作新的主密钥值512。
在产生新的主密钥512之后,新的主密钥512可以连同旧主密钥510一起用于产生新会话密钥540。具体来说,如图所示,两个主密钥510、512经由异或操作550组合以产生会话密钥540。会话密钥540随后可以被OS或应用程序用于安全通信操作560,以(例如)对明文通信562加密564以产生已加密通信566(或执行反向的解密过程)。在产生会话密钥540之后,方法500可以删除旧主密钥值510以进一步提防该值被破解。
方法500可以用于在产生每个新会话密钥时修改主密钥。可替换的是,方法500可以仅用于在产生用于特定功能的会话密钥时修改主密钥。例如,如果实施方案产生用于加密和验证的不同会话密钥,那么方法500可以仅用于每当产生用于加密任务(而不是用于验证任务)的会话密钥时改变主密钥。作为又另一替代方案,方法500可以被修改成绝不产生任何会话密钥,仅执行加密操作530以产生新的主密钥512。例如,通信的双方可以被配置成基于此修改后的方法来定期地更改双方的主密钥。各种其它修改将是显而易见的。
根据前述内容,得益于前向安全性,各种实施例使得能够有效地衍生出会话密钥。例如,通过根据商定的过程定期地产生新的主密钥,通信的双方可以对主密钥提供前向安全性,而不必将每个新的主密钥传送到彼此。另外,通过使用商定的常量和简单的组合操作来产生主密钥和会话密钥,各种实施例能够快速且有效地衍生出安全通信所必需的加密密钥。此类实施例可以尤其有益于将非常快速地执行安全通信的环境,例如,“瞬时”情形等(例如,移动装置通过指纹扫描来启动或解锁,将所述指纹扫描与存储在移动装置的安全元件中的指纹密钥进行比对)。鉴于前述内容,各种另外的益处将是显而易见的。
从前述描述中将显而易见的是,可以在硬件中实施本发明的各种实施例。此外,各种实施例可以实施为存储在非暂时性机器可读存储媒体(例如,易失性存储器或非易失性存储器)上的指令,所述指令可以由至少一个处理器读取和执行以实施本文中详细描述的操作。机器可读存储媒体可以包括用于以机器可读形式存储信息的任何机构,例如,个人计算机或膝上型计算机、服务器或其它计算装置。因此,非暂时性机器可读存储媒体不包括暂时性信号,但可以包括易失性存储器和非易失性存储器,包括但不限于只读存储器(read-only memory,ROM)、随机存取存储器(random-access memory,RAM)、磁盘存储媒体、光学存储媒体、闪存存储器装置和类似存储媒体。
本领域的技术人员应了解,本文中的任何框图表示体现本发明的原理的示意性电路的概念视图。类似地,应了解,任何流程图表、流程图、状态迁移图、伪码等表示可基本上呈现在机器可读媒体中并且因此由计算机或处理器执行的各种过程,无论是否明确地示出此类计算机或处理器。
尽管已经通过特定参考各种实施例的某些方面详细地描述了各种实施例,但是应理解,本发明能够具有其它实施例并且本发明的细节能够在各种显而易见的方面中进行修改。如本领域的技术人员显而易见,可以实现变化和修改同时保持在本发明的精神和范围内。因此,前述公开内容、描述和图式仅出于说明性目的并且不以任何方式限制本发明,本发明仅由权利要求书限定。

Claims (8)

1.一种用于在主机装置和不同装置间产生会话密钥和新的主密钥的方法,其特征在于,包括:
确定用于与所述不同装置的安全通信的主密钥值;
在所述主机装置和所述不同装置二者中,定期使用所述主密钥值来衍生出第一会话密钥,并且定期基于所述主密钥值来产生新的主密钥值;
删除所述主密钥值,
其中,所述定期使用所述主密钥值来衍生出第一会话密钥以及所述定期基于所述主密钥值来产生新的主密钥值包括以下步骤之一:
a)使用所述主密钥值来衍生出第二会话密钥,并且组合已衍生出的第一会话密钥和已衍生出的第二会话密钥以形成所述新的主密钥值;
b)使用所述主密钥值来衍生出第二会话密钥,并且组合所述主密钥值和已衍生出的第一会话密钥以产生经组合的结果,并且组合所述经组合的结果和已衍生出的第二会话密钥以形成所述新的主密钥值;
c)使用所述主密钥值来形成所述新的主密钥值,并且通过组合所述主密钥值与所述新的主密钥值来衍生出所述第一会话密钥或第二会话密钥,
其中,所述方法进一步包括,对于所述安全通信的双方,以相同方式并且根据相同协议更改主密钥而不必将每个新的主密钥传送到所述安全通信的双方二者的彼此,
并且其中,所述方法进一步包括在装置制造时预配置所述主密钥的初始值并且将其存储在所述主机装置的存储装置中。
2.根据权利要求1所述的方法,其特征在于,当执行如权利要求1所述的步骤c)时,所述产生新的主密钥值包括用于使用所述主密钥值来对常量值加密的指令。
3.根据权利要求1所述的方法,其特征在于,当执行如权利要求1所述的步骤a)时,所述产生新的主密钥值包括用于对两个或两个以上加密密钥应用异或函数的指令。
4.一种用于参与安全通信会话的主机装置,其特征在于,所述主机装置包括:
存储器;
到不同装置的接口,将发生与所述不同装置的安全通信;以及
与所述接口和存储器通信的处理器,所述处理器被配置成
确定用于与不同装置的安全通信的主密钥值;
在所述主机装置和所述不同装置二者中,定期使用所述主密钥值来衍生出第一会话密钥,并且定期基于所述主密钥值来产生新的主密钥值,
删除所述主密钥值,
其中,所述处理器和所述不同装置被进一步配置成根据以下步骤之一定期使用所述主密钥值来衍生出所述第一会话密钥和定期基于所述主密钥值产生所述新的主密钥值:
a)使用所述主密钥值来衍生出第二会话密钥,并且组合已衍生出的第一会话密钥和已衍生出的第二会话密钥以形成所述新的主密钥值;
b)使用所述主密钥值来衍生出第二会话密钥,并且组合所述主密钥值和已衍生出的第一会话密钥以产生经组合的结果,并且组合所述经组合的结果和已衍生出的第二会话密钥以形成所述新的主密钥值;
c)使用所述主密钥值来形成所述新的主密钥值,并且通过组合所述主密钥值与所述新的主密钥值来衍生出所述第一会话密钥或第二会话密钥,
其中,所述安全通信会话的双方被配置成以相同方式并且根据相同协议更改主密钥而不必将每个新的主密钥传送到所述安全通信会话的双方二者的彼此,
并且其中,在装置制造时所述主密钥的初始值被预配置并且其被存储在所述主机装置的存储装置中。
5.根据权利要求4所述的主机装置,其特征在于,当执行如权利要求4所述的步骤c)时,在产生新的主密钥值的过程中,所述处理器被配置成使用所述主密钥来对常量值加密。
6.根据权利要求4所述的主机装置,其特征在于,当执行如权利要求4所述的步骤a)时,在产生新的主密钥值的过程中,所述处理器被配置成对两个或两个以上加密密钥应用异或函数。
7.根据权利要求4所述的主机装置,其特征在于,进一步包括安全元件,其中所述安全元件是另一个装置,将发生与所述另一个装置的安全通信。
8.根据权利要求4所述的主机装置,其特征在于,所述装置是待安装在主机系统中的安全元件,其中所述主机系统是将与其发生安全通信的另一个装置。
CN201610330358.XA 2015-05-28 2016-05-18 具有前向安全性的有效密钥衍生 Active CN106209352B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/724,315 2015-05-28
US14/724,315 US9674165B2 (en) 2015-05-28 2015-05-28 Efficient key derivation with forward secrecy

Publications (2)

Publication Number Publication Date
CN106209352A CN106209352A (zh) 2016-12-07
CN106209352B true CN106209352B (zh) 2021-06-18

Family

ID=55967186

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610330358.XA Active CN106209352B (zh) 2015-05-28 2016-05-18 具有前向安全性的有效密钥衍生

Country Status (3)

Country Link
US (1) US9674165B2 (zh)
EP (1) EP3099003B1 (zh)
CN (1) CN106209352B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10460314B2 (en) * 2013-07-10 2019-10-29 Ca, Inc. Pre-generation of session keys for electronic transactions and devices that pre-generate session keys for electronic transactions
US10341102B2 (en) * 2016-09-02 2019-07-02 Blackberry Limited Decrypting encrypted data on an electronic device
US10348502B2 (en) * 2016-09-02 2019-07-09 Blackberry Limited Encrypting and decrypting data on an electronic device
CN106789055B (zh) * 2017-01-20 2019-08-30 兴唐通信科技有限公司 单向流程前向安全技术实现方法
CN108667623B (zh) * 2018-05-28 2021-10-19 广东工业大学 一种sm2椭圆曲线签名验证算法
US11210664B2 (en) * 2018-10-02 2021-12-28 Capital One Services, Llc Systems and methods for amplifying the strength of cryptographic algorithms
CN111600829A (zh) * 2019-02-21 2020-08-28 杭州萤石软件有限公司 用于物联网设备间的安全通信方法和系统
JP7528061B2 (ja) * 2019-04-12 2024-08-05 フェリカネットワークス株式会社 情報処理端末、情報処理装置、情報処理方法、プログラム、および情報処理システム
CN110266498B (zh) * 2019-06-28 2022-04-08 恒宝股份有限公司 一种不停车汽车安全支付系统及方法
US11343089B2 (en) * 2019-07-10 2022-05-24 Tunnel VUE Inc. Cryptography system and method
CN114095159B (zh) * 2021-11-11 2023-10-31 北京三快在线科技有限公司 加密通信方法、装置、计算机设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101119196A (zh) * 2006-08-03 2008-02-06 西安电子科技大学 一种双向认证方法及系统
CN102047605A (zh) * 2008-03-25 2011-05-04 爱立信股份有限公司 有效的多方密钥交换
CN102239675A (zh) * 2008-12-10 2011-11-09 高通股份有限公司 从唯前向链路设备至非唯前向链路设备的信任建立
CN103116730A (zh) * 2013-01-21 2013-05-22 厦门市美亚柏科信息股份有限公司 一种dpapi加密数据的解密方法和系统
US8996873B1 (en) * 2014-04-08 2015-03-31 Cloudflare, Inc. Secure session capability using public-key cryptography without access to the private key

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4370721B2 (ja) * 2000-04-06 2009-11-25 ソニー株式会社 情報記録装置、情報再生装置、情報記録方法、情報再生方法、キー更新端末装置、世代管理キー更新方法、および情報記録媒体、並びにプログラム提供媒体
US7266842B2 (en) * 2002-04-18 2007-09-04 International Business Machines Corporation Control function implementing selective transparent data authentication within an integrated system
US8356175B2 (en) 2005-06-29 2013-01-15 Intel Corporation Methods and apparatus to perform associated security protocol extensions
US7817802B2 (en) * 2006-10-10 2010-10-19 General Dynamics C4 Systems, Inc. Cryptographic key management in a communication network
CN100581102C (zh) * 2007-05-31 2010-01-13 北京泛亚创知科技发展有限公司 一种无线传感器网络中数据安全传输的方法
DE102009022233A1 (de) * 2009-05-20 2010-11-25 Feustel, Dietmar Verwendung einer Zeichenkette in Sytemen der Kryptographie, der Statistik, der Simulation, der Randomisierung, von Spielautomaten und dgl.
CN102111761B (zh) * 2009-12-28 2014-01-01 华为终端有限公司 密钥管理方法及设备
US9197616B2 (en) * 2010-03-19 2015-11-24 Cisco Technology, Inc. Out-of-band session key information exchange
US9087212B2 (en) * 2012-01-25 2015-07-21 Massachusetts Institute Of Technology Methods and apparatus for securing a database
US10460314B2 (en) * 2013-07-10 2019-10-29 Ca, Inc. Pre-generation of session keys for electronic transactions and devices that pre-generate session keys for electronic transactions

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101119196A (zh) * 2006-08-03 2008-02-06 西安电子科技大学 一种双向认证方法及系统
CN102047605A (zh) * 2008-03-25 2011-05-04 爱立信股份有限公司 有效的多方密钥交换
CN102239675A (zh) * 2008-12-10 2011-11-09 高通股份有限公司 从唯前向链路设备至非唯前向链路设备的信任建立
CN103116730A (zh) * 2013-01-21 2013-05-22 厦门市美亚柏科信息股份有限公司 一种dpapi加密数据的解密方法和系统
US8996873B1 (en) * 2014-04-08 2015-03-31 Cloudflare, Inc. Secure session capability using public-key cryptography without access to the private key

Also Published As

Publication number Publication date
CN106209352A (zh) 2016-12-07
EP3099003B1 (en) 2021-01-27
EP3099003A1 (en) 2016-11-30
US20160352706A1 (en) 2016-12-01
US9674165B2 (en) 2017-06-06

Similar Documents

Publication Publication Date Title
CN106209352B (zh) 具有前向安全性的有效密钥衍生
US11451386B2 (en) Method and system for many-to-many symmetric cryptography and a network employing the same
TWI722116B (zh) 用於基於區塊鏈的系統結合錢包管理系統中的安全多方防遺失儲存及加密金鑰轉移
JP2020528224A (ja) 信頼できる実行環境におけるスマート契約動作のセキュアな実行
KR102205654B1 (ko) 분산 환경에서의 신원 인증 방법
EP3841702B1 (en) Method, user device, management device, storage medium and computer program product for key management
AU2016211551A1 (en) Methods for secure credential provisioning
CN110868291B (zh) 一种数据加密传输方法、装置、系统及存储介质
CN113329030A (zh) 区块链一体机及其密码加速卡、密钥管理方法和装置
US20200195446A1 (en) System and method for ensuring forward & backward secrecy using physically unclonable functions
US10630466B1 (en) Apparatus and method for exchanging cryptographic information with reduced overhead and latency
CN111970114B (zh) 文件加密方法、系统、服务器和存储介质
US20230269078A1 (en) Key sharing method, key sharing system, authenticating device, authentication target device, recording medium, and authentication method
US10848312B2 (en) Zero-knowledge architecture between multiple systems
CA3056814A1 (en) Symmetric cryptographic method and system and applications thereof
CN110519222B (zh) 基于一次性非对称密钥对和密钥卡的外网接入身份认证方法和系统
CN110086627B (zh) 基于非对称密钥池对和时间戳的量子通信服务站密钥协商方法和系统
CN114070672A (zh) 用于实现vpn网关与客户端之间的通信的方法、设备及系统
KR20200134187A (ko) 분산 환경에서의 신원 인증 방법
Ganesan et al. Quantum-Resilient Security Controls
CN116501694A (zh) 数据存储方法、数据读取方法、电子设备和程序产品
CN116318897A (zh) 一种数据传输方法、系统、装置、计算机设备及存储介质

Legal Events

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