JP2009521772A - 組み込みデバイスへの電子的アクセスのための保護ポート - Google Patents
組み込みデバイスへの電子的アクセスのための保護ポート Download PDFInfo
- Publication number
- JP2009521772A JP2009521772A JP2008548791A JP2008548791A JP2009521772A JP 2009521772 A JP2009521772 A JP 2009521772A JP 2008548791 A JP2008548791 A JP 2008548791A JP 2008548791 A JP2008548791 A JP 2008548791A JP 2009521772 A JP2009521772 A JP 2009521772A
- Authority
- JP
- Japan
- Prior art keywords
- access
- protection
- port
- user device
- response
- 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.)
- Withdrawn
Links
Images
Classifications
-
- 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/3271—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 challenge-response
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3648—Software debugging using additional hardware
- G06F11/3656—Software debugging using additional hardware using a specific debug interface
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Quality & Reliability (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Small-Scale Networks (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
ユーザによる組み込みデバイス(102)へのアクセスを制御するシステム及び方法。組み込みデバイスと一体化される保護アクセスポート(110)は、アクセスマネージャ(114)と、レベルコントローラ(112)とを含む。アクセスマネージャは、ユーザデバイスからのリクエストに応答して、チャレンジフレーズを組み込みデバイスの公開鍵を使用して発行することにより、組み込みデバイスにアクセスし、チャレンジフレーズに対するユーザによる応答の信憑性を判断する。保護サーバは、組み込みデバイスの公開暗号鍵に対応する秘密鍵を格納し、ユーザ信用証明情報を認証して、組み込みデバイスの秘密鍵に応じたチャレンジフレーズへの応答を発行するように動作可能である。
Description
集積回路処理装置のような組み込みデバイスは、外部エンティティとの複数のインターフェースを提供する。これらのインターフェースによって、テスティング、コード及びデータ転送、及びメモリへのアクセスのような種々の機能が利用可能になる。しかしながら、これらのインターフェースは、デバイス内に格納される情報への無許可アクセスを獲得するために利用することもできる。デバイスによって使用される情報を改ざんすることにより、ユーザは料金が支払われていないサービスへの、または情報を暗号化保護するために使用される鍵とともに機密保全されるサービスへのアクセスを獲得することができる。
無線及びインターネット接続機器の数が増えるにつれて、内蔵保護機能は機器の重要な機能となる。産業全体に渡って、信頼性の高いコンピューティングプラットフォームを定義する試みが継続的に行なわれている。信頼性の高いプラットフォームの複数の特徴のうちの一つの特徴が、外部環境とのやり取りにおける改ざんを防止する機能である。
集積回路と外界との間の複数の相互作用ポイントのうちの一つ相互作用ポイントが、システム設計者が通常、デバッグ目的に提供するJTAGポートである。JTAGポートは、ジョイントテストアクショングループ(Joint Test Action Group)が開発した規格に準拠し、かつ集積回路に対して外部からテストを行なうためのアクセスを可能にするポートである。ポートは4ピンまたは5ピン外部インターフェースを使用する。JTAG規格は標準のIEEE 1149として採用されている。
JTAGポートを使用して、デバイスのメモリを改ざんするか、または重要情報をデバイスから取り出すことができる。このことを防止するために、ポートを多くの場合、製造デバイスにおいて無効にする。しかしながら、ポートを無効にすることにより、許可ユーザがポートを使用して将来の時点で製品をテストする、変更する、またはフィールド試験するということができなくなる。
IEEE 1149規格は、強制セットのパブリックインストラクションを定義し、パブリックインストラクションはJTAG対応部品に含める必要がある。この強制セットは、インストラクションIDCODE,BYPASS,EXTEST,及びINTESTを含む。このセットの内、INTESTインストラクションによってのみ、集積回路の内部コアロジック信号に対する操作が明らかになるか、または許可される。例えば、フラッシュメモリを再プログラムするか、または適切なデータがこのインストラクションと共に供給される場合に無防備な保護情報を改ざんすることができる。IDCODEインストラクションを使用して、デバイスのハードワイヤード識別番号を取り出す。BYPASSインストラクション及びEXTESTインストラクションはバウンダリ・スキャンに使用される。強制セットの他に、任意セットの、またはプライベートセットのインストラクションをデバイスに関して定義することができる。
JTAGポートによってプロセッサの内部システムコンポーネントへのアクセスが付与されるので、JTAGポートを保護することによって利点がもたらされる多数の状況が存在する。
組み込みデバイスとの他のゲートウェイ・インターフェースは、ハードウェア保護によって、JTAGポートと同様の形で利点を享受することになる。
画期的であると考えられる本発明の特徴が添付の請求項に示される。しかしながら、本発明自体だけでなく、本発明の好適な適用形態、及び更に別の目的及び利点は、以下に示す例示としての実施形態に関する詳細な説明を、添付の図(複数の図)を参照しながら一読することにより、最も深く理解することができるものと思われる。
本発明は、多くの異なる構成の実施形態として実現することができるが、一つ以上の特定の実施形態を図に示し、ここに詳細に説明しており、この場合、本開示は本発明の原理の例示として捉えられるべきであり、本発明を、ここに示し、かつ説明する特定の実施形態に制限する意図で行なわれるのではないことを理解されたい。以下の説明では、同様の参照番号は、図面に描かれる幾つかの図における同じ、同様の、または対応する構成要素を表わすために使用される。
図1は、一実施形態による保護JTAG(protected JTAG)回路及び当該回路の外部構成の図である。図1を参照すると、デバイス100はプロセッサ102と、JTAGポート104と、JTAGコントローラ106とを含む。JTAGコントローラ106はJTAG機器108と通信する。JTAGポート104は、保護JTAG回路ブロック110の内、プロセッサ102へのアクセスを制御する部分である。保護JTAGブロックによって、選択されたユーザグループのみが、プロセッサの内部を観察するか、または変更する機能にアクセスすることが許される。回路の連続性を検査するために使用されるJTAGデバッグ機能に課される制約は少ないか、または無い。その理由は、このタイプのJTAGアクセスによって、私的情報及び機密情報へのユーザアクセスが与えられることがないからである。保護JTAGポートは、標準のJTAG機能の他に、プロセッサへのアクセスの異なるレベルを設定する判別機構を提供する。
保護JTAGブロック110はレベルコントローラ112及びアクセスマネージャ114を含む。アクセスマネージャ114はランダム番号発生器116及び検証モジュール118を含む。これらの要素の動作について以下に説明する。
必要なサポート・インフラストラクチャ及びツールとして、保護サーバ120及び保護JTAGマネージャを挙げることができ、保護JTAGマネージャはホストJTAG機器108のデバッグツールと連携動作する。保護JTAGブロック110(以後、単に保護JTAGとも表記される)は、プロセッサ102に関して定義されるアクセスの各サポートレベルに対応する認証機能及びアクセスモード制御を実行する。更に、プロセッサは、高機能JTAGシグナリングを受け入れるように構成される。アクセス制限は、保護JTAG110内の更に別のハードウェアブロック:レベルコントローラ112及びアクセスマネージャ114によって処理される。これらの要素が連動することにより、保護JTAGのアクセスモードが設定される。
JTAGアクセスモード
一実施形態では、保護JTAG110は、保護の異なるレベルに対応する多数の異なるアクセスモードを許可するように構成することができる。組み込みデバイスは種々のタイプのサービスを提供する。或る製品はセキュリティ対策を必要としないので、これらのデバイスへの全てのユーザによる非制限JTAGアクセスを承認することが適切である。一例として、複雑な電子玩具または家電機器コントローラを挙げることができる。保護JTAGに対する要求が、信頼性の高いコンピューティング要件を持つ製品において具体化される。製品例として、携帯電話機、PDA、メディア機器、及び自動車コントローラを挙げることができる。
一実施形態では、保護JTAG110は、保護の異なるレベルに対応する多数の異なるアクセスモードを許可するように構成することができる。組み込みデバイスは種々のタイプのサービスを提供する。或る製品はセキュリティ対策を必要としないので、これらのデバイスへの全てのユーザによる非制限JTAGアクセスを承認することが適切である。一例として、複雑な電子玩具または家電機器コントローラを挙げることができる。保護JTAGに対する要求が、信頼性の高いコンピューティング要件を持つ製品において具体化される。製品例として、携帯電話機、PDA、メディア機器、及び自動車コントローラを挙げることができる。
異なる保護要件を必要とする種々の製品の他に、製品ライフサイクルにおける異なる時点で、異なるアクセスレベルが必要になる。いかなる新規デバイスも、当該デバイスの寿命の間に異なるフェーズを経ることになる。デバイスが設計された後、デバイスを作製し、テストし、組み立て、製品に組み込む必要がある。製品が必要とする保護は、これらのフェーズの間に変化する。
保護JTAG110は保護の異なるレベルを提供する。完全保護レベルでは、JTAGポートを通してのユーザアクセスが、チップ回路のテスト、及び基板レベルの相互接続のテストのような外部機能に制限される。任意であるが、違法ではない内部コンポーネントテストは許可することができる。この任意のコンポーネントテスト機能によって、私的情報が露見することがあってはならず、かつメモリへの、またはプロセッサのレジスタへの書き込みが許可されてはならない。この機能の形態は、特定アーキテクチャ向けとすることができる。中間保護レベルでは、保護領域内に対する操作を除く、フラッシュメモリへの書き込み、及びレジスタ及びメモリに対する読み出し、及び書き込みが許可される。最低セキュリティ保護レベルでは、保護が全く行なわれることがなく、かつ保護領域への無制限アクセスを含むフルアクセスが許可される。
保護JTAG110は、適切なアクセスを、改ざん防止状態選択機能を提供することにより承認する手段を提供する。ハードウェア構成によって決まる複数の状態はアクセスモード群に対応する。一旦、モードが設定されると、当該モードを、更に保護を強めた新規モードに変更することができるが、保護を弱めたモードには変更できない。一実施形態では、複数のアクセスモードは一組のフューズによって設定される。フューズ技術では、フューズの状態を不可逆的に変更する必要がある。一組のフューズを焼き切ることによって、セキュリティレベルが決まる。更に多くのフューズを焼き切ることによってレベルを高めることができる。従って、セキュリティレベルは高めることしかできない。
これらのアクセスモードの各モードは、デフォルト保護レベルを持つ。一旦、アクセスモードが設定されると、保護のレベルは許可ユーザによってのみ一時的に低くすることができるだけである。図1の図は、アクセスレベルを保護状態選択に基づいて生成するレベルコントローラブロック112、及び検証モジュール118を示している。
以下の表は、一実施形態による全てのユーザ及び許可ユーザに関する各アクセスモードにおける保護JTAGの適用可能形態及びアクセスレベルを要約したものである。これらのアクセスモードは以下に更に詳細に説明される。
更に、セキュリティ機能を内蔵しない(すなわち、データが保護されない)製品は保護を全く必要としない。このような製品へのJTAGポートを通してのフルアクセスを付与することが適切である。
低保護アクセスモード。低保護アクセスモードでは、ユーザは依然として、保護データをJTAGポートを通して閲覧するだけでなく、フラッシュメモリへの書き込みを行なうことができる。しかしながら、このモードでは、秘密鍵または秘匿データのような保護情報は、改ざんに対して強い情報であるが、隠す必要はない。制限は、アーキテクチャ依存型セキュリティ機構によって課されることになる。ユーザが機密データまたはプライベートデータを組み立てる能力を持っているという理由により、このアクセスは信頼性の高いユーザにのみ付与される。このモードは、保護領域が確保されていることが検証された場合の開発フェーズにおいて使用することができる。更に、このモードは、返品を正常品に復元する、例えばメモリを再フラッシュするために適したモードとすることができる。
或る場合においては、セキュリティ機構をオープンにする必要がある。保護レベルを非保護レベルに一時的に下げることができる。この機能は、信頼レベルの最も高い信用証明情報を有する信頼性の高いユーザから構成される限定グループが使用することができる。
高保護アクセスモード。ユーザが保護メモリ(データが保護されるメモリ)にアクセスすることを防止するために、顧客に納入される製品によって、JTAGポート104(図1)を通しての保護データへのアクセスが可能になるようなことが、決して起こることがないようにする必要がある。このような理由により、ユーザは、保護メモリの内容を漏洩させることがないJTAGインストラクションしか使用することができない。ユーザはバウンダリテストを、BYPASS,PRELOAD,またはEXTEST標準インストラクションを使用して実行し、デバイスIDをIDCODEインストラクションを実行して取り出し、コンポーネントテストをRUNBISTインストラクションで行なうことができる。
或るアプリケーションでは、バウンダリテストまたはコンポーネントテストは更に複雑になる可能性があり、更に違法性の高い方法が必要になる。INTESTまたはSAMPLE標準インストラクション、或いは他のプライベートインストラクションをこの目的に使用することができる。しかしながら、これらのインストラクションによって保護メモリの内容が漏洩することがあってはならず、かつプロセッサメモリに対する書き込みアクセスを許可することがあってはならない。
低保護アクセスモードまたは高保護アクセスモードで構成される製品では、信頼性の高いユーザによってリクエストされる場合には、保護レベルを一時的に下げることができる。低保護モードからは、レベルを非保護レベルに下げることができ、高保護モードからは、保護レベルを低保護レベルまたは非保護レベルに下げることができ、いずれの保護レベルに下げるかは、ユーザの信用証明情報によって変わる。保護JTAGのこの機能は、返品時においてデバッグ機能を利用するために用いられる。
選択的高保護アクセスモード。このアクセスモードによって高保護アクセスモードの機能の全てが提供される。差異は、退出イベントが追加されることであり、退出イベントは保護レベルを下げたJTAGセッションを終了させるために受入れられる。このモードでは、保護を各JTAGインストラクションの後にデバイスによってデフォルト保護に復旧させる。この機能を追加することにより、デバイスが、認証及びテストセッションに合格した後にヒューマンエラーが発生した場合に危険な状態に放置されることが絶対にないようにすることができる。しかしながら、このモードは選択的に実装される。この機能の実行は比較的複雑であり、この機能を使用しないデバイスは、当該機能を全く実装する必要はない。この複雑さは、各JTAGインストラクションの終了を検出する必要があるという要件から生じる。これは、更に別のロジックがJTAGに含まれることを意味する。従って、条件はレベルコントローラブロックに渡されることになる。
最高保護アクセスモード。最高保護モードでのJTAGアクセスは、高保護アクセモードにおけるアクセスと同じである。2つのアクセスモードの差異は、高保護アクセスレベルモードにおける保護レベルを一時的に低下させるオプションにある。この機能は、最高保護レベルモードではサポートされない。
このモードは、顧客に納入され、かつ非常に重要な情報を含む製品に用いられる。この場合、保護データはいかなる条件下でも誰によってもJTAGを通してアクセスされることがないように設定される。
このタイプの保護を採用することができる他の製品は低コストデバイスとすることができ、デバイスを修理するよりも取り替える方がコストが安く付く。
保護JTAG認証
一実施形態では、保護JTAG認証プロセスはチャレンジ応答認証アルゴリズム(challenge−response identification algorithm)を利用する。指定保護サーバ(図1の120)が認証プロセスを完了させるために使用される。保護サーバの役割は、所定のチャレンジに対する応答を生成することである。図2は、一実施形態による保護JTAG回路の認証方法を示す時系列図である。時系列では、宛先デバイスまたは製品の保護JTAG、保護JTAGマネージャ、及びユーザコンピュータ108の他のソフトウェアツール、更に保護サーバの間の通信の様子が示される。
保護JTAG認証
一実施形態では、保護JTAG認証プロセスはチャレンジ応答認証アルゴリズム(challenge−response identification algorithm)を利用する。指定保護サーバ(図1の120)が認証プロセスを完了させるために使用される。保護サーバの役割は、所定のチャレンジに対する応答を生成することである。図2は、一実施形態による保護JTAG回路の認証方法を示す時系列図である。時系列では、宛先デバイスまたは製品の保護JTAG、保護JTAGマネージャ、及びユーザコンピュータ108の他のソフトウェアツール、更に保護サーバの間の通信の様子が示される。
図2を参照すると、時系列の第1ステップ(202)では、保護JTAGに対するOPENリクエスト(オープンリクエスト)がユーザによって開始される。ユーザは、保護JTAG、ユーザ、ユーザコンピュータ108、及び保護サーバの間の通信を管理するツールを取得する必要がある。OPENコマンドはビット列によって表わされ、このビット列は、保護レベルを低下させるリクエストだけでなく目標保護レベルの両方を表示する。OPENリクエストによって認証プロセスが開始する。コマンドを受信すると、アクセスマネージャ(図1の114)はメッセージを、ランダム番号及びリクエストされる保護レベル情報に基づいて作成し、当該メッセージをチャレンジフレーズにエンコードする。従って、チャレンジフレーズは、ランダム番号をリクエストシーケンスと組み合わせた暗号を含む。
ランダム番号は、アクセスマネージャのランダム番号生成器部分(図1の116)によって生成される。要求される保護レベル情報は、OPENコマンドのビット列によって表わされる。OPENビット列をランダムチャレンジと組み合わせることにより、システムは認証レベルを区別し、同じ鍵を使用することができる。
再度、図2を参照すると、チャレンジフレーズはアクセスマネージャによって保持され、JTAGマネージャに、次のステップ(204)において、ハンドシェークがOPENリクエストに対して行なわれるときに渡される。チャレンジと共に、デバイスは、当該デバイスのIDを送信し、このIDによって、保護サーバは、どの鍵を使用して応答を生成すべきかについて判断する。一つの鍵は幾つかのデバイスに関連付けることができ、どのデバイスに関連付けるかは、鍵配布方式によって変わる。
ステップ(206)では、JTAGマネージャは、保護サーバとの保護ソケットレイヤ接続のような接続を開放する。ステップ(208)では、JTAGマネージャはチャレンジフレーズ、デバイスIDを、ホストコンピュータ及びユーザコンピュータの信用証明情報とともに保護サーバ(図1の120)に接続を経由して渡す。保護サーバはユーザの信用証明情報を検証する。ユーザが認証されて、リクエストする保護レベルを取得するときにのみ、サーバが当該ユーザを承認することができる。検証プロセスはチャレンジフレーズを解読し、リクエストされているレベルを取り出すことから始まる。ユーザの信用証明情報が、リクエストされるレベルと一致する場合、検証に合格し、ユーザが認証される。認証に合格すると、保護サーバはステップ(210)で、解読したチャレンジのランダム番号部分を取り出し、ランダム番号を含む検証トークンを返送する。応答を受信すると、JTAGマネージャは応答を保護JTAGにステップ(212)で渡す。
次に、応答フレーズをアクセスマネージャモジュール内の検証ブロックによって、応答を、チャレンジの一部分として生成された元のランダム情報と比較することにより検証する。検証に合格すると、応答フレーズをステップ(214)で承認し、リクエストされるアクセスレベルを、デバイスの電源が次にオフになるまで、またはCLOSEビット列の検出まで有効にする。選択的高保護モードとなるように構成されるデバイスは更に、各JTAGインストラクションの終了時にデフォルト保護レベルに戻る。一旦、アクセスが有効になると、ユーザツールはステップ(216)で保護JTAGとの接続を行なうことができる。この接続はステップ(218)で承認され、テストコマンドをステップ(220)で発行して、デバイスの電源が次にオフになるまで、またはCLOSEビット列がJTAGマネージャによってステップ(222)で出力されるまで、デバイスとのインターフェース接続を保護JTAGを介して行なうことができる。
図3の状態遷移図(以下に説明する)は、保護JTAGのアクセスマネージャモジュールの状態、イベント、及びアクションを示している。
ここに提示する認証方式では、各アクセスに関するチャレンジ及び応答ペアの生成を利用する。「アクセス毎に(per access)」認証するこの方式では、無許可ユーザが古いビット列を将来の時点で再生攻撃に使用する可能性を排除する。
ここに提示する認証方式では、各アクセスに関するチャレンジ及び応答ペアの生成を利用する。「アクセス毎に(per access)」認証するこの方式では、無許可ユーザが古いビット列を将来の時点で再生攻撃に使用する可能性を排除する。
保護JTAGのアクセスマネージャモジュールは、ハードウェアとして実装することにより、認証プロセスをプロセッサとは独立して実行することができるようにする。ハードウェアソリューションでは、プロセッサのソフトウェアが改ざんされている場合でも、またはプロセッサのハードウェアが、分析されている問題の原因である場合でも、信頼性の高い認証を保証することができる。信頼性の高いプラットフォーム環境におけるハードウェアJTAG形態の幾つかの利点を列挙することができる。利点の一つとして、信頼性の高いブートが失敗し、デバッグを返品に対して行なう必要がある場合に、JTAGポートを許可ユーザが使用してメインプロセッサのブートシーケンスをデバッグすることができる。改ざん攻撃または他の障害が検出された場合に、JTAGポートを使用して稼動中のシステムをデバッグすることもできる。JTAGポートを有効にしてブートシーケンスをデバッグするために、JTAG公開鍵は、メインプロセッサとは別のJTAGハードウェアであって、改ざん防止メモリに内蔵されるJTAGハードウェアの一部分とする必要がある。
図1はハードウェアブロック群を示し、これらのハードウェアブロックはアクセスマネージャの主要コンポーネントである。ランダム番号生成モジュール(RNG)116の役割は、認証リクエストとして認識される各OPENシーケンスのチャレンジフレーズに対応し、かつサーバへのメッセージを暗号化するために使用されるランダム番号を生成することである。一実施形態では、このモジュールはランダム番号を、現時点でデバイスから集めたエントロピーに基づいて生成する。更に複雑なのが検証モジュール118であり、このモジュールの機能には、多数のクロックサイクルが必要となる。クロック130は保護JTAG110内で利用するか、またはJTAG接続によって着信信号132として供給することができる。この後者の設定では、検証モジュール118は、クロックサイクルの変動による影響を受けない必要がある。検証モジュール118はチャレンジ128を送信し、保護サーバからチャレンジ/開放リクエストに対する応答134(図2の要素212)を受信する。
ハードウェア要素
保護JTAG。図1に示すように、保護JTAG110はJTAGポート104の他に、レベルコントローラブロック112及びアクセスマネージャブロック114を含む。アクセスマネージャ内のランダム番号生成モジュール116及び検証モジュール118の構成は、最も重点的にサイズに関して、次に重点的にサイクル数に関して最適化する必要がある。更に、アクセスマネージャ114は、前の節で説明したように、ステートマシンを実行するためのロジックを含む。
保護JTAG。図1に示すように、保護JTAG110はJTAGポート104の他に、レベルコントローラブロック112及びアクセスマネージャブロック114を含む。アクセスマネージャ内のランダム番号生成モジュール116及び検証モジュール118の構成は、最も重点的にサイズに関して、次に重点的にサイクル数に関して最適化する必要がある。更に、アクセスマネージャ114は、前の節で説明したように、ステートマシンを実行するためのロジックを含む。
レベルコントローラ112は、アクセスモードに対応する改ざん防止用の不可逆的状態選択ソリューション(irreversible state selection solution)を提供するように構成される。図1,2に示す例では、溶融可能なリンクが溶断して開放になっている状態が示される。他の同等の不可逆性手段を使用することができる。当該不可逆性手段は、アクセスマネージャブロック114からの入力を受け入れるロジックを含む必要もある。
保護JTAGブロック群自体の間で、プロセッサ102との間で授受される信号に対しても改ざん防止処置を施し、これらの信号を内部シリコン層に隠蔽する必要がある。保護レベルを示す信号は、内部JTAG及びプロセッサロジックのうちの少なくとも1方内で印加されることになる。信号をプロセッサの内部で印加するロジックは、特定アーキテクチャ向けとする必要がある。
保護サーバ。これまでに述べてきたように、保護サーバ120を設けて認証プロセス(図2を参照しながら上に説明した)を容易にし、認証プロセスによって、製品の保護のグレードを保護JTAGを通して一時的に下げることができる。保護サーバ120に、デバイスID及びユーザ信用証明情報に関連付けられる秘密鍵を読み込む。サーバで実行される信用証明情報検証手順では、チャレンジに対してユーザが返す正しい応答を承認することにより、デバイスがリクエストされた保護レベルをこのレベルの取得を許可されたユーザに対して承認することになる。
一実施形態では、ユーザ108及び保護サーバ120は保護インターフェースを使用し、保護インターフェースによって、チャレンジ122、信用証明情報124、及び応答126のような情報をシリアルストリングとして授受することが可能になる。
暗号化検討項目
保護サーバ120(図1)は保護方式における重要な要素である。秘密鍵またはユーザデータベースの信頼性を損なう全てのイベントにおいて、デバイスの保護も不完全になる。
保護サーバ120(図1)は保護方式における重要な要素である。秘密鍵またはユーザデータベースの信頼性を損なう全てのイベントにおいて、デバイスの保護も不完全になる。
保護サーバによるユーザ信用証明情報の検証は、方式全体の重要な部分である。種々の検証方法がこの技術分野の当業者に公知になっている。
開発ツール及びテストツール
保護JTAG機能には開発ツールサポートが必要になる。これらのツールは、保護JTAGアクセスマネージャモジュールと通信して、認証関連データを保護サーバに渡す機能を備える必要がある。図2に示す認証プロセスは、更に別のホストツールサポートを表わす相互作用を示し、これらの相互作用として、OPENリクエスト、チャレンジを収集する動作、保護サーバとの通信、及び応答を返す動作を挙げることができる。これらの機能はホストツールによって必要とされるが、ツール自体に組み込まれる必要はない。図2は保護JTAGマネージャモジュールを示し、当該モジュールはこれらの機能をテストプロトコル部分とは別の部分として処理する。機能をホストツール内で分離することによって、テストプロトコルとの互換性が保たれる。
開発ツール及びテストツール
保護JTAG機能には開発ツールサポートが必要になる。これらのツールは、保護JTAGアクセスマネージャモジュールと通信して、認証関連データを保護サーバに渡す機能を備える必要がある。図2に示す認証プロセスは、更に別のホストツールサポートを表わす相互作用を示し、これらの相互作用として、OPENリクエスト、チャレンジを収集する動作、保護サーバとの通信、及び応答を返す動作を挙げることができる。これらの機能はホストツールによって必要とされるが、ツール自体に組み込まれる必要はない。図2は保護JTAGマネージャモジュールを示し、当該モジュールはこれらの機能をテストプロトコル部分とは別の部分として処理する。機能をホストツール内で分離することによって、テストプロトコルとの互換性が保たれる。
保護JTAGの基本アーキテクチャ及び機能が上に開示されている。保護JTAGは信頼性の高いプラットフォームを補完するように作用して、重要なデバッグ機能を提供し、更に保護情報を保護する。ここに提示するソリューションのコア属性はハードウェア形態、多様なレベルのアクセス、及び各アクセスに対応するチャレンジ/応答ペアの生成を利用する安全性の高い機構である。これらの属性によってツールは、多種多様なユーザ、及びセキュリティの観点に基づく安全確保にとって魅力的となる。開発者は、デバッグ及びテストを実行フェーズにおいて行なうことができる。デバイスが顧客に納入された後、全てのリペアショップで回路の正常性を検証することができるが、信用証明情報を提示するユーザのみが、このタイプの介入が必要な場合にデバイスを更に綿密にデバッグすることができる。
保護JTAGの主目的は、デバイスを悪用する恐れのある全ての個人によるJTAGアクセスを阻止することにある。更に、これまでの経験に基づいて、JTAGをデバイスへの重要なアクセスポイントとすることができる。JTAGポートを経由しての保護及びアクセスを行なう際のフレキシビリティは、保護アクセスのレベルを認証により下げることにより得られる。利点は、デバイスが高保護アクセスモードになっているときに最も顕著になる。
図3は、一実施形態による保護JTAG回路のアクセスマネージャ114の動作を示す状態遷移図である。初期状態302はOFF(オフ)である。アクセスマネージャは、OPENビット列が検出される(304)までこの状態になったままである。OPENビット列を受信すると、アクセスマネージャはメッセージをランダム番号及びリクエストされた保護レベル情報に基づいて構成し、当該メッセージをチャレンジフレーズにエンコードする。ランダム番号はアクセスマネージャのランダム番号生成器部分によって生成される。ランダム番号及びOPENシーケンスは、アクセスマネージャによってこの認証セッションのために保持される。チャレンジがユーザコンピュータ108にアクセスマネージャ114によって送信される。アクセスマネージャは状態306に移行し、この状態の間に、アクセスマネージャはチャレンジに対する応答を待機する。新規のOPENシーケンスが検出される場合(308)、アクセスマネージャは古いチャレンジを放棄し、新規のチャレンジを生成し、新規のチャレンジをユーザに送信する。応答シーケンスが310で検出される場合、アクセスマネージャは検証状態312に移行し、この状態の間に、応答シーケンスをチェックする。検証に失敗する(不正な応答シーケンスを受信したことにより)場合(314)、アクセスマネージャはOFF状態に戻る(302)。検証に合格した場合(316)、アクセスマネージャは状態318に移行し、この状態の間に、JTAGポートを経由してのプロセッサへのアクセスが有効になる。この状態は、デバイスの電源がオフになり、CLOSEビット列が検出され、新規のOPENシーケンスが検出されるまで保持されるか、または保護JTAGが選択的高保護モードにおいて開放され、JTAG命令が完了する場合(320)に保持される。これらのイベントのうちのいずれかのイベントの後に、アクセスマネージャは閉止状態322に移行し、この状態では、デフォルトアクセスが復旧し、全てのリソースが元の状態に戻り、レジスタが初期値に設定される。閉止状態へのエントリイベントが退出イベントになる。閉止状態にOPENシーケンスによって移行した場合(324)、アクセスマネージャは、新規のチャレンジを生成し、発行し、更に状態306に戻ってチャレンジに対する応答を待機する。これとは異なり、閉止状態にCLOSEビット列によって移行した場合、または保護JTAGが選択的高保護モードにおいて開放され、JTAG命令が完了する場合(326)、JTAGポートが閉じ、アクセスマネージャがOFF状態に戻る(302)。
使用の例
以下に、2つの使用例を検討して保護JTAGの利点を示す。
低セキュリティアクセス(低保護)−フラッシュメモリの読み込み。携帯電話機の所有者ボブ(Bob)が、例えば面白いゲームをウェブで見付け出し、当該ゲームを彼の携帯電話機にダウンロードしたとする。ダウンロードの後、彼の電話機が正しく作動しなくなった。まずボブは、問題を自分で解決しようと試みた。彼は、「便利な」コードをインターネットで見付け出し、コードを彼の電話機のデバイスにJTAGポートを使用して読み込みたいと考えた。幾つかのベンダーがハードウェアツール及びソフトウェアツールを供給し、これらのツールを使用することにより、機器のメモリを再フラッシュすることができることに注目されたい。ボブはデバイスをJTAGポートを経由してホストPCに、ハードウェアJTAGツールを使用して接続し、ソフトウェアツールを彼のホストPCで実行してコードをダウンロードした。デバイスは高保護モードであったので、フラッシュメモリを変更することが許可されなかった。これらのツールから一般エラーメッセージが返ってきた。この例では、デバイスが、安全性が保証されていないコードを読み込む動作を行なわないように保護された。
以下に、2つの使用例を検討して保護JTAGの利点を示す。
低セキュリティアクセス(低保護)−フラッシュメモリの読み込み。携帯電話機の所有者ボブ(Bob)が、例えば面白いゲームをウェブで見付け出し、当該ゲームを彼の携帯電話機にダウンロードしたとする。ダウンロードの後、彼の電話機が正しく作動しなくなった。まずボブは、問題を自分で解決しようと試みた。彼は、「便利な」コードをインターネットで見付け出し、コードを彼の電話機のデバイスにJTAGポートを使用して読み込みたいと考えた。幾つかのベンダーがハードウェアツール及びソフトウェアツールを供給し、これらのツールを使用することにより、機器のメモリを再フラッシュすることができることに注目されたい。ボブはデバイスをJTAGポートを経由してホストPCに、ハードウェアJTAGツールを使用して接続し、ソフトウェアツールを彼のホストPCで実行してコードをダウンロードした。デバイスは高保護モードであったので、フラッシュメモリを変更することが許可されなかった。これらのツールから一般エラーメッセージが返ってきた。この例では、デバイスが、安全性が保証されていないコードを読み込む動作を行なわないように保護された。
デバイスを復旧するために、ボブは、デバイスをプロバイダの代理店に持ち込む必要があった。高い技術を持つマーベリック(Maverick)がボブのデバイスの修理を行なうことを許可されるとする。マーベリックはデバイスの保護レベルを低保護アクセスに認証プロセスにより下げる必要があった。マーベリックはデバイスをJTAGポートを経由してマーベリックのホストPCに、JTAGハードウェアツールを使用して接続した。ホストPCのソフトウェアツールはJTAGマネージャモジュールを含む。マーベリックは認証手順を、OPENコマンドをJTAGマネージャから起動することにより開始した。この時点で、マーベリックは更に、OPENのタイプを低保護アクセスとして指定した。JTAGマネージャはリクエストをデバイスの保護JTAGに送信した。保護JTAGはチャレンジフレーズで応答した。チャレンジフレーズを受信すると、ホストのJTAGマネージャツールは、マーベリックによるエントリを許可するようにリクエストした。マーベリックは彼の信用証明情報を入力した。JTAGマネージャは、チャレンジフレーズ及びマーベリックの信用証明情報を、指定された保護サーバに渡した。保護サーバは信用証明情報を検証した。検証に合格した後、保護サーバは所定チャレンジに対する応答を生成し、当該応答をJTAGマネージャに返送した。JTAGマネージャは応答を、デバイスの保護JTAGに渡し、保護サーバとの接続を解除した。保護JTAGは応答を検証した。検証に合格すると、保護JTAGは、リクエストされているJTAGポートを経由してのデバイスへのアクセスを承認した。マーベリックは、ホストのハードウェアJTAGコネクタ及びソフトウェアツールを使用して再フラッシュを開始した。コマンドが無事に完了した。リクエストが完了した後、マーベリックはデバイスの電源をオフにして、デフォルトアクセスレベルを復旧させる必要があった。
最低保護を獲得する。ハッカーは保護鍵をボブが所持する電話機のタイプから抽出した。サービスプロバイダはボブに鍵を取り替えるように申し出た。ボブは、彼の電話機をプロバイダの代理店に持ち込んだ。代理店から派遣されている技術者であるマーベリックは認証手順を実行して非保護アクセスをリクエストする。認証に合格した後、マーベリックはデバイスの保護メモリにアクセスすることができた。マーベリックは、ホストのハードウェアJTAGコネクタ及びソフトウェアツールを使用して保護メモリへの書き込みを開始した。コマンドが無事に完了した。処置を終了すると、マーベリックは、デフォルトJTAGアクセスを、デバイスの電源をオフにすることにより復旧させる必要があった。
この技術分野の当業者であれば、本発明について、JTAGポートを使用する形態を利用する実施形態を例示しながら説明してきたことが分るであろう。しかしながら、本発明はこれらの実施形態に制限されるべきではない。その理由は、本発明を他のアクセスポートを使用して実施することができるからである。例えば、標準ポート及び専用ポートの両方をアクセスマネージャ及びレベルコントローラとともに組み込むことにより、保護アクセスポートを形成することができる。
本発明の所定の構成要素は、本明細書における実施形態において説明しているように、時系列図に状態図形式で広範囲に上に記述されるプログラミング命令を実行するプログラムされたプロセッサを使用して実現され、プログラミング命令は、いずれかの適切な電子記憶媒体に格納することができる。しかしながら、この技術分野の当業者であれば、上に説明したプロセスは本発明から逸脱しない限り、どのような種類の変形例としても実行することができ、多くの適切なプログラミング言語で記述することができることが分かるであろう。例えば、実行する所定の操作の順番は多くの場合、変えることができる、更に別の操作を追加することができるか、または操作を、本発明の技術思想及び技術範囲から逸脱しない限り削除することができる。エラートラップ機能を追加すること、および強化することのうちのいずれかまたは両方を行うことができ、変更をユーザインターフェース及び情報提示に本発明から逸脱しない限り加えることができる。このような変更は想到し得るものであり、かつ本発明の均等物と考えられる。
本発明について特定の実施形態に関連付けながら説明してきたが、多くの代替、変形、置換、及び変更を為し得ることが、この技術分野の当業者にとっては自明であることがこれまでの説明から明らかであると言える。従って、本発明はこのような代替、変形、及び変更の全てが添付の請求項の技術範囲に包含されるものとして含むものである。
Claims (17)
- ユーザデバイスによる組み込みデバイスへのアクセスを制御するための方法であって、前記組み込みデバイスにおいて、
認証リクエストを、リクエストした保護レベルでの前記組み込みデバイスへのアクセスの承認を受けようとするユーザデバイスから検出すること、
チャレンジフレーズ及びデバイス識別子を前記ユーザデバイスに対して認証リクエストに応答して発行すること、
前記チャレンジフレーズに対する前記ユーザデバイスによる応答を検証すること、
前記ユーザデバイスによる応答の認証に合格した場合に、前記ユーザデバイスの前記組み込みデバイスへのアクセスを許可すること、
前記組み込みデバイスの保護レベルを前記リクエストした保護レベルに下げること、
を備える方法。 - ランダム番号を生成すること、
前記ランダム番号とリクエストした保護レベル情報とを組み合わせてチャレンジフレーズを生成すること、
を備える請求項1に記載の方法。 - ユーザデバイスによる応答は、前記ランダム番号を含む検証トークンを含み、前記チャレンジフレーズに対する前記ユーザデバイスによる応答を検証することは、検証トークンを、前記チャレンジフレーズを生成するために使用されるランダム番号と比較することを含む、請求項2に記載の方法。
- 前記リクエストした保護レベルでの前記組み込みデバイスへの前記ユーザデバイスによるアクセスを承認することは、保護JTAGポートを前記リクエストした保護レベルで構成することを含む、請求項1に記載の方法。
- 組み込みデバイスへのユーザデバイスによるアクセスを制御するための保護ポートであって、
前記ユーザデバイスと通信するように動作するポートコントローラと、
前記ユーザデバイスに対してリクエストした保護レベルでのアクセスを認証するかどうかについて判断するように動作するアクセスマネージャと、
アクセスポートと、
前記アクセスマネージャに応答し、かつ前記アクセスポートの保護レベルを前記リクエストした保護レベルに下げるように動作するレベルコントローラと、を備え、
前記アクセスポートはアーキテクチャ固有のハードウェアによってサポートされ、前記組み込みデバイスへのアクセスの制限を提供する、保護ポート。 - 前記アクセスポートは通信アクセスポートを含む、請求項5に記載の保護ポート。
- 前記アクセスマネージャは、
ランダム番号を、リクエストした保護レベルでの前記組み込みデバイスへのアクセスの認証を受けようとするユーザデバイスからのリクエストに応答して生成するように動作するランダム番号生成器と、
チャレンジフレーズに対するユーザデバイスによる応答の信憑性を判断するように動作する検証モジュールと、
を含む、請求項5に記載の保護ポート。 - 前記検証モジュールは、前記ランダム番号及び前記レベルを、保護サーバに格納される前記組み込みデバイスの秘密鍵に対応する公開鍵を使用して前記チャレンジフレーズに暗号化するように動作する、請求項7に記載の保護ポート。
- 前記レベルコントローラは、前記アクセスポートを、前記アクセスマネージャ及びフューズ機構によって決定される保護レベルで構成するように動作する、請求項5に記載の保護ポート。
- 前記リクエストした保護レベルは、非保護レベル、低保護レベル、高保護レベル、選択的高保護レベル、及び最高保護レベルから成るグループから選択される、請求項5に記載の保護ポート。
- ユーザデバイスが保護レベルを、認証を受けることなく下げることを防止するように動作するフューズ機構を備える、請求項5に記載の保護ポート。
- 前記アクセスマネージャ、前記レベルコントローラ、及び前記アクセスポートの間の電気的接続は、前記組み込みデバイスの内部シリコン層の上に形成される、請求項5に記載の保護ポート。
- 組み込みデバイスへのユーザデバイスによるアクセスを制御するためのシステムであって、
前記組み込みデバイスと一体化され、かつアクセスマネージャを含む保護アクセスポートであって、前記アクセスマネージャは、チャレンジフレーズを前記ユーザデバイスからのリクエストシーケンスに従って発行して、前記組み込みデバイスにアクセスするように動作し、前記チャレンジフレーズに対する前記ユーザデバイスによる応答の信憑性を判断し、更に前記組み込みデバイスの保護レベルをリクエストした保護レベルに下げるように動作する、前記保護アクセスポートと、
前記組み込みデバイスの公開鍵に対応する前記組み込みデバイスの秘密鍵を格納するように動作する保護サーバと、
前記ユーザデバイスによって動作可能であり、前記チャレンジフレーズ及びユーザ信用証明情報を、前記保護サーバを用いて保護接続に渡すポートアクセス装置と、を備え、
前記保護サーバは、前記ユーザ信用証明情報を認証し、前記組み込みデバイスの秘密鍵に応じた前記チャレンジフレーズへの応答を発行するように動作し、前記チャレンジフレーズは、ランダム番号を前記リクエストシーケンスと組み合わせた暗号を含む、システム。 - 保護ポートを介した組み込みデバイスへのユーザによるアクセスを制御するための装置であって、
チャレンジフレーズをユーザデバイスに発行するチャレンジ手段と、
前記チャレンジフレーズに対する前記ユーザデバイスによる応答を検証して、ユーザを、リクエストした保護レベルでのアクセスに関して認証するかどうかを判断する認証手段と、
前記認証手段に応答して、前記保護ポートの保護レベルを前記リクエストした保護レベルに下げるレベル制御手段と、を備える装置。 - 前記チャレンジ手段は、チャレンジフレーズを形成するように動作し、前記チャレンジフレーズは、
ランダム番号を、公開鍵でエンコードされたリクエストシーケンスと組み合わせた暗号と、
前記組み込みデバイスの識別子とを含む、請求項14に記載の装置。 - 前記認証手段は、前記ユーザデバイスによる応答を、前記チャレンジフレーズを構成するために使用されるランダム番号と比較するように動作する、請求項14に記載の装置。
- 前記認証手段は、前記ユーザデバイスによる応答を、前記チャレンジフレーズを構成するために使用され、かつ数学的に調整されたランダム番号と比較するように動作する、請求項16に記載の装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/275,348 US20070162759A1 (en) | 2005-12-28 | 2005-12-28 | Protected port for electronic access to an embedded device |
PCT/US2006/061421 WO2007079300A2 (en) | 2005-12-28 | 2006-11-30 | Protected port for electronic access to an embedded device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009521772A true JP2009521772A (ja) | 2009-06-04 |
Family
ID=38228911
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008548791A Withdrawn JP2009521772A (ja) | 2005-12-28 | 2006-11-30 | 組み込みデバイスへの電子的アクセスのための保護ポート |
Country Status (4)
Country | Link |
---|---|
US (1) | US20070162759A1 (ja) |
EP (1) | EP1974496A2 (ja) |
JP (1) | JP2009521772A (ja) |
WO (1) | WO2007079300A2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016512630A (ja) * | 2013-02-04 | 2016-04-28 | アルカテル−ルーセント | ダイナミック・スキャン・スケジューリングのためのシステムおよび方法 |
JP2016535906A (ja) * | 2013-09-03 | 2016-11-17 | テレフオンアクチーボラゲット エルエム エリクソン(パブル) | 集積回路のセキュアなデバッグの可能化 |
Families Citing this family (68)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080082879A1 (en) * | 2006-09-29 | 2008-04-03 | Amar Guettaf | JTAG boundary scan compliant testing architecture with full and partial disable |
US20080192446A1 (en) * | 2007-02-09 | 2008-08-14 | Johannes Hankofer | Protection For Circuit Boards |
US9767319B2 (en) | 2007-04-17 | 2017-09-19 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Method and apparatus of secure authentication for system on chip (SoC) |
US8522051B2 (en) * | 2007-05-07 | 2013-08-27 | Infineon Technologies Ag | Protection for circuit boards |
US8887307B2 (en) * | 2007-10-12 | 2014-11-11 | Broadcom Corporation | Method and system for using location information acquired from GPS for secure authentication |
US9262594B2 (en) * | 2008-01-18 | 2016-02-16 | Microsoft Technology Licensing, Llc | Tamper evidence per device protected identity |
US8156317B2 (en) * | 2008-05-16 | 2012-04-10 | Ati Technologies Ulc | Integrated circuit with secure boot from a debug access port and method therefor |
US8332641B2 (en) * | 2009-01-30 | 2012-12-11 | Freescale Semiconductor, Inc. | Authenticated debug access for field returns |
EP2251813A1 (en) * | 2009-05-13 | 2010-11-17 | Nagravision S.A. | Method for authenticating access to a secured chip by a test device |
WO2010138109A1 (en) * | 2009-05-26 | 2010-12-02 | Hewlett-Packard Development Company, L.P. | System and method for performing a management operation |
US8989705B1 (en) | 2009-06-18 | 2015-03-24 | Sprint Communications Company L.P. | Secure placement of centralized media controller application in mobile access terminal |
FR2958063B1 (fr) * | 2010-03-26 | 2012-04-20 | Thales Sa | Dispositif permettant de securiser un bus de type jtag |
US8429471B2 (en) | 2010-06-25 | 2013-04-23 | Via Technologies, Inc. | Microprocessor apparatus and method for securing a programmable fuse array |
US8341472B2 (en) | 2010-06-25 | 2012-12-25 | Via Technologies, Inc. | Apparatus and method for tamper protection of a microprocessor fuse array |
US8242800B2 (en) * | 2010-06-25 | 2012-08-14 | Via Technologies, Inc. | Apparatus and method for override access to a secured programmable fuse array |
US20120278883A1 (en) * | 2011-04-28 | 2012-11-01 | Raytheon Company | Method and System for Protecting a Computing System |
US9262340B1 (en) * | 2011-12-29 | 2016-02-16 | Cypress Semiconductor Corporation | Privileged mode methods and circuits for processor systems |
US9027102B2 (en) | 2012-05-11 | 2015-05-05 | Sprint Communications Company L.P. | Web server bypass of backend process on near field communications and secure element chips |
US9282898B2 (en) | 2012-06-25 | 2016-03-15 | Sprint Communications Company L.P. | End-to-end trusted communications infrastructure |
US9066230B1 (en) | 2012-06-27 | 2015-06-23 | Sprint Communications Company L.P. | Trusted policy and charging enforcement function |
US8649770B1 (en) | 2012-07-02 | 2014-02-11 | Sprint Communications Company, L.P. | Extended trusted security zone radio modem |
GB2500074B (en) * | 2012-07-09 | 2014-08-20 | Ultrasoc Technologies Ltd | Debug architecture |
US8667607B2 (en) | 2012-07-24 | 2014-03-04 | Sprint Communications Company L.P. | Trusted security zone access to peripheral devices |
US9183412B2 (en) | 2012-08-10 | 2015-11-10 | Sprint Communications Company L.P. | Systems and methods for provisioning and using multiple trusted security zones on an electronic device |
US9015068B1 (en) | 2012-08-25 | 2015-04-21 | Sprint Communications Company L.P. | Framework for real-time brokering of digital content delivery |
US9215180B1 (en) | 2012-08-25 | 2015-12-15 | Sprint Communications Company L.P. | File retrieval in real-time brokering of digital content |
US8954588B1 (en) | 2012-08-25 | 2015-02-10 | Sprint Communications Company L.P. | Reservations in real-time brokering of digital content delivery |
CN103838997A (zh) * | 2012-11-20 | 2014-06-04 | 海尔集团公司 | 一种单片机密码验证方法及装置 |
US9578664B1 (en) | 2013-02-07 | 2017-02-21 | Sprint Communications Company L.P. | Trusted signaling in 3GPP interfaces in a network function virtualization wireless communication system |
US9161227B1 (en) | 2013-02-07 | 2015-10-13 | Sprint Communications Company L.P. | Trusted signaling in long term evolution (LTE) 4G wireless communication |
US9104840B1 (en) | 2013-03-05 | 2015-08-11 | Sprint Communications Company L.P. | Trusted security zone watermark |
US9613208B1 (en) | 2013-03-13 | 2017-04-04 | Sprint Communications Company L.P. | Trusted security zone enhanced with trusted hardware drivers |
US9049013B2 (en) | 2013-03-14 | 2015-06-02 | Sprint Communications Company L.P. | Trusted security zone containers for the protection and confidentiality of trusted service manager data |
US9049186B1 (en) | 2013-03-14 | 2015-06-02 | Sprint Communications Company L.P. | Trusted security zone re-provisioning and re-use capability for refurbished mobile devices |
US8984592B1 (en) | 2013-03-15 | 2015-03-17 | Sprint Communications Company L.P. | Enablement of a trusted security zone authentication for remote mobile device management systems and methods |
US9374363B1 (en) | 2013-03-15 | 2016-06-21 | Sprint Communications Company L.P. | Restricting access of a portable communication device to confidential data or applications via a remote network based on event triggers generated by the portable communication device |
US9191388B1 (en) | 2013-03-15 | 2015-11-17 | Sprint Communications Company L.P. | Trusted security zone communication addressing on an electronic device |
US9021585B1 (en) * | 2013-03-15 | 2015-04-28 | Sprint Communications Company L.P. | JTAG fuse vulnerability determination and protection using a trusted execution environment |
US9171243B1 (en) | 2013-04-04 | 2015-10-27 | Sprint Communications Company L.P. | System for managing a digest of biographical information stored in a radio frequency identity chip coupled to a mobile communication device |
US9324016B1 (en) | 2013-04-04 | 2016-04-26 | Sprint Communications Company L.P. | Digest of biographical information for an electronic device with static and dynamic portions |
US9454723B1 (en) | 2013-04-04 | 2016-09-27 | Sprint Communications Company L.P. | Radio frequency identity (RFID) chip electrically and communicatively coupled to motherboard of mobile communication device |
US9838869B1 (en) | 2013-04-10 | 2017-12-05 | Sprint Communications Company L.P. | Delivering digital content to a mobile device via a digital rights clearing house |
US9443088B1 (en) | 2013-04-15 | 2016-09-13 | Sprint Communications Company L.P. | Protection for multimedia files pre-downloaded to a mobile device |
US9069952B1 (en) | 2013-05-20 | 2015-06-30 | Sprint Communications Company L.P. | Method for enabling hardware assisted operating system region for safe execution of untrusted code using trusted transitional memory |
US9560519B1 (en) | 2013-06-06 | 2017-01-31 | Sprint Communications Company L.P. | Mobile communication device profound identity brokering framework |
US9183606B1 (en) | 2013-07-10 | 2015-11-10 | Sprint Communications Company L.P. | Trusted processing location within a graphics processing unit |
US9208339B1 (en) | 2013-08-12 | 2015-12-08 | Sprint Communications Company L.P. | Verifying Applications in Virtual Environments Using a Trusted Security Zone |
US9185626B1 (en) | 2013-10-29 | 2015-11-10 | Sprint Communications Company L.P. | Secure peer-to-peer call forking facilitated by trusted 3rd party voice server provisioning |
US9191522B1 (en) | 2013-11-08 | 2015-11-17 | Sprint Communications Company L.P. | Billing varied service based on tier |
US9161325B1 (en) | 2013-11-20 | 2015-10-13 | Sprint Communications Company L.P. | Subscriber identity module virtualization |
US9118655B1 (en) | 2014-01-24 | 2015-08-25 | Sprint Communications Company L.P. | Trusted display and transmission of digital ticket documentation |
KR102228454B1 (ko) * | 2014-02-24 | 2021-03-16 | 삼성전자주식회사 | 보안 디버깅 회로를 갖는 디바이스 및 그것에 대한 디버깅 방법 |
US9226145B1 (en) | 2014-03-28 | 2015-12-29 | Sprint Communications Company L.P. | Verification of mobile device integrity during activation |
US20150331043A1 (en) * | 2014-05-15 | 2015-11-19 | Manoj R. Sastry | System-on-chip secure debug |
US9230085B1 (en) | 2014-07-29 | 2016-01-05 | Sprint Communications Company L.P. | Network based temporary trust extension to a remote or mobile device enabled via specialized cloud services |
US9779232B1 (en) | 2015-01-14 | 2017-10-03 | Sprint Communications Company L.P. | Trusted code generation and verification to prevent fraud from maleficent external devices that capture data |
US9838868B1 (en) | 2015-01-26 | 2017-12-05 | Sprint Communications Company L.P. | Mated universal serial bus (USB) wireless dongles configured with destination addresses |
US9473945B1 (en) | 2015-04-07 | 2016-10-18 | Sprint Communications Company L.P. | Infrastructure for secure short message transmission |
US9819679B1 (en) | 2015-09-14 | 2017-11-14 | Sprint Communications Company L.P. | Hardware assisted provenance proof of named data networking associated to device data, addresses, services, and servers |
US10282719B1 (en) | 2015-11-12 | 2019-05-07 | Sprint Communications Company L.P. | Secure and trusted device-based billing and charging process using privilege for network proxy authentication and audit |
US9817992B1 (en) | 2015-11-20 | 2017-11-14 | Sprint Communications Company Lp. | System and method for secure USIM wireless network access |
US20170180131A1 (en) * | 2015-12-16 | 2017-06-22 | Intel Corporation | Secure unlock to access debug hardware |
US10267858B2 (en) * | 2017-04-07 | 2019-04-23 | Hamilton Sundstrand Corporation | JTAG lockout for embedded processors in programmable devices |
US20190007212A1 (en) | 2017-06-30 | 2019-01-03 | Intel Corporation | Secure unlock systems for locked devices |
US10499249B1 (en) | 2017-07-11 | 2019-12-03 | Sprint Communications Company L.P. | Data link layer trust signaling in communication network |
GB2578999B (en) * | 2017-08-14 | 2022-06-01 | Zumigo Inc | Mobile number verification for mobile network-based authentication |
US10540213B2 (en) * | 2018-03-07 | 2020-01-21 | Hamilton Sundstrand Corporation | JTAG lockout with dual function communication channels |
US11443071B2 (en) | 2020-02-13 | 2022-09-13 | SiFive, Inc. | Secure debug architecture |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5421006A (en) * | 1992-05-07 | 1995-05-30 | Compaq Computer Corp. | Method and apparatus for assessing integrity of computer system software |
US5379342A (en) * | 1993-01-07 | 1995-01-03 | International Business Machines Corp. | Method and apparatus for providing enhanced data verification in a computer system |
US6138236A (en) * | 1996-07-01 | 2000-10-24 | Sun Microsystems, Inc. | Method and apparatus for firmware authentication |
US5937063A (en) * | 1996-09-30 | 1999-08-10 | Intel Corporation | Secure boot |
AUPO799197A0 (en) * | 1997-07-15 | 1997-08-07 | Silverbrook Research Pty Ltd | Image processing method and apparatus (ART01) |
US6185678B1 (en) * | 1997-10-02 | 2001-02-06 | Trustees Of The University Of Pennsylvania | Secure and reliable bootstrap architecture |
US6754820B1 (en) * | 2001-01-30 | 2004-06-22 | Tecsec, Inc. | Multiple level access system |
US6816968B1 (en) * | 1998-07-10 | 2004-11-09 | Silverbrook Research Pty Ltd | Consumable authentication protocol and system |
US6571335B1 (en) * | 1999-04-01 | 2003-05-27 | Intel Corporation | System and method for authentication of off-chip processor firmware code |
US6789111B1 (en) * | 1999-12-09 | 2004-09-07 | Microsoft Corporation | Automatic detection and installation of client peripheral devices by a server |
US7237121B2 (en) * | 2001-09-17 | 2007-06-26 | Texas Instruments Incorporated | Secure bootloader for securing digital devices |
EP1276033B1 (de) * | 2001-07-10 | 2012-03-14 | Trident Microsystems (Far East) Ltd. | Speichereinrichtung mit Datenschutz in einem Prozessor |
US20030059049A1 (en) * | 2001-09-24 | 2003-03-27 | Mihm Thomas J. | Method and apparatus for secure mobile transaction |
US7076663B2 (en) * | 2001-11-06 | 2006-07-11 | International Business Machines Corporation | Integrated system security method |
US7313705B2 (en) * | 2002-01-22 | 2007-12-25 | Texas Instrument Incorporated | Implementation of a secure computing environment by using a secure bootloader, shadow memory, and protected memory |
US6968420B1 (en) * | 2002-02-13 | 2005-11-22 | Lsi Logic Corporation | Use of EEPROM for storage of security objects in secure systems |
JP2004040717A (ja) * | 2002-07-08 | 2004-02-05 | Matsushita Electric Ind Co Ltd | 機器認証システム |
US7836493B2 (en) * | 2003-04-24 | 2010-11-16 | Attachmate Corporation | Proxy server security token authorization |
EP1711897A4 (en) * | 2004-02-05 | 2007-03-21 | Research In Motion Ltd | DEBUGGING PORT SECURITY INTERFACE |
-
2005
- 2005-12-28 US US11/275,348 patent/US20070162759A1/en not_active Abandoned
-
2006
- 2006-11-30 JP JP2008548791A patent/JP2009521772A/ja not_active Withdrawn
- 2006-11-30 EP EP06846423A patent/EP1974496A2/en not_active Withdrawn
- 2006-11-30 WO PCT/US2006/061421 patent/WO2007079300A2/en active Application Filing
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016512630A (ja) * | 2013-02-04 | 2016-04-28 | アルカテル−ルーセント | ダイナミック・スキャン・スケジューリングのためのシステムおよび方法 |
KR101902166B1 (ko) | 2013-02-04 | 2018-10-01 | 알까뗄 루슨트 | 동적 스캔 스케줄링을 위한 시스템들 및 방법들 |
JP2016535906A (ja) * | 2013-09-03 | 2016-11-17 | テレフオンアクチーボラゲット エルエム エリクソン(パブル) | 集積回路のセキュアなデバッグの可能化 |
US9939074B2 (en) | 2013-09-03 | 2018-04-10 | Telefonaktiebolaget Lm Ericsson (Publ) | Enabling secured debug of an integrated circuit |
Also Published As
Publication number | Publication date |
---|---|
US20070162759A1 (en) | 2007-07-12 |
WO2007079300B1 (en) | 2008-05-29 |
WO2007079300A2 (en) | 2007-07-12 |
EP1974496A2 (en) | 2008-10-01 |
WO2007079300A3 (en) | 2008-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2009521772A (ja) | 組み込みデバイスへの電子的アクセスのための保護ポート | |
JP6719079B2 (ja) | 情報機器、データ処理システム、データ処理方法およびコンピュータプログラム | |
US9921978B1 (en) | System and method for enhanced security of storage devices | |
JP4091744B2 (ja) | コンピュータ装置およびその動作方法 | |
JP4278327B2 (ja) | コンピュータ・プラットフォームおよびその運用方法 | |
EP2248063B1 (en) | Method and apparatus for controlling system access during protected modes of operation | |
US8533811B2 (en) | Developer phone registration | |
JP5572705B2 (ja) | 電子資産を管理するためのシステムおよび方法 | |
JP4067985B2 (ja) | アプリケーション認証システムと装置 | |
JP7332087B2 (ja) | エアギャッピングされた秘密鍵を用いてトランザクションに署名するためのシステムおよび方法 | |
US8489888B2 (en) | Processor apparatus having a security function | |
CN110337652A (zh) | 芯片的访问方法、安全控制模块、芯片和调试设备 | |
US20040128523A1 (en) | Information security microcomputer having an information securtiy function and authenticating an external device | |
CN106537407A (zh) | 可信根 | |
CN103051451A (zh) | 安全托管执行环境的加密认证 | |
CN101512536A (zh) | 认证游戏装置的系统和方法 | |
JP2008532106A (ja) | コンピュータへのデバイスのバインド | |
JP2012510189A (ja) | ハードウェアベースセキュリティのためのシステムおよび方法 | |
CN106716957A (zh) | 高效且可靠的认证 | |
TW201109969A (en) | Method and system for securely updating field upgradeable units | |
US20150127930A1 (en) | Authenticated device initialization | |
Buskey et al. | Protected jtag | |
JP5183517B2 (ja) | 情報処理装置及びプログラム | |
Götzfried et al. | Mutual authentication and trust bootstrapping towards secure disk encryption | |
CA2550566C (en) | Process for releasing the access to a computer system or to a program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20091014 |