CN113261001A - 远程执行设备存储器 - Google Patents
远程执行设备存储器 Download PDFInfo
- Publication number
- CN113261001A CN113261001A CN201980080017.3A CN201980080017A CN113261001A CN 113261001 A CN113261001 A CN 113261001A CN 201980080017 A CN201980080017 A CN 201980080017A CN 113261001 A CN113261001 A CN 113261001A
- Authority
- CN
- China
- Prior art keywords
- memory
- remote system
- data
- contents
- authentication
- 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
- 230000015654 memory Effects 0.000 title claims abstract description 112
- 238000000034 method Methods 0.000 claims abstract description 61
- 230000008569 process Effects 0.000 claims abstract description 23
- 238000004891 communication Methods 0.000 claims description 39
- 230000006870 function Effects 0.000 claims description 20
- 238000013500 data storage Methods 0.000 claims description 13
- 238000012986 modification Methods 0.000 claims description 8
- 230000004048 modification Effects 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 6
- 230000001419 dependent effect Effects 0.000 claims 1
- 230000001010 compromised effect Effects 0.000 description 5
- 208000033999 Device damage Diseases 0.000 description 4
- 238000013475 authorization Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/062—Securing storage systems
- G06F3/0622—Securing storage systems in relation to access
-
- 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/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/74—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
-
- 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/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
Abstract
一种用于设备的存储器的防重放保护的方法,其中,所述存储器由所述设备的安全元件使用并位于该安全元件外部,所述方法包括以下步骤,其中,在修改所述存储器的内容之后,在所述设备中执行这些步骤:生成指示所述存储器的内容的状态的设备状态数据;向远程系统发送所述设备状态数据,用于更新存储在所述远程系统的数据存储装置中的设备的认证密钥,并且用于由所述远程系统在认证过程中使用;以及在所述设备与所述远程系统之间的认证过程中,从所述安全元件向所述远程系统提供基于所述设备状态数据的认证信息,以验证所述存储器的内容的有效性。
Description
技术领域
本公开涉及用于设备的存储器的防重放保护的计算机实现方法、用于执行用于设备的存储器的防重放保护的计算机实现方法的设备、用于执行用于设备的存储器的防重放保护的计算机实现方法的远程系统、计算机程序产品以及计算机可读非暂时性存储介质。
背景技术
物联网网络是嵌入在电子设备或软件中的物理设备、电器或物品的网络,使这些对象能够无需人工交互就可以交换数据。建议ITU-T Y.2060将物联网定义为信息社会的全球基础设施,通过基于现有和不断发展的可互操作信息和通信技术将物理事物和虚拟事物互连,从而实现高级服务。术语“物联网”中的“物”被认为是物理世界(物理事物)或信息世界(虚拟事物)的对象,能够被识别并集成到通信网络中。在这个定义中,物理事物存在于物理世界中,能够被感知、驱动和连接。物理事物的示例包括周围环境、工业机器人、货物和电气设备。在这个定义中,虚拟事物存在于信息世界中,并且能够被存储、处理和访问。虚拟事物的示例包括多媒体内容和应用软件。
在ITU-T Y.2060中,物联网设备被视为具有强制性通信能力和可选感测、驱动、数据捕获、数据存储和/或数据处理能力的设备。物联网设备通常与其他设备通信:它们可以通过网关通过通信网络进行通信,无需网关通过通信网络进行通信,或者不使用通信网络直接进行通信。另外,通信场景的组合也是可能的;例如,设备可以使用通过本地网络(即,提供设备之间以及设备和诸如自组织网络之类的网关之间的本地连接的网络)的直接通信与其他设备进行通信,然后经由本地网络网关通过通信网络进行通信。
通信网络可以将物联网设备捕获的数据传递到应用和其他设备,以及从应用到设备的指令。通信网络通常提供可靠且有效的数据传递的能力。物联网网络基础设施可以经由现有网络和/或演进网络来实现,现有网络诸如传统的基于TCP/IP的网络,演进网络诸如下一代网络(NGN)。
物联网设备可以例如以片上系统(SoC)的形式围绕集成电路构建。这样的SoC可以包括信任根(RoT),其是始终受设备信任并且基于硬件提供的一组功能,以便为设备的证书和软件提供强大的保护。RoT通常在集成的安全元件中实现。RoT可能没有嵌入到设备的SoC中,而是在设备的集成安全元件中实现。RoT可以是例如可信执行环境(TEE)、硬件块、硬件块和软件块之间的混合。
RoT可以与芯片上的其他设备安全地共享数据。RoT提供了一个安全的环境,可以在SoC中创建、存储和使用机密,并代表运行在不同主机CPU上的客户端应用程序。RoT可以由安全模块、加密核心等组成。
物联网设备可以连接到特定系统,需要对连接的设备进行强认证,例如激活某些功能。这样的认证通常依赖于嵌入在设备中的每个设备的唯一秘密,该唯一秘密被用在设备和系统之间的强密码认证协议设置中。系统例如可以是物联网平台。
诸如物联网设备的设备可以包括在安全环境外部的存储器。例如,在集成安全元件(ISE)的上下文中,非易失性存储器通常由非安全上下文共享或甚至管理。需要在非易失性存储器中存储诸如Java小应用程序或数据库值之类的数据的ISE通常确保这些数据的私密性和完整性。
但是,由于外部存储器可以物理访问,甚至可以由SoC的非安全上下文管理,攻击者可以用旧版本替换存储器的有效版本,或者可以将其自身的内容加载到存储器中。
这会导致规避设备的安全性,这是不希望的。
发明内容
根据本公开的一方面,提出了一种用于设备的存储器的防重放保护的计算机实现的方法。存储器可以由设备的安全元件使用,并且可以在安全元件的外部。所述方法可以包括以下步骤中的一个或多个步骤,其中所述步骤通常在修改存储器的内容之后在设备中执行。所述方法可以包括生成指示存储器的内容的状态的设备状态数据。所述方法还可以包括向远程系统发送设备状态数据,用于更新存储在远程系统的数据存储装置中的设备的认证密钥,并且用于由远程系统在认证过程中使用。所述方法还可以包括在设备和远程系统之间的认证过程中从安全元件向远程系统提供基于设备状态数据的认证信息,以验证存储器的内容的有效性。
根据本公开的一方面,提出了一种用于设备的存储器的防重放保护的计算机实现的方法。所述方法可以在远离设备的远程系统中执行。所述方法可以包括从所述设备接收指示存储器的内容的状态的设备状态数据。所述方法还可以包括更新存储在远程系统的数据存储装置中的设备的认证密钥,并供所述远程系统在认证过程中使用,其中,基于接收到的设备状态数据来更新认证密钥。所述方法还可以包括在设备和远程系统之间的认证过程中从设备的安全元件接收认证信息,以验证存储器的内容的有效性,其中,所述认证信息基于设备中的设备状态数据。
因此,在设备和服务器之间的认证过程中,可以在远程系统中对照存储器的内容的预期当前状态来验证存储器的内容的实际当前状态,其中,基于先前从设备接收的设备状态数据来将预期当前状态存储在远程系统中。因此,当设备的存储器的内容被泄露、破坏或以其他方式与预期内容不同时,可以阻止设备执行与远程系统的操作。
在一个实施例中,存储器的内容的有效性可以涉及以下各项中的至少一项:存储器的内容的真实性;存储器的内容的完整性;以及存储器的内容的版本信息。
在一个实施例中,安全元件可以是以下之一:在设备上运行的受保护软件应用;设备的芯片组中的可信执行环境;以及设备的集成安全元件。
在一个实施例中,设备状态数据可以包括以下各项中的至少一项:计数器值;指示软件版本的数据值;表示存储器完整性的值;以及指示存储器的内容的过去修改的历史的数据。
在一个实施例中,认证信息可以在认证过程中被用作密码函数的秘密输入,其中,密码函数被用于对设备和远程系统之间的通信进行加密和/或签名,并且其中,秘密输入优选地是密码函数的加密密钥或种子之一。
在一个实施例中,认证密钥可以包括以下各项中的至少一项:设备状态数据的至少一部分;设备状态数据的至少一部分的函数;以及根据设备状态数据的至少一部分计算的预共享认证密钥的更新版本。
在一个实施例中,设备状态数据可以包括从设备中的单调计数器获取的单调计数器值,并且其中,认证信息包括单调计数器值。
在一个实施例中,在允许设备执行与远程系统的操作之前,认证过程可以作为单独的步骤来执行。
在一个实施例中,当执行与作为设备和远程系统之间的通信协议的一部分的远程系统的操作时,可以隐式地执行认证过程。
根据本发明的一个方面,提出了一种设备,该设备包括安全元件和可由该安全元件使用并在其外部的存储器。所述设备可以包括用于执行一个或多个上述步骤的装置。
根据本发明的一个方面,提出了一种包括数据存储装置的远程系统。该远程系统可以包括用于执行一个或多个上述步骤的装置。
根据本发明的一方面,提出了一种在计算机可读非暂时性存储介质上实现的计算机程序产品,所述计算机程序产品包括计算机可执行指令,所述计算机可执行指令在由处理器执行时使所述处理器执行上述步骤中的一个或多个步骤。
根据本发明的一个方面,提出了一种包括计算机可执行指令的计算机可读非暂时性存储介质,所述计算机可执行指令在由处理器执行时使所述处理器执行上述步骤中的一个或多个步骤。
在下文中,将更详细地描述本公开的实施例。然而,应了解,这些实施例可不解释为限制本发明的保护范围。
附图说明
现在将仅通过示例的方式参照附图来描述实施例,其中相应的附图标记指示相应的部分,并且其中:
图1示出了具有通信地连接到远程系统的设备的示例性网络;
图2示出了通信地连接到远程系统的示例性设备;
图3至图6示出了由设备和远程系统执行的过程的示例性实施例的流程图。
附图仅用于说明目的,并不作为权利要求所规定的范围或保护的限制。
具体实施方式
图1中示出了设备1,其经由数据网络3通信地连接到远程系统2。设备1可以是任何客户端设备或物联网设备。
设备1可以包括存储器11,用于存储软件程序部分、版本信息或由设备用于执行与远程系统2的操作的任何其他数据。这些操作可以涉及访问信息或数据服务、从设备向远程服务器提供数据、任何已知的IoT操作等。这些操作可以部分地或完全地由存储器11的内容来控制。因此,操作的安全性可以取决于存储器11的内容。
存储器11可以在设备1的安全环境之外。例如,在iSE的上下文中,非易失性存储器通常由非安全上下文共享或甚至管理。存储器11的内容,例如存储在存储器11中的软件程序,不应该被攻击者破坏或改变以影响操作。在另一示例中,软件程序应当是正确的版本,例如最新版本,以确保软件的适当功能。
设备1可以包括安全元件12。这种安全元件12的示例是在设备1上运行的受保护软件应用、设备1的芯片组中的可信执行环境、或设备的集成安全元件。安全元件12可以包括RoT。
设备1可以包括通信模块13。通信模块13可以包括软件代理,以例如使用安全通信协议来建立与远程系统2的安全通信。
远程系统2可以实现为单个服务器、一组协作计算机或计算机元件,或者实现为云服务。远程服务器2可以包括数据存储装置21。数据存储装置21可以是授权系统20的一部分。远程系统2可以包括通信模块23。通信模块23可以包括软件代理,以例如使用安全通信协议来建立与设备1的安全通信。远程服务器2可以包括安全代理24,用于将设备连接到用于执行操作的另一系统(未示出)。通信模块23可以是认证系统20或安全代理24的一部分。可能的是,认证系统20和安全代理24各自具有其自身的通信模块。
图1还示出了包括存储器41的第二设备4。在该示例中,存储器41的内容已经被试图访问由远程系统2提供的服务的攻击者破坏。
为了能够验证存储器的内容的有效性,在存储器的内容已经改变之后,合法设备1生成指示存储器的内容的状态的设备状态数据。这种改变包括例如软件更新、将设备1的新软件功能加载到存储器中、或者更新或加载存储器中的任何数据以供在与远程系统2的操作中使用。
存储器的内容的有效性涉及例如存储器的内容的真实性、存储器的内容的完整性和/或存储器的内容的版本信息。
一般而言,设备状态数据可包括但不限于计数器值、指示软件版本的数据值、表示存储器完整性的值和/或指示存储器的内容的过去修改的历史的数据。取决于安全元件特征,设备状态数据可用作基于对称或非对称密码术的签名的输入。
计数器值可以是周期性地递增并存储在设备1的存储器11中的值。当前计数器值可以与设备状态数据一起被传送到远程系统2,在远程系统2可以将该当前计数器值存储在数据存储装置21中。当设备1稍后执行与远程系统或经由远程系统2访问的任何其他系统的操作时,可以对照存储器11中的计数器值来验证存储在远程系统2中的计数器值。如果计数器值不匹配,则可以确定设备已经被损坏。设备损坏可以在设备4尝试使用远程系统2时发生。
指示软件版本的数据值可以是指示安装在存储器11中的程序的当前软件版本的值。例如,当软件被更新或升级并存储在数据存储装置21中时,可以将软件版本与设备状态数据一起传送到远程系统2。当稍后设备1利用远程系统或经由远程系统2访问的任何其他系统执行操作时,可以针对存储器11中的软件版本来验证存储在远程系统2中的软件版本。如果软件版本不匹配,则可以确定设备已经被损坏。设备损坏可以在设备4尝试使用远程系统2时发生。
表示存储器完整性的值可以是基于存储器11的内容生成的值,例如,根据存储器11的整个内容或从存储器11的部分内容生成的散列值。表示完整性的值可以与设备状态数据一起被传送到远程系统2,在远程系统2可以将该当前计数器值存储在数据存储装置21中。当稍后设备1利用远程系统或经由远程系统2访问的任何其他系统执行操作时,可以对照表示完整性存储器11的当前值来验证存储在远程系统2中的表示完整性的值。如果表示完整性的值不匹配,则可以确定设备已经被损坏。设备损坏可以在设备4尝试使用远程系统2时发生。
指示存储器的内容的过去修改的历史的数据可以是基于先前的设备状态数据生成的值。通常,将该历史数据与当前数据组合以获取设备状态数据。例如,可以根据存储器11的全部内容或者根据存储器11的一部分内容和表示过去的存储器的内容的先前的散列值来生成散列值。指示存储器的内容的过去修改的历史的数据可以与设备状态数据一起被传送到远程系统2,在远程系统2该数据可以被存储在数据存储装置21中。当稍后设备1执行与远程系统或经由远程系统2访问的任何其他系统的操作时,可以针对存储在存储器11中的指示过去修改的历史的数据来验证存储在远程系统2中的指示过去修改的历史的数据。如果值不匹配,则可以确定设备已经被损坏。设备损坏可以在设备4尝试使用远程系统2时发生。
图2示出了可通信地连接到远程系统2’的示例性物联网设备1’。设备1’可以类似于图1中的设备1。远程系统2’可以类似于图1所示的远程系统2。设备1’可以包括非易失性存储器11’、iSE 12’和通信模块13’。图2还示出了示例性安全平台20,其可以包括如图1所示的授权系统。iSE 12’可能经由通信模块13’可以通信地连接到安全平台20’。图2进一步示出了示例性集成的安全反向代理24’,其可以集成在远程系统2’中。安全平台20’可以是远程系统2’的一部分。
箭头1001-1005描绘了各种元件之间的数据流。对于1001,可以修改设备状态。例如,利用从iSE 12’到存储器11’的数据1001,RoT的安全存储可以由于数据库修改而被更新。在1002中,可以将新设备状态加载到安全平台20’中。对于1003,安全平台20’可以更新新设备状态的通信秘密功能。当在某个稍后的时间点设备1’想要利用远程系统2’的服务时,在连接建立时,iSE 12’可以使用RoT根据设备状态来生成会话密钥,并将该会话密钥传送到通信模块13’。然后可以建立设备1’和远程系统2’之间的连接,其中对于1005,可以通过在代理24’中用1003设置的新的通信秘密来强制设备状态。这可以防止例如RoT的旧安全存储版本(例如旧Java小应用程序)的重放。
因此,远程连接的系统2、2’可以保证外部存储器11、11’的内容的生命周期、其新鲜性和可选地其完整性,其可被物理或逻辑攻击篡改。优选地,每当更新设备1、1’的本地存储器11时,设备的可信部分12、12’--例如运行的应用、可信执行环境或集成的安全元件--可以以设备状态数据的形式向远程系统2、2’提交表示本地存储器的新版本的新值。
当本地存储器11、11’的新版本被提交时,远程系统2、2’可以将所提交的设备状态数据或所提交的设备状态数据的秘密函数安装到认证系统的储存库中,诸如认证系统20的数据存储装置21。例如,在DTLS服务器或3GPP HSS服务器中,这可以通过加载从提交的设备状态数据计算的预共享认证密钥的新版本来实现。
设备1、1’可以在与认证系统2、2’的认证过程期间使用表示外部存储器的版本的设备状态数据。然后,认证服务器20可以隐式地或显式地验证本地存储器的正确版本和/或完整性已经被用于成功地认证设备1、1’。显式验证可以涉及认证过程,该认证过程在允许设备执行与远程系统的操作之前作为单独的步骤来执行。隐式验证可以涉及作为设备和远程系统之间的通信协议的一部分而执行的认证过程,例如通过使用在散列被修改的情况下将不同的计算的预共享密钥。
利用认证过程,可以确保只有具有正确的外部存储器版本和内容的设备1、1’被认证系统20、20”认证。
在一个实施例中,可以使用单调计数器。单调计数器可以用存储器的完整性值来保护,例如在本地签名中。然后,可以在认证期间提供表示存储器版本的单调计数器,或者将其包括在加密数据报内的安全通信中。
远程系统2、2’可以强制使用计数器的接收到的最高版本,并且可以防止反转计数器,使得远程地强制实施单调特性。
为了保证外部存储器的新鲜度,防止反重放,如上所述的方法可以被实现为事务机制,其中设备1、1’和服务器2、2’可以被同步以便例如通过实现奇/偶选择器来管理撕裂。为此,设备1、1’可以包括类似于存储器11或存储器11’的两个存储器。第一存储器可以包括存储器的内容的当前版本,而第二存储器可以包括存储器的内容的先前版本。对于每个存储器,可以生成状态数据,使得远程系统2、2’能够在当前状态还不为远程系统2、2’所知的情况下验证存储器的先前内容的状态。此外,通过接收存储器的内容的当前和先前版本的设备状态数据,远程系统2、2’能够确定是否跳过中间版本。
图3示出了根据本公开的示例性实施例的用于设备1、1’中的存储器11、11’的防重放保护的方法的步骤。在步骤101中,可以修改存储器11、11’的内容。在步骤102中,可以生成指示存储器11、11’的内容的状态的设备状态数据。在步骤103中,可以将设备状态数据发送到远程系统2、2’,以便在步骤202中更新设备1、1’的认证密钥,该认证密钥存储在远程系统2、2’的数据存储装置21中,并供远程系统2、2’在认证过程中使用。在步骤201中,可以在远程系统2、2’中接收设备状态数据。
图4示出了根据本公开的示例性实施例的作为设备1、1’中的存储器11、11’的防重放保护的一部分的认证过程的方法的步骤。在执行了图3所示的步骤之后,图4所示的步骤通常是在较晚的时间之后。在步骤111中,在设备1、1’和远程系统2、2’之间的认证过程中,可以从安全元件12、12’向远程系统2、2’提供基于设备状态数据的认证信息,以验证存储器的内容的有效性。在步骤211中,可以在远程系统2、2’2中接收认证信息。在步骤112中,可以验证利用远程系统2、2’或利用可通信地连接到远程系统的系统的操作。
认证信息可以在认证过程中被用作密码函数的秘密输入。这在图4中通过步骤121示出,其中,基于设备状态数据的认证信息可以从安全元件12、12’提供给远程系统2、2’。在步骤221中,可以通过远程系统2、2’中的密码函数来接收认证信息。可以在稍后的时间使用密码函数来对设备和远程系统之间的通信进行加密和/或签名。在步骤222中,可以将受保护的通信从远程系统2、2’发送到设备1、1’,并且在步骤122中,可以在设备1、1’中接收受保护的通信。只有当设备1、1’具有正确的设备状态数据时,设备1、1’才能够对受保护的通信进行解密和/或正确地验证签名。秘密输入优选地是密码函数的加密密钥或种子之一。
在图5中示出了另一示例性认证过程,其中在步骤131中,可以将基于设备状态数据的认证信息提供给设备1、1’中的密码函数。可以使用密码函数来对设备和远程系统之间的通信进行加密和/或签名。在步骤231中,可以在远程系统2、2’中从设备1、1’接收受保护通信。只有当设备中的设备状态与存储在远程系统2、2’中的设备状态相匹配时,远程系统2、2’才能够对受保护的通信进行解密和/或正确地验证签名。秘密输入优选地是密码函数的加密密钥或种子之一。
本公开的一个或多个实施例可以被实现为与计算机系统一起使用的计算机程序产品。程序产品的程序可以定义实施例的功能(包括这里描述的方法),并且可以包含在各种计算机可读存储介质上。计算机可读存储介质可以是非暂时性存储介质。说明性计算机可读存储介质包括但不限于:(i)不可写存储介质(例如计算机内的只读存储器设备,诸如可由CD-ROM驱动器、ROM芯片或任何类型的固态非易失性半导体存储器读取的CD-ROM盘10),信息可被永久地存储在该不可写存储介质上;以及(ii)可存储可变信息的可写存储介质(例如,硬盘驱动器或任何类型的固态随机存取半导体存储器、闪存)。
Claims (14)
1.一种用于设备(1、1’)的存储器(11、11’)的防重放保护的计算机实现的方法,其中,所述存储器由所述设备的安全元件(12、12’)使用并位于该安全元件(12、12’)外部,其特征在于,所述方法包括以下步骤,其中,在修改(101)所述存储器的内容之后,在所述设备中执行这些步骤:
生成(102)指示所述存储器的内容的状态的设备状态数据;
向远程系统(2、2’)发送(103)所述设备状态数据,用于更新存储在所述远程系统的数据存储装置(21)中的设备的认证密钥,并且用于由所述远程系统在认证过程中使用;以及
在所述设备与所述远程系统之间的认证过程中,从所述安全元件向所述远程系统提供(111)基于所述设备状态数据的认证信息,以验证(112)所述存储器的内容的有效性。
2.一种用于设备(1、1’)的存储器(11、11’)的防重放保护的计算机实现方法,所述方法在远离所述设备的远程系统(2、2’)中执行,其特征在于,所述方法包括以下步骤:
从所述设备接收(201)指示所述存储器的内容的状态的设备状态数据;
更新(202)存储在远程系统的数据存储装置(21)中的设备的认证密钥,并供所述远程系统在认证过程中使用,其中,基于接收到的设备状态数据来更新所述认证密钥;以及
在所述设备与所述远程系统之间的认证过程中,从所述设备的安全元件接收(211)认证信息,以验证所述存储器的内容的有效性,其中,所述认证信息基于所述设备中的设备状态数据。
3.根据权利要求1或2所述的方法,其中,所述存储器的内容的有效性涉及以下各项中的至少一项:
所述存储器的内容的真实性;
所述存储器的内容的完整性;以及
所述存储器的内容的版本信息。
4.根据前述权利要求中任一项所述的方法,其中,所述安全元件是以下各项中的至少一项:
在所述设备上运行的受保护的软件应用;
所述设备的芯片组中的可信执行环境;以及
所述设备的集成安全元件。
5.根据前述权利要求中任一项所述的方法,其中,所述设备状态数据包括以下各项中的至少一项:
计数器值;
指示软件版本的数据值;
表示所述存储器的完整性的值;以及
指示所述存储器的内容的过去修改的历史的数据。
6.根据前述权利要求中任一项所述的方法,其中,所述认证信息在认证过程中被用作密码函数(221)的秘密输入,其中,所述密码函数被用于对所述设备与所述远程系统之间的通信进行加密和/或签名,并且其中,所述秘密输入优选地是所述密码函数的加密密钥或种子之一。
7.根据前述权利要求中任一项所述的方法,其中,认证密钥包括以下各项中的至少一项:
所述设备状态数据的至少一部分;
所述设备状态数据的至少一部分的函数;以及
根据所述设备状态数据的至少一部分计算的预共享认证密钥的更新版本。
8.根据前述权利要求中任一项所述的方法,其中,所述设备状态数据包括从所述设备中的单调计数器获取的单调计数器值,并且其中,所述认证信息包括所述单调计数器值。
9.根据权利要求1至8中任一项所述的方法,其中,在允许所述设备执行与所述远程系统的操作之前,所述认证过程作为单独的步骤来执行。
10.根据权利要求1至8中任一项所述的方法,其中,当执行与作为所述设备与所述远程系统之间的通信协议的一部分的远程系统的操作时,隐式地执行所述认证过程。
11.一种设备(1、1’),该设备(1、1’)包括安全元件(12、12’)和能够由所述安全元件使用且位于安全元件外部的存储器(11、11’),其中,所述设备包括:用于执行根据权利要求1或从属于权利要求1的权利要求3至10中任一项所述的方法的装置。
12.一种远程系统(2、2’),该远程系统(2、2’)包括数据存储装置(21),其中,所述远程系统包括用于执行根据权利要求2或根据权利要求2的权利要求3至10中任一项所述的方法的装置。
13.一种在计算机可读非暂时性存储介质上实现的计算机程序产品,所述计算机程序产品包括计算机可执行指令,当由处理器执行时,所述计算机可执行指令使所述处理器执行根据权利要求1至10中任一项所述的方法的步骤。
14.一种包括计算机可执行指令的计算机可读非暂时性存储介质,当由处理器执行时,所述计算机可执行指令使所述处理器执行根据权利要求1至10中任一项所述的方法的步骤。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP18209906.9A EP3663957A1 (en) | 2018-12-03 | 2018-12-03 | Remote enforcement of device memory |
EP18209906.9 | 2018-12-03 | ||
PCT/EP2019/082737 WO2020114860A1 (en) | 2018-12-03 | 2019-11-27 | Remote enforcement of device memory |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113261001A true CN113261001A (zh) | 2021-08-13 |
Family
ID=64606712
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980080017.3A Pending CN113261001A (zh) | 2018-12-03 | 2019-11-27 | 远程执行设备存储器 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20220050605A1 (zh) |
EP (2) | EP3663957A1 (zh) |
CN (1) | CN113261001A (zh) |
BR (1) | BR112021010158A2 (zh) |
WO (1) | WO2020114860A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11709618B2 (en) * | 2021-03-25 | 2023-07-25 | Dell Products L.P. | Automatically processing storage system data and generating visualizations representing differential data comparisons |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070220500A1 (en) * | 2006-03-20 | 2007-09-20 | Louisa Saunier | Computer security method and computer system |
CN101176125A (zh) * | 2005-05-13 | 2008-05-07 | 诺基亚公司 | 完整性受保护的安全存储设备的实施 |
CN102255888A (zh) * | 2010-05-21 | 2011-11-23 | 英特尔公司 | 从远程服务器对数据存储设备进行安全扫描的方法和装置 |
US20160283750A1 (en) * | 2015-03-26 | 2016-09-29 | David M. Durham | Providing enhanced replay protection for a memory |
US20180006820A1 (en) * | 2016-06-30 | 2018-01-04 | Microsoft Technology Licensing, Llc | Controlling verification of key-value stores |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030233562A1 (en) * | 2002-06-12 | 2003-12-18 | Sachin Chheda | Data-protection circuit and method |
US20060229772A1 (en) * | 2005-04-08 | 2006-10-12 | Honeywell International Inc. | Systems and methods for avionics software delivery |
US20070162964A1 (en) * | 2006-01-12 | 2007-07-12 | Wang Liang-Yun | Embedded system insuring security and integrity, and method of increasing security thereof |
KR101427646B1 (ko) * | 2007-05-14 | 2014-09-23 | 삼성전자주식회사 | 펌웨어의 무결성 검사 방법 및 장치 |
US7975109B2 (en) * | 2007-05-30 | 2011-07-05 | Schooner Information Technology, Inc. | System including a fine-grained memory and a less-fine-grained memory |
KR101567620B1 (ko) * | 2008-06-24 | 2015-11-20 | 나그라비젼 에스에이 | 데이터 처리 시스템 및 방법 |
US20110091035A1 (en) * | 2009-10-20 | 2011-04-21 | Sun Microsystems, Inc. | Hardware kasumi cypher with hybrid software interface |
US8589302B2 (en) * | 2009-11-30 | 2013-11-19 | Intel Corporation | Automated modular and secure boot firmware update |
US20120137137A1 (en) * | 2010-11-30 | 2012-05-31 | Brickell Ernest F | Method and apparatus for key provisioning of hardware devices |
US10127405B2 (en) * | 2016-05-10 | 2018-11-13 | Qualcomm Incorporated | Techniques for determining an anti-replay counter for preventing replay attacks |
KR101852482B1 (ko) * | 2016-05-16 | 2018-06-11 | (주)휴맥스 | 포스 입력 및 소프트웨어 업그레이드에 따라 다른 동작을 수행시키는 이미지 처리 단말 및 소프트웨어 업그레이드 방법 |
US10725849B2 (en) * | 2018-07-27 | 2020-07-28 | Intel Corporation | Server RAS leveraging multi-key encryption |
CN111492353B (zh) * | 2018-08-15 | 2023-07-18 | 华为技术有限公司 | 一种安全的数据转移装置、系统和方法 |
US11768611B2 (en) * | 2020-04-02 | 2023-09-26 | Axiado Corporation | Secure boot of a processing chip |
-
2018
- 2018-12-03 EP EP18209906.9A patent/EP3663957A1/en not_active Withdrawn
-
2019
- 2019-11-27 CN CN201980080017.3A patent/CN113261001A/zh active Pending
- 2019-11-27 EP EP19806293.7A patent/EP3891645A1/en active Pending
- 2019-11-27 WO PCT/EP2019/082737 patent/WO2020114860A1/en unknown
- 2019-11-27 US US17/298,992 patent/US20220050605A1/en active Pending
- 2019-11-27 BR BR112021010158-6A patent/BR112021010158A2/pt unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101176125A (zh) * | 2005-05-13 | 2008-05-07 | 诺基亚公司 | 完整性受保护的安全存储设备的实施 |
US20070220500A1 (en) * | 2006-03-20 | 2007-09-20 | Louisa Saunier | Computer security method and computer system |
CN102255888A (zh) * | 2010-05-21 | 2011-11-23 | 英特尔公司 | 从远程服务器对数据存储设备进行安全扫描的方法和装置 |
US20160283750A1 (en) * | 2015-03-26 | 2016-09-29 | David M. Durham | Providing enhanced replay protection for a memory |
US20180006820A1 (en) * | 2016-06-30 | 2018-01-04 | Microsoft Technology Licensing, Llc | Controlling verification of key-value stores |
Non-Patent Citations (1)
Title |
---|
石志国;贺也平;淮晓永;张宏;: "一种面向网格计算的分布式匿名协作算法", 计算机研究与发展, no. 1 * |
Also Published As
Publication number | Publication date |
---|---|
EP3663957A1 (en) | 2020-06-10 |
EP3891645A1 (en) | 2021-10-13 |
US20220050605A1 (en) | 2022-02-17 |
BR112021010158A2 (pt) | 2021-08-17 |
WO2020114860A1 (en) | 2020-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10382485B2 (en) | Blockchain-assisted public key infrastructure for internet of things applications | |
US20210012008A1 (en) | Method of initializing device and method of updating firmware of device having enhanced security function | |
US11853438B2 (en) | Providing cryptographically secure post-secrets-provisioning services | |
US9165148B2 (en) | Generating secure device secret key | |
US11853465B2 (en) | Securing data stored in a memory of an IoT device during a low power mode | |
US20210392004A1 (en) | Apparatus and method for authenticating device based on certificate using physical unclonable function | |
Cooper et al. | Fido device onboard specification 1.1 | |
KR20170017455A (ko) | 세션 키 및 인증 토큰에 기반한 상호 인증 장치들 간의 상호 인증 방법 및 상호 인증 장치들 | |
JP6888122B2 (ja) | 半導体装置、更新データ提供方法、更新データ受取方法およびプログラム | |
JP2015225376A (ja) | コンピュータシステム、コンピュータ、半導体装置、情報処理方法およびコンピュータプログラム | |
CN113261001A (zh) | 远程执行设备存储器 | |
CN113261255B (zh) | 通过封存和验证进行的装置认证 | |
CN114329522A (zh) | 一种私钥保护方法、装置、系统及存储介质 | |
JP2024071510A (ja) | シール及び検証によるデバイス認証 | |
CN117474543A (zh) | 基于区块链网络的数字资产处理方法及相关设备 | |
KR20240003977A (ko) | 차량 제어기의 앱 무결성 검증 방법 | |
WO2023073200A1 (en) | Method to establish a secure channel |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: Lausanne Applicant after: NAGRAVISION S.A. Address before: Swiss shesuo - Suhl - Lausanne Applicant before: NAGRAVISION S.A. |
|
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: Swiss shesuo - Suhl - Lausanne Applicant after: Nagra imaging Co.,Ltd. Address before: Lausanne Applicant before: NAGRAVISION S.A. |