CN104717198A - 更新安全元件上的软件 - Google Patents
更新安全元件上的软件 Download PDFInfo
- Publication number
- CN104717198A CN104717198A CN201410588846.1A CN201410588846A CN104717198A CN 104717198 A CN104717198 A CN 104717198A CN 201410588846 A CN201410588846 A CN 201410588846A CN 104717198 A CN104717198 A CN 104717198A
- Authority
- CN
- China
- Prior art keywords
- ciphertext blocks
- sequence
- main process
- process equipment
- safety element
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/572—Secure firmware programming, e.g. of basic input output system [BIOS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/02—Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/30—Security of mobile devices; Security of mobile applications
- H04W12/35—Protecting application or service provisioning, e.g. securing SIM application provisioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/50—Service provisioning or reconfiguring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/062—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying encryption of the keys
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/18—Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data
- H04W8/20—Transfer of user or subscriber data
- H04W8/205—Transfer to or from user equipment or user record carrier
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
- Stored Programmes (AREA)
Abstract
公开了一种向主机设备中包括的安全元件提供软件更新的方法,包括:使用链式加密方案将软件更新转换为密文块的序列;以及将所述密文块的序列传输至主机设备。另外,公开了一种在主机设备包括的安全元件上安装软件更新的方法,包括:由主机设备接收密文块的序列,所述密文块的序列由所述提供软件更新的方法产生;将所述密文块的序列转换为软件更新;以及在安全元件上安装软件更新。另外,公开了相应的计算机程序产品和相应的主机设备。
Description
技术领域
本公开涉及向主机设备中包括的安全元件提供软件更新的方法。另外,本公开涉及在主机设备中包括的安全软件上安装软件更新的方法。另外,本公开涉及相应的计算机程序产品和相应的主机设备。
背景技术
当今,安全在许多电子设备和计算环境中起到重要的作用。例如,传统的移动电子设备可以用于支付业务,所述支付业务要求将诸如用户凭证之类的敏感支付相关数据输入和/或存储在所述设备中。例如,这些移动电子设备可以配备有基于射频(RF)技术的近场通信(NFC)接口,以便与销售点(POS)的支付终端设备交换支付相关数据。
通常,已经将敏感的支付相关数据合并到诸如智能卡之类的专用安全令牌中,其中将数据固有地限制到相对信任的环境。然而,随着集成解决方案的出现,具体地将所谓的安全元件(SE)集成到移动设备中,经常将支付相关数据暴露到可能敌对的环境,因此这些数据的机密性可能成为问题。
通常将安全软件实现为嵌入式芯片,更具体地实现为具有(预先)安装的智能卡级别应用(例如支付应用)的抗篡改集成电路,其具有规定的功能和规定的安全级别。替代地,所谓的用户身份模块(SIM)或通用用户身份模块(USIM)可以用作安全元件。另外,诸如传统SD卡或微SD卡之类的安全数字(SD)卡可以用作安全元件。安全元件可以嵌入到移动设备或另一个主机设备中,例如作为直接焊接到印刷电路板上的小外形封装。替代地,可以将安全元件包括在所述移动设备中作为可拆卸部件(例如,SIM或SD卡)。
尽管安全元件提供用于执行应用程序的相对安全的环境,然而例如当需要安装和/或配置安全元件的操作部件时,实现或保持这种安全级别相对困难。具体地,如果需要更新在安全元件上安装的软件,例如安全元件的操作系统,那么安全元件可能易受攻击。尽管存在提供安全软件更新的许多技术,这些技术通常不会解决所述种类的安全元件上的软件更新。例如,WO 2012/109640A2描述了一种安全软件更新,所述安全软件更新向目标设备提供具有更新定义、私有加密密钥和公共签名密钥的更新功能。在便携媒质上准备了软件更新包,所述软件更新包包括可执行更新程序、用对称密钥加密的程序的检验和、用公共加密密钥加密的已加密对称密钥和用私有签名密钥准备的数字签名。更新过程认证数字签名,使用私有加密密钥解密对称密钥,并且使用对称密钥解密检验和。针对可执行的更新程序产生新的检验和,并且将新的检验和与已解密的检验和进行比较。如果在更新过程期间检测到不一致,终止过程。否则,可以以相对高的抗讹误、抗病毒和抗第三方干扰保证来安装软件更新。
作为另一个示例,WO 2007/014314 A2描述了一种对已经使用的电子设备中的软件进行更新的改进技术。在一个实施例中,可以使用密码术按照安全和受控的方式来更新软件。可以在更新之前确认已更新软件的可靠性和针对具体电子设备的适当性。也可以逐个模块地更新软件。在一个实施例中,服务器主持针对各种电子设备的软件更新,并且经由数据网络向电子设备供应适当的软件更新。
图1示出了其中使用安全元件的传统计算系统。计算系统100包括主机设备102、主机设备卖主108、受信服务管理方110和安全元件发行方112。例如,主机设备102可以是配备有如上所述的NFC技术的所谓的智能电话或平板设备。主机设备102包括中央处理单元104和安全元件106。为了准备计算系统100来使用,安全元件发行方112发布用于集成到主机设备102中的安全元件106。此外,安全元件发行方112或者代表安全元件发行方112的安全元件生产者(未示出)在安全元件106上安装操作系统的初始版本。应该注意的是安全元件106的操作系统在该文档的其余部分称作“安全OS”。另外,主机设备卖主108在主机设备102中(典型地在所述主机设备102的闪存(未示出)中)安装主机设备102的操作系统的初始版本。应该注意的是主机设备102的操作系统在该文档的其余部分中称作“主机OS”。
在使用时,可能必须更新安全OS和主机OS,例如以便提供附加的安全特征或其他功能。典型地,主机设备卖主108负责在主机设备102上安装主机OS的更新。例如,现今许多主机设备配置为自动地接收和安装所广播的主机OS的更新。这种规律更新的主机OS的示例是安卓操作系统。也必须规律地更新安全OS。然而在这种情况下,称作受信服务管理方(TSM)110的第三方典型地用作安装安全OS的更新的媒介。具体地,因为安全元件发行方112不再访问已经在现场(即在使用中)的安全元件,安全元件发行方112向受信服务管理方110提供安全OS的更新。随后,受信服务管理方110管理安全元件106上安全OS更新的安装。
然而不幸地是,用于在安全元件106上安装这些更新的机制典型地是相当麻烦的。具体地,这些机制依赖于复杂且不灵活的硬件特定加密方法。同样,这些机制典型地要求在安全元件和受信服务管理方之间建立安全的点对点通信信道。考虑到这些因素,需要促进和简化安全元件上操作系统更新的安装。应该注意的是如果必须在安全元件上安装其他软件更新,可能发生同样的问题;换句话说,这种问题不局限于安全OS的更新。因此更一般地来说,需要促进和简化在所述种类的安全元件上软件更新的安装。
发明内容
公开了一种向主机设备中包括的安全元件提供软件更新的方法,包括:使用链式加密方案将软件更新转换为密文块的序列,以及将所述密文块的序列传输至主机设备。
根据说明性实施例,转换软件更新包括:通过加密明文块来产生所述序列中除了第一密文块之外的每一个密文块,所述明文块包括软件更新的一部分。
根据另一个说明性实施例,利用在序列的在先密文块中包括的密钥对明文块进行加密。
根据另一个说明性实施例,通过利用根密钥对用于产生所述序列的第二密文块的密钥进行加密来产生所述序列的第一密文块。
根据另一个说明性实施例,在将密文块的序列传输至主机设备之前,对密文块的序列进行加密签名。
根据另一个说明性实施例,将所述密文块的序列集成到针对主机设备的软件更新中。
另外,公开了一种计算机程序产品,包括程序指令,当通过处理单元执行时,所述程序指令使所述处理单元执行或控制所述种类的提供软件更新的方法的步骤。
另外,公开了一种在主机设备包括的安全元件上安装软件更新的方法,包括:由主机设备接收对软件更新加以表示的密文块的序列,所述序列是通过所述种类的提供软件更新的方法产生的;将所述密文块的序列转换为软件更新;并且在安全元件上安装软件更新。
根据另外的说明性实施例,转换密文块的序列包括:从所述序列中除了第一密文块之外的每一个密文块提取明文块,所述明文块包括软件更新的一部分。
根据另外的说明性实施例,从密文块提取明文块包括:利用在所述序列的在先密文块中包括的密钥来解密密文块。
根据另外的说明性实施例,在从除了第一密文块之外的每一个密文块提取明文块之前,用根密钥解密第一密文块,以便解锁用于对所述序列的第二密文块进行解密的密钥。
根据另外的说明性实施例,在转换密文块的序列之前,验证密文块的序列的加密签名。
根据另外的说明性实施例,从针对主机设备的软件更新中提取所述密文块的序列。
另外,公开了一种计算机程序产品,包括程序指令,当通过处理单元执行时,所述程序指令使所述处理单元执行或控制所述种类的安装软件更新的方法的步骤。
另外,公开了一种包括安全元件的主机设备,所述主机设备设置为执行所述种类的安装软件更新的方法。
附图说明
将参考附图更加详细地描述实施例,其中:
图1示出了使用安全元件的传统计算系统;
图2示出了根据本公开的计算系统的说明性实施例;
图3示出了加密方法的说明性实施例;
图4示出了解密方法的说明性实施例;
图5示出了通信方法的说明性实施例;
图6示出了安装方法的说明性实施例;
图7示出了签名方法的说明性实施例;
图8A示出了链式加密方案的说明性实施例;
图8B示出了链式签名方案的说明性实施例。
具体实施方式
图2示出了根据本公开的计算系统的说明性实施例。再次,计算系统200包括主机设备102(包括中央处理单元104和安全软件106)、主机设备卖主108和安全元件发行方112。然而,与图1的传统计算系统相反,计算系统200不包括受信服务管理方。也就是说,可以经由主机设备卖主108提供和安装安全OS的更新。因此,不需要受信服务管理方或者其他第三方,从而简化了所述更新的安装。为了维持适当的安全级别,安全OS的更新包括基于链式加密方案的密文块的序列。可以将安全OS更新作为包含所述密文块序列的软件包或软件镜像通过主机设备卖主108广播至主机设备102。与针对安全元件的传统软件更新相反,可以将相同的软件包或软件镜像广播至许多主机设备,并且不需要在安全元件和受信服务管理方之间建立安全的点对点通信信道。主机设备102重新装配安全OS更新,并且随后将安全OS更新安装到安全元件106上。因此,按照广播的方式有效地实现了安全元件106的操作系统升级。应该强调的是可以按照相同的方式提供和安装其他类型的针对安全元件的软件更新。也就是说,本公开不局限于安全OS的更新,但是也可以应用于其他类型的软件更新。
图3示出了加密方法的说明性实施例。安全OS更新可以包括通过这种加密方法300加密的密文块的序列。根据这种说明性实施例,加密方法300包括以下步骤。首先,通过用根密钥对第一密钥加密来产生302根密文。基本上,根密文包含密钥的已加密版本,所述密钥将会用于加密第一密文块,所述第一密文块包含安全OS更新的一部分。其次,将安全OS更新分割304为多个部分,即分割为明文,每个明文包含软件(即安全OS更新)的一部分。接下来,通过连接(concatenate)第一明文块与第二密钥并且用第一密钥加密这种连接的结果,来产生306所述序列的第一密文块。按照这种方式,在第一密文块中包含了第二密钥,第二密钥将用于对下一个(即第二)明文块进行加密。接下来,通过连接第二明文块与第三密钥并且用第二密钥加密这种连接的结果,来产生308第二密文块。针对所有的明文块重复这一过程。因此,假设存在n个明文块,那么倒数第二个步骤包括:通过连接第(n-1)明文块与第n密钥并且用第(n-1)密钥加密这种连接的结果,来产生310第(n-1)密文块。另外,最后一个步骤包括:通过用第n密钥对第n明文块进行加密来产生312第n密文块。
按照这种方法,安全OS更新有效地包括密文块的序列,所述密文块的序列可以直接作为软件包或软件镜像被广播,或者可以容易地集成到主机OS更新中(例如,通过将所述密文块嵌入到组成主机OS更新的数据中和/或与组成主机OS更新的数据进行交织)。另外,因为每一个密钥只使用一次,有效地消除了当广播安全OS更新时可能产生的安全风险。应该注意的是将一组数据集成到另一组数据中的方法也是已知的。也就是说,如果要将密文块集成到主机OS更新中(或者集成到针对主机设备的另一个软件更新中),那么本领域普通技术人员可以应用任意合适的方法以集成所述密文块。
例如,可以将密文块格式化为所谓的应用程序协议数据单元(APDU)。APDU是用于在智能卡(即实际或仿真智能卡)和智能卡读取器之间交换数据的常用通信单元。因此,安全OS更新可以包括:由APDU的序列组成的软件包或软件镜像,或者嵌入到主机OS更新的数据单元中或者与主机OS更新的数据单元相交织的APDU的序列。主机OS更新的数据单元进而也可以格式化为APDU。另外,应该注意的是,所述加密方法可以由安全元件发行方112例如在安全环境中执行,或者由代表安全元件发行方112的主机设备卖主108在适当的情况下执行。可以将加密方法嵌入到计算机程序中,所述计算机程序在适当的情况下可以由安全元件发行方112或者主机设备卖主108拥有的处理单元执行。
图4示出了解密方法的说明性实施例。基本上,解密方法400对应图3所示的加密方法300。主机设备102执行解密方法400。更具体地,例如,实际的解密可以由安全元件106至少部分地在中央处理单元104的控制下执行。按照这种方式,可以实现合理级别的安全性。根据这种说明性实施例,解密方法400包括以下步骤。首先,用根密钥对根密文块进行解密402,得到第一密钥。根密钥例如在安装之前或者在安装期间已被安全元件发行方112或者代表安全软件发行方的安全元件生产者存储在安全元件106中,使用诸如Diffie-Hellman密钥一致性协议(agreementprotocol)之类的适当协议对根密钥达成一致并且与主机设备卖主108共享根密钥。其次,用第一密钥来解密404第一密文块(即,序列中实际包含安全OS更新一部分的第一密文块),得到第一明文块和第二密钥。接下来,用第二密钥解密406第二密文块,得到第二明文块和第三密钥。针对所有的密文块重复这一过程。因此,假设存在n个密文块,那么导数第二个解密步骤包括:用第(n-1)密钥解密408第(n-1)密文块,得到第(n-1)明文块和第n密钥。最后一个解密步骤包括:用第n密钥解密410第n密文块,得到第n明文块。在该阶段,n个明文块的序列已经变得可用。在最后一个步骤中将这些明文块重新装配412,从而产生了安全OS更新。应该注意的是重新装配安全OS更新的最后步骤不是实际的解密步骤,而是在图3的加密方法中分割安全OS更新的步骤的对应步骤。
图5示出了通信方法的说明性实施例。作为通信方法500的第一步骤,通过图3所示的加密方法300产生密文块。随后,通过签名方法700产生安全OS更新签名,将参考图7详细解释签名方法700。接下来,将密文块格式化502为APDU。最后,例如按照软件包或软件镜像的格式将APUD经由主机设备卖主108广播504至主机设备102。应该注意的是将这些步骤映射到计算系统200的功能单元可以采取不同的形式。也就是说如上所述,例如加密方法300可以由安全软件发行方112执行,后者如果合适的话由代表安全元件发行方112的主机设备卖主108执行。这同样适用于产生700安全OS更新签名和将密文块格式化502为APDU。在该示例中,由主机设备卖主108来执行广播步骤504;为了促进所述广播,主机设备卖主108可以将APDU集成到主机OS更新中,如上所述。因为主机设备将接收更少的软件更新,这种集成也增加了系统的用户友好性。
图6示出了安装方法的说明性实施例。作为安装方法600的第一步骤,主机设备102从主机设备卖主108接收602安全OS更新。随后,验证604安全OS更新签名。例如,已经使用私钥产生了签名,并且安全元件106可以包含将用于验证签名的相应公钥。已经将这种签名嵌入到或者附着于安全OS更新的第一APDU,以便避免在签名无效的情况下对APDU的序列进行解密。因此,进一步增强了安全性,并且防止计算资源的浪费。如果签名无效,那么将不再执行安装方法600的后续步骤,并且主机设备102等待新的安全OS更新。否则,在下一个步骤中将APDU恢复格式化(unformat)606。接下来,执行图4中所示的解密方法400,即对密文块进行解密并且重新装配安全OS更新。随后,将安全OS更新安装608在安全元件106上。应该注意的是将这些步骤映射到主机设备102的功能单元可以采取不同的格式。也就是说如上所述,解密方法400的实际解密步骤例如可以由安全元件106至少部分地在中央处理单元104的控制下执行。可以由中央处理单元104经由移动设备102的通信单元(未示出)来接收安全OS更新。签名的验证、APDU的恢复格式化和安全OS更新的安装可以涉及中央处理单元104和安全元件106两者。为了实现高安全级别,优选地,安全元件106执行实施这些步骤所必须的数操作的大多数。为了执行这些操作,安全元件106也可以包括处理单元(未示出)。
图7示出了签名方法的说明性实施例。签名方法700是用于产生安全OS更新签名的方法的示例。作为第一步骤,通过对第n密文块进行散列处理,产生702第n散列值。随后,通过连接第(n-1)密文块和第n散列值并且对这种连接的结果进行散列处理,产生第(n-1)散列值。重复这些处理,直到处理了所有密文块为止。因此在最后的步骤中,通过连接第二密文块与第三散列值并且对这种连接的结果进行散列处理,产生706第二散列值。随后,通过连接第一密文块和第二散列值并且对这种连接的结果进行散列处理,产生708第一散列值。最后,例如通过以公钥-私钥密钥对的私钥作为输入的加密函数,通过连接根密文块和第一散列值并且对这种连接的结果进行签名,产生710安全OS更新签名。
图8A示出了链式加密方案的说明性实施例,图8B示出了链式签名方案的说明性实施例。这些附图还分别说明了图3中所示的加密方法300和图7中所示的签名方法700。
应该注意的是主机设备可以广义上解释为包括例如智能卡。因此,根据本公开的方法也可以有利地用于智能卡,以便促进在嵌入到这种智能卡中的安全元件上安装软件更新。
应该注意的是附图只是示意性的。在不同的图中,类似或相同的元件具有相同的参考符号。另外,应该注意的是为了提供说明性实施例的简明描述,可能不会描述落到本领域普通技术人员惯例内的实施细节。应该理解的是在任意这些实施方式的发展中,如在任意工程或设计项目中一样,必须进行许多特定于实施方式的决定以便实现开发者的特定目的,例如符合与系统相关和商业相关限制,这些限制在实施方式之间变化。此外,应该理解的是这种开发努力可能是复杂且耗时的,但是绝不会是本领域普通技术人员惯用的设计、生产和制造。
最后,应该注意的是领域普通技术人员在不脱离所附权利要求范围的情况下能够设计许多替代实施例。在权利要求中,放置在圆括号中的任何参考符号不应该解释为限制权利要求。词语“包括”不排除除了权利要求中所列举的元件或步骤以外其他元件或步骤的存在。元件前的词语“一种”不排除存在多个这种元件。权利要求中引用的措施可以通过包括多个分立元件的硬件和/或通过适当编程的处理器来实现。在枚举了多个装置的设备权利要求中,可以由同一个硬件来实现这些装置中的多个。在相互不同的从属权利要求中使用特定的措施并不表示不能有利地使用这些措施的组合。
参考符号列表
100 计算系统
102 主机设备
104 中央处理单元
106 安全元件
108 主机设备卖主
110 受信服务管理方
112 安全元件发行方
200 计算系统
300 加密方法
302 加密方法步骤
304 加密方法步骤
306 加密方法步骤
308 加密方法步骤
310 加密方法步骤
312 加密方法步骤
400 解密方法
402 解密方法步骤
404 解密方法步骤
406 解密方法步骤
408 解密方法步骤
410 解密方法步骤
412 解密方法步骤
500 通信方法
502 通信方法步骤
504 通信方法步骤
600 安装方法
602 安装方法步骤
604 安装方法步骤
606 安装方法步骤
608 安装方法步骤
700 签名方法
702 签名方法步骤
704 签名方法步骤
706 签名方法步骤
708 签名方法步骤
710 签名方法步骤
Claims (15)
1.一种向主机设备中包括的安全元件提供软件更新的方法,包括:
使用链式加密方案将软件更新转换为密文块的序列;
将所述密文块的序列传输至主机设备。
2.根据权利要求1所述的方法,其中转换软件更新包括:通过加密明文块来产生所述序列中除了第一密文块之外的每一个密文块,所述明文块包括软件更新的一部分。
3.根据权利要求2所述的方法,其中利用在序列的在先密文块中包括的密钥对明文块进行加密。
4.根据权利要求2或3所述的方法,其中通过利用根密钥对用于产生所述序列的第二密文块的密钥进行加密,来产生所述序列的第一密文块。
5.根据任一前述权利要求所述的方法,其中在将密文块的序列传输至主机设备之前,对密文块的序列进行加密签名。
6.根据任一前述权利要求所述的方法,其中将所述密文块的序列集成到针对主机设备的软件更新中。
7.一种计算机程序产品,包括程序指令,当通过处理单元执行时,所述程序指令使所述处理单元执行或控制根据任一前述权利要求所述的方法的步骤。
8.一种在主机设备包括的安全元件上安装软件更新的方法,包括:
由主机设备接收对软件更新加以表示的密文块的序列,所述序列是通过如权利要求1至6中任一项所述的方法产生的;
将所述密文块的序列转换为软件更新;并且
将在安全元件上安装软件更新。
9.根据权利要求8所述的方法,其中转换密文块的序列包括:从所述序列中除了第一密文块之外的每一个密文块提取明文块,所述明文块包括软件更新的一部分。
10.根据权利要求9所述的方法,其中从密文块提取明文块包括:利用在所述序列的在先密文块中包括的密钥来解密密文块。
11.根据权利要求9或10所述的方法,其中在从除了第一密文块之外的每一个密文块提取明文块之前,用根密钥解密第一密文块,以便解锁用于对所述序列的第二密文块进行解密的密钥。
12.根据权利要求8至11中任一项所述的方法,其中在转换密文块的序列之前,验证密文块的序列的加密签名。
13.根据权利要求8至12中任一项所述的方法,其中从针对主机设备的软件更新中提取所述密文块的序列。
14.一种计算机程序产品,包括程序指令,当通过处理单元执行时,所述程序指令使所述处理单元执行或控制根据权利要求8至13中任一项所述方法的步骤。
15.一种包括安全元件的主机设备,所述主机设备设置为执行根据权利要求8至13中任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP13290314.7A EP2884692B1 (en) | 2013-12-13 | 2013-12-13 | Updating software on a secure element |
EP13290314.7 | 2013-12-13 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104717198A true CN104717198A (zh) | 2015-06-17 |
CN104717198B CN104717198B (zh) | 2019-01-01 |
Family
ID=50097525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410588846.1A Active CN104717198B (zh) | 2013-12-13 | 2014-10-28 | 安全元件上的软件更新方法和设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9979703B2 (zh) |
EP (1) | EP2884692B1 (zh) |
CN (1) | CN104717198B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107273148A (zh) * | 2016-04-04 | 2017-10-20 | 恩智浦有限公司 | 数据的更新驱动迁移 |
WO2019071650A1 (zh) * | 2017-10-09 | 2019-04-18 | 华为技术有限公司 | 一种安全元件中的应用的升级方法及相关设备 |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102012012509B4 (de) * | 2012-06-22 | 2021-02-04 | Giesecke+Devrient Mobile Security Gmbh | Verfahren und Vorrichtung zum Austausch des Betriebssystems eines ressourcenbeschränkten tragbaren Datenträgers |
EP3048776B2 (en) | 2015-01-22 | 2021-03-17 | Nxp B.V. | Methods for managing content, computer program products and secure element |
KR102028197B1 (ko) * | 2015-02-11 | 2019-10-04 | 한국전자통신연구원 | 하드웨어 보안 모듈, 상기 하드웨어 보안 모듈에 저장된 무결성 검증 값을 업데이트하는 방법, 상기 하드웨어 보안 모듈을 이용하여 단말에 저장된 프로그램을 업데이트하는 방법 |
CN104778794B (zh) * | 2015-04-24 | 2017-06-20 | 华为技术有限公司 | 移动支付装置和方法 |
EP3176695A1 (en) * | 2015-12-04 | 2017-06-07 | Gemalto Sa | Method for managing a package in a secure element |
US10122533B1 (en) * | 2015-12-15 | 2018-11-06 | Amazon Technologies, Inc. | Configuration updates for access-restricted hosts |
US10013558B1 (en) * | 2015-12-17 | 2018-07-03 | Lockheed Martin Corporation | Method and computer readable medium for secure software installation mechanism |
KR102444239B1 (ko) | 2016-01-21 | 2022-09-16 | 삼성전자주식회사 | 보안 칩, 어플리케이션 프로세서, 보안 칩을 포함하는 디바이스 및 그 동작방법 |
US10169614B2 (en) | 2016-11-17 | 2019-01-01 | International Business Machines Corporation | Container update system |
US11194562B2 (en) * | 2017-05-19 | 2021-12-07 | Blackberry Limited | Method and system for hardware identification and software update control |
US10826691B2 (en) * | 2017-05-30 | 2020-11-03 | Servicenow, Inc. | Edge encryption |
US10594670B2 (en) * | 2017-05-30 | 2020-03-17 | Servicenow, Inc. | Edge encryption with metadata |
WO2018227729A1 (zh) * | 2017-06-14 | 2018-12-20 | 华为技术有限公司 | 一种嵌入式通用集成电路卡配置文件的管理方法及装置 |
CN110062016B (zh) | 2018-01-18 | 2023-05-09 | 阿里巴巴集团控股有限公司 | 用于可信服务管理的方法及装置 |
EP3857415A1 (en) * | 2018-09-27 | 2021-08-04 | Landis+Gyr Innovations Inc. | Validation and installation of a file system into a transient, non-persistent storage circuit |
WO2020090418A1 (ja) * | 2018-10-31 | 2020-05-07 | 日立オートモティブシステムズ株式会社 | 電子制御装置、電子制御装置のリプログラミング方法 |
EP3722981A1 (en) * | 2019-04-12 | 2020-10-14 | Nxp B.V. | System and method for applying patches to executable codes |
US10997297B1 (en) * | 2019-12-06 | 2021-05-04 | Western Digital Technologies, Inc. | Validating firmware for data storage devices |
CN112004227B (zh) * | 2020-08-25 | 2024-02-02 | 上海商米科技集团股份有限公司 | 移动设备的刷机控制方法和系统 |
US11698968B2 (en) | 2021-03-05 | 2023-07-11 | Red Hat, Inc. | Management of building of software packages using a trusted execution environment |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1615463A (zh) * | 2002-01-18 | 2005-05-11 | 艾利森电话股份有限公司 | 把数据装入移动终端 |
CN1742247A (zh) * | 2003-02-03 | 2006-03-01 | 诺基亚有限公司 | 用于加密的应用程序安装的结构 |
US20090088133A1 (en) * | 2007-09-28 | 2009-04-02 | Mark Orlassino | Method and System for Distributing Data within a Group of Mobile Units |
US20100153745A1 (en) * | 2008-12-15 | 2010-06-17 | Onno Stephane | Methods and devices for instruction level software encryption |
CN102725737A (zh) * | 2009-12-04 | 2012-10-10 | 密码研究公司 | 可验证防泄漏的加密和解密 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6128737A (en) * | 1998-04-20 | 2000-10-03 | Microsoft Corporation | Method and apparatus for producing a message authentication code in a cipher block chaining operation by using linear combinations of an encryption key |
US6226742B1 (en) * | 1998-04-20 | 2001-05-01 | Microsoft Corporation | Cryptographic technique that provides fast encryption and decryption and assures integrity of a ciphertext message through use of a message authentication code formed through cipher block chaining of the plaintext message |
DE19925389A1 (de) * | 1999-06-02 | 2000-12-21 | Beta Res Gmbh | Verfahren und Vorrichtung zur Übertragung von Daten auf SmartCards |
US6570988B1 (en) * | 1999-06-09 | 2003-05-27 | Microsoft Corporation | Simple technique for implementing a cryptographic primitive using elementary register operations |
US6813354B1 (en) * | 2000-03-09 | 2004-11-02 | Lucent Technologies Inc. | Mixing in small batches |
US7711120B2 (en) * | 2004-07-29 | 2010-05-04 | Infoassure, Inc. | Cryptographic key management |
US9489496B2 (en) | 2004-11-12 | 2016-11-08 | Apple Inc. | Secure software updates |
WO2006068152A1 (ja) * | 2004-12-20 | 2006-06-29 | Matsushita Electric Industrial Co., Ltd. | 鍵情報生成方法 |
US8781967B2 (en) * | 2005-07-07 | 2014-07-15 | Verance Corporation | Watermarking in an encrypted domain |
US7792301B2 (en) * | 2006-06-29 | 2010-09-07 | Microsoft Corporation | Access control and encryption in multi-user systems |
JP5439358B2 (ja) * | 2007-03-23 | 2014-03-12 | アノト アクティエボラーク | 位置符号化パターンの印刷 |
US20090067685A1 (en) * | 2007-09-07 | 2009-03-12 | Authentec, Inc. | Finger sensing apparatus using template watermarking and associated methods |
US8804953B2 (en) * | 2008-11-18 | 2014-08-12 | Red Hat, Inc. | Extensive ciphertext feedback |
EP2197148A1 (en) * | 2008-12-15 | 2010-06-16 | Gemalto SA | Data providing process based on an IBPE scheme |
US20100158243A1 (en) * | 2008-12-19 | 2010-06-24 | Robert Bosch Gmbh | Method of encryption in networked embedded systems |
US8934630B2 (en) * | 2009-11-02 | 2015-01-13 | International Business Machines Corporation | Compressing block-cipher encrypted data |
JP6332970B2 (ja) | 2011-02-11 | 2018-05-30 | シーメンス・ヘルスケア・ダイアグノスティックス・インコーポレーテッドSiemens Healthcare Diagnostics Inc. | 安全なソフトウェアの更新のためのシステム及び方法 |
JP5652363B2 (ja) * | 2011-03-28 | 2015-01-14 | ソニー株式会社 | 暗号処理装置、および暗号処理方法、並びにプログラム |
EP2506487B1 (en) * | 2011-03-30 | 2013-10-23 | Nagravision S.A. | Method of encryption with bidirectional difference propagation |
EP2730048A2 (en) * | 2011-07-07 | 2014-05-14 | Verayo, Inc. | Cryptographic security using fuzzy credentials for device and server communications |
US9152811B2 (en) * | 2012-03-12 | 2015-10-06 | International Business Machines Corporation | Transparent real-time access to encrypted non-relational data |
EP2698756B1 (en) | 2012-08-13 | 2016-01-06 | Nxp B.V. | Local Trusted Service Manager |
EP2717511A1 (en) * | 2012-10-05 | 2014-04-09 | Nagravision S.A. | Method and device for digital data blocks encryption and decryption |
WO2014082090A1 (en) * | 2012-11-26 | 2014-05-30 | Massively Parallel Technologies, Inc. | System and method for secure communications and data storage using multidimensional encryption |
US9165143B1 (en) * | 2013-03-15 | 2015-10-20 | Xilinx, Inc. | Image file generation and loading |
US9208335B2 (en) * | 2013-09-17 | 2015-12-08 | Auburn University | Space-time separated and jointly evolving relationship-based network access and data protection system |
-
2013
- 2013-12-13 EP EP13290314.7A patent/EP2884692B1/en active Active
-
2014
- 2014-10-28 CN CN201410588846.1A patent/CN104717198B/zh active Active
- 2014-12-12 US US14/569,588 patent/US9979703B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1615463A (zh) * | 2002-01-18 | 2005-05-11 | 艾利森电话股份有限公司 | 把数据装入移动终端 |
CN1742247A (zh) * | 2003-02-03 | 2006-03-01 | 诺基亚有限公司 | 用于加密的应用程序安装的结构 |
US20090088133A1 (en) * | 2007-09-28 | 2009-04-02 | Mark Orlassino | Method and System for Distributing Data within a Group of Mobile Units |
US20100153745A1 (en) * | 2008-12-15 | 2010-06-17 | Onno Stephane | Methods and devices for instruction level software encryption |
CN102725737A (zh) * | 2009-12-04 | 2012-10-10 | 密码研究公司 | 可验证防泄漏的加密和解密 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107273148A (zh) * | 2016-04-04 | 2017-10-20 | 恩智浦有限公司 | 数据的更新驱动迁移 |
CN107273148B (zh) * | 2016-04-04 | 2022-01-11 | 恩智浦有限公司 | 数据的更新驱动迁移 |
WO2019071650A1 (zh) * | 2017-10-09 | 2019-04-18 | 华为技术有限公司 | 一种安全元件中的应用的升级方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
US9979703B2 (en) | 2018-05-22 |
US20150172255A1 (en) | 2015-06-18 |
CN104717198B (zh) | 2019-01-01 |
EP2884692B1 (en) | 2020-05-20 |
EP2884692A1 (en) | 2015-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104717198A (zh) | 更新安全元件上的软件 | |
US12051064B2 (en) | Transaction messaging | |
CN107358441B (zh) | 支付验证的方法、系统及移动设备和安全认证设备 | |
US8532301B2 (en) | Key distribution method and system | |
CN108566381A (zh) | 一种安全升级方法、装置、服务器、设备和介质 | |
US8495383B2 (en) | Method for the secure storing of program state data in an electronic device | |
CN105072125B (zh) | 一种http通信系统及方法 | |
CN107743067B (zh) | 数字证书的颁发方法、系统、终端以及存储介质 | |
US11159329B2 (en) | Collaborative operating system | |
KR20240044407A (ko) | 대역-외 관리를 통해 결제 hsm을 호스팅하고 원격으로 프로비저닝하기 위한 시스템 및 방법 | |
CN103873241A (zh) | 安全盾、数字证书管理系统和方法 | |
EP3048553B1 (en) | Method for distributing applets, and entities for distributing applets | |
CN114186994A (zh) | 一种数字货币钱包应用的使用方法、终端及系统 | |
CN107846274B (zh) | 一种控制方法及终端、服务器、处理器 | |
CN114915487B (zh) | 终端认证方法、系统、装置、设备及存储介质 | |
US20240311514A1 (en) | System and method for identity management | |
JP7516643B2 (ja) | Nfcおよび非接触スマートカードを使用した安全なパスワードの生成および管理 | |
DE102023112860A1 (de) | Authentifizierungsmechanismus für ein Rechenspeicher-Download-Programm | |
KR20230000583A (ko) | Puf기반 otp를 이용하여 사용자 인증을 지원하는 서버 및 그 동작 방법 | |
CN118590218A (zh) | 一种移动终端审批的实现方法、装置、设备、介质 | |
CN115765981A (zh) | 一种可信网络通信方法、装置 | |
CN117750360A (zh) | 入网鉴权数据的保护方法及装置、存储介质、电子设备 | |
JP2018107667A (ja) | 電子情報記憶媒体、認証システム、認証方法、及び認証アプリケーションプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |