KR102421318B1 - 장치의 시스템 온 칩의 보안 모듈로의 복수의 액세스를 관리하기 위한 디바이스 - Google Patents
장치의 시스템 온 칩의 보안 모듈로의 복수의 액세스를 관리하기 위한 디바이스 Download PDFInfo
- Publication number
- KR102421318B1 KR102421318B1 KR1020177027196A KR20177027196A KR102421318B1 KR 102421318 B1 KR102421318 B1 KR 102421318B1 KR 1020177027196 A KR1020177027196 A KR 1020177027196A KR 20177027196 A KR20177027196 A KR 20177027196A KR 102421318 B1 KR102421318 B1 KR 102421318B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- module
- secure module
- chip
- secure
- Prior art date
Links
Images
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
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1408—Protection against unauthorised use of memory or access to memory by using cryptography
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
- G06F12/145—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being virtual, e.g. for virtual blocks or segments before a translation mechanism
-
- 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
- G06F21/79—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 in semiconductor storage media, e.g. directly-addressable memories
-
- 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/82—Protecting input, output or interconnection devices
- G06F21/85—Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2125—Just-in-time application of countermeasures, e.g., on-the-fly decryption, just-in-time obfuscation or de-obfuscation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
Abstract
디바이스(1)는 장치(3)의 시스템 온 칩(2)의 보안 모듈(5)로의 복수의 액세스를 관리하도록 의도되며, 시드 및 암호화 키를 이용해 시스템 온 칩(2)의 보안 모듈(5)과 비 보안 모듈(4) 간에 전송될 데이터에 대한 무결성 체크를 수시로 그리고 단일 패스로 계산하며, 암호화 키를 이용해 이들 데이터를 수시로 그리고 단일 패스로 암호화/해역하도록 배열된 스트림 암호화 수단(13, 132), 및 상기 스트림 암호화 수단(13, 132)으로 암호화 키 및 시드를 제공하며 상기 보안 모듈(5)과 비 보안 모듈(4) 간 암호화/해역된 데이터의 전송을 가능하게 하도록 보안 모듈(5)과 비 보안 모듈(4)로 데이터 전송을 요청하고 상태를 불러오도록 배열된 제어 수단(1, 12)을 포함한다.
Description
기술 분야
본 발명은 하드웨어 호스트를 포함하고 복수의 이미지 소유자에 대한 복수의 가상 보안 요소로서 역할 하는 합성 가능한 보안 요소(또는 모듈)와 관련되고, 더 구체적으로, 이들의 하드웨어 호스트를 효율적으로 공유하기 위해 이러한 보안 요소(또는 모듈)로의 복수의 액세스를 관리하는 방식과 관련된다.
일반적으로 보안 요소(secure element)(내장형 또는 탈착형)는 적어도 하나의 이미지 소유자로부터의 요건에 따라 맞춤 구성된 범용 및 특정 서비스로의 액세스를 제공하는 단일 운영 체제(즉, OS)를 호스팅한다. 따라서 보안 요소는 예를 들어 SIM(또는 UICC) 카드 또는 스마트카드 또는 칩 카드 또는 그 밖의 다른 집적 회로 카드일 수 있다.
다음의 기재에서, 이미지 소유자는 이미지 제작자로부터 이미지를 구매한 상업적 개체이고, 이미지 제작자는 이미지를 구축한 개체이며, 이미지는 보안 요소의 메모리에 저장되며, 캡슐화된 데이터를 해역하고 권한을 관리하고 로딩된 해역된 데이터의 무결성을 체크하는 수단을 내장하는 이진 정보의 구조화 및 암호화된 표현임이 간주될 것이다.
보안 요소의 운영 체제뿐 아니라 해당 분야의 통상의 기술자에게 알려져 있는 바와 같이, 애플리케이션을 포함하고 OS 서비스에 의해 지원되는 메모리 도메인을 정의할 수 있다.
보안 요소의 OS가 이미지 소유자의 단일 이미지를 지원하기 위해, 이 이미지 소유자에 의해(또는 이 이미지 소유자를 위한) 정의된 요건들의 단일 세트를 지원해야 한다. 그러나 하드웨어 호스트의 보안 요소가 복수의 이미지 소유자에 대한 복수의 가상 보안 요소로서 동작해야 할 때, 이의 OS는 이들 이미지 소유자에 의해(또는 이들 이미지 소유자를 위해) 정의된 세트의 모든 요건을 지원하지 못할 수 있다.
따라서 본 발명의 목적은 상황을 개선하는 것이며, 더 정확히는 복수의 이미지 소유자에 대한 복수의 가상 보안 요소로서 역할 하는 보안 모듈(또는 요소)를 포함하는 하드웨어 호스트의 보안 하드웨어 환경의 공유를 가능하게 하는 것이다.
이를 위해, 본 발명은 특히 방치의 시스템 온 칩(또는 SoC)의 보안 모듈로의 복수의 액세스를 관리하도록 의도된 디바이스를 제공하며, 상기 디바이스는
- 시드 및 암호화 키를 이용해 시스템 온 칩의 보안 모듈과 비 보안 모듈 간에 전송될 데이터에 대해 무결성 체크를 수시로 그리고 단일 패스로 계산하고, 이 암호화 키를 이용해 이들 데이터를 수시로 그리고 단일 패스로 암호화/해역하도록 배열된 스트림 암호화 수단, 및
- 이들 암호화 키 및 시드를 스트림 암호화 수단으로 제공하고 보안 모듈과 비 보안 모듈 간 암호화/해역된 데이터의 전송을 가능하게 하도록 상기 보안 및 비 보안 모듈로 데이터 전송을 요청하며 상태를 불러오기 위한 제어 수단
을 포함한다.
본 발명에 따르는 디바이스는 따로 따로 또는 조합되어 고려될 추가 특징을 포함할 수 있으며, 구체적으로 다음과 같다:
- 스트림 암호화 수단으로부터 시스템 온 칩의 비 보안 모듈로의 전송 동안 암호화된 데이터의 임시 청크를 저장하기 위한 제1 메모리 수단, 및 시스템 온 칩의 보안 모듈에서 스트림 암호화 수단으로의 전송 동안 데이터의 임시 청크를 저장하기 위한 제2 메모리 수단이 있다.
- 이의 제어 수단은 시스템 온 칩의 보안 모듈로 계산된 무결성 체크를 제공하도록 배열될 수 있다.
- 이의 제어 수단은 특정 기능, 시스템 온 칩의 보안 모듈 및 비 보안 모듈로의 전송된 데이터의 라우팅을 정의하는 채널 정보를 제공하도록 배열될 수 있다.
- 이의 스트림 암호화 수단은 시스템 온 칩의 비 보안 모듈에서 보안 모듈로 전송될 데이터에 대한 무결성 체크를 수시로 그리고 단일 패스로 계산하고, 보안 모듈로 전송될 암호화된 데이터를 수시로 그리고 이 단일 패스에서 해역하도록 배열된 제1 부분, 및 시스템 온 칩의 보안 모듈에서 비 보안 모듈로 전송될 데이터에 대한 무결성 체크를 수시로 그리고 단일 패스로 계산하고, 데이터를 시스템 온 칩의 비 보안 모듈로 전송하기 전에 수시로 그리고 이 단일 패스로 암호화하도록 배열된 제2 부분을 포함할 수 있다.
- 이의 제어 수단은 암호화 키 및 시드를 스트림 암호화 수단으로 제공하고, 비 보안 모듈로부터 스트림 암호화 수단으로 암호화된 데이터의 전송 및 스트림 암호화 수단으로부터 보안 모듈로 해역된 데이터의 전송을 가능하게 하도록 비 보안 모듈로 데이터 전송을 요청하며 상태를 불러오도록 배열된 제1 부분, 및 암호화 키 및 시드를 스트림 암호화 수단으로 제공하고, 보안 모듈로부터 스트림 암호화 수단으로의 데이터의 전송 및 그 이후의 스트림 암호화 수단에서부터 비 보안 모듈로의 암호화된 데이터의 전송을 가능하게 하도록 보안 모듈로 데이터 전송을 요청하고 상태를 불러오도록 배열된 제2 부분을 포함한다.
본 발명은 장치에 구비되기 위한 것이며 보안 모듈과 비 보안 모듈을 포함하는 시스템 온 칩(SoC), 및 디바이스, 가령, 보안 모듈과 비 보안 모듈 간 데이터 전송을 인터페이싱하는 디바이스를 제공한다.
본 발명은 또한 적어도 하나의 시스템 온 칩(SoC), 가령, 앞서 언급된 바와 같은 시스템 온 칩을 포함하는 장치를 제공한다.
예를 들어, 이 장치는 고속 비 휘발성 메모리(NVM)로의 고속 액세스를 갖는 임의의 구성요소 또는 장비를 정의할 수 있다.
본 발명의 그 밖의 다른 특징 및 이점이 상세한 설명 및 첨부된 도면의 검토를 통해 자명해질 것이며, 여기서 도 1이 본 발명에 따르는 디바이스의 실시예의 예시를 포함하는 시스템 온 칩의 실시예의 예시를 포함하는 장치의 예시를 개략적이고 기능적으로 도시한다.
첨부된 도면은 본 발명을 완성하려는 것뿐 아니라, 필요에 따라, 본 발명의 정의에 기여하는 역할도 할 수 있다.
본 발명은 특히, 복수의 이미지 소유자에 의한 이 시스템 온 칩(2)의 보안 모듈(5)로의 복수의 액세스를 관리하기 위해, 장치(3)의 시스템 온 칩(system on chip)(즉, SoC)(2)을 구비하기 위한 디바이스(1)를 제공한다.
다음의 기재에서, 예를 들어, 장치(3)는 개인 컴퓨터라고 간주될 것이다. 그러나 본 발명은 이러한 유형의 장치에 한정되지 않는다. 이는 보안 모듈(또는 요소)를 포함하는 적어도 하나의 시스템 온 칩(즉 SoC)을 포함하는 임의의 OEM("Original Equipment Manufacturer") 장치, 구체적으로, 스마트 폰, 전자 태블릿, 스마트 시계, 랩톱, 및 게임 콘솔과 관련된다.
덧붙여, 다음의 기재에서, 예시로서, 시스템 온 칩(2)은 애플리케이션 프로세서이다. 그러나 본 발명은 이러한 유형의 SoC에 한정되지 않는다. 실제로, 이는 고속 비휘발성 메모리(NVM)로의 고속 액세스를 갖는 임의의 SoC, 특히, ASIC, FPGA 및 마이크로제어기와 관련된다.
도 1에 도시된 예시에서, 장치(3)는 비 보안 모듈(4), 보안 모듈(5) 및 이들 비 보안 모듈(4)과 보안 모듈(5) 간 데이터 전송을 인터페이싱하는 디바이스(1)를 포함하는 시스템 온 칩(2)을 포함한다.
비 보안 모듈(4)은 적어도 하나의 기능을 제공한다. 예를 들어, 이는 통신 장비가 장치(3)와 데이터를 교환할 수 있게 한다. 덧붙여, 비 보안 모듈(4)은 서로 다른 이미지 소유자에게 속하고 서로 다른 장비 세트와 각각 연관된 이미지의 그룹을 저장한다. 이미지는 시스템 온 칩(2)의 메모리에 저장되며 캡슐화된 데이터를 해역하고, 권리를 관리하며, 로딩된 해역된 데이터의 무결성을 체크하기 위한 수단을 내장하는 이진 정보의 구조화 및 암호화된 표현이다.
비 보안 모듈(4) 및 보안 모듈(5)은 서로 다른 클록 도메인 및 전력 도메인에서 동작할 수 있다.
도 1에 도시된 비-제한적 예시에서, 비 보안 모듈(4) 및 보안 모듈(5) 각각은 중앙 처리 장치(CPU)(6), 메모리 관리 유닛(MMU)(7), 랜덤 액세스 메모리(RAM)(8), 및 직접 메모리 액세스(DAM) 요소(9)를 포함한다. 보안 모듈(5)은 가령, 표준 디지털 실리콘 기법에 의해 동기화될 수 있는 논리적 NVM(비휘발성 메모리) 같은 기법을 기초로 하는 1회용 프로그래머블(One Time Programmable)(OTP) 요소(10)를 더 포함한다.
예를 들어, CPU(6)는 2개의 버스(I-버스 및 D-버스)에 의해 MMU(7)에 연결되고, MMU(7)는 버스에 의해 RAM(8)에 더 연결되며, RAM(8)은 버스에 의해 DMA(9)에 더 연결된다. OTP 요소(10)는 버스에 의해 연관된 MMU(7)에 연결된다.
각각의 MMU(7)는 연관된 RAM(8)의 물리 주소를 가상 주소로 변환하고 가상 주소 범위와 연관된 권한을 체크할 수 있다. 예를 들어, RAM(또는 물리 메모리)(8)이 페이지(page)라 지칭되는 복수의 논리 영역으로 분할된다. 따라서 이 경우 MMU(8)는 TLB(Translation Lookaside Buffer)라고 지칭되는 구조의 세트를 관리한다.
TLB는 메모리 관리 하드웨어가 가상 주소 변환 속도를 개선하기 위해 사용하는 캐시이다. 이따금 TLB는 콘텐츠-주소 지정 가능 메모리(CAM: content-addressable memory)로서 구현된다. CAM 검색 키가 가상 주소이고 검색 결과가 물리 주소이다. 요청된 주소가 TLB로 제공되는 경우, CAM 검색은 매치를 빠르게 생성하며 불러와 진 물리 주소가 메모리를 액세스하는 데 사용될 수 있다. 이는 TLB 힛(hit)이라고 불린다. 요청된 주소가 TLB 내에 없는 경우, 이는 미스(miss)이며, MMU 페이지 예외가 생성된다. 이 예외는 최근 사용된 물리 페이지가 이전에 로딩된 경우 이의 백업을 생성할 수 있다. 장치(1)(및 더 구체적으로는, 아래에 기재된 장치의 제어 수단(112), 메모리 수단(122) 및 스트림 암호화 수단(132))를 프로그램함으로써, 이 백업은 암호화되고 보안 모듈(5)에서 비 보안 모듈(4)로 전송된다. 비 보안 모듈(4)은 데이터 청크를 비 휘발성 메모리(가령, 플래시 메모리)에 백업할 것이다. 비 보안 모듈(4)은 2개의 DMA(9), 장치(1)(및 더 구체적으로 이하에서 기재되는 장치의 제어 수단(111), 메모리 수단(121) 및 스트림 암호화 수단(131))를 이용함으로써 암호화된 물리 페이지를 보안 모듈(5)로 전송하고, 관련 TLB를 업데이트한다.
관련 CPU(6)는 MMU 예외를 재개하고 이전 미스 메모리의 가상 주소에 위치하는 이의 프로그램의 실행을 계속한다. 물리 페이지가 이전에 로딩된 적이 없는 경우, 이의 백업은 쓸모없다. 그 후 관련 MMU(7)가 메모리 보호 유닛(MPU)로 역할 하고 따라서 각각의 가상 주소 범위가 메모리 액세스를 체크하기 위한 권한을 가진다.
도 1에 도시된 바와 같이, 장치(1)는 본 발명에 따라 적어도 제어 수단(11j) 및 스트림 암호화 수단(13j)을 포함하며, 이때, j=1 또는 2이다.
스트림 암호화 수단(13j)은, 시드 및 암호화 키를 이용해, 연관된 시스템 온 칩(2)의 보안 모듈(5)과 비 보안 모듈(4) 간에 전송될 데이터에 대한 무결성 체크를 수시로(on the fly) 그리고 단일 패스로 계산하고, 이 암호화 키를 이용해 전송될 이들 데이터를 수시로 그리고 이 단일 패스에서 암호화/해역하도록 배열된다.
예를 들어, 각각의 무결성 체크는 시드 및 암호화 키를 이용하는 알고리즘을 이용해 수시로 계산될 수 있다. 이 알고리즘은, 예를 들어, GCM(Galois Counter Mode, 갈르아 카운터 모드) 알고리즘일 수 있다. 그러나 그 밖의 다른 많은 알고리즘이 단일 패스로 무결성 체크를 계산하고 데이터를 암호화/해역하는 데 사용될 수 있다.
제어 수단(11j)이 보안 모듈(5)과 비 보안 모듈(4) 간 암호화/해역된 데이터의 전송을 가능하게 하도록 암호화 키 및 시드를 스트림 암호화 수단(13j)으로 제공하고 보안 모듈(5) 및 비 보안 모듈(4)로 데이터 전송을 요청하고 상태를 불러오기 위해 배열된다.
따라서 제어 수단(11j)의 기능 중 하나가 보안 모듈(5) 또는 비 보안 모듈(4)에게 비 보안 모듈(4)과 보안 모듈(5)로부터의 개시된 데이터 전송에 대해 알리는 것이다. 이러한 정보(또는 통지)가 이뤄질 때, 각각의 모듈(4, 5)이 제어 수단(11j)에 의해 제공되는 파라미터에 따라 자신 고유의 DMA 요소(9)를 적절하게 프로그램한다(상세한 설명이 이하에서 제공된다). 2개의 DMA 요소(9)의 시동에 의해, 특정 논리적 채널에서의 특정 데이터 전송이 가능해진다.
본 발명으로 인해, 시스템 온 칩(2)의 보안 모듈(5)이 복수의 이미지 소유자에 대한 복수의 가상 보안 요소로서 역할 하고, 따라서 장치(3)의 보안 하드웨어 환경이 이들 이미지 소유자에 의해 공유될 수 있다. 이 공유는 동시적인 것으로 간주되지 않을 수 있는데, 왜냐하면 특정 시점에서 단 하나의 이미지만 액세스될 수 있고, 따라서 하나의 이미지에서 또 다른 이미지로의 액세스를 스위칭해야 한다. 그러나 이 스위칭은 매우 고속이고 따라서 장치(3)가 이미지의 사용의 준-동시성(quasi-simultaneity)을 지원할 수 있다.
스트림 암호화 수단(13j) 및 제어 수단(11j)이 전자 회로(들)(즉 하드웨어 모듈(들))와 소프트웨어 모듈의 조합으로 구성되는 것이 바람직하다. 따라서 도 1의 비 제한적 예시에서 나타난 바와 같이, 이들 각각은 인덱스 j로 참조되는 2개의 부분으로 나뉘어, 시스템 온 칩(2)으로의 각자의 하드웨어 통합을 용이하게 하는 것이 바람직하다. 이 경우, 각각의 부분(j)이 하나씩의 센스에서의 데이터 전송에 전념한다(여기서, 제1 부분(j=1)이 비 보안 모듈(4)에서 보안 모듈(5)로의 데이터 전송에 전념하며, 제2 부분(j=2)이 보안 모듈(5)에서 비 보안 모듈(4)로의 데이터 전송에 전념한다). 그러나 변형 실시예에서, 스트림 암호화 수단(13j) 및 제어 수단(11j) 각각이, 두 센스 모두에서 비 보안 모듈(4)과 보안 모듈(5) 간 모든 데이터 전송의 일부 역할을 하는 단일 모듈일 수 있다.
따라서 실시예의 도시된 예시에서, 스트림 암호화 수단(13j)의 제1 부분(131)이 비 보안 모듈(4)에서 보안 모듈(5)로 전송될 데이터에 대한 무결성 체크를 수시로 그리고 단일 패스로 계산하며, 보안 모듈(5)로 전송될 암호화된 데이터를 수시로 그리고 단일 패스로 해역하도록 (그리고 비 보안 모듈(4)로부터 수신하도록) 배열된다. 스트림 암호화 수단(13j)의 이 제1 부분(131)은 보안 모듈(5)의 DMA(9)에 연결된다. 스트림 암호화 수단(13j)의 제2 부분(132)이 보안 모듈(5)에서 비 보안 모듈(4)로 전송될 데이터에 대한 무결성 체크를 수시로 그리고 단일 패스로 계산하며, 보안 모듈(5)로부터 수신된 데이터를, 비 보안 모듈(4)로 전송하기 전에, 수시로 그리고 이 단일 패스로 암호화하도록 배열된다. 스트림 암호화 수단(13j)의 이 제2 부분(132)이 보안 모듈(5)의 DMA(9)에 또한 연결된다.
동일한 방식으로, 제어 수단(11j)의 제1 부분(111)이 암호화 키 및 시드를 스트림 암호화 수단(13j)으로(그리고 더 구체적으로 이의 제1 부분(131)으로) 제공하며, 비 보안 모듈(4)에서 스트림 암호화 수단(13j)(더 정확히는 제1 부분(131))으로의 암호화된 데이터의 전송을 가능하게 하도록 비 보안 모듈(4)로의 데이터 전송을 요청하고 상태를 불러오며, 그 후 스트림 암호화 수단(13j)으로부터의 해역된 데이터를 보안 모듈(5)(더 정확히는 제1 부분(131))로 전송하도록 배열된다. 제어 수단(11j)의 이 제1 부분(111)이 비 보안 모듈(4) 및 보안 모듈(5)의 MMU(7) 및 CPU(6)에 연결되고, 스트림 암호화 수단(13j)의 제1 부분(131)에 연결된다. 제어 수단(11j)의 제2 부분(112)이 암호화 키 및 시드를 스트림 암호화 수단(13j)으로(더 정확히는 제2 부분(132)으로) 제공하고, 보안 모듈(5)에서 스트림 암호화 수단(13j)(더 정확히는 제2 부분(132))으로의 데이터의 전송을 가능하게 하도록 보안 모듈(5)로 데이터 전송을 요청하고 상태를 불러오며, 그 후 스트림 암호화 수단(13j)(더 정확히 이의 제2 부분(132))으로부터 비 보안 모듈(4)에 암호화된 데이터를 전송하도록 배열된다. 제어 수단(11j)의 이 제2 부분(112)이 비 보안 모듈(4) 및 보안 모듈(5)의 MMU(7) 및 CPU(6)에 연결되고, 스트림 암호화 수단(13j)의 제2 부분(132)으로 연결된다.
바람직하게는, 제어 수단(11j)(의 각각의 부분)이 해역된 데이터의 계산된 무결성 체크를 불러올 수 있는 능력 외에 보안 모듈 상에 노출하도록 배열된다. 따라서 제어 수단(11j)(의 각각의 부분)이 보안 모듈(5)로 계산된 무결성 체크를 제공하도록 배열되는 것이 바람직하다. 전송된 데이터 청크의 끝 부분에서 덧붙여지는 해역된 무결성 체크와 이 계산된 무결성 체크가 자동으로 비교될 수 있다.
무결성 체크 에러가 보안 모듈(5)에 CPU(6)에 대한 예외를 생성할 수 있다.
또한 바람직하게는, 제어 수단(11j)(의 각각의 부분)이 전송된 데이터의 특정 기능으로의 라우팅을 결정하기 위한 채널 정보를 보안 모듈(5) 및 비 보안 모듈(4)로 제공하도록 배열된다.
예를 들어, 제어 수단(11j)의 제1 부분(111)이 다음의 파라미터를 포함하는 요청에 의해 데이터 전송을 요청하도록 배열될 수 있다: 데이터의 버스트의 분할 및 재조합을 수행하기 위한 체이닝 비트 정보(chaining bit information), 특정 기능으로의 데이터 패킷의 라우팅을 수행하기 위한 채널 정보, 전송할 데이터의 길이, 암호화/해역화를 위해 사용되는 암호화 키, 전송될 데이터의 무결성 체크를 계산하기 위한 시드, 및 암호화/해역화를 가능하게 하는 명령어.
예를 들어, 제어 수단(11j)의 제1 부분(111)이 다음의 파라미터를 포함하는 요청을 전송함으로써 상태를 판독하도록 배열될 수 있다: 비 보안 모듈(4)로부터의 전송의 끝 부분의 수신 확인에 대해 알리는 비트, 보안 모듈(5)로부터의 전송의 끝 부분의 수신 확인에 대해 알리는 비트, 데이터의 버스트의 분할 및 재조합을 수행하기 위한 체이닝 비트 정보, 특정 기능으로의 데이터 패킷의 라우팅을 수행하기 위한 채널 정보, 전송될 데이터의 길이, 및 스트림 암호화 수단(13j)의 제1 부분(131)에 의해 계산되는 무결성 체크. 상기의 기재에 의해, 기본 원리, 가령, ETSI 표준 TS 1 02.622에 정의된 HCP의 뒷받침이 가능하다.
동일한 방식으로, 제어 수단(11j)의 제2 부분(112)은 다음의 파라미터를 포함하는 요청에 의해 데이터 전송을 요청하도록 배열될 수 있다: 데이터 버스트의 분할 및 재조합을 수행하기 위한 체이닝 비트 정보, 특정 기능으로의 데이터 패킷의 라우팅을 수행하기 위한 채널 정보, 및 전송될 데이터의 길이.
또한 예를 들어, 제어 수단(11j)의 제2 부분(112)이 다음의 파라미터를 포함하는 요청을 전송함으로써 상태를 판독하도록 배열될 수 있다: 보안 모듈(5)로부터의 전송의 끝 부분의 수신 확인에 대해 알려주는 비트, 데이터 버스트의 분할 및 재조합을 수행하기 위한 체이닝 비트 정보, 특정 기능으로의 데이터 패킷의 라우팅을 수행하기 위한 채널 정보, 및 전송될 데이터의 길이.
데이터 전송을 용이하게 하기 위해, 도 1의 비제한적 예시에 도시되어 있는 바와 같이, 장치(1)는 제1 메모리 수단(121) 및 제2 메모리 수단(122)을 더 포함할 수 있다. 제1 메모리 수단(121)은 스트림 암호화 수단(13j)(더 정확히는 제1 부분(131))으로부터 비 보안 모듈(4)로의 전송 동안 암호화된 데이터의 임시 청크를 저장하도록 배열된다. 비 보안 모듈(4)의 DMA(9) 및 제어 수단(11j)의 제1 부분(111)에 연결된 이 제1 메모리 수단(121)이 FIFO("First In First Out")형인 것이 바람직하다. 제2 메모리 수단(122)은 보안 모듈(5)에서 스트림 암호화 수단(13j)(더 정확히는 이의 제2 부분(132))으로의 전송 동안 데이터의 임시 청크를 저장하도록 배열된다. 비보안 모듈(4)의 DMA(9) 및 제어 수단(11j)의 제2 부분(112)으로 연결되는 이 제2 메모리 수단(122)은 또한 FIFO 유형인 것이 바람직하다.
제어 수단(11j)(의 일부)이 업데이트될 때, 관련 CPU(6)에게 통지하기 위한 인터럽트 신호를 생성한다.
보안 모듈(5)의 각각의 초기 부트스트랩이 이의 OTP 요소(10)의 메모리 콘텐츠, 더 정확히는, 보안 모듈(5)의 주 부트 로더(PBL: primary boot loader)을 기초로 함을 아는 것이 중요하다. 시스템 온 칩(2)의 제조 동안, 보안 모듈(5)이 ECC("Error Correcting Code") 키 쌍(즉, 개인 키 및 공개 키)을 계산할 수 있도록 OTP 요소(10)는 부분적으로 프로그램된다. 개인 키는 OTP 요소(10)의 메모리에 자체-프로그래밍되고, ECC 서명을 위해, 공개 키는 HSM("Hardware Secure Module")을 호스팅하는 시험 장비로 전송된다. ECC 증명서가 보안 모듈(5)로 반환되고 OTP 요소(10)의 메모리로 프로그래밍된다.
PBL은 OTP 요소(10)의 성공적인 실링(sealing)을 체크하고, 그 후 (서로 다른 이미지 소유자에 속하는 저장된 이미지 그룹들 중에서 선택된) 특정 요청된 이미지를 로딩하기 위한 비 보안 모듈(4)로부터의 명령어를 전달하는 데이터 전송을 대기한다. PBL이 이 명령어를 수신할 때, 비 보안 모듈(4)로부터 마지막 이미지 디렉토리를 로딩하고, 로딩할 요청된 이미지와 관련된 제1 물리 페이지를 찾으며, 이의 가상 시작 주소에서 실행을 시작한다.
비 보안 모듈(4)은 다음의 2개의 관리 명령어를 생성하도록 배열될 수 있다: 보안 모듈(5)이 적절하게 멈추고 데이터의 암호화된 청크로의 모든 로딩된 물리 페이지를 비 보안 모듈(4)에 의해 관리되는 NVM 메모리에 백업하기 위한 "STOP", 및 보안 모듈(5)에게 특정 이미지를 로딩/개시하도록 요청하기 위한 "START".
이 START 명령어 때문에, 비 보안 모듈(4)은 보안 모듈(5)에 의한 특정 이미지의 로딩을 필요로 할 수 있다. 따라서 예를 들어 모바일 전화기가 GSM 인증을 수행하기 위한 네트워크 액세스로부터 명령어를 수신할 수 있고, 그 후 비 보안 모듈(4)은 진행 중인 이미지를 중단시키고 이 액세스를 요청하는 GSM 구독과 관련된 이미지를 로딩할 것이며, 그 후 NFC("Near Field Communication") 거래가 발생하며, 마지막으로 GSM 이미지가 백업되며 NFC 뱅킹 이미지가 실행되도록 로딩된다.
본 발명은 많은 이점을 제안하며, 구체적으로 다음과 같다:
- 하드웨어 호스트가 복수의 이미지 소유자의 복수의 요건 세트를 지원할 수 있다.
- 이미지 소유자들 간 간섭을 유도하지 않고 동일한 하드웨어 호스트를 공유하는 것이 가능하다.
- 요구되는 보안의 레벨에 무관하게 이미지 소유자 독립적인 인증 프로세스를 지원하는 것이 가능하다.
- 하드웨어 호스트가 이의 물질 자원의 한계(특히, 비 보안 모듈에 의해 관리되는 NVM 메모리 크기)에서 임의의 개수의 이미지를 지원할 수 있다.
- 하드웨어 호스트로의 이미지로부터 또 다른 이미지로의 스위칭을 위한 짧은 대기시간이 가능하다.
- 하드웨어 호스트가 이의 스위칭 대기시간의 한계에서 이미지의 사용의 준-동시성(quasi-simultaneity)을 지원할 수 있다.
- 하드웨어 호스트는 이의 물질 자원의 한계에서 이미지의 임의의 크기를 지원할 수 있다.
본 발명은 앞서 기재된 단지 예시로서 디바이스, 시스템 온 칩 및 장치에 국한되지 않으며, 이하의 청구범위 내에서 해당 분야의 통상의 기술자에 의해 고려될 수 있는 모든 대안적 실시예를 포함한다.
Claims (8)
- 복수의 이미지 소유자 각각에 대해 보안 모듈이 복수의 가상 보안 요소로 작용할 수 있도록, 장치(3)의 시스템 온 칩(2)의 보안 모듈(5)로의 복수의 액세스를 관리하기 위한 디바이스(1)로서, 이미지는 보안 요소의 메모리에 저장되는, 그리고, 캡슐화된 데이터를 해역하고 권한을 관리하고 로딩된 해역된 데이터의 무결성을 체크하는 수단을 내장하는, 이진 정보의 구조화 및 암호화된 표현이며,
a) 시드(seed) 및 암호화 키를 이용해 상기 시스템 온 칩(2)의 상기 보안 모듈(5)과 비 보안 모듈(4) 간에 전송될 데이터에 대한 무결성 체크를 수시로(on the fly) 그리고 단일 패스에서 계산하고, 상기 암호화 키에 의해 상기 데이터를 수시로 그리고 상기 단일 패스에서 암호화/해역하도록 배열된 스트림 암호화 수단(stream ciphering means)(13j) - 상기 비 보안 모듈(4)은 상이한 이미지 소유자에게 속한, 그리고, 상이한 요건 세트에 각각 연관된, 이미지들의 그룹을 저장함; 및
b) 상기 암호화 키 및 상기 시드를 상기 스트림 암호화 수단(13j)으로 제공하고, 상기 보안 모듈(5)과 상기 비 보안 모듈(4) 간 암호화/해역된 데이터의 전송을 가능하게 하도록 상기 보안 모듈(5) 및 상기 비 보안 모듈(4)로부터 데이터 전송을 요청하고 상태를 불러오기 위한 제어 수단(11j)
을 포함하는, 복수의 액세스를 관리하기 위한 디바이스. - 제1항에 있어서, 상기 스트림 암호화 수단(13j)으로부터 상기 시스템 온 칩(2)의 상기 비 보안 모듈(4)로의 전송 동안 암호화된 데이터의 임시 청크를 저장하기 위한 제1 메모리 수단(121), 및 상기 시스템 온 칩(2)의 상기 보안 모듈(5)로부터 상기 스트림 암호화 수단(13j)으로의 전송 동안 데이터의 임시 청크를 저장하기 위한 제2 메모리 수단(122)을 더 포함하는, 복수의 액세스를 관리하기 위한 디바이스.
- 제1항 또는 제2항에 있어서, 상기 제어 수단(11j)은 상기 시스템 온 칩(2)의 상기 보안 모듈(5)로 계산된 무결성 체크를 제공하도록 배열되는, 복수의 액세스를 관리하기 위한 디바이스.
- 제1항 또는 제2항에 있어서, 상기 제어 수단(11j)은 채널 정보를 제공하고, 특정 기능, 상기 시스템 온 칩(2)의 상기 보안 모듈(5) 및 상기 비 보안 모듈(4)로의 전송된 데이터의 라우팅을 정의하도록 배열되는, 복수의 액세스를 관리하기 위한 디바이스.
- 제1항 또는 제2항에 있어서, 상기 스트림 암호화 수단(13j)은 상기 비 보안 모듈(4)에서 상기 시스템 온 칩(2)의 상기 보안 모듈(5)로의 무결성 체크를 수시로 계산하고, 상기 보안 모듈(5)로 전송될 암호화된 데이터를 수시로 그리고 단일 패스로 해역하도록 배열된 제1 부분(131), 및 상기 보안 모듈(5)에서 상기 시스템 온 칩(2)의 상기 비 보안 모듈(4)로 전송될 데이터에 대한 무결성 체크를 수시로 그리고 단일 패스에서 계산하고, 상기 데이터를 상기 시스템 온 칩(2)의 상기 비 보안 모듈(4)로 전송하기 전에 수시로 상기 단일 패스에서 암호화하도록 배열된 제2 부분(132)을 포함하는, 복수의 액세스를 관리하기 위한 디바이스.
- 제1항 또는 제2항에 있어서, 상기 제어 수단(11j)은 상기 암호화 키 및 상기 시드를 상기 스트림 암호화 수단(13j)으로 제공하고, 상기 비 보안 모듈(4)에서 상기 스트림 암호화 수단(13j)으로의 암호화된 데이터의 상기 전송 및 상기 스트림 암호화 수단(13j)에서 상기 보안 모듈(5)로의 해역된 데이터의 전송을 가능하게 하도록 상기 비 보안 모듈(4)로 데이터 전송을 요청하고 상태를 불러오도록 배열된 제1 부분(111), 및 상기 보안 모듈(5)로부터 상기 스트림 암호화 수단()으로의 데이터의 전송 및 그 이후의 상기 스트림 암호화 수단(13j)으로부터 상기 비 보안 모듈(4)로의 암호화된 데이터의 전송을 가능하게 하도록, 상기 스트림 암호화 수단(13j)으로 상기 암호화 키 및 상기 시드를 제공하고 상기 보안 모듈(5)로 데이터 전송을 요청하고 상태를 불러오도록 배열된 제2 부분(112)을 포함하는, 복수의 액세스를 관리하기 위한 디바이스.
- 장치(3)를 위한 시스템 온 칩(2)으로서,
보안 모듈(5) 및 비 보안 모듈(4)과,
청구항 제1항 또는 제2항에 따르며, 상기 보안 모듈(5)과 비 보안 모듈(4) 간 데이터 전송을 인터페이싱하는 디바이스(1)를 포함하는, 시스템 온 칩. - 장치(3)로서, 청구항 제7항에 따르는 시스템 온 칩(2)을 적어도 하나 포함하는, 장치.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP15305586.8 | 2015-04-17 | ||
EP15305586.8A EP3082290A1 (en) | 2015-04-17 | 2015-04-17 | Device for managing multiple accesses to a secure module of a system on chip of an apparatus |
PCT/EP2016/058076 WO2016166134A1 (en) | 2015-04-17 | 2016-04-13 | Device for managing multiple accesses to a secure module of a system on chip of an apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170138412A KR20170138412A (ko) | 2017-12-15 |
KR102421318B1 true KR102421318B1 (ko) | 2022-07-14 |
Family
ID=53052774
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020177027196A KR102421318B1 (ko) | 2015-04-17 | 2016-04-13 | 장치의 시스템 온 칩의 보안 모듈로의 복수의 액세스를 관리하기 위한 디바이스 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10693842B2 (ko) |
EP (2) | EP3082290A1 (ko) |
KR (1) | KR102421318B1 (ko) |
CN (1) | CN107533516B (ko) |
WO (1) | WO2016166134A1 (ko) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10298553B2 (en) | 2017-03-31 | 2019-05-21 | Sprint Communications Company L.P. | Hardware trusted data communications over system-on-chip (SOC) architectures |
CN107256363B (zh) * | 2017-06-13 | 2020-03-06 | 杭州华澜微电子股份有限公司 | 一种由加解密模块阵列组成的高速加解密装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130138975A1 (en) * | 2006-12-20 | 2013-05-30 | Stmicroelectronics S.A. | Protection of memory areas |
US20140079215A1 (en) | 2012-09-14 | 2014-03-20 | Qualcomm Incorporated | Efficient cryptographic key stream generation using optimized s-box configurations |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6857076B1 (en) * | 1999-03-26 | 2005-02-15 | Micron Technology, Inc. | Data security for digital data storage |
JP4083678B2 (ja) * | 2001-07-06 | 2008-04-30 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 暗号化されたフレームの次のパケットにおいて冗長なストリーム暗号情報 |
JP4288893B2 (ja) * | 2001-09-26 | 2009-07-01 | ソニー株式会社 | 情報処理装置、プログラムロード方法、記録媒体、プログラム更新方法及び回路素子 |
CN100447763C (zh) * | 2003-05-29 | 2008-12-31 | 联想(北京)有限公司 | 一种安全芯片及基于该芯片的信息安全处理设备和方法 |
GB2430593B8 (en) * | 2004-04-22 | 2008-07-10 | Fortress Gb Ltd | Accelerated throughput synchronised word stream cipher, message authenticator and zero-knowledge output random number generator |
US7697688B1 (en) * | 2004-10-27 | 2010-04-13 | Marvell International Ltd. | Pipelined packet encapsulation and decapsulation for temporal key integrity protocol employing arcfour algorithm |
US20060126841A1 (en) * | 2004-12-14 | 2006-06-15 | Tata Consultancy Services Ltd. | Method and apparatus for a security system for wireless networks |
EP1811415A1 (en) * | 2005-12-23 | 2007-07-25 | Nagracard S.A. | Secure system-on-chip |
US8127130B2 (en) * | 2006-04-18 | 2012-02-28 | Advanced Communication Concepts, Inc. | Method and system for securing data utilizing reconfigurable logic |
US20080120676A1 (en) * | 2006-11-22 | 2008-05-22 | Horizon Semiconductors Ltd. | Integrated circuit, an encoder/decoder architecture, and a method for processing a media stream |
US8332931B1 (en) * | 2008-09-04 | 2012-12-11 | Marvell International Ltd. | Processing commands according to authorization |
WO2010057312A1 (en) * | 2008-11-24 | 2010-05-27 | Certicom Corp. | System and method for hardware based security |
US20100299517A1 (en) * | 2009-05-22 | 2010-11-25 | Nuvon, Inc. | Network System with a Plurality of Networked Devices with Various Connection Protocols |
CN103608829A (zh) * | 2011-01-18 | 2014-02-26 | 舍德Ip有限责任公司 | 用于基于编码完整性进行计算机化协商的系统和方法 |
US8718278B2 (en) * | 2011-01-20 | 2014-05-06 | International Business Machines Corporation | Method and system for encryption of a datastream |
KR20130048508A (ko) * | 2011-11-02 | 2013-05-10 | 에스케이플래닛 주식회사 | 단말기의 루트 키 생성 시스템 및 방법과 장치, 그리고 이를 지원하는 단말기 |
KR101502652B1 (ko) * | 2011-11-16 | 2015-03-17 | 경희대학교 산학협력단 | 무선 단말기와 유선 단말기 사이의 비밀키 교환 방법 |
US9250945B2 (en) * | 2012-03-27 | 2016-02-02 | Microsoft Technology Licensing, Llc | Detecting a repeating execution time sequence in a virtual machine |
CN102819706B (zh) * | 2012-07-26 | 2014-12-10 | 重庆大学 | 在现有嵌入式设备上实现可信嵌入式系统的装置和方法 |
WO2014059547A1 (en) * | 2012-10-17 | 2014-04-24 | Elliptic Technologies Inc. | Cryptographic sequencing system and method |
KR101954733B1 (ko) * | 2012-10-26 | 2019-03-06 | 삼성전자주식회사 | 보안 콘텐츠를 처리하는 시스템 온 칩 및 그것을 포함하는 모바일 장치 |
US9455962B2 (en) * | 2013-09-22 | 2016-09-27 | Winbond Electronics Corporation | Protecting memory interface |
IL231550A0 (en) * | 2014-03-17 | 2014-08-31 | Nuvoton Technology Corp | Saving secure information in external memory |
US9419952B2 (en) * | 2014-06-05 | 2016-08-16 | Stmicroelectronics (Grenoble 2) Sas | Memory encryption method compatible with a memory interleaved system and corresponding system |
EP3235162B1 (en) * | 2014-12-17 | 2021-02-17 | Telefonaktiebolaget LM Ericsson (publ) | Stream ciphering technique |
-
2015
- 2015-04-17 EP EP15305586.8A patent/EP3082290A1/en not_active Withdrawn
-
2016
- 2016-04-13 US US15/567,346 patent/US10693842B2/en active Active
- 2016-04-13 KR KR1020177027196A patent/KR102421318B1/ko active IP Right Grant
- 2016-04-13 WO PCT/EP2016/058076 patent/WO2016166134A1/en active Application Filing
- 2016-04-13 CN CN201680022512.5A patent/CN107533516B/zh active Active
- 2016-04-13 EP EP16719274.9A patent/EP3284207B1/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130138975A1 (en) * | 2006-12-20 | 2013-05-30 | Stmicroelectronics S.A. | Protection of memory areas |
US20140079215A1 (en) | 2012-09-14 | 2014-03-20 | Qualcomm Incorporated | Efficient cryptographic key stream generation using optimized s-box configurations |
Also Published As
Publication number | Publication date |
---|---|
WO2016166134A1 (en) | 2016-10-20 |
EP3284207B1 (en) | 2019-06-05 |
KR20170138412A (ko) | 2017-12-15 |
EP3082290A1 (en) | 2016-10-19 |
CN107533516B (zh) | 2021-07-13 |
EP3284207A1 (en) | 2018-02-21 |
US20180097781A1 (en) | 2018-04-05 |
US10693842B2 (en) | 2020-06-23 |
CN107533516A (zh) | 2018-01-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11088846B2 (en) | Key rotating trees with split counters for efficient hardware replay protection | |
US20210004483A1 (en) | Secure Public Cloud | |
US10546157B2 (en) | Flexible counter system for memory protection | |
US10223289B2 (en) | Secure handling of memory caches and cached software module identities for a method to isolate software modules by means of controlled encryption key management | |
US9607177B2 (en) | Method for securing content in dynamically allocated memory using different domain-specific keys | |
US10261854B2 (en) | Memory integrity violation analysis method and apparatus | |
EP2947594A2 (en) | Protecting critical data structures in an embedded hypervisor system | |
EP3271828B1 (en) | Cache and data organization for memory protection | |
CN111201553B (zh) | 一种安全元件及相关设备 | |
US11126566B2 (en) | Method and apparatus for sharing security metadata memory space | |
KR20160130773A (ko) | 메시지 인증 코드 태그들을 활용하는 시스템들에 사용하기 위한 롤백 공격들로부터의 데이터 무결성 보호 | |
KR102421318B1 (ko) | 장치의 시스템 온 칩의 보안 모듈로의 복수의 액세스를 관리하기 위한 디바이스 | |
CN111771353A (zh) | 保护加密密钥数据 | |
EP3292504B1 (en) | Secure element with shared memories, for a multi-image owner device | |
CN112286635B (zh) | 一种热迁移的方法、装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |