JP2022062190A - セキュアメモリ装置 - Google Patents
セキュアメモリ装置 Download PDFInfo
- Publication number
- JP2022062190A JP2022062190A JP2022016236A JP2022016236A JP2022062190A JP 2022062190 A JP2022062190 A JP 2022062190A JP 2022016236 A JP2022016236 A JP 2022016236A JP 2022016236 A JP2022016236 A JP 2022016236A JP 2022062190 A JP2022062190 A JP 2022062190A
- Authority
- JP
- Japan
- Prior art keywords
- symmetric
- asymmetric
- message
- gateway device
- system controller
- 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.)
- Ceased
Links
- 238000012545 processing Methods 0.000 abstract description 57
- 238000000034 method Methods 0.000 abstract description 31
- 230000008569 process Effects 0.000 description 19
- 238000004891 communication Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 239000000284 extract Substances 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 102100033668 Cartilage matrix protein Human genes 0.000 description 3
- 101001018382 Homo sapiens Cartilage matrix protein Proteins 0.000 description 3
- 239000008186 active pharmaceutical agent Substances 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
Images
Classifications
-
- 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
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- 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
-
- 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/12—Applying verification of the received information
-
- 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/12—Applying verification of the received information
- H04L63/126—Applying verification of the received information the source of the received data
-
- 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/006—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving public key infrastructure [PKI] trust models
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/083—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- 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/3236—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 using cryptographic hash functions
- H04L9/3242—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 using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
-
- 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
- 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
-
- 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/76—Proxy, i.e. using intermediary entity to perform cryptographic operations
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Power Engineering (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Small-Scale Networks (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Storage Device Security (AREA)
- Stored Programmes (AREA)
Abstract
【課題】不正アクセスからコンピューティングシステムメモリを保護するためのシステム及び方法を提供する。【解決手段】セキュア処理システム101において、ゲートウェイデバイス102は、外部システムから第1のメッセージを受信する。第1のメッセージは、第1のメッセージペイロードデータ及び第1の非対称アクセスデータを含む。ゲートウェイデバイスは、外部システムパブリックキーに少なくとも部分的に基づいて第1の非対称アクセスデータが第1のメッセージペイロードデータに一致するかを判断し、第1のシステムコントローラに関連付けられた第1のシステムコントローラ対称キーにアクセスし、第1のシステムコントローラ対称キー及び第1のメッセージペイロードデータに少なくとも部分的に基づいて第1の対称アクセスデータを生成し、第1のメッセージペイロードデータ及び第1の対称アクセスデータを第1のシステムコントローラに送信する。【選択図】図1
Description
関連出願の相互参照
本出願は、2017年3月24日に出願された米国特許仮出願シリアル番号62/476,598に対する優先権の利益を主張する2017年8月31日に出願された米国特許出願シリアル番号15/692,802に対する優先権の利益を主張し、それらの全体が参照により本明細書に組み込まれている。
本出願は、2017年3月24日に出願された米国特許仮出願シリアル番号62/476,598に対する優先権の利益を主張する2017年8月31日に出願された米国特許出願シリアル番号15/692,802に対する優先権の利益を主張し、それらの全体が参照により本明細書に組み込まれている。
本明細書に記載の例は、一般に不正アクセスからコンピューティングシステムメモリを保護するためのシステム及び方法に関する。
処理システムに対する攻撃の一般的な形態には、システムのメモリデバイスに悪意のあるコードをインストールすることが含まれる。悪意のあるコードは、次いで処理システムによって実行される。実行されると、悪意のあるコードはデータの窃盗、処理システムの不正制御、及びその他の悪い結果が生じることを可能にする。
図面は、必ずしも縮尺通りに描かれておらず、同様の数字は、異なる図において同様の構成要素を説明することができる。異なる接尾文字を有する同じ数字は、類似の構成要素の異なるインスタンスを表すことができる。いくつかの例は、以下の添付図面の図において、例示として示されており、限定するものではない。
以下の記載では、説明の目的で、いくつかの例を完全に理解できるようにするために、多くの具体的な詳細が説明されている。しかし、これらの具体的な詳細を伴わずに本開示が実施され得ることは当業者には明らかになるであろう。
本明細書に記載の様々な例は、データ処理システム(本明細書では処理システムとも呼ばれる)の様々な形態に見られるメモリ装置を保護するためのシステム及び方法に関する。いくつかの例では、本明細書に記載のセキュアメモリ装置は、例えば、家電製品、車両、産業用機器、モノのインターネット(IoT)デバイスなどの様々な装置に組み込まれた処理システムで使用されている。そのような処理システムは、例えば、埋め込みシステム、もしくは制御または通信のための他のシステムを含み得る。本明細書に記載のメモリ装置を利用することができる処理システムの他の例には、ラップトップコンピュータ、デスクトップコンピュータ、モバイルコンピューティングデバイス、サーバーなどが含まれる。
いくつかの例では、本明細書に記載のシステム及び方法は、アクセス制御を利用して、処理システムにおいてメモリ装置を保護している。例えば、本明細書に記載のセキュアメモリ装置を利用する処理システムは、送信側が暗号キーを所有していることを示すアクセスデータが書き込みに付随しない限り、関連するメモリの保存場所のすべてまたは一部への書き込みを防ぐことができる。いくつかの例では、暗号化キーの代わりに任意の他のタイプの共有された秘密が使用され得る。いくつかの例では、メモリ装置のすべての保存場所へのアクセスは、この方法で制御され得る。他の例では、ブートコードやその他の重要なソフトウェアを含む保存場所など、保存場所の一部のみがアクセス制御されている。
アクセス制御された1つまたは複数の保存場所への書き込みリクエストは、ペイロードデータ及びアクセスデータを含み得る。書き込みリクエストを受信すると、メモリ装置は、例えば、アクセスデータ及びペイロードデータに基づいて暗号化オペレーションを実行することにより、アクセスデータを確証するために暗号化キー及びペイロードデータを使用することができる。暗号化オペレーション(例えば、その1つまたは複数の結果)がアクセスデータと一致する場合、アクセスデータが確証され、処理システムはペイロードデータをストレージデバイスに書き込むことによって、書き込みリクエストを実行する。暗号化オペレーションがアクセスデータと一致しない場合、アクセスデータは確証されず、処理システムは書き込みリクエストを拒否する。
本明細書に記載のアクセス制御は、メモリデバイスとは異なるプロセッサユニットによって実行されるソフトウェアに実装され得るが、本明細書に記載のいくつかの例は、メモリデバイスレベルでアクセス制御を実装する。例えば、セキュアメモリデバイスは、暗号化キーなどの共有された秘密を保存するためのキーレジスタ、並びにアクセスデータを生成及び/または確証するための暗号化エンジンを含み得る。書き込みリクエストが受信されると、メモリデバイスは、暗号エンジンのキーレジスタから書き込みリクエストペイロードデータ、及び暗号キーを提供することにより、アクセスデータを確証する。暗号化エンジンは、ハッシュ、復号化などの1つ以上の暗号化オペレーションを実行することができ、アクセスデータを確証する。アクセスデータが確証される場合、メモリデバイスはリクエストされた書き込みを完了する。アクセスデータが確証されない場合、メモリデバイスは書き込みリクエストを拒否する。
本明細書に記載のアクセス制御は、対称キーまたは非対称キーを用いて実装され得る。対称キーが使用されるとき、送信側と受信側の両方は、同一の対称キーのコピーを有する。送信側は、対称キーを使用してアクセスデータを生成する。例えば、送信側は、対称キーを使用してハッシュ関数をペイロードデータに適用することにより、アクセスデータを生成することができる。得られたハッシュは、アクセスデータのすべてまたは一部を構成する。得られたハッシュは、いくつかの例ではメッセージ認証コード(MAC)と呼ばれ、一部の例ではハッシュメッセージ認証コード(HMAC)と呼ばれる。
送信側は、ペイロードデータ及びアクセスデータを含む書き込みリクエストを受信側に送信する。同様に対称キーのコピーを有している受信側は、アクセスデータコピーを生成する。例えば、受信者は、受信者自身の対称キーのコピーでペイロードデータを独自にハッシングすることによって、アクセスデータコピーを生成することができる。アクセスデータコピーが受信したアクセスデータと同等である場合、メッセージは確証される。
非対称キーが使用される場合、送信側には秘密であるプライベートキーと秘密ではないパブリックキーがある。送信側は、認証局または他の信頼できる第三者を利用して、パブリックキーの受信側に対する信頼性を確証する場合がある。送信側のプライベートキー及びパブリックキーは数学的に関連しており、プライベートキーで実行される特定の暗号化オペレーションはパブリックキーを使用して反転され得る。
送信側はペイロードデータ及び送信側自身のプライベートキーを利用してアクセスデータを生成する。例えば、送信側はペイロードデータにハッシュ関数を適用することができ、次いで得られたハッシュに送信側のプライベートキーを署名することができる。その結果は、暗号署名であり、アクセスデータの全体または一部を構成し得る。受信側は、送信側のパブリックキーを用いて署名を復号することができ、次いで受信したペイロードデータに同じハッシュ関数を適用してアクセスデータコピーを生成することができる。アクセスデータコピーが復号化された署名と同等である場合、続いてメッセージが確証される。
対称及び非対称のアクセス制御には、いずれも長所と短所がある。例えば、対称構成では、両者が対称キーを互いに安全に通信する必要がある。いくつかの例では、通信する両者間で対称キーを通信するプロセスは、プロビジョニングと呼ばれる。対称キーを秘密に保ちながら、両者に単一の対称キーをプロビジョニングすることは課題となり得る。一方で、非対称構成はプロビジョニングすることが容易になり得る。例えば、送信側のパブリックキーは秘密ではなく、対称キーに関連付けられたセキュリティ上の懸念のない平文で送信され得る。同様に、非対称キーを用いて生成されたアクセスデータを確証するための暗号化オペレーションは、多くの場合より複雑である。例えば、一部の非対称構成は、同様に安全な対称構成で使用されるキーよりも桁違いに大きい暗号キーを使用する。非対称構成において暗号化オペレーションの複雑さが増すと、実装するためにより多くのハードウェア及び/またはソフトウェアのリソースが必要になり得る。
大型のコンピューティングデバイスなどの一部の処理システムでは、非対称アクセス制御に関連付けられた追加の部品表(BOM)及び/またはその他のコストはわずかである。他の処理システムでは、非対称アクセス制御の追加コストはより大きなものである。例えば、埋め込みシステム、IoTデバイス、及びその他の同様の処理システムまたは構成要素は、十分に低い全体コストを有することができ、非対称アクセス制御の追加は各構成要素の価格に大きく付与する。各埋め込みシステムメモリデバイスに非対称アクセス制御を追加する自動車、セキュリティシステムなどの大規模システムでは、大幅なコストを追加し得る。
本明細書に記載の様々な例は、ゲートウェイデバイス及び1つ以上のシステムコントローラを含む処理システム及びメモリ装置を対象としている。ゲートウェイデバイスは、非対称アクセス制御、及び対称アクセス制御の両方をサポートする1つ以上のメモリデバイスを含む。システムコントローラは、対称アクセス制御をサポートするメモリデバイスを含む。しかし、いくつかの例では、システムコントローラの1つ以上のメモリデバイスは、非対称アクセス制御をサポートする必要がない。このように、非対称アクセス制御の追加費用は、各システムコントローラに必要でなくなり得る。
対称及び非対称の両方のアクセス制御をサポートするゲートウェイデバイスメモリデバイスは、様々なコントローラシステムにおいてメモリデバイスの対称キーのキーストアとして機能することができる。例えば、外部システムは、システムコントローラの1つ(受信者システムコントローラ)に向けられた外部メッセージを生成することができる。外部メッセージは、外部システムのプライベートキーで生成されたペイロードデータ及び非対称アクセスデータを含むことができる。ゲートウェイデバイスはメッセージを受信し、外部システムのパブリックキーを使用してそれを確証する。ゲートウェイデバイスは、次いで、メッセージが送信されるシステムコントローラの適切な対称キーを抽出し、受信者システムコントローラに固有であり得る対称アクセスデータを生成する。ゲートウェイデバイスは、ペイロードデータ及び対称アクセスデータを含む内部メッセージを受信者システムコントローラに送信する。受信者システムコントローラ、またはシステムコントローラにあるシステムメモリデバイスは、対称アクセスデータを確証し、ペイロードデータをメモリに書き込む。
図1は、ネットワーク116を介して例示的な外部システム118A、118Bと通信するセキュア処理システム101を実装するための環境100の一例を示す図である。セキュア処理システム101は、ゲートウェイデバイス102及び多数のシステムコントローラ104A、104B、104C、104Nを含む。ゲートウェイデバイス102及びシステムコントローラ104A、104B、104C、104Nは、バス120を介して通信しており、バス120は、有線バスまたは無線バスの任意の適切な形態であり得る。例示的な環境100には4つのシステムコントローラ104A、104B、104C、104Nが示されているが、例えば、図1に示されているよりも多いか、または少ないシステムコントローラを含む任意の適切な数のシステムコントローラが使用され得る。
システムコントローラ104A、104B、104C、104Nは、いくつかの例では、機械式または電気式システム、もしくはサブシステムを任意の適切な設定で制御するための埋め込み型システムであり得る。いくつかの例では、セキュア処理システム101は、自動車または他の車両に実装され得る。各システムコントローラ104A、104B、104C、104Nは、自動車の構成要素を管理することができる。例えば、システムコントローラ104Aはアンチロックブレーキシステムを管理することができ、システムコントローラ104Bはフライバイワイヤースロットルシステムを管理することができ、システムコントローラ104Cはバックアップカメラを管理することができ、システムコントローラ104Nはエンターテイメントシステムを管理することができる、などである。セキュア処理システム101が自動車または他の車両に実装される例では、バス120は、コントローラエリアネットワーク(CAN)車両用バス規格に従って構成され得る。別の例では、セキュア処理システム101はセキュリティシステムに実装され得る。各システムコントローラ104A、104B、104C、104Nは、セキュリティシステムの様々なカメラ、センサーなどを管理することができる。更に別の例では、セキュア処理システム101は、冷蔵庫などの家電製品の一部として実装され得る。各システムコントローラ104A、104B、104C、104Nは、家電製品の様々なディスプレイ、サーモスタットなどを管理することができる。
システムコントローラ104A、104B、104C、104Nは、それぞれのプロセッサユニット112A、112B、112C、112N、及びそれぞれの対称メモリデバイス114A、114B、114C、114Nを含むことができる。対称メモリデバイス114A、114B、114C、114Nは、例えば、図2により詳細に示されるように、対称アクセス制御をサポートするように構成され得る。対称メモリデバイス114A、114B、114C、114Nは、いくつかの例では、プロセッサユニット112A、112B、112C、112Nによって実行されるコードを格納する。対称メモリデバイス114A、114B、114C、114Nは、いくつかの例では、例えばフラッシュデバイスなどのソリッドステートメモリデバイスなどの永続的メモリデバイスである。
ゲートウェイデバイス102は、対称/非対称メモリデバイス108を含む。対称/非対称メモリデバイス108は、例えば、本明細書に記載のように、対称及び非対称の両方のアクセス制御をサポートするメモリデバイスである。いくつかの例では、ゲートウェイデバイス102はまた、プロセッサユニット106も備える。
対称/非対称メモリデバイス108は、それぞれの対称メモリデバイス114A、114B、114C、114Nの対称キーを格納するための1つ以上の保存場所を含むキーストア領域110を含む。対称/非対称メモリデバイス108は、非対称アクセス制御によりキーストア領域110へのアクセスを管理することができる。従って、キーストア領域110は、それぞれの対称メモリデバイス114A、114B、114C、114Nの対称キーを含むが、キーストア領域110自体は、本明細で説明されるように、対称/非対称メモリデバイス108の非対称キーペアでアクセス制御される。
対称/非対称メモリデバイス108は、例えば、外部システム118A、118Bとの通信において、非対称アクセスデータを受信及び処理するように構成され得る。対称/非対称メモリデバイス108はまた、例えば、キーストア領域110に格納された対称キーを利用して、対称アクセスデータを受信及び処理するようにも構成され得る。
ゲートウェイデバイス102は、ネットワーク116を介して外部システム118A、118Bと通信することができる。ネットワーク116は、任意の適切なネットワークプロトコルに従って動作する任意の適切なネットワーク要素であることができるか、またはそれを含み得る。例えば、ネットワーク116の1つ以上の部分は、アドホックネットワーク、イントラネット、エクストラネット、仮想プライベートネットワーク(VPN)、ローカルエリアネットワーク(LAN)、無線LAN(WLAN)、ワイドエリアネットワーク(WAN)、ワイヤレスWAN(WWAN)、メトロポリタンエリアネットワーク(MAN)、インターネットの一部、公衆交換電話網(PSTN)の一部、携帯電話ネットワーク、ワイヤレスネットワーク、Wi-Fiネットワーク、WiMaxネットワーク、別の種類のネットワーク、またはそのようなネットワークのうち2つ以上の組み合わせであり得る。
図2は、ゲートウェイデバイス102及びシステムコントローラ104Aの追加的詳細を含むセキュア処理システム101の一部を示す図である。ここで、ゲートウェイデバイス102を参照すると、図2は、対称/非対称メモリデバイス108の追加的詳細を示している。例えば、対称/非対称メモリデバイス108は、コントローラ132及びストレージ130を含む。いくつかの例では、対称/非対称メモリデバイス108は、フラッシュまたは他の同様のソリッドステートメモリであるか、それを含むことができる。いくつかの例では、ストレージ130及びコントローラ132を含む対称/非対称メモリデバイス108は、共通の半導体(例えば、シリコン)ダイ上の埋め込み型マルチメディアコントローラ(eMMC)デバイス上で実装され得る。
ストレージ130は、キーストア110を含み、キーストア110は、システムコントローラ104A、104B、104C、104Nのうち1つ以上の対称キーを格納することができる。いくつかの例では、キーストア110は、例えば本明細書に記載のように、非対称にアクセス制御されている。コントローラ132は、例えば、アドレス指定、データの読み取り及び書き込みなどを実行するためのハードウェアを含む、ストレージ130を管理するための様々なハードウェアを含むことができる。
コントローラ132は、いくつかの例では、非対称エンジン134及び対称エンジン136を含む。非対称エンジン134は、キーストア110の非対称アクセス制御を実装するために使用され得る。非対称エンジン134は、1つ以上のキーレジスタ140及び数学処理エンジン138を含むことができる。キーレジスタ140は非対称エンジン134の構成要素として示されているが、いくつかの例では、キーレジスタ140は他の場所、例えばストレージ130内の安全な場所に配置されてもよい。いくつかの例では、キーレジスタ140は、対称/非対称メモリデバイス108のプライベートキーを格納し得る。数学処理エンジン138は、本明細書に記載のように、非対称アクセス制御を実装するための暗号オペレーションを実行するように構成され得る。例えば、数学処理エンジン138は、ペイロードデータ(またはペイロードデータのハッシュ)及びプライベートキーを受信して、例えば、本明細書に記載のように、デジタル署名を含むアクセスデータを生成するように構成されてもよい。数学処理エンジン138はまた、暗号化されたデータ及びパブリックキーを受信して、復号化されたデータまたはクリアなデータを生成するようにも構成され得る。いくつかの例では、非対称エンジン134は、RSAエンジンであることができるか、RSAエンジンを含むことができる。
対称エンジン136は、キーレジスタ146及び数学処理エンジン142を含むことができる。キーレジスタ146は、例えば、対称/非対称メモリデバイス108の対称キーを格納してもよい。キーレジスタ146は対称エンジン136の一部として示されているが、いくつかの例では、それは他の場所、例えばストレージ130内の安全な場所に配置されている。数学処理エンジン142は、本明細書に記載のように、対称アクセス制御を実装するための暗号オペレーションを実行するように構成されている。例えば、数学処理エンジン142は、ペイロードデータ及び対称キーを受信し、ペイロードデータ及び対称キーに基づいてハッシュを返すように構成され得る。
システムコントローラ104Aは、上で紹介した対称メモリデバイス114Aを含むことができる。対称メモリデバイス114Aは、ストレージ152A及びコントローラ150Aを含むことができる。いくつかの例では、対称メモリデバイス114Aは、コントローラ150A及びストレージ152Aが同じ半導体ダイ上に実装されたNORデバイスであってもよい。ストレージ152Aは、いくつかの例では、システムを制御するためにプロセッサユニット112Aによって実行可能な命令を格納してもよい。例えば、保護された処理システム101が自動車または他の車両に実装される場合、ストレージ152Aは、プロセッサユニット112Aによって実行されると、プロセッサユニット112Aにアンチロックブレーキシステム、フライバイワイヤースロットルシステムなどの車両サブシステムのオペレーションを制御させる命令を含み得る。本明細書に記載のように、ストレージ152Aのすべてまたは一部がアクセス制御され得る。いくつかの例では、プロセッサユニット112A、ミッションクリティカルなソフトウェアなどのブート命令を含むストレージ152Aの一部は、アクセス制御され、一方でストレージ152Aの他の部分はアクセス制御されない。
コントローラ150Aは、コントローラ132と同様に、例えば、アドレス指定、データの読み取り及び書き込みなどを実行するためのハードウェアを含むストレージ152Aを管理するための様々なハードウェアを含むことができる。コントローラ132はまた、対称エンジン154Aを含むことができ、対称エンジン154Aは、本明細書に記載の対称/非対称メモリデバイス108の数学処理エンジン138及びキーレジスタ140と同様の数学処理エンジン160A及びキーレジスタ156Aを含むことができる。
図2はまた、システムコントローラ104A及びその対称メモリデバイス114Aとの間でメッセージを送受信するためのワークフローを示している。図2の例では、非対称メッセージ162は、外部システム118A、118Bのうち1つのような外部システムから受信される。非対称メッセージ162は、ペイロードデータ及び非対称アクセスデータを含む。プロセッサユニット106は、非対称メッセージ162が対称/非対称メモリデバイス108に書き込まれることをリクエストする。対称/非対称メモリデバイス108のコントローラ132は、非対称エンジン134を利用して、非対称アクセスデータを確証する。非対称アクセスデータが確証される場合、コントローラ132は、キーストア110からシステムコントローラ104Aの対称キーにアクセスし、対称キーを使用して対称アクセスデータを生成する。対称アクセスデータ及びペイロードデータは、システムコントローラ104Aに送信される対称メッセージ164の一部であり得る。
対称コントローラ104Aは、対称メッセージ164を受信し、それが対称メモリデバイス114Aに書き込まれることをリクエストする。対称メモリデバイス114Aのコントローラ150Aは、対称エンジン154Aを利用して対称アクセスデータを確証する。対称アクセスデータが確証されると、コントローラ150Aはペイロードデータをストレージ152Aに書き込む。
同様に、システムコントローラ104Aは、外部システム118A、118Bのうちの1つなどの外部システムに向けられたメッセージを生成する。プロセッサユニット112Aは、例えば、リクエストされたペイロードデータが外部システムに送信されるという指標と共に、対称メモリデバイス114Aに読み取りリクエストを行う。コントローラ150Aは、ストレージ152Aからリクエストされたデータを抽出し、対称メモリデバイス114Aの対称キーに基づいて対称アクセスデータを生成する。システムコントローラは、対称メッセージ166をゲートウェイデバイス102に向ける。
ゲートウェイデバイス102は、対称エンジン136を利用して対称アクセスデータ、及び非対称エンジン134を確証し、対称/非対称メモリデバイス108のプライベートキーを備えた新しい非対称アクセスデータを生成する。非対称アクセスデータ及びペイロードデータは、外部システムに送信される非対称メッセージ168を形成し得る。
図3は、着信メッセージを処理するために外部システム、ゲートウェイデバイス102、及びシステムコントローラ104Aによって実行され得るプロセスフロー300の一例を示すフローチャートである。プロセスフロー300は、3つのカラム301、303、305を含む。カラム301は、外部システム118Aによって実行され得るオペレーションを含む。カラム303は、ゲートウェイデバイス102によって実行され得るオペレーションを含む。カラム305は、システムコントローラ104Aによって実行され得るオペレーションを含む。プロセスフロー300は、特定の外部システム118A、ゲートウェイデバイス102、及び特定のシステムコントローラ104Aを参照して説明されているが、いくつかの例では、他の外部システム118A、他のシステムコントローラ104B、104C、104N、及び他のゲートウェイデバイスが代用され得ることを理解されたい。
オペレーション304において、システムコントローラ104Aは、対称キーメッセージ307をゲートウェイデバイス102に送信し、ゲートウェイデバイス102は、オペレーション302で対称キーメッセージを受信する。オペレーション302及び304は、プロビジョニングと呼ばれることもあり、様々な異なる方法で実施され得る。いくつかの例では、プロビジョニングは、処理システム101の初期構成中、例えば、処理システム101または処理システム101によって管理される装置(例えば、車両、セキュリティシステムなど)の製造中または製造後に生じる。例えば、各システムコントローラ104A、104B、104C、104Nは、初期構成中にそれぞれの対称キーをゲートウェイデバイス102に送信するように構成され得る。例えば、システムコントローラ104Aは、ゲートウェイデバイス102または別のデバイスからプロビジョニング信号を受信することができる。プロビジョニング信号に応答して、システムコントローラ104Aは、対称キーメッセージ307をゲートウェイデバイス102に送信することができる。いくつかの例では、プロビジョニングメッセージがゲートウェイデバイス102以外の構成要素によって送信された場合、ゲートウェイデバイス102は、システムコントローラ104Aに送信されたプロビジョニング信号と同時にまたは近い時間内にゲートウェイデバイスプロビジョニング信号を受信することができる。ゲートウェイデバイスプロビジョニング信号は、対称キーメッセージ307を予期するようゲートウェイデバイス102に促すことができる。別の例では、処理システム101のシーケンスのブートシーケンス中にプロビジョニングが生じ得る。(例えば、処理システム101の電源がオンになったとき、処理システム101がリセットされたときなどを含む様々な時間にブートシーケンスが生じ得る。)例えば、ゲートウェイデバイス102は、プロビジョニング信号をブートシーケンス中のシステムコントローラ104A、104B、104C、104Nに送信するように構成されることができる。いくつかの例では、処理システム101は、プロビジョニング中にネットワーク116から切断されることができ、第3者が通信バス120を介して送信された対称キーを傍受するのを防ぐようになっている。
更に別の例では、システムコントローラ104A、104B、104C、104Nの対称キーは、セキュアデータベースまたは他のセキュアストレージにおいて、例えば、セキュア処理システム101の外部に格納され得る。システムコントローラ104A、104B、104Nから対称キーを受信する代わりに(またはそれに加えて)、ゲートウェイデバイス102は、セキュアデータベースまたは他のセキュアストレージから対称キーを受信してもよい。例えば、ゲートウェイデバイス102は、対称キーリクエストメッセージをセキュアデータベースに送信するように構成され得る。いくつかの例では、対称キーリクエストメッセージは、本明細書に記載のように生成された対称または非対称のアクセスデータを含み得る。セキュアデータベース(及び/またはその関連システム)は、対称キーリクエストを確証することができ、確証した場合、システムコントローラ104A、104B、104C、104Nのリクエストされた1つ以上の対称キーをゲートウェイデバイス102に送信することができる。
図3に戻り参照すると、オペレーション306において、外部システム118Aは、非対称メッセージ309をゲートウェイデバイス102に送信することができる。非対称メッセージ309は、外部システム118Aのプライベートキーを備えた外部システム118Aによって生成されたペイロードデータ及び非対称アクセスデータを含む。非対称メッセージ309は、システムコントローラ104Aにアドレス指定され得る。一例では、システムコントローラ104Aは、車両のアンチロックブレーキシステムを管理し、非対称メッセージ309は、アンチロックブレーキシステムからの現在のファームウェアバージョン、ステータス、または他の情報をリクエストするステータスリクエストメッセージを含むペイロードデータを含む。別の例では、非対称メッセージ309は、システムコントローラ104Aのファームウェアまたは他のソフトウェア更新を含むペイロードデータを含み得る。非対称メッセージ309は、具体的にシステムコントローラ104Aにアドレス指定されてよく、または、いくつかの例では、システムコントローラ104A、104B、104C、104Nのうちの2つ以上にアドレス指定されてもよい。例えば、非対称メッセージ309は、セキュアコンピューティングシステムのシステムコントローラ104A、104B、104C、104Nのすべて、またはそれらのサブセットからの情報をリクエストすること、またはそれらに情報またはデータを提供することができる。
オペレーション308において、ゲートウェイデバイス102は、非対称メッセージ309またはその一部を対称/非対称メモリデバイス108に書き込むことができる。いくつかの例では、ゲートウェイデバイス102は、メッセージ309をシステムコントローラ104Aに転送するという命令とともに非対称メッセージ309を対称/非対称メモリデバイス108に書き込む。非対称メッセージ309がシステムコントローラ104A、104B、104C、104Nのうちの2つ以上にアドレス指定されている例では、ゲートウェイデバイス102は、メッセージ309が複数のシステムコントローラ104A、104B、104C、104Nに送信されるという命令とともに非対称メッセージ309を対称/非対称メモリデバイス108に書き込むことができる。いくつかの例では、完全なペイロードデータが、各受信者システムコントローラ104A、104B、104C、104Nに提供されている。他の例では、ゲートウェイデバイス102は、ペイロードデータを分割し、部分的なペイロードデータを各受信者システムコントローラ104A、104B、104C、104Nに送信する。例えば、システムコントローラ104Aのファームウェアアップデートを含むペイロードデータは、システムコントローラ104Aに送信されてもよく、一方で、別のシステムコントローラ104B、104C、104Nなどのファームウェアアップデートを含むペイロードデータは、システムコントローラ104Aに送信されなくてもよい。
オペレーション310において、ゲートウェイデバイス102(例えば、対称/非対称メモリデバイス108)は、非対称メッセージ309を確証することができる。例えば、対称/非対称メモリデバイス108は、非対称エンジン134を利用して、非対称メッセージ309に含まれる非対称アクセスデータがペイロードデータと一致するかを照合することができる。いくつかの例では、対称/非対称メモリデバイス108は、例えば、認証局または他の信頼できる第三者から外部システム118Aのパブリックキーを取得する。いくつかの例では、対称/非対称メモリデバイス108は、外部システム118A、118Bの限られたセットからのメッセージを確証するように構成されている。例えば、非対称アクセスデータが、外部システム118A、118Bの限定されたセットの外部システム118A、118Bのプライベートキーに結び付けられない場合、確証されないことがある。(図1には2つの外部システム118A、118Bが示されているが、ゲートウェイデバイス102は、異なる数の外部システム118A、118Bを含む外部システムの限られたセットを利用することができる。)
対称/非対称メモリデバイス108は、非対称アクセスデータ及びパブリックキーを非対称エンジン134(例えば、その数学処理エンジン138)に提供することができる。非対称エンジン134は、復号化されたアクセスデータを返すことができる。復号化されたアクセスデータは、非対称メッセージのペイロードデータを参照するか、そうでなければ記述することができる。例えば、復号化されたメッセージは、ペイロードデータのハッシュであることができる。対称/非対称メモリデバイス108は、非対称メッセージ309(アクセスデータコピーと呼ばれることもある)とともに受信されたペイロードデータのハッシュを独立して生成することができる。アクセスデータコピーが復号化されたアクセスデータと同等である場合、非対称メッセージ309が確証される。例えば、RSA暗号化技術など、任意の適切な非対称暗号化技術が使用され得る。また、非対称アクセスデータが外部システムのプライベートキーで暗号化されたペイロードデータのハッシュである、本明細書で説明するこの例は、非対称アクセスデータを生成する単なる一例である。他の適切な技術が使用されてもよい。
非対称メッセージ309が確証されない場合(例えば、アクセスデータコピーが復号化されたアクセスデータと同等でない場合)、対称/非対称メモリデバイス108は、オペレーション312においてメッセージを拒否することができる。オペレーション310において非対称メッセージ309が確証される場合、オペレーション314において、対称/非対称メモリデバイス108はシステムコントローラ104Aの対称アクセスデータを生成することができる。例えば、対称/非対称メモリデバイス108は、対称/非対称メモリデバイス108のストレージ130にあるキーストア110からシステムコントローラ104Aの対称キーを抽出することができる。いくつかの例では、対称/非対称メモリデバイスは、対称エンジン136を利用して対称アクセスデータを生成することができる。例えば、対称/非対称メモリデバイス108は、システムコントローラ104Aの抽出された対称キー及びペイロードデータを対称エンジン136に提供することができ、対称エンジン136は、システムコントローラ104Aの対称キーで生成されたペイロードデータのハッシュを返すことができる。メッセージ309の全ペイロードデータ未満がシステムコントローラ104Aに送信される場合、システムコントローラ104Aに送信されるペイロードデータの部分を考慮して対称アクセスデータが生成され得る。例えば、SHA-2シリーズ、SHA-3シリーズ、SHA-5シリーズなどを含むセキュアハッシュアルゴリズム(SHA)アルゴリズムなど、任意の適切なハッシュアルゴリズムが使用され得る。
オペレーション316において、ゲートウェイデバイス102(例えば、対称/非対称メモリデバイス108)は、対称メッセージ311をシステムコントローラ104Aに送信することができる。例えば、対称メッセージ311は、ペイロードデータ(またはシステムコントローラ104Aに提供されるペイロードデータの一部)及びオペレーション314で生成された対称アクセスデータを含み得る。
システムコントローラ104Aは、対称メッセージ311を受信することができ、それをオペレーション318において、対称メモリデバイス114Aに書き込むことができる。オペレーション320において、システムコントローラ104A(例えば、対称メモリデバイス114A)は、対称メッセージ311を確証することができる。例えば、対称メモリデバイス114Aは、対称アクセスデータがペイロードデータと一致するかどうかを判断することができる。対称メモリデバイス114Aは、対称アクセスデータを対称エンジン154Aに供給することにより、オペレーション318からの書き込みを処理することができる。対称エンジン154Aは、対称メッセージ311に含まれるペイロードデータ、及び対称メモリデバイス114Aの対称キーに基づいて、例えば、対称/非対称メモリデバイス108によって使用される同一のハッシュアルゴリズムを利用してハッシュを生成することができる。
生成されたハッシュが対称アクセスデータと同等である場合、対称メッセージ311が確証される。生成されたハッシュが対称アクセスデータと同等でない場合、対称メッセージ311は確証されなくてもよい。対称メッセージ311が確証されない場合、対称メモリデバイス114Aは、オペレーション322においてメッセージ311を拒否することができる(例えば、ペイロードデータがストレージ152Aにロードされなくてもよい)。対称メッセージ311が確証された場合、対称メモリデバイス114Aは、オペレーション324において、例えば、ペイロードデータをストレージ152Aに書き込むことにより、メッセージ311を処理することができる。
図4は、発信メッセージを処理するために、外部システム118A、ゲートウェイデバイス102、及びシステムコントローラ104Aによって実行され得るプロセスフロー400の一例を示すフローチャートである。プロセスフロー400は、3つのカラム401、403、405を含む。カラム401は、外部システム118Aによって実行され得るオペレーションを含む。カラム403は、ゲートウェイデバイス102によって実行され得るオペレーションを含む。カラム405は、システムコントローラ104Aによって実行され得るオペレーションを含む。プロセスフロー400は、特定の外部システム118A、ゲートウェイデバイス102、及び特定のシステムコントローラ104Aを参照して説明されているが、いくつかの例では、他の外部システム118A、他のシステムコントローラ104B、104C、104N、及び他のゲートウェイデバイスが代用され得ることを理解されたい。プロセスフロー400の実行前に、システムコントローラ104Aの対称キーは、例えば、本明細書に記載のように、ゲートウェイデバイス102にプロビジョニングされていてもよい。
オペレーション402において、システムコントローラ104Aは、外部システム118Aに向けられた対称メッセージ407を生成することができる。対称メッセージ407は、ペイロードデータ及び対称アクセスデータを含み得る。ペイロードデータは、例えば、システムコントローラ104Aのステータスレポート、システムコントローラ104Aと通信する1つ以上のセンサーからのデータなどの任意の適切なデータであり得る。いくつかの例では、システムコントローラ104Aは、対称メモリデバイス114Aの対称エンジン154Aを利用して対称アクセスデータを生成する。例えば、システムコントローラ104Aは、対称メモリデバイス114Aからのペイロードデータをリクエストすることができる。対称メモリデバイス114Aは、ストレージ152Aからペイロードデータを抽出することができ、ペイロードデータを対称エンジン154Aに供給することができる。対称エンジン154Aは、例えば、システムコントローラ104Aの対称キーに基づいて、キーレジスタ156Aに格納され得るペイロードデータのハッシュを生成することができる。ハッシュは、対称アクセスデータのすべてまたは一部であり得る。
オペレーション404において、システムコントローラ104Aは、対称メッセージ407をゲートウェイデバイス102に送信することができる。ゲートウェイデバイス102は、オペレーション406において、対称メッセージ407を対称/非対称メモリデバイス108に書き込むことができる。オペレーション408において、ゲートウェイデバイス102(例えば、対称/非対称メモリデバイス108)は、例えば本明細書に記載のように、対称メッセージを確証することができる。例えば、ゲートウェイデバイス102は、キーストア110からシステムコントローラ104Aの対称キーを抽出することができ、対称エンジン136を利用して、ペイロードデータのハッシュを生成することができる。対称エンジン136によって生成されたペイロードデータのハッシュが対称メッセージ407のアクセスデータと同等である場合、メッセージは確証され得る。一致しない場合、ゲートウェイデバイス102は、オペレーション410において、対称メッセージ407を拒否することができる。
対称メッセージ407が確証される場合、ゲートウェイ装置102は、メッセージを外部システム118Aに転送することができる。いくつかの例では、非対称アクセスデータが使用され得る。例えば、オペレーション412において、ゲートウェイデバイス102(例えば、対称/非対称メモリデバイス108)は、対称メッセージ407のペイロードデータを含む非対称メッセージ409を生成することができる。例えば、対称/非対称メモリデバイス108は、ペイロードデータを非対称エンジン134に供給することができる。非対称エンジン134は、例えば、ゲートウェイデバイス102のペイロードデータ及びプライベートキーに基づいて、非対称アクセスデータを生成することができる。例えば、対称/非対称メモリデバイス108は、ペイロードデータのハッシュを生成することができ、次いで、プライベートキーでハッシュを暗号化することができる。暗号化されたハッシュは、非対称アクセスデータのすべてまたは一部であり得る。オペレーション414において、ゲートウェイデバイス102は、非対称メッセージ409を外部システム118Aに送信することができる。
外部システム118Aは、オペレーション416において非対称メッセージ409を受信することができ、例えば、非対称アクセスデータがペイロードデータに一致するかどうかを判断することにより、オペレーション418において、メッセージ409を確証することができる。メッセージが確証されると、外部システムはオペレーション422においてメッセージを処理することができる。メッセージが確証されない場合、外部システム118Aは、オペレーション420においてメッセージを拒否することができる。
本明細書に記載の例示的なセキュア処理システム101は、アクセス制御を利用して、ゲートウェイデバイス102のメモリデバイス、及びシステムコントローラ104A、104B、104C、104Nを保護する。例えば、ゲートウェイデバイス102は、説明したように、システムコントローラ104A、104B、104C、104Nのために非対称アクセス制御を有利に実装する。このように、システムコントローラ104A、104B、104C、104Nは、非対称システムコントローラではなく対称システムコントローラとともに実装され得る。
様々な例では、ゲートウェイデバイス102及び様々なシステムコントローラ104A、104B、104C、104Nを含むセキュア処理システム101は、例えば暗号測定、暗号保護及び/または自動回復などの他のセキュリティ機能を実装することができる。
暗号測定によれば、メモリデバイス108、114A、114B、114C、114Nの一部またはすべては、それぞれの対称エンジン(または追加の対称エンジン)を利用して、信頼性測定のコアルート(CRTM)を実装する。例えば、メモリデバイスが(例えば、本明細書に記載のように確証された)確証されたペイロードデータを受信すると、メモリデバイスはペイロードデータのハッシュを生成するために適切な暗号キー(例えば、デバイスの対称キー)を利用することができる。ハッシュはメモリデバイスにおいて、安全な場所に書き込まれることができる。いくつかの例では、暗号化キーはCRTMのすべてまたは一部であり、そこから派生したハッシュを備えている。メモリデバイスのストレージからデータが読み取られると、メモリデバイスコントローラは、例えば、読み取られたデータをハッシュし、データが書き込まれたときに生成された格納されたハッシュとそのハッシュを比較することによって、読み取られたデータをCRTMと比較することができる。一致する場合、プロセスは続行することができる(例えば、読み取りデータがコードの場合、プロセッサユニットは読み取りコードを実行することができる)。一致しない場合、メモリデバイスストレージの破損を示すことができる。メモリデバイスはエラーを返すことができ、または、そうでない場合、リクエストデータが使用されることを防ぐことができる。
自動回復によれば、メモリデバイスは、システムのデータ及び/またはコードのすべてまたは一部の安全で回復可能なコピーを含む安全な(例えば、読み取り専用)保管場所を含む。例えば、CRTMを参照してデータ破損が検出された場合、セキュアコピーがロードされる(例えば、実行される)ことができる。暗号保護によれば、対称及び/または非対称暗号化エンジンが使用され通信(例えば、ゲートウェイデバイス102と外部システム118A、118Bとの間の通信、システムコントローラ104A、104B、104C、104Nとゲートウェイデバイスとの間の通信102など)を暗号化する。
図5は、1つ以上の装置5030~5050の一部としてメモリ装置5020(例えば、本明細書に記載のメモリ装置のいずれか)を備えた例示的な処理システム5010(例えば、処理システム101)を示している。装置は、処理システム5010などの処理システムを含むことができる任意のデバイスを含む。前述のように、処理システム5010は、命令を(連続的に、またはそうでない方法で)実行できる任意のデバイスであり得る。例示的な装置は、車両5030(例えば、インフォテインメントシステム、制御システムなどの一部として)、ドローン5050(例えば、制御システムの一部として)、家具または家電製品5040(例えば、センサーシステム、エンターテイメントシステム、インフォテインメントシステムなどの一部として)などを含む。他の例では、図示されていないが、装置は、航空用、海洋用、モノのインターネット(IOT)、及び他のデバイスを含んでもよい。
図6は、処理デバイスのソフトウェアアーキテクチャ602の一例を示すブロック図600である。アーキテクチャ602は、様々なハードウェアアーキテクチャと組み合わせて使用され得る。例えば、ソフトウェアアーキテクチャ602は、本明細書に記載のゲートウェイデバイス102、及び/または様々なシステムコントローラ104A、104B、104C、104Nのうちの1つ以上を記述することができる。図6は、単にソフトウェアアーキテクチャ602の非限定的な例であり、本明細書に記載の機能を容易にするために他の多くのアーキテクチャが実装されることができる。代表的なハードウェア層604が示されており、例えば、上記で参照されたコンピューティングデバイスのいずれかを表すことができる。いくつかの例では、ハードウェア層604は、図6のアーキテクチャ602、図7のアーキテクチャ700、及び/または本明細書に記載のセキュア処理システム101のアーキテクチャに従って実装され得る。
代表的なハードウェア層604は、関連する実行可能命令608を有する1つ以上の処理ユニット606を含む。実行可能命令608は、図1~図4の方法、モジュール、構成要素などの実装を含むソフトウェアアーキテクチャ602の実行可能命令を表す。ハードウェア層604はまた、実行可能命令608も有するメモリ及び/またはストレージモジュール610を含む。ハードウェア層604はまた、ハードウェアアーキテクチャ700の一部として示される他のハードウェアのような、ハードウェア層604の他のハードウェアを表す他のハードウェア612によって示されるような他のハードウェアも含み得る。
図6の例示的なアーキテクチャでは、ソフトウェア602は、各層が特定の機能を提供する層のスタックとして概念化されてもよい。例えば、ソフトウェア602は、オペレーティングシステム614、ライブラリ616、フレームワーク/ミドルウェア618、アプリケーション620及びプレゼンテーション層644などの層を含むことができる。動作上、アプリケーション620及び/または層内の他の構成要素は、ソフトウェアスタックを介したアプリケーションプログラミングインターフェース(API)コール624を呼び出すことができ、APIコール624に応答するメッセージ626として示される応答、戻り値などを受信することができる。図示されている層は、本質的に代表的なものであり、すべてのソフトウェアアーキテクチャにすべての層があるわけではない。例えば、一部のモバイルまたは専用オペレーティングシステムは、フレームワーク/ミドルウェア層618を提供することができず、一方で、それ以外はそのような層を提供することができる。他のソフトウェアアーキテクチャは、追加の、または異なる層を含むことができる。
オペレーティングシステム614は、ハードウェアリソースを管理することができ、共通のサービスを提供することができる。オペレーティングシステム614は、例えば、カーネル628、サービス630、及びドライバ632を含み得る。カーネル628は、ハードウェア層と他のソフトウェア層との間の抽象化層として機能することができる。例えば、カーネル628は、メモリ管理、プロセッサ管理(例えば、スケジューリング)、構成要素管理、ネットワーキング、セキュリティ設定などを担当することができる。サービス630は、他のソフトウェア層に他の共通サービスを提供することができる。いくつかの例では、サービス630は割り込みサービスを含む。割り込みサービスは、ハードウェアまたはソフトウェアの割り込みの受信を検出することができ、それに応答してアーキテクチャ602に現在の処理を一時停止させることができ、割り込みが受信されると、割り込みサービスルーチン(ISR)を実行することができる。
ドライバ632は、基礎となるハードウェアを制御またはインターフェースする役割を果たし得る。例えば、ドライバ632は、ハードウェア構成に応じて、ディスプレイドライバ、カメラドライバ、Bluetooth(登録商標)ドライバ、フラッシュメモリドライバ、シリアル通信ドライバ(例えば、ユニバーサルシリアルバス(USB)ドライバ)、Wi-Fi(登録商標)ドライバ、NFCドライバ、オーディオドライバ、電力管理ドライバなどを含み得る。
ライブラリ616は、アプリケーション620、及び/または他の構成要素、及び/または層によって利用され得る共通インフラストラクチャを提供することができる。ライブラリ616は通常、他のソフトウェアモジュールが、基礎となるオペレーティングシステム614の機能(例えば、カーネル628、サービス630及び/またはドライバ632)と直接インターフェースするよりも簡単な方法でタスクを実行できる機能を提供する。ライブラリ616は、メモリ割り当て関数、文字列操作関数、数学関数などの関数を提供し得るシステム634ライブラリ(例えば、C標準ライブラリ)を含み得る。加えて、ライブラリ616は、メディアライブラリ(例えば、MPEG4、H.264、MP3、AAC、AMR、JPG、PNGなどの様々なメディアフォーマットのプレゼンテーション及び操作をサポートするライブラリ)、グラフィックライブラリ(例えば、ディスプレイ上のグラフィックコンテンツの2D及び9Dをレンダリングするために使用され得るOpenGLフレームワーク)、データベースライブラリ(例えば、様々なリレーショナルデータベース機能を提供するSQLite)、Webライブラリ(例えば、Webブラウジング機能を提供することができるWebKit)などのAPIライブラリ636を含み得る。ライブラリ616はまた、多くの他のAPIをアプリケーション620及び他のソフトウェアコンポーネント/モジュールに提供するために、多種多様な他のライブラリ638を含むこともできる。
フレームワーク618(ミドルウェアとも呼ばれることがある)は、アプリケーション620及び/または他のソフトウェア構成要素/モジュールによって利用され得る、より高レベルの共通インフラストラクチャを提供し得る。例えば、フレームワーク618は、様々なグラフィックユーザーインターフェース(GUI)機能、高レベルのリソース管理、高レベルの位置特定サービスなどを提供することができる。フレームワーク618は、アプリケーション620及び/または他のソフトウェア構成要素/モジュールによって利用され得る他のAPIの広いスペクトルを提供することができ、それらのいくつかは、特定のオペレーティングシステムまたはプラットフォームに特有のものであり得る。
アプリケーション620は、組み込みアプリケーション640、及び/またはサードパーティアプリケーション642を含む。代表的な組み込みアプリケーション640の例として、連絡先アプリケーション、ブラウザアプリケーション、ブックリーダーアプリケーション、ロケーションアプリケーション、メディアアプリケーション、メッセージングアプリケーション、及び/またはゲームアプリケーションが含まれ得るが、これらに限定されない。サードパーティアプリケーション642は、組み込みアプリケーションのいずれか、及び広範な他のアプリケーションを含むことができる。特定の例では、サードパーティアプリケーション642(例えば、特定のプラットフォームのベンダー以外のエンティティによってAndroid(商標)またはiOS(商標)ソフトウェア開発キット(SDK)を使用して開発されたアプリケーション)は、iOS(商標)、Android(商標)、Windows(登録商標)Phone、または他のモバイルコンピューティングデバイスのオペレーティングシステムなどのモバイルオペレーティング上で実行されるモバイルソフトウェアであることができる。この例では、サードパーティアプリケーション642は、本明細書で説明する機能を促進するためのオペレーティングシステム614などのモバイルオペレーティングシステムによって提供されるAPIコール624を呼び出すことができる。
アプリケーション620は、システムのユーザーと対話するインターフェースを生成するために、組み込みオペレーティングシステム機能(例えば、カーネル628、サービス630、及び/またはドライバ632)、ライブラリ(例えば、システム634、API636、及び他のライブラリ638)、フレームワーク/ミドルウェア618を利用することができる。代替的または追加的に、一部のシステムでは、プレゼンテーション層644などのプレゼンテーション層を介してユーザーとの対話が生じることがある。これらのシステムでは、アプリケーション/モジュールの「ロジック」は、ユーザーと対話するアプリケーション/モジュールの態様から分離され得る。
一部のソフトウェアアーキテクチャは仮想マシンを利用している。例えば、本明細書に記載のシステムは、1つ以上のサーバーコンピューティングマシンで動作される1つ以上の仮想マシンを利用して動作され得る。図6の例では、これは仮想マシン648によって示されている。仮想マシンは、アプリケーション/モジュールがハードウェアコンピューティングデバイスで動作しているかのように動作することができるソフトウェア環境を形成する。仮想マシンは、ホストオペレーティングシステム(オペレーティングシステム614)によってホストされ、通常、常にではないが、仮想マシンの動作、及びホストオペレーティングシステム(すなわち、オペレーティングシステム614)とのインターフェースを管理する仮想マシンモニター646を有する。ソフトウェアアーキテクチャは、オペレーティングシステム650、ライブラリ652、フレームワーク/ミドルウェア654、アプリケーション656、及び/またはプレゼンテーション層658などの仮想マシン内で動作する。仮想マシン648内で動作しているソフトウェアアーキテクチャのこれらの層は、前述の対応する層と同一であっても、異なっていてもよい。
図7は、処理システムのハードウェアアーキテクチャ700を示すブロック図であり、その中では、命令のセットまたはシーケンスが実行されることができ、マシンに本明細書に記載の方法のいずれかを実行させることができる。例えば、アーキテクチャ700は、図6に関して説明されたソフトウェアアーキテクチャ602を実行することができる。アーキテクチャ700は、スタンドアロンデバイスとして動作することができるか、または他のマシンに接続(例えば、ネットワーク化)されることができる。ネットワーク化された展開では、アーキテクチャ700は、サーバー/クライアントネットワーク環境のサーバーまたはクライアントマシンのいずれかの容量で動作することができるか、または、ピアツーピア(または分散)ネットワーク環境でピアマシンとして機能することができる。アーキテクチャ700は、パーソナルコンピュータ(PC)、タブレットPC、ハイブリッドタブレット、セットトップボックス(STB)、携帯情報端末(PDA)、携帯電話、ウェブアプライアンス、ネットワークルーター、ネットワークスイッチ、またはネットワークブリッジ、もしくは、そのマシンで実行する動作を指定する(連続的またはそれ以外の)命令を実行することが可能な任意のマシンに実装されることができる。
例示的なアーキテクチャ700は、少なくとも1つのプロセッサ(例えば、中央処理装置(CPU)、グラフィック処理装置(GPU)またはそれら両方、プロセッサコア、計算ノードなど)を含むプロセッサユニット702を含んでいる。アーキテクチャ700は、メインメモリ704及び静的メモリ706を更に含むことができ、これらはリンク708(例えばバス)を介して互いに通信する。アーキテクチャ700は、ビデオディスプレイユニット710、英数字入力装置712(例えば、キーボード)、及びユーザーインターフェース(UI)ナビゲーション装置714(例えば、マウス)を更に含むことができる。いくつかの例では、ビデオディスプレイユニット710、入力装置712及びUIナビゲーション装置714は、タッチスクリーンディスプレイに組み込まれている。アーキテクチャ700は、ストレージ装置716(例えば、駆動ユニット)、信号生成装置718(例えば、スピーカー)、ネットワークインターフェース装置720、及び全地球測位システム(GPS)センサー、コンパス、加速度計、またはその他のセンサーなどの1つ以上のセンサー(図示せず)を追加的に含むことができる。
いくつかの例では、プロセッサユニット702または他の適切なハードウェア構成要素は、ハードウェア割り込みをサポートすることができる。ハードウェア割り込みに応答して、プロセッサユニット702はその処理を一時停止することができ、例えば本明細書に記載のように割り込みサービスルーチン(ISR)を実行することができる。
ストレージ装置716は、本明細書に記載の方法または機能のいずれか1つ以上を実行または利用するデータ構造及び命令724(例えば、ソフトウェア)の1つ以上のセットが格納されるコンピュータ可読媒体722を含む。命令724はまた、完全にまたは少なくとも部分的に、メインメモリ704の中、静的メモリ706の中に、及び/またはアーキテクチャ700による実行中のプロセッサ702の中に、メインメモリ704、静的メモリ706、及びコンピュータ可読媒体を構成するプロセッサ702とともに常駐することができる。コンピュータ可読媒体722に格納された命令は、例えば、ソフトウェアアーキテクチャ602を実装するための命令、本明細書に記載の機能のいずれかを実行するための命令などを含み得る。
コンピュータ可読媒体722は、単一の媒体である例で示されているが、用語「コンピュータ可読媒体」は、1つ以上の命令724を格納する単一の媒体または複数の媒体(例えば、集中型または分散型データベース、及び/または関連するキャッシュ及びサーバー)を含み得る。用語「コンピュータ可読媒体」はまた、機械による実行のための命令を格納すること、符号化すること、または携帯することが可能で、本開示の方法の1つ以上のいずれかを機械に実行させ、そのような命令によって利用され、またはそのような命令に関連するデータ構造を格納すること、符号化すること、または携帯することが可能である有形媒体も含むものと解釈されるものとする。従って、用語「コンピュータ可読媒体」は、ソリッドステートメモリ、光学及び磁気媒体を含むが、これらに限定されないものと解釈されるものとする。コンピュータ可読媒体の具体例は、不揮発性メモリを含み、例として、半導体メモリデバイス(例えば、電気的にプログラム可能な読み取り専用メモリ(EPROM)、電気的に消去可能なプログラム可能な読み取り専用メモリ(EEPROM))、及びフラッシュメモリデバイス、内蔵ハードディスクやリムーバブルディスクなどの磁気ディスク、光磁気ディスク、ならびにCD-ROM及びDVD-ROMディスクが挙げられるが、これらに限定されるものではない。
命令724は、伝送媒体を使用して、いくつかの周知の転送プロトコル(例えば、HTTP)のいずれか1つを利用するネットワークインターフェースデバイス720を介して通信ネットワーク726を通じて更に送受信され得る。通信ネットワークの例には、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネット、携帯電話ネットワーク、プレインオールドテレフォン(POTS)ネットワーク、ワイヤレスデータネットワーク(例えば、Wi-Fi、3G、及び5G LTE/LTE-AまたはWiMAXネットワーク)が挙げられる。用語「伝送媒体」は、機械による実行のための命令を保存すること、符号化すること、携帯することが可能で、そのようなソフトウェアの通信を促進するためのデジタルまたはアナログ通信信号、または他の無形媒体を含む、いずれかの無形媒体を含むものと解釈されるものとする。
本明細書に記載の例は、一貫性のために回路と呼ばれる、ロジック、または多数の構成要素、エンジン、モジュール、回路を含むことができ、またはそれらの上で動作することができるが、これらの用語は互換可能に使用できることを理解されたい。回路は、本明細書に記載の動作を実行するために、1つ以上のプロセッサに通信可能に連結されたハードウェア、ソフトウェア、またはファームウェアであり得る。回路は、ハードウェア回路であることができ、そのような回路は、特定の動作を実行できる有形のエンティティと解釈されることができ、特定の方法で構成または配置されることができる。一例では、回路は、回路として指定された方法で(例えば、内向きに、または他の回路などの外部エンティティに向けて)配置されることができる。一例では、1つ以上のコンピューティングプラットフォーム(例えば、スタンドアロン、クライアントまたはサーバーコンピューティングプラットフォーム)または1つ以上のハードウェアプロセッサの全体または一部は、ファームウェアまたはソフトウェア(例えば、命令、アプリケーション部分、またはアプリケーション)によって指定された動作を実行するために動作する回路として構成され得る。一例では、ソフトウェアはコンピュータ可読媒体上に存在し得る。一例では、ソフトウェアは、回路の基礎となるハードウェアによって実行されると、指定された動作をハードウェアに実行させる。従って、ハードウェア回路という用語は、有形のエンティティを包含し、物理的に構築され、具体的に構成(例えば、ハードワイヤード)され、または一時的に(例えば、暫時的に)構成(例えば、プログラム)され、特定の方法で動作し、または本明細書に記載の任意の動作の一部またはすべてを実行するエンティティであると理解される。
回路が一時的に構成されているこれらの例を考慮すると、回路のそれぞれは、いずれかの時点でインスタンス化される必要はない。例えば、回路がソフトウェアを使用するように構成された汎用ハードウェアプロセッサを備える場合、汎用ハードウェアプロセッサは、異なる時間にそれぞれ異なる回路として構成され得る。従って、ソフトウェアは、例えば、ある時点で特定の回路を構成し、異なる時点で異なる回路を構成するように、ハードウェアプロセッサを構成する。
上記の詳細な説明には、詳細な説明の一部を形成する添付図面への参照が含まれている。図面は、実例として、実施され得る特定の例を示している。これらの例は、本明細書では「実施例」とも呼ばれる。そのような実施例は、図示または説明されたものに加えて要素を含み得る。しかし、図示または説明された要素を含む実施例もまた考えられる。さらに、特定の実施例(またはその1つ以上の態様)に関して、または本明細書に示され、または説明された他の実施例(またはその1つ以上の態様)に関して、図示または説明されたこれら要素(またはその1つ以上の態様)の任意の組み合わせ、または順列を使用する実施例も考慮されている。
本明細書では、特許明細書で一般的な「a」または「an」という用語は、「at least one」または「one or more」の他の事例または使用法とは無関係に、1つ以上を含むために使用される。本文書では、「or」という用語は、非排他的なものを指すために使用され、また、指示なき場合、「A or B」には、「AであるがBではない」、「BであるがAではない」、及び「A及びB」が含まれるようになっている。添付の特許請求の範囲では、用語「including」及び「in which」は、それぞれ用語「comprising」及び「wherein」の平易な英語の同等物として使用されている。また、以下の特許請求の範囲において、用語「including」及び「comprising」は、無制限であり、つまり、請求項のそのような用語の後に列挙された要素に加えて、要素を含むシステム、デバイス、物品、またはプロセスが、依然としてその特許請求の範囲内にあると見なされる。更に、以下の特許請求の範囲では、用語「第1」、「第2」、「第3」などは、単に標示として使用され、それらの対象の番号順序を示唆することを意図したものではない。
上記の説明は例示を意図したものであり、限定を意図したものではない。例えば、上述の例(またはその1つ以上の態様)は、他のものと組み合わせて使用されることができる。上述の説明を参照して当業者などによって他の例が使用され得る。要約書は、読者が技術的開示の性質を迅速に確認できるようになっている。請求項の範囲または意味を解釈または制限するために使用されないことを理解して提示されている。また、上述の「発明を実施するための形態」では、本開示を合理化するために様々な特徴がグループ化され得る。しかし、例は特徴のサブセットを特徴とし得ることから、特許請求の範囲は本明細書で開示されるすべての特徴を説明し得ない。更に、例は、特定の例で開示されたものよりも少ない特徴を含み得る。従って、以下の特許請求の範囲は、別個の例として独立して請求項とともに、ここで「発明を実施するための形態」に組み込まれている。本明細書に開示される実施例の範囲は、添付の特許請求の範囲を参照して決定されるものであり、そのような特許請求の範囲が権利を有する同等物の全範囲も含まれる。
Claims (1)
- 第1のシステムコントローラと、
前記第1のシステムコントローラと通信するゲートウェイデバイスとを含むシステムであって、
前記ゲートウェイデバイスがゲートウェイデバイスメモリデバイスを含み、前記ゲートウェイデバイスメモリデバイスが、ゲートウェイデバイスストレージ、ゲートウェイデバイス非対称エンジン、及びゲートウェイ対称エンジンを含み、前記ゲートウェイデバイスが、
第1のメッセージペイロードデータ、及び第1の非対称アクセスデータを含む第1のメッセージを外部システムから受信することと、
前記ゲートウェイデバイス非対称エンジンを用いて、外部システムパブリックキーに少なくとも部分的に基づいて、前記第1の非対称アクセスデータが前記第1のメッセージペイロードデータと一致するかを判断することと、
前記ゲートウェイデバイスと通信する前記第1のシステムコントローラに関連付けられた第1のシステムコントローラ対称キーを前記ゲートウェイデバイスストレージから抽出することと、
前記ゲートウェイデバイス対称エンジンを用いて、前記第1のシステムコントローラ対称キー、及び前記第1のメッセージペイロードデータに少なくとも部分的に基づいて第1の対称アクセスデータを生成することと、
前記第1のメッセージペイロードデータ、及び前記第1の対称アクセスデータを前記第1のシステムコントローラに送信することと、
を含むオペレーションを実行するように構成されている前記システム。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762476598P | 2017-03-24 | 2017-03-24 | |
US62/476,598 | 2017-03-24 | ||
US15/692,802 US10560263B2 (en) | 2017-03-24 | 2017-08-31 | Secure memory arrangements |
US15/692,802 | 2017-08-31 | ||
PCT/US2018/024084 WO2018175925A1 (en) | 2017-03-24 | 2018-03-23 | Secure memory arrangements |
JP2019552568A JP7080897B2 (ja) | 2017-03-24 | 2018-03-23 | セキュアメモリ装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019552568A Division JP7080897B2 (ja) | 2017-03-24 | 2018-03-23 | セキュアメモリ装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022062190A true JP2022062190A (ja) | 2022-04-19 |
Family
ID=63582996
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019552568A Active JP7080897B2 (ja) | 2017-03-24 | 2018-03-23 | セキュアメモリ装置 |
JP2022016236A Ceased JP2022062190A (ja) | 2017-03-24 | 2022-02-04 | セキュアメモリ装置 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019552568A Active JP7080897B2 (ja) | 2017-03-24 | 2018-03-23 | セキュアメモリ装置 |
Country Status (6)
Country | Link |
---|---|
US (2) | US10560263B2 (ja) |
EP (1) | EP3602953A4 (ja) |
JP (2) | JP7080897B2 (ja) |
KR (1) | KR102390810B1 (ja) |
CN (2) | CN110612699B (ja) |
WO (1) | WO2018175925A1 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10560263B2 (en) | 2017-03-24 | 2020-02-11 | Micron Technology, Inc. | Secure memory arrangements |
TWI734314B (zh) | 2018-12-31 | 2021-07-21 | 美商美光科技公司 | 用於將數位指紋提供至主機裝置之系統、方法及非暫時性電腦可讀媒體 |
US10868679B1 (en) * | 2019-07-25 | 2020-12-15 | Cypress Semiconductor Corporation | Nonvolatile memory device with regions having separately programmable secure access features and related methods and systems |
US20220070004A1 (en) * | 2020-08-26 | 2022-03-03 | Micron Technology, Inc. | Memory write access control |
KR20220041586A (ko) | 2020-09-25 | 2022-04-01 | 에스케이하이닉스 주식회사 | 컨트롤러 및 이를 포함하는 전자 시스템 |
US11501027B2 (en) * | 2021-02-08 | 2022-11-15 | Micron Technology, Inc. | Mechanism to support writing files into a file system mounted in a secure memory device |
US12003642B2 (en) * | 2021-10-21 | 2024-06-04 | Stephen Mayne | System and method for authentication using non-fungible tokens |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090172401A1 (en) * | 2007-11-01 | 2009-07-02 | Infineon Technologies North America Corp. | Method and system for controlling a device |
US20160344715A1 (en) * | 2015-05-18 | 2016-11-24 | 128 Technology, Inc. | Network Device and Method for Processing a Session Using a Packet Signature |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6009173A (en) * | 1997-01-31 | 1999-12-28 | Motorola, Inc. | Encryption and decryption method and apparatus |
JP2002024147A (ja) | 2000-07-05 | 2002-01-25 | Nec Corp | セキュアメールプロキシシステム及び方法並びに記録媒体 |
GB0114317D0 (en) * | 2001-06-13 | 2001-08-01 | Kean Thomas A | Method of protecting intellectual property cores on field programmable gate array |
JP4248499B2 (ja) * | 2003-02-21 | 2009-04-02 | テレコム・イタリア・エッセ・ピー・アー | スマートカードを用いたネットワークアクセス装置の管理方法及びシステム |
US9105027B2 (en) * | 2009-05-15 | 2015-08-11 | Visa International Service Association | Verification of portable consumer device for secure services |
US10748146B2 (en) * | 2009-06-16 | 2020-08-18 | Heartland Payment Systems, Llc | Tamper-resistant secure methods, systems and apparatuses for credit and debit transactions |
US8826035B2 (en) | 2009-12-23 | 2014-09-02 | Intel Corporation | Cumulative integrity check value (ICV) processor based memory content protection |
US8863256B1 (en) * | 2011-01-14 | 2014-10-14 | Cisco Technology, Inc. | System and method for enabling secure transactions using flexible identity management in a vehicular environment |
JP5763943B2 (ja) | 2011-03-24 | 2015-08-12 | 株式会社東芝 | 情報処理装置及びプログラム |
US8443456B2 (en) * | 2011-05-20 | 2013-05-14 | Citrix Systems, Inc. | Providing multiple layers of security to file storage by an external storage provider |
US20120303310A1 (en) * | 2011-05-26 | 2012-11-29 | First Data Corporation | Systems and Methods for Providing Test Keys to Mobile Devices |
US9294564B2 (en) * | 2011-06-30 | 2016-03-22 | Amazon Technologies, Inc. | Shadowing storage gateway |
US9559845B2 (en) * | 2012-03-01 | 2017-01-31 | Ologn Technologies Ag | Systems, methods and apparatuses for the secure transmission of media content |
US8826432B2 (en) * | 2012-12-06 | 2014-09-02 | Airwatch, Llc | Systems and methods for controlling email access |
US9425963B2 (en) | 2014-03-21 | 2016-08-23 | GM Global Technology Operations LLC | Securing electronic control units using message authentication codes |
US9767627B2 (en) * | 2014-07-11 | 2017-09-19 | Entrust, Inc. | Method and apparatus for providing vehicle security |
US9380044B2 (en) * | 2014-09-10 | 2016-06-28 | Cisco Technology, Inc. | Supporting differentiated secure communications among heterogeneous electronic devices |
CN105794146A (zh) * | 2014-11-13 | 2016-07-20 | 松下电器(美国)知识产权公司 | 密钥管理方法、车载网络系统以及密钥管理装置 |
DE102015209116A1 (de) * | 2015-05-19 | 2016-11-24 | Robert Bosch Gmbh | Verfahren und Aktualisierungsgateway zum Aktualisieren eines eingebetteten Steuergerätes |
WO2017015153A1 (en) | 2015-07-17 | 2017-01-26 | Robert Bosch Gmbh | Method and system for secure key generation over an insecure shared communication medium |
WO2017051170A1 (en) * | 2015-09-22 | 2017-03-30 | Bae Systems Plc | Cryptographic key distribution |
JP6217728B2 (ja) * | 2015-10-19 | 2017-10-25 | トヨタ自動車株式会社 | 車両システムおよび認証方法 |
WO2017083980A1 (en) * | 2015-11-20 | 2017-05-26 | Genetec Inc. | Secure layered encryption of data streams |
US9660970B1 (en) * | 2015-12-03 | 2017-05-23 | Amazon Technologies, Inc. | Cryptographic key distribution |
US9705859B2 (en) * | 2015-12-11 | 2017-07-11 | Amazon Technologies, Inc. | Key exchange through partially trusted third party |
WO2017147207A1 (en) * | 2016-02-22 | 2017-08-31 | Continental Automotive Systems, Inc. | Method to establish and update keys for secure in-vehicle network communication |
US10880281B2 (en) * | 2016-02-26 | 2020-12-29 | Fornetix Llc | Structure of policies for evaluating key attributes of encryption keys |
KR101831134B1 (ko) * | 2016-05-17 | 2018-02-26 | 현대자동차주식회사 | 암호화를 적용한 제어기 보안 방법 및 그 장치 |
KR101838511B1 (ko) * | 2016-05-17 | 2018-03-14 | 현대자동차주식회사 | 암호화를 적용한 제어기 보안 방법 및 그 장치 |
US11146401B2 (en) * | 2016-08-10 | 2021-10-12 | Ford Global Technologies, Llc | Software authentication before software update |
JP2018042203A (ja) * | 2016-09-09 | 2018-03-15 | 株式会社東芝 | 情報処理装置、サーバ装置、情報処理システム、移動体、および情報処理方法 |
US10560263B2 (en) | 2017-03-24 | 2020-02-11 | Micron Technology, Inc. | Secure memory arrangements |
-
2017
- 2017-08-31 US US15/692,802 patent/US10560263B2/en active Active
-
2018
- 2018-03-23 WO PCT/US2018/024084 patent/WO2018175925A1/en active Application Filing
- 2018-03-23 KR KR1020197031517A patent/KR102390810B1/ko active IP Right Grant
- 2018-03-23 CN CN201880028961.XA patent/CN110612699B/zh active Active
- 2018-03-23 JP JP2019552568A patent/JP7080897B2/ja active Active
- 2018-03-23 CN CN202210915018.9A patent/CN115495395A/zh not_active Withdrawn
- 2018-03-23 EP EP18770265.9A patent/EP3602953A4/en not_active Withdrawn
-
2020
- 2020-01-21 US US16/748,244 patent/US11611433B2/en active Active
-
2022
- 2022-02-04 JP JP2022016236A patent/JP2022062190A/ja not_active Ceased
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090172401A1 (en) * | 2007-11-01 | 2009-07-02 | Infineon Technologies North America Corp. | Method and system for controlling a device |
US20160344715A1 (en) * | 2015-05-18 | 2016-11-24 | 128 Technology, Inc. | Network Device and Method for Processing a Session Using a Packet Signature |
Also Published As
Publication number | Publication date |
---|---|
JP7080897B2 (ja) | 2022-06-06 |
CN110612699B (zh) | 2022-08-19 |
KR102390810B1 (ko) | 2022-04-26 |
US20180278413A1 (en) | 2018-09-27 |
EP3602953A4 (en) | 2020-12-09 |
CN110612699A (zh) | 2019-12-24 |
CN115495395A (zh) | 2022-12-20 |
US10560263B2 (en) | 2020-02-11 |
EP3602953A1 (en) | 2020-02-05 |
WO2018175925A1 (en) | 2018-09-27 |
KR20190133208A (ko) | 2019-12-02 |
JP2020512763A (ja) | 2020-04-23 |
US11611433B2 (en) | 2023-03-21 |
US20200235916A1 (en) | 2020-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7080897B2 (ja) | セキュアメモリ装置 | |
RU2693313C2 (ru) | Безопасный транспорт зашифрованных виртуальных машин с непрерывным доступом владельца | |
JP6165883B2 (ja) | 安全な仮想マシン移行 | |
CN106063183B (zh) | 用于云辅助密码学的方法和装置 | |
JP5940159B2 (ja) | 非トラステッド・ユーザ端末にオペレーティング・システム・イメージをプロビジョニングするための方法、コンピュータ・プログラム、デバイス、装置 | |
US11251942B2 (en) | Secure communication channel between encryption/decryption component and trusted execution environment | |
US10193690B1 (en) | Systems and methods to secure data using computer system attributes | |
EP3207488B1 (en) | Identifying security boundaries on computing devices | |
US20150244717A1 (en) | Trusted virtual computing system | |
US10229272B2 (en) | Identifying security boundaries on computing devices | |
CN112953855A (zh) | 将消息广播给加速器的系统和方法 | |
CN112948139B (zh) | 使用交换机向加速器安全地广播消息的系统和方法 | |
US20170099267A1 (en) | Systems and methods for pkcs #8 private file key support | |
EP3736718B1 (en) | A tpm-based secure multiparty computing system using a non-bypassable gateway | |
US11019033B1 (en) | Trust domain secure enclaves in cloud infrastructure | |
JP2022099256A (ja) | 信頼された実行環境のためのスケーラブルな証明 | |
JP6939313B2 (ja) | 分散認証システム | |
KR20230088877A (ko) | 데이터 처리 가속기에 사용되는, 난독화 유닛에 의해 난독화 를 진행하는 데이터 전송 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220304 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220304 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20230131 |
|
A045 | Written measure of dismissal of application [lapsed due to lack of payment] |
Free format text: JAPANESE INTERMEDIATE CODE: A045 Effective date: 20230530 |