JP7397859B2 - 低電力モードにおけるIoTデバイスのメモリに格納されるデータの保護 - Google Patents

低電力モードにおけるIoTデバイスのメモリに格納されるデータの保護 Download PDF

Info

Publication number
JP7397859B2
JP7397859B2 JP2021513807A JP2021513807A JP7397859B2 JP 7397859 B2 JP7397859 B2 JP 7397859B2 JP 2021513807 A JP2021513807 A JP 2021513807A JP 2021513807 A JP2021513807 A JP 2021513807A JP 7397859 B2 JP7397859 B2 JP 7397859B2
Authority
JP
Japan
Prior art keywords
secure
low power
power mode
memory
stamp
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021513807A
Other languages
English (en)
Other versions
JP2021536712A (ja
Inventor
ユナセク,ディディエ
マチェティ,マルコ
ペリーヌ,ジェローム
Original Assignee
ナグラビジョン エス アー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ナグラビジョン エス アー filed Critical ナグラビジョン エス アー
Publication of JP2021536712A publication Critical patent/JP2021536712A/ja
Application granted granted Critical
Publication of JP7397859B2 publication Critical patent/JP7397859B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting 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/72Protecting 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 in cryptographic circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/81Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer by operating on the power supply, e.g. enabling or disabling power-on, sleep or resume operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2143Clearing memory, e.g. to prevent the data from being stolen
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2151Time stamp

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Description

[0001]本発明は、一般に、デバイスのメモリに格納されるデータの保護に関する。より具体的には、本発明は、低電力モードに移行可能なIoT(Internet of Things:モノのインターネット)デバイス、並びに低電力モード中及びその前後におけるIoTデバイスのメモリに格納されるデータの保護に関する。
[0002]IoTとは、物理的なデバイス、家電製品、又は電子機器やソフトウェアに組み込まれたアイテムなどのネットワークであり、これらのオブジェクトが人間の相互作用なしにデータを交換することを可能にするものである。勧告(Recommendation)ITU-T Y.2060では、IoTを情報社会のグローバルなインフラストラクチャとして定義しており、既存の相互運用可能な情報通信技術に基づいて、(物理的及び仮想的な)モノを相互接続することで高度なサービスを可能にしている。IoTという用語における「モノ」とは、物理的な世界(物理的なモノ)や情報の世界(仮想的なモノ)のオブジェクトであって、通信ネットワークにおいて認識され統合することが可能なものとされている。この定義では、物理的なモノは物理的世界に存在し、感知、作動、及び接続が可能なものである。物理的なモノの例としては、周辺環境、産業用ロボット、物品、電気機器などが挙げられる。またこの定義では、仮想的なモノは情報の世界に存在し、保存、処理、及びアクセスが可能なものである。仮想的なモノの例としては、マルチメディアコンテンツやアプリケーションソフトウェアなどが挙げられる。
[0003]ITU-T Y.2060では、IoTデバイスは、通信の必須能力と、感知、作動、データキャプチャ、データ保存、及び/又はデータ処理のオプション能力を備えた装置の一部とみなされる。IoTデバイスは、たとえばゲートウェイを介して通信ネットワークを使用して通信したり、ゲートウェイなしで通信ネットワークを使用して通信したり、通信ネットワークを使用せずに直接通信したりなど、一般に他のデバイスとの通信を行う。また、通信シナリオの組み合わせも可能であり、例えば、デバイスは、ローカルネットワーク(たとえばアドホックネットワークのような、デバイス間及びデバイスとゲートウェイ間のローカル接続性を提供するネットワーク)による直接通信、及びローカルネットワークゲートウェイを介した通信ネットワークによる通信を用いて、他のデバイスとの通信を行うことができる。
[0004]通信ネットワークは、IoTデバイスによって取り入れられたデータをアプリケーション及び他のデバイスに転送したり、アプリケーションからデバイスへ命令を転送することもできる。通信ネットワークは、一般に、信頼性が高く効率的なデータ転送のための機能を提供する。IoTネットワークインフラストラクチャは、従来のTCP/IPベースのネットワークなどの既存のネットワーク、及び/又は次世代ネットワーク(NGN)などの進化するネットワークを介して実現することができる。
[0005]IoTデバイスは、集積回路の周辺に、例えばシステムオンチップ(SoC)の形態で構築することができる。そのようなSoCは、セキュアな方法でデータを格納できるセキュアメモリを含むセキュア部を備えており、一般にセキュア部にのみアクセス可能であるか、又はセキュリティプロトコルによってアクセス可能なものである。
[0006]電力使用量を節約するために、IoTデバイスは、使用していないときは低電力モードに移行することができる。低電力モードでは、低電力モードを終了するために必要な部分、又は低電力モードを終了するためのトリガを受信するために必要な部分を除いて、IoTデバイスの大部分をオフ状態にできる。一般に、IoTデバイスが低電力モードに移行すると、セキュアメモリなどのSoCのセキュア部が無効化され、たとえばランダム暗号鍵のような、セキュアメモリに格納されたデータの暗号化及び保護のために使用される生成鍵は、一般的には失われる。その結果、低電力モードでは、セキュアメモリに格納されたデータをセキュアな方法で保護することは困難である。
[0007]セキュアメモリは、不揮発性メモリに格納されたグローバル鍵を使用して保護することができ、それは低電力モード中や低電力モード終了後でも有効である。このようなグローバル鍵を使用することの問題点は、セキュアメモリの以前のコンテンツ、即ち、低電力モードに移行する前にセキュアメモリに格納されたデータがリロードされる可能性があることである。このように、グローバル鍵を使用すると、アンチリプレイ対策が有効でない状況になる場合がある。
[0008]更に、IoTデバイスのセキュア部は、そのセキュリティが完全に初期化される前であってもコマンドを実行できる場合がある。これにより、IoTデバイスのセキュリティが確保されないような、潜在的に非セキュアな状況になる可能性がある。
[0009]また、セキュアで正確なクロックを確保することも難しい。IoTデバイスが低電力モードに移行すると、一般にクロックが損失するか、あるいはIoTデバイスが、クロックがセキュアでないSoC以外のコンポーネントに頼るようになる。
[0010]本発明は前記のような従来技術の問題点を解決するものである。
[0011]本発明の一態様によれば、低電力モード時にチップセットのセキュア部の第1のメモリのメモリコンテンツを保護する方法が提案される。低電力モードは、第1のメモリからメモリコンテンツが消去される原因となる。低電力モードへの移行時に、暗号化されたメモリコンテンツを得るために、メモリコンテンツの少なくとも一部を暗号化する-任意に署名する-。暗号化されたメモリコンテンツは、低電力モード中は、セキュア部の外側の外部メモリに格納される。
[0012]このようにして、低電力モード中でも、第1のメモリのメモリコンテンツを保護することができる。更に、メモリコンテンツは暗号化されているため、悪意のある使用や不正使用からメモリコンテンツを防御することができる。
[0013]一実施形態では、低電力モードを終了する際に、外部メモリからの暗号化されたメモリコンテンツをセキュア部で受信することができる。暗号化されたメモリコンテンツは復号化でき、またオプションで認証することができるので、復号化されたメモリコンテンツを得ることができる。復号化されたメモリコンテンツは第1のメモリにロードできる。
[0014]このようにして、第1のメモリのメモリコンテンツをセキュアな方法で第1のメモリにロードして戻し、以後再度使用することができる。
[0015]一実施形態では、チップセットは、セキュア部とリモートクライアントアクセスサーバとの間にセキュアリンクを設定するように構成することができる。更に、セキュア部は、セキュアリンクを介してセキュア部内のクライアントアクセスサーバからセキュアスタンプを受信するように構成することができる。ここで、セキュアスタンプはメモリコンテンツを保護するためのデータを含んでも良い。更に、セキュア部は、セキュアスタンプをセキュア部の第2のメモリに格納するように構成することができるため、セキュアスタンプは、低電力モードで第2のメモリに格納された状態にすることができる。セキュア部は、低電力モードに移行するときに、セキュアスタンプを用いてコンテンツの少なくとも一部を暗号化するように構成することができる。更に、低電力モードを終了するときに、セキュア部は、セキュアスタンプを使用して暗号化されたメモリコンテンツを復号化するように構成することができる。
[0016]このようにして、セキュアスタンプは、クライアントアクセスサーバからセキュアリンクを介して受信されるため、悪意のある使用や不正使用から保護される。また、攻撃者による改ざんも防止できる。更に、セキュリティ機能を実行するために、セキュアスタンプは低電力モード時にはセキュア部によって保持され、低電力モードの前後に使用可能である。また、セキュアスタンプは、メモリコンテンツを暗号化又は復号化するために使用される。
[0017]一実施形態では、チップセットは、暗号化されたメモリコンテンツが復号化されるときに第2のメモリからセキュアスタンプを除去するように構成される。
[0018]一実施形態では、チップセットは、セキュアスタンプがセキュアリンクを介して受信されるまでは機能が制限される。
[0019]このようにして、クライアントアクセスサーバへの接続は、セキュアエンクレーブ(secure enclave)でコマンドを実行する前に強制的に行われる。これによりセキュリティ機能を最適な方法で適用することができる。
[0020]一実施形態では、クライアントアクセスサーバとセキュア部との間のセキュアリンクの設定後に受信した新たなセキュアスタンプは、以前のセキュアスタンプとは異なるものになる。
[0021]このようにして、メモリコンテンツに対するアンチリプレイアタックを有効にできる。
[0022]一実施形態では、クライアントアクセスサーバとセキュア部との間のセキュアリンクは、ディフィーヘルマン(Diffie-Hellman)鍵交換プロトコルを使用して設定することができる。
[0023]このようにして、クライアントアクセスサーバとセキュア部との間でセキュアな方法でデータを交換できるセキュアリンクが得られる。それにより、クライアントアクセスサーバは正規のチップと接続していることを認識し、セキュア部は正規のクライアントアクセスサーバと接続していることを認識する。
[0024]一実施形態では、セキュアスタンプはタイムスタンプを含む。
[0025]このようにして、チップセットに正確なクロックを供給できる。
[0026]一実施形態では、セキュア部は、セキュアスタンプを暗号化アルゴリズムへの初期化ベクトルとして使用して、暗号化アルゴリズムに基づいて第1のメモリのメモリコンテンツを暗号化できる。
[0027]このようにして、メモリコンテンツに対するアンチリプレイアタックを有効にできる。
[0028]一実施形態では、セキュア部はチップセットのトラスト実行環境の一部とすることができる。
[0029]一実施形態では、トラスト実行環境は、低電力モード移行時に、暗号化されたメモリコンテンツの外部メモリへの格納を制御し、低電力モード終了時に、暗号化されたメモリコンテンツのセキュア部へのロードを制御できる。
[0030]一実施形態では、セキュア部はランダムキーを生成することができる。更に、低電力モード移行時に、トラスト実行環境は、暗号鍵としてのランダムキーと、初期化ベクトルとしてのセキュアスタンプとを使用して、トラスト実行環境で実行するコンピュータコードを暗号化することにより、暗号化されたコンピュータコードを得ることができる。更に、低電力モード終了時に、トラスト実行環境は、暗号鍵としてのランダムキーと、初期化ベクトルとしてのセキュアスタンプとを使用して、暗号化されたコンピュータコードを復号化することができる。
[0031]このようにして、トラスト実行環境で実行するコンピュータコードを低電力モード中にセキュアな方法で保持することができる。更に、コンピュータコードにおけるアンチリプレイメモリ攻撃を有効にできる。
[0032]一実施形態では、ランダムキーは第2のメモリに格納されてもよい。
[0033]このようにして、コンピュータコードを復号するために、ランダムキーを低電力モード中は保持し、低電力モード後に使用するようにできる。
[0034]一実施形態では、更なるセキュアリンクが、トラスト実行環境にセキュア部を通信可能に接続する。更なるセキュアリンクは、更なるセキュアリンクを暗号化して保護するためのランダム共有鍵を使用することができる。
[0035]このようにして、更なるセキュアリンクを用いて、トラスト実行環境とセキュア部との間でデータをセキュアな方法で転送することができる。
[0036]一実施形態では、ランダム共有鍵はランダムキーをセキュアスタンプに結合する。
[0037]このようにして、ランダムキーとセキュアスタンプを一度の操作で暗号化することができる。
[0038]一実施形態では、新しいランダム共有鍵を使用して、更なるセキュアリンクを低電力モード終了毎に再初期化する。
[0039]このようにして、アンチリプレイアタックを有効にできる。
[0040]一実施形態では、別のセキュアリンクをキープロット(KeyProt)プロトコルを使用して設定することができる。
[0041]本発明の別の態様によれば、前記実施形態のいずれか1つに記載の方法のステップを実行するように構成されたプロセッサを備えたデバイスが提案される。
[0042]本発明の別の態様によれば、前記実施形態のいずれか1つに記載の方法のステップを実行するように構成された集積回路を備えたデバイスが提案される。
[0043]一実施形態では、デバイスはIoT(モノのインターネット)デバイスである。
[0044]本発明の別の態様によれば、コンピュータ読み取り可能な非一時的記憶媒体上に実装できるコンピュータプログラム製品が提案される。コンピュータプログラム製品はコンピュータ実行可能命令を備えており、命令がプロセッサによって実行されると、プロセッサは前記実施形態のいずれかに記載の方法のステップを実行することができる。
[0045]本発明の別の態様によれば、コンピュータ読み取り可能な非一時的記憶媒体が提案される。記憶媒体はコンピュータ実行可能命令を備えており、命令がプロセッサによって実行されると、プロセッサは前記実施形態のいずれか1つに記載の方法のステップを実行することができる。
[0046]以下、実施形態を更に詳細に説明する。しかしながら、これらの実施形態は本発明の保護範囲を限定するものではない。
[0047]本実施形態は添付の概略図を参照して例示的にのみ記載される。図において対応する参照記号は対応する部分を示す。
[0048]ネットワークを介してサーバに接続されたデバイスの例示的な実施形態を示す。 [0049]ネットワークを介してサーバに接続されたデバイスの別の例示的な実施形態を示す。 [0050]ディフィーヘルマン(Diffie-Hellman)プロトコルを実行する概略図である。 [0051]TEEを使用したディフィーヘルマン(Diffie-Hellman)プロトコルを実行する概略図である。 [0052]図2の実施形態のデータフローを更に詳細に示すものである。 [0053]セキュアエンクレーブ初期化プロトコルの概略図である。 [0054]デバイスが低電力モードに移行するときのプロトコルの概略図である。 [0055]デバイスが低電力モードを終了するときのプロトコルの概略図である。
[0056]これらの図は例示のためのものであり、特許請求の範囲に記載されている適用範囲や保護範囲を限定するものではない。
[0057]
以下の例においてクライアントデバイスについて記載されているが、本発明はクライアントデバイスへの適用に限定するものではない。
[0058]図1は、ネットワークを介してサーバに通信可能に接続されるIoTデバイスなどのデバイス1の例示的な実施形態を示す。デバイスは、一般にSoC上で最もセキュアなハードウェアブロックであるセキュア部(セキュアエンクレーブ2とも呼ばれる)を有する。セキュアエンクレーブは、一般に例えばSoC上のトラスト実行環境(TEE)よりもセキュアであり、またセキュアエンクレーブはTEEの一部であってもよい。セキュアエンクレーブ2は、完全にセキュアであるための独自の独立セキュアブートプロセスを備えており、
特定のセキュア機能を実行することができる。
[0059]セキュアエンクレーブ2は、セキュアエンクレーブ2のデータ及びコードを格納するための内蔵RAMなどのメモリブロック7を含む。このメモリブロック7は、好ましくはセキュアエンクレーブ2によってのみアクセス可能である。通常メモリブロック7は揮発性メモリの一種であるため、デバイスが低電力モードに移行すると、メモリブロック7に格納されたデータは失われる可能性がある。
[0060]セキュアエンクレーブ2は、デバイスが低電力モードに移行した場合でもデータを格納することができる1つ以上の常時オンレジスタ5を含む。たとえば、この常時オンレジスタ5は、セキュアエンクレーブ2が低電力モードを終了した直後に必要となるデータを格納できる。常時オンレジスタ5はセキュアクロック3及び鍵テーブル4を有する。セキュアクロック3及び鍵テーブル4は常時オンレジスタ5とは別に配置されていてもよい。
[0061]セキュアエンクレーブ2は、外部メモリ20にデータを送信し、外部メモリ20からデータを受信する。外部メモリ20は、好ましくはデバイス1の一部であるが、代替的にデバイス1の外部にあってもよい。外部メモリ20は、デバイス1が低電力モードに移行するときに格納されたデータを保持するように構成されている。好ましくは、外部メモリ20が不揮発性メモリであると、外部メモリ20がデバイス1と共に低電力モードに移行することができる。あるいは、外部メモリ20は揮発性メモリであってもよく、その場合は、デバイス1が低電力モードに移行しても、外部メモリ20のコンテンツを保持するために、外部メモリ20は低電力モードには移行しない。
[0062]セキュアエンクレーブ2は暗号化プロセッサ6を含む。暗号化プロセッサ6は、セキュアエンクレーブ2のメモリブロック7のコード及びデータを暗号化(及び任意に署名)又は復号化(及び任意に認証)するために使用される。暗号化プロセッサ6は、暗号化機能を実行するように構成されており、入力として暗号鍵、及び暗号化機能に応じて初期化ベクトル(IV)を使用できる。
[0063]デバイスは、ネットワーク10を介して外部のクライアントアクセスサーバ11と通信可能に構成される。クライアントアクセスサーバ11は、デバイス1を含む複数のクライアントと通信可能に接続されたサーバであってもよい。デバイス1がオーディオ、ビデオ、又は他のメディア関連デバイスである場合、ネットワーク10は、オーバー・ザ・トップ(OTT)ネットワーク、デジタルビデオ放送(DVB)ネットワーク、又は他のメディア関連ネットワークであってもよい。デバイス1はIoTデバイスであってもよく、その場合、ネットワーク10は、追加的に又は代替的に、IoTネットワークの特徴を含むものであるか、又はIoTネットワークそのものである。
[0064]実施形態では、デバイスのブート時に、セキュアエンクレーブ2は常時オンレジスタ5をリセットする。次に、セキュアエンクレーブ2はクライアントアクセスサーバ11とのセキュアリンクを初期化する。このようにして、セキュアエンクレーブ2とクライアントアクセスサーバ11の両方が、セキュアリンクを介する正式な送信者と受信者間の確実なデータ通信を可能にする。クライアントアクセスサーバ11とセキュアエンクレーブ2間のこのようなセキュアリンクの実施例は、Diffie-Helman鍵交換プロトコルに基づくものである。本発明の主旨におけるDiffie-Hellman鍵交換プロトコルを使用する実施形態を、図3を用いてより詳細に説明する。
[0065]図3は、Diffie-Helman鍵交換プロトコルの一実施例の概略図である。セキュアエンクレーブ2が例えば初期化するように指示されると、セキュアエンクレーブは、鍵の秘密部分(秘密デバイス鍵)と鍵の公開部分(公開デバイス鍵)からなるランダムキーペアを生成51する。これは通常、ランダムな鍵ペアである。秘密デバイス鍵は、ノンス(暗号化の目的で一度だけ使用される数又はビット文字列)であってもよい。公開デバイス鍵は秘密デバイス鍵に基づいて算定される。
[0066]セキュアエンクレーブ2は公開デバイス鍵をクライアントアクセスサーバ11に送信41する。この送信は、直接行ってもよいし、デバイス1の非セキュアな別の部分を経由して行ってもよい。また、セキュアエンクレーブ2は、その固有ID又は装置1の固有IDをクライアントアクセスサーバ11に送信する。また、セキュアエンクレーブ2は、それが認証されたデバイスであることを証明するためのセキュアエンクレーブ証明書を送信する。クライアントアクセスサーバ11は、クライアントアクセスサーバ11とのセキュアリンクの確立を試みるセキュアエンクレーブ2のアイデンティティを確認するために、デバイス1又はセキュアエンクレーブ2に属する固有IDを確認し、また、その固有IDが実際に製造されたチップに属するものであることを確認できる。更に、セキュアエンクレーブ2は、たとえばクライアントアクセスサーバとデバイスの両方が知っている公開鍵基盤(PKI)に基づいて、送信41に署名する。デバイスは、その秘密PKI鍵を使用してメッセージに署名する。 これは、認証、否認不可、及び送信後にメッセージが変更されていないことを確認するために使用される。
[0067]送信41を受信すると、クライアントアクセスサーバ11は送信42のパラメータを確認する。これは、例えばセキュアエンクレーブ2から送信された署名又は固有IDを確認することである。
[0068]次に、クライアントアクセスサーバ11は、鍵の秘密部分(秘密サーバ鍵)と鍵の公開部分(公開サーバ鍵)とからなる鍵ペアを生成53する。これはランダムキーペアである。また、秘密サーバ鍵はノンスであり、公開サーバ鍵は秘密サーバ鍵に基づいて算定される。
[0069]次に、クライアントアクセスサーバ11は、公開デバイス鍵と秘密サーバ鍵に基づいて、セキュアリンク鍵を算定54する。このセキュアリンク鍵は、クライアントアクセスサーバ11とセキュアエンクレーブ2との間に形成されるセキュアリンクを確保するために使用される。
[0070]クライアントアクセスサーバ11は、セキュアリンク鍵を算定すると、公開サーバ鍵をセキュアエンクレーブ2に送信42する。この送信42は、デバイス1の非セキュアな部分を介して行われてもよいし、セキュアエンクレーブ2に直接送信されてもよい。また、クライアントアクセスサーバ11は、送信42を介して送られた公開サーバ鍵が実際にクライアントアクセスサーバ11に所有されていることを証明するために使用される、サーバ証明書を送信する。更に、クライアントアクセスサーバ11は、たとえばクライアントアクセスサーバとデバイスの両方が知っている公開鍵基盤に基づいて、送信42に署名する。
[0071]送信42を受信すると、セキュアエンクレーブ2は、送信42のパラメータ(署名、サーバ証明書)を確認55し、セキュアエンクレーブ2の秘密鍵とクライアントアクセスサーバ11の公開鍵に基づいてセキュアリンク鍵を算定する。これで、セキュアエンクレーブ2とクライアントアクセスサーバ11の両方がセキュアリンク鍵に合意する。この鍵は、セキュアエンクレーブ2とクライアントアクセスサーバ11との間のセキュアリンクを介して送信されるデータの暗号化及び復号化に使用できる。
[0072]セキュアエンクレーブ2は、たとえばセキュアリンク鍵の算定時に署名されたセキュアエンクレーブ証明書を送信43することによって、セキュアエンクレーブ2がセキュアリンク鍵を算定したことを示すことができる。
[0073](送信43のパラメータの確認56後に)クライアントアクセスサーバ11とセキュアエンクレーブ2との間のセキュアリンクが確立されると、クライアントアクセスサーバ11は、(署名されている可能性のある)セキュアスタンプをセキュアエンクレーブ2に送信44する。セキュアスタンプはセキュアリンクを介して送信されるため、セキュアリンクを設定したセキュアエンクレーブ2のみがセキュアスタンプへのアクセス権を有する。これにより、セキュアスタンプが潜在的攻撃者によって捕捉されたり、変更されたりすることを確実に防止できる。セキュアスタンプは、セキュアエンクレーブ2のセキュア機能を可能にするデータを含む。それによって、特にデバイスが低電力モードに移るときの、メモリブロック7に格納されたデータの暗号化が可能になる。
[0074]セキュアスタンプは乱数を含んでもよい。代替的又は追加的に、セキュアスタンプは、日付及び/又は時間を示すタイムスタンプを含んでもよい。タイムスタンプを使用する利点は、セキュアスタンプは、ブート時及び/又は低電力モードの終了時に、デバイス1へのクロック信号としても使用できることである。たとえば、セキュアクロック3は、タイムスタンプに基づいて設定又は更新されてもよい。
[0075]クライアントアクセスサーバ11とセキュアエンクレーブ2との間のセキュアリンクが確立され、セキュアスタンプがセキュアエンクレーブ2によって受信され、送信44のパラメータが確認57されると、セキュアスタンプは一般に常時オンレジスタ5に格納58され、セキュアエンクレーブ2が初期化される。
[0076]次に、セキュアエンクレーブ2のセキュア機能を有効にできる。クライアントアクセスサーバ11とのセキュアリンクを確立してセキュアスタンプを受信した後にのみ、セキュアエンクレーブ1のセキュア機能を有効にできる。これは、セキュアスタンプはメモリブロック7のデータを暗号化するために使用されるので、セキュアエンクレーブ2のセキュア機能が有効になる前にセキュアスタンプが設定されるという利点があり、それによって例えば必要に応じてメモリブロック7のデータを確実に暗号化できる。
[0077]初期化後、セキュアエンクレーブ2は、メモリブロック7内のデータなどの自身のコンテンツを暗号化するためにセキュアエンクレーブ2によって使用されるランダムキー(KSE)を生成する。このランダムキー(KSE)は、たとえば鍵テーブル4内の常時オンレジスタ5に格納される。
[0078]低電力モードに移行すると、デバイスは、その特定部分に供給される電力量を制限する。その結果、メモリブロック7に格納されているデータが消去されてしまうことがある。メモリブロック7のデータを保存するために、メモリブロック7のメモリコンテンツは、消去される前に、セキュアな方法で外部メモリ20に格納してもよい。一般にセキュアエンクレーブ2は、クライアントアクセスサーバ11からセキュアスタンプを受信した場合にのみ、低電力モードに移行できる。
[0079]低電力モードに移行すると、セキュアエンクレーブ2は、暗号化プロセッサ6を用いてメモリブロック7のコンテンツを暗号化する。暗号化プロセッサ6によって実行される暗号化機能は、暗号鍵としてランダムキー(KSE)を使用し、IVとしてセキュアスタンプを使用して実行できる。任意で、暗号化プロセッサ6は、暗号化されたコンテンツに署名することもできる。
[0080]そして、暗号化されたコンテンツが外部メモリ20に格納31された後、セキュアエンクレーブ2は低電力モードに移行する。
[0081]セキュアエンクレーブ2が低電力モードを終了するとき、例えば、ウェイクアップデータパケットの形態でウェイクアップトリガを受信した後に、内蔵ROMコードに基づいてコンテンツを回復して自身を再初期化するためのアクションを実行する。ここで、外部メモリ20に格納されていた暗号化コンテンツをセキュアエンクレーブ2が受信した後、暗号化プロセッサ6はコンテンツを復号化する。復号化には、暗号鍵としてランダムキー(KSE)が使用でき、IVとしてセキュアスタンプを再度使用できる。それらは低電力モード時に消去されなかった常時オンレジスタ5から入手できる。暗号化プロセッサ6は、暗号化コンテンツが署名されている場合には、コンテンツを認証する。
[0082]暗号化プロセッサ6による復号が完了した後、復号化されたコンテンツはメモリブロック7に格納される。このように、低電力モード時に外部メモリ20に格納されていたメモリブロック7のメモリコンテンツを安全かつ確実に復元できる。
[0083]次に、セキュアエンクレーブ2はセキュアスタンプレジスタをフラッシュする。つまり、常時オンレジスタ5からセキュアスタンプを削除する。これにより、クライアントアクセスサーバ11とセキュアエンクレーブ2との間の新しいセキュアリンクを初期化することによりセキュアエンクレーブ2を強制的に再起動し、それにより、次の低電力モードの前に新しいセキュアスタンプを取得できる。このセキュアリンクは、前述のようにDiffie-Hellmanプロトコルを使用して再度設定してもよい。
[0084]好ましくは、新しいセキュアスタンプは、メモリコンテンツを各低電力モード毎に別に暗号化できるように、最後のセキュアスタンプとは異なるものにする。これにより、セキュアメモリに対するアンチリプレイ攻撃が効果的に可能になる。新しいセキュアスタンプが新しい最新のタイムスタンプを有する場合、それはデバイスのクロックを正しい時刻に(リ)セットするために使用される。
[0085]図2は、ネットワークを介してサーバに通信可能に接続されるIoTデバイスなどのデバイス1の別の例示的な実施形態を示す。この例示的実施形態は、前述した機能の全部又は一部を有する。この例示的実施形態では、セキュア部又はセキュアエンクレーブ2はTEE12の一部である。TEE12はデバイス1の一部であり、SoCに組み込まれてもよい。TEE12は、デバイス1のリッチ実行環境上で実行される非トラストアプリケーションと、TEE12上で実行されるトラストアプリケーションとの間のデータ分離を可能にする。TEE12は、セキュア部又はセキュアエンクレーブ2よりも非セキュアとされているが、一般により多くの機能を有する。
[0086]TEE12は、TEE12のコード又はデータを含む独自のメモリブロック17を有する。このコード又はデータは、デバイス1の低電力モード時にも保護される必要がある。メモリブロック17は内蔵RAMであってもよい。その場合、メモリブロック17は揮発性メモリの一種であるため、メモリブロック17に格納されているデータは、デバイス1が低電力モードになると失われてしまう可能性がある。あるいは、メモリブロック17は不揮発性メモリの一種であってもよい。その場合、メモリブロック17に格納されたデータは、デバイス1が低電力モードに移行しても保持される。
[0087]更に、TEE12は、デバイス1の暗号鍵を格納するメモリブロックである鍵テーブル15を有する。暗号鍵は、鍵テーブル15に格納される前に、暗号化及び署名できる。
[0088]TEE12はまた、暗号化プロセッサ16を含む。暗号化プロセッサ16は、TEE12のメモリブロック17のコード及びデータを暗号化(及び任意に署名)又は復号化(及び任意に認証)するために使用される。暗号化プロセッサ16は、暗号化機能を実行するように構成されており、入力として暗号鍵、及び暗号化機能に応じて初期化ベクトル(IV)を使用する。
[0089]セキュアエンクレーブ2の初期化は、前述の図3に示す実施形態と同様の方法で実施されてもよいし、図4に示す方法で実施されてもよい。
[0090]図4は、TEEを経由するDiffie-Hellmanプロトコルの実行の概略図を示す。ステップは前述の図3と同様である。しかし、TEEは、セキュアエンクレーブに初期化要求を送信40することにより初期化プロセスを開始する。
[0091]送信40、41、42、43、44はTEEを経由して行われてもよいし、あるいは送信40、41、42、43、44から選択したものだけがTEEを経由して行われてもよい。残りの手順は図3の実施形態と同じであり、繰り返しの説明を行わない。プロトコルの最後においてセキュアエンクレーブ2は初期化される。
[0092]セキュアエンクレーブ2の初期化後、セキュアエンクレーブ2は、メモリブロック17のデータなどの、それ自身のコンテンツを暗号化するためにTEE12により使用できるランダムキー(KTEE)を生成する。このランダムキー(KTEE)は、セキュアエンクレーブ2の常時オンレジスタ5に格納でき、たとえば鍵テーブル4に格納されてもよい。ランダムキーKTEEは、セキュアエンクレーブ2がランダムキーKSEを生成するのと同じタイミングで生成されてもよいし、また別のタイミングで生成されてもよい。
[0093]本実施形態におけるTEE12及びセキュアエンクレーブ2はそれぞれ、キープロット(KeyProt)ブロック(9及び8)を有する。これらのブロックは、TEE12アクセスからセキュアエンクレーブ鍵(たとえば鍵KTEE)を保護し、あるいはREE(リッチ実行環境)のようなデバイス1の一般に非セキュアな他の部分を保護するために使用される。
[0094]キープロット(KeyProt)ブロック8,9は、キープロット(KeyProt)メカニズムを有効にするために使用される。このキープロット(KeyProt)メカニズムは、例えば国際特許出願公開WO 2015/007549 Alに記載されており、以下詳細に説明する。
[0095]セキュアエンクレーブ2の初期化の際、キープロット(KeyProt)ブロック8,9も初期化される。2つのブロック8,9は、2つのキープロット(KeyProt)ブロック8,9間で共有されるランダム共有鍵KPを生成することができる。このようにしてセキュアリンクが形成され、データはこのランダム共有鍵KPを用いて暗号化及び復号化される。
[0096]キープロット(KeyProt)メカニズムを使用することの効果は、キープロット(KeyProt)メカニズムによって形成されたセキュアリンク上で転送されるデータが完全にセキュアであることであり、従って、セキュアエンクレーブ2からTEE12へ非保護の状態でデータが転送されることはない。
[0097]キープロット(KeyProt)メカニズムは、セキュアエンクレーブ2とTEE12間の可能なセキュアリンクの一例である。セキュアエンクレーブ2とTEE12間のセキュアリンクを形成するための他の任意の方法が適用されてもよい。更には、セキュアでないリンクが形成されてもよい。
[0098]低電力モードに移行すると、セキュアエンクレーブ2は、ランダム共有鍵KPを使用してランダムキーKTEEを暗号化する。更に、セキュアエンクレーブ2は、ランダムキーKTEEにセキュアスタンプを転送する。ランダムキーKTEEに転送されると、セキュアスタンプは、暗号化されないまま保持されるか、あるいはランダム共有鍵KPを用いて暗号化される。好ましくは、ランダムキーKTEEとセキュアスタンプは、ランダム共有鍵KPを使用して一回の操作で暗号化される。
[0099]TEE12は、受信した暗号化KTEE及びセキュアスタンプを、暗号化又は復号化した状態で鍵テーブル15に格納する。TEE12は、暗号化プロセッサ16を用いて、復号化したランダムキーKTEE及びセキュアスタンプを使用して、そのコード及びデータを保護できる。暗号化プロセッサ16によって実行される暗号化機能は、暗号鍵としてのランダムキーKTEE及びIVとしてのセキュアスタンプを使用して実行される。任意に、暗号化プロセッサ16は暗号化コンテンツに署名してもよい。
[00100]暗号化コンテンツが任意に外部メモリ20に格納32された後で、TEE12は低電力モードに移行する。
[00101]デバイス1が低電力モードを終了するとき、セキュアエンクレーブは、たとえばウェイクアップデータパケットの形でウェイクアップトリガを受信した後、TEE12によってウェイクアップ(起動)され、そのROMコードに基づいて、キープロット(KeyProt)メカニズムを有効にするためにキープロット(KeyProt)ブロック8,9を初期化する。このようにして、新ランダム共有鍵KPが生成され、セキュアエンクレーブ2とTEE12により再度共有される。前述と同様にして、セキュアエンクレーブは、新ランダム共有鍵KPを用いて、常時オンレジスタに格納されたKTEEとセキュアスタンプを暗号化して結合する。この新たに暗号化したKTEEとセキュアスタンプは、TEEによって鍵テーブル15に格納される。
[00102]暗号化したコンテンツが外部メモリ20に格納されているならば、それはTEE12によって受信32できる。暗号化したコンテンツがTEE12で利用可能である場合、暗号化プロセッサ16はコンテンツを復号化する。復号化には、再度ランダムキー(KTEE)が暗号鍵として使用され、セキュアスタンプがIVとして使用される。それらは鍵テーブル15から入手可能である。暗号化プロセッサ16は、暗号化したコンテンツが署名されている場合、コンテンツの認証を行う。
[00103]暗号化プロセッサ16による復号化が完了した後、復号化したコンテンツがメモリブロック17に格納される。このようにして、低電力モード時に外部メモリ20に格納されていたメモリブロック17のメモリコンテンツを安全かつ確実に復元できる。
[00104]図5は、図2の実施形態のデータフローの例をより詳細に示すものである。データフローパスは更に多く設けてもよい。
[00105]セキュアエンクレーブ2のメモリブロック7と暗号化プロセッサ6は互いにデータを送信する。また、TEE12のメモリブロック17と暗号化プロセッサ16も同様である。常時オンレジスタ5の鍵テーブル4は、キープロット(KeyProt)ブロック8と暗号化プロセッサ6にデータを送信する。キープロット(KeyProt)メカニズムにおいて、例えばキープロット(KeyProt)ブロック8,9間の通信時に、セキュアクロック3からの入力を用いてもよいし、セキュアクロック3に対して出力を生成してもよい。キープロット(KeyProt)ブロック8は鍵テーブル15と通信する。鍵テーブル15はキープロット(KeyProt)ブロック9と通信する。キープロット(KeyProt)ブロック9は暗号化プロセッサ16と通信する。
[00106]クライアントアクセスサーバ11とデバイス1間で共有されるデータは、クライアントアクセスサーバ証明書100、セキュアスタンプ101、及びセキュアエンクレーブ証明書102を備える。クライアントアクセスサーバ証明書100及びセキュアエンクレーブ証明書102は、セキュアエンクレーブ2とクライアントアクセスサーバ11間にセキュアリンクがない状態で送信できる。
[00107]図6は、セキュアなエンクレーブ初期化プロトコルの概略図である。
[00108]ステップ60において、セキュアエンクレーブ2はリセット又は初期化するように指示される。ステップ61において、セキュアエンクレーブ2は常時オンレジスタをリセット又は初期化する。ステップ62において、セキュアエンクレーブ2はキープロット(KeyProt)ブロック8,9のランダム共有鍵KPをリセット又は初期化する。
[00109]ステップ63において、セキュアエンクレーブ2とクライアントアクセスサーバ11間のセキュアリンクが初期化される。セキュアリンクが設定された後、クライアントアクセスサーバ11からセキュアエンクレーブ2にセキュアスタンプが供給される。ステップ64において、セキュアエンクレーブ2は、ステップ63が問題なく実行されたか否かを確認する。問題がある場合、ステップ63を再度実行する。問題がない場合、セキュアエンクレーブ2は、ステップ65でセキュアスタンプを常時オンレジスタ5に格納する処理を継続する。
[00110]ステップ66において、セキュアエンクレーブ2はセキュアスタンプを継続的に更新する。更新は固定間隔又は変動間隔で行われてもよいし、又は指示があったときに行われてもよい。
[00111]ステップ67において、セキュアエンクレーブ2はランダムキー(KSE、KTEE)を生成し、それを常時オンレジスタ5に格納する。それが完了すると、ステップ68において、セキュアエンクレーブ2における初期化プロトコルの終了となる。
[00112]図7は、デバイスが低電力モードに移行するときのプロトコルの概略図である。
[00113]ステップ70において、セキュアエンクレーブ2は低電力モードに移行するように指示される。ステップ71において、セキュアクロック値がチェックされる。セキュアクロック値が特定の値(たとえばゼロ)でない場合、セキュアエンクレーブ2はステップ72に進む。セキュアクロック値が特定の値(たとえばゼロ)である場合、セキュアエンクレーブはステップ74(以下参照)に進む。
[00114]ステップ72において、セキュアエンクレーブは、その内蔵メモリをランダムキーKSEで暗号化し、場合により署名して、それを外部メモリ20に格納する。次に、ステップ73において、セキュアエンクレーブは、ランダムキーKTEEをキープロット(KeyProt)メカニズムで暗号化し、それをTEE鍵テーブル15に格納する。このKTEEは、TEE12のコンピュータコードを暗号化するために使用される。
[00115]次に、ステップ74において、セキュアエンクレーブ2は低電力モードに移行し、低電力モードを終了するプロンプトを待つ。
[00116]図8は、デバイスが低電力モードを終了するプロトコルの概略図である。
[00117]ステップ80において、セキュアエンクレーブ2は低電力モードを終了するように指示される。ステップ81において、セキュアエンクレーブは、キープロット(KeyProt)メカニズムのランダム共有鍵KPをリセット又は初期化する。そして、セキュアエンクレーブ2は、キープロット(KeyProt)で暗号化されたKTEEを出力し、またセキュアスタンプも出力する。このKTEE及びセキュアスタンプは、TEE12のコンピュータコードを復号化するために使用される。
[00118]次に、ステップ82において、セキュアエンクレーブ2は、KSEと初期化ベクトルとしてのセキュアスタンプを用いて、外部メモリ20を復号化し、場合により認証を行い、それをメモリブロック7に格納する。
[00119]次に、ステップ83において、セキュアエンクレーブ2は常時オンレジスタ5のセキュアスタンプレジスタをフラッシュする。
[00120]最後にステップAから、セキュアエンクレーブ2はステップ63から始まる初期化プロトコルに進む。
[00121]一つ以上の実施形態は、コンピュータシステムで使用するためのコンピュータプログラム製品として実現されてもよい。プログラム製品のプログラムは、(本明細書に記載された方法を含む)実施形態の機能を定義してもよく、様々なコンピュータ読み取り可能な記憶媒体に含まれていてもよい。コンピュータ読み取り可能な記憶媒体は非一時的記憶媒体であってもよい。例示的なコンピュータ読み取り可能な記憶媒体は、以下のものを含むが、それらに限定されない。
(i)情報が永久的に保存される、非書き込み可能な記憶媒体(たとえば、CD-ROMドライブによって読み取り可能なCD-ROMディスク、ROMチップ、又は任意のタイプのソリッドステート不揮発性半導体メモリなどの、コンピュータ内の読み取り専用記憶装置)、及び
(ii)変更可能な情報が保存される、書き込み可能な記憶媒体、たとえば、ハードディスクドライブ、又は任意のタイプのソリッドステートランダムアクセス半導体メモリ、フラッシュメモリ。
[00122]上記実施形態の2つ以上を適切な方法で組み合わせることも可能である。

Claims (17)

  1. チップセット(1)のセキュア部(2)の第1のメモリ(7)のデータを低電力モード中に保護する方法であって
    低電力モード移行時に、暗号化されたデータを得るために、データの少なくとも一部を暗号化して署名し、
    低電力モード中は、セキュア部(2)の外部にある外部メモリ(20)に暗号化されたデータを格納することを含み、前記低電力モードは前記第1のメモリ(7)からデータが消去される原因となる方法。
  2. 低電力モード終了時に、暗号化されたデータを外部メモリ(20)からセキュア部(2)に受信し、
    復号化されたデータを得るために、暗号化されたデータを復号化して認証し、
    復号化されたデータを第1のメモリ(7)にロードすることを更に含む請求項1に記載の方法。
  3. 前記チップセット(1)は、
    前記セキュア部(2)とリモートクライアントアクセスサーバ(11)との間にセキュアリンクを設定し、
    前記セキュアリンクを介して前記セキュア部(2)のクライアントアクセスサーバ(11)からセキュアスタンプを受信し、前記セキュアスタンプは前記データを保護するためのセキュア関連のデータを含み、
    前記セキュアスタンプを前記セキュア部(2)の第2のメモリ(5)に格納し、低電力モード中は前記セキュアスタンプは前記第2のメモリ(5)に格納された状態を維持し、
    低電力モード移行時に、前記セキュアスタンプを使用して前記データの少なくとも一部を暗号化し、
    低電力モード終了時に、前記セキュアスタンプを使用して前記暗号化されたデータを復号化する請求項2に記載の方法。
  4. 前記暗号化されたデータを復号化するときに、前記チップセット(1)前記セキュアスタンプを前記第2のメモリ(5)から除去することを含む請求項3に記載の方法。
  5. 前記クライアントアクセスサーバ(11)と、前記セキュアスタンプとは異なる前記セキュア部(2)との間の前記セキュアリンクの設定後に、新しいセキュアスタンプを受信することを含む請求項3から4のいずれか1項に記載の方法。
  6. ディフィーヘルマン(Diffie-Hellman)鍵交換プロトコルを使用して、前記クライアントアクセスサーバ(11)と前記セキュア部(2)との間に前記セキュアリンクを設定することを含む請求項3から5のいずれか1項に記載の方法。
  7. セキュアスタンプとしてタイムスタンプを使用することを含む請求項3から6のいずれか1項に記載の方法。
  8. 号化アルゴリズムの初期化ベクトルとして前記セキュアスタンプを使用する暗号化アルゴリズムに基づいて、前記セキュア部(2)によって前記第1のメモリ(7)のデータを暗号化することを含む請求項3から7のいずれか1項に記載の方法。
  9. 前記セキュア部(2)を前記チップセット(1)のトラスト実行環境(12)の一部として使用することを含む請求項から8のいずれか1項に記載の方法。
  10. 前記トラスト実行環境(12)によって、低電力モード移行時における前記暗号化されたデータの前記外部メモリ(20)への格納を制御し、低電力モード終了時における暗号化されたデータの前記セキュア部(2)へのロードを制御することを含む請求項9に記載の方法。
  11. ランダムキーを生成する前記セキュア部(2)を備え、
    低電力モード移行時に、暗号化されたコンピュータコードを得るために、前記ランダムキーを暗号鍵として使用し、前記セキュアスタンプを初期化ベクトルとして使用して、前記トラスト実行環境(12)は、前記トラスト実行環境(12)で実行するコンピュータコードを暗号化し、
    低電力モード終了時に、前記トラスト実行環境(12)は、前記ランダムキーを暗号鍵として使用し、前記セキュアスタンプを初期化ベクトルとして使用して、暗号化されたコンピュータコードを復号化する、
    請求項9又は10に記載の方法。
  12. 前記第2のメモリ(5)に前記ランダムキーを格納する請求項11に記載の方法。
  13. 更なるセキュアリンクによって前記セキュア部(2)を前記トラスト実行環境(12)に通信可能に接続することを含み、前記更なるセキュアリンクは、更なるセキュアリンクを暗号化して保護するためのランダム共有鍵を使用する請求項11又は12に記載の方法。
  14. 前記ランダム共有鍵によって前記ランダムキーを前記セキュアスタンプに結合することを含む請求項13に記載の方法。
  15. 新しいランダム共有鍵を使用して低電力モード終了毎に前記更なるセキュアリンクを再初期化することを含む請求項13又は14に記載の方法。
  16. 請求項1から15のいずれか1項に記載の方法のステップを実行するよう構成されたプロセッサを備えたデバイス(1)。
  17. プロセッサに請求項1から15のいずれか1項に記載の方法のステップを実行させることができるコンピュータ実行可能命令を備えたコンピュータ読み取り可能な非一時的記憶媒体(1)。
JP2021513807A 2018-08-24 2019-08-13 低電力モードにおけるIoTデバイスのメモリに格納されるデータの保護 Active JP7397859B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP18190709.8 2018-08-24
EP18190709.8A EP3614293A1 (en) 2018-08-24 2018-08-24 Securing data stored in a memory of an iot device during a low power mode
PCT/EP2019/071764 WO2020038785A1 (en) 2018-08-24 2019-08-13 Securing data stored in a memory of an iot device during a low power mode

Publications (2)

Publication Number Publication Date
JP2021536712A JP2021536712A (ja) 2021-12-27
JP7397859B2 true JP7397859B2 (ja) 2023-12-13

Family

ID=63452404

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021513807A Active JP7397859B2 (ja) 2018-08-24 2019-08-13 低電力モードにおけるIoTデバイスのメモリに格納されるデータの保護

Country Status (7)

Country Link
US (2) US11586776B2 (ja)
EP (2) EP3614293A1 (ja)
JP (1) JP7397859B2 (ja)
KR (1) KR20210044232A (ja)
CN (1) CN112703500B (ja)
BR (1) BR112021001765A2 (ja)
WO (1) WO2020038785A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3614293A1 (en) * 2018-08-24 2020-02-26 Nagravision S.A. Securing data stored in a memory of an iot device during a low power mode
US20220083347A1 (en) * 2020-09-14 2022-03-17 Intel Corporation Adding cycle noise to enclaved execution environment
TWI783410B (zh) * 2021-03-16 2022-11-11 瑞昱半導體股份有限公司 電子裝置以及其休眠恢復方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007091492A1 (ja) 2006-02-06 2007-08-16 Matsushita Electric Industrial Co., Ltd. セキュア処理装置、方法、プログラム
JP2014022944A (ja) 2012-07-18 2014-02-03 Canon Inc 情報処理装置およびその起動方法

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6747911B2 (en) * 2002-08-21 2004-06-08 Micron Technology, Inc. Synchronous memory with open page
EP2196937A1 (en) * 2008-12-15 2010-06-16 Thomson Licensing Methods and devices for instruction level software encryption
US8880970B2 (en) * 2008-12-23 2014-11-04 Conversant Intellectual Property Management Inc. Error detection method and a system including one or more memory devices
US8730351B2 (en) * 2008-12-18 2014-05-20 Intellectual Ventures Fund 83 Llc Method for deleting data files in an electronic device
US8266369B2 (en) * 2009-12-18 2012-09-11 Nxp B.V. Flash memory interface
US20120133484A1 (en) * 2010-11-29 2012-05-31 Research In Motion Limited Multiple-input device lock and unlock
JP5621704B2 (ja) * 2011-05-11 2014-11-12 富士通セミコンダクター株式会社 半導体記憶装置
US9811475B2 (en) * 2012-06-29 2017-11-07 Intel Corporation Methods and apparatus for a secure sleep state
CN103020493B (zh) * 2012-12-28 2016-05-11 杭州晟元数据安全技术股份有限公司 一种防拷贝的软件保护与运行装置及方法
EP2827601A1 (fr) 2013-07-19 2015-01-21 Nagravision S.A. Méthode et dispositif pour la protection des clés de déchiffrement d'un décodeur
US9116702B2 (en) * 2013-11-21 2015-08-25 International Business Machines Corporation Computer memory power management
KR101551817B1 (ko) * 2014-05-22 2015-09-09 한국전자통신연구원 메모리 삭제 방법 및 이를 위한 장치
JP6850530B2 (ja) * 2014-10-20 2021-03-31 タタ コンサルタンシー サービシズ リミテッドTATA Consultancy Services Limited セキュアセッションの確立と暗号化データ交換のためのコンピュータ利用システム及びコンピュータ利用方法
US20160132099A1 (en) * 2014-11-10 2016-05-12 Novi Security, Inc. Security Sensor Power Management
US9596235B2 (en) * 2015-03-30 2017-03-14 Microsoft Technology Licensing, Llc Power efficient storage management
US20170039397A1 (en) * 2015-08-06 2017-02-09 Kabushiki Kaisha Toshiba Encryption/decryption apparatus, controller and encryption key protection method
US10152599B2 (en) * 2015-12-18 2018-12-11 Intel IP Corporation Security mechanisms for extreme deep sleep state
US10235526B2 (en) * 2015-12-18 2019-03-19 Intel Corporation Secure resume from a low power state
US10042587B1 (en) * 2016-03-15 2018-08-07 Adesto Technologies Corporation Automatic resumption of suspended write operation upon completion of higher priority write operation in a memory device
US10817869B2 (en) * 2016-06-29 2020-10-27 Square, Inc. Preliminary enablement of transaction processing circuitry
US10181739B1 (en) * 2017-06-23 2019-01-15 Dell Products L.P. Power storage adapter using high efficiency charging for low power states
EP3614293A1 (en) * 2018-08-24 2020-02-26 Nagravision S.A. Securing data stored in a memory of an iot device during a low power mode
US10892010B2 (en) * 2019-02-13 2021-01-12 Macronix International Co., Ltd. Method for controlling accumulated resistance property of ReRAM device
CN111835689B (zh) * 2019-04-22 2021-06-15 华为技术有限公司 数字钥匙的身份认证方法、终端设备及介质
EP3872606B1 (en) * 2020-02-25 2023-08-02 NXP USA, Inc. Processor system
US20220102224A1 (en) * 2020-09-29 2022-03-31 Samsung Electronics Co., Ltd. Test method of storage device implemented in multi-chip package (mcp) and method of manufacturing an mcp including the test method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007091492A1 (ja) 2006-02-06 2007-08-16 Matsushita Electric Industrial Co., Ltd. セキュア処理装置、方法、プログラム
US20090013196A1 (en) 2006-02-06 2009-01-08 Takayuki Ito Secure Processing Device, Method and Program
JP2014022944A (ja) 2012-07-18 2014-02-03 Canon Inc 情報処理装置およびその起動方法

Also Published As

Publication number Publication date
KR20210044232A (ko) 2021-04-22
US11853465B2 (en) 2023-12-26
US20210182435A1 (en) 2021-06-17
EP3614293A1 (en) 2020-02-26
US11586776B2 (en) 2023-02-21
JP2021536712A (ja) 2021-12-27
CN112703500A (zh) 2021-04-23
WO2020038785A1 (en) 2020-02-27
US20230274035A1 (en) 2023-08-31
EP3841509A1 (en) 2021-06-30
BR112021001765A2 (pt) 2021-04-27
CN112703500B (zh) 2024-08-30

Similar Documents

Publication Publication Date Title
US10482291B2 (en) Secure field-programmable gate array (FPGA) architecture
US11204748B2 (en) Secure machine executable code deployment and execution method and system
US11853438B2 (en) Providing cryptographically secure post-secrets-provisioning services
US11533297B2 (en) Secure communication channel with token renewal mechanism
JP3999655B2 (ja) レベル化された機密保護があるアクセス制御のための方法及び装置
US11853465B2 (en) Securing data stored in a memory of an IoT device during a low power mode
US8356175B2 (en) Methods and apparatus to perform associated security protocol extensions
KR102539418B1 (ko) Puf 기반 상호 인증 장치 및 방법
CN113261001A (zh) 远程执行设备存储器
KR20210092218A (ko) 실링 및 검증을 통한 디바이스 인증
CN116208329A (zh) 传感网络的节点认证方法、节点、系统、介质及设备
CN117375910A (zh) 一种基于不可信云fpga的可信通信方法及系统

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210323

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220606

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230607

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230612

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20230911

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231018

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231107

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231201

R150 Certificate of patent or registration of utility model

Ref document number: 7397859

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150