「ハードウェアDRM」の版間の差分
m タイポ修正 タグ: ビジュアルエディター モバイル編集 モバイルウェブ編集 |
|||
31行目: | 31行目: | ||
[[Unified Extensible Firmware Interface#セキュアブート|UEFI Secure Boot]]は代表的なセキュアブートの仕組みの1つである<ref>{{cite web|url=https://www.redhat.com/es/blog/uefi-secure-boot|title=UEFI Secure Boot|date=2012-06-05|author=Tim Burke|publisher=BLOG DE RED HAT|accessdate=2018-04-04}}</ref>。OSベンダーの秘密鍵で電子署名がなされ、署名検証が成功した場合に限りブート処理を継続する。署名検証が失敗した場合にはブート処理を停止してエラー画面等を利用者に表示する。WindowsマークのついたMicrosoft公認マシンのブートローダーはMicrosoftのセキュアブート電子署名に対応しており、ブートローダーから起動するオペレーティングシステムであるWindows 8・RHEL・openSUSE・Ubuntuなどはセキュアブート電子署名が付与されている。 |
[[Unified Extensible Firmware Interface#セキュアブート|UEFI Secure Boot]]は代表的なセキュアブートの仕組みの1つである<ref>{{cite web|url=https://www.redhat.com/es/blog/uefi-secure-boot|title=UEFI Secure Boot|date=2012-06-05|author=Tim Burke|publisher=BLOG DE RED HAT|accessdate=2018-04-04}}</ref>。OSベンダーの秘密鍵で電子署名がなされ、署名検証が成功した場合に限りブート処理を継続する。署名検証が失敗した場合にはブート処理を停止してエラー画面等を利用者に表示する。WindowsマークのついたMicrosoft公認マシンのブートローダーはMicrosoftのセキュアブート電子署名に対応しており、ブートローダーから起動するオペレーティングシステムであるWindows 8・RHEL・openSUSE・Ubuntuなどはセキュアブート電子署名が付与されている。 |
||
Android Verified Bootは[[Android]]デバイスにおけるセキュアブートの仕組みである<ref>{{cite web|url=https://source.android.com/security/verifiedboot/|title=Verified Boot - Android Developer|publisher=Google LLC|accessdate=2018-04-04}}</ref>。AndroidブートローダーはVerified Bootのブート処理シーケンスで電子署名鍵を用いてbootおよびrecoveryパーティションの正当性を評価する。Verified Bootは、デバイスはロック状態にあるか、電子署名鍵に対してパーティションは正当か、電子署名鍵は正当なOEM Keyであるか、の3点を評価する。評価結果が不正である場合、ブート処理を停止し電源を落とす、警告画面を表示するなどのエラー処理を実行する。 |
Android Verified Bootは[[Android (オペレーティングシステム)|Android]]デバイスにおけるセキュアブートの仕組みである<ref>{{cite web|url=https://source.android.com/security/verifiedboot/|title=Verified Boot - Android Developer|publisher=Google LLC|accessdate=2018-04-04}}</ref>。AndroidブートローダーはVerified Bootのブート処理シーケンスで電子署名鍵を用いてbootおよびrecoveryパーティションの正当性を評価する。Verified Bootは、デバイスはロック状態にあるか、電子署名鍵に対してパーティションは正当か、電子署名鍵は正当なOEM Keyであるか、の3点を評価する。評価結果が不正である場合、ブート処理を停止し電源を落とす、警告画面を表示するなどのエラー処理を実行する。 |
||
Solaris Verified Bootは[[Solaris]]マシンにおけるセキュアブートの仕組みである<ref>{{cite web|author=Dan Anderson|date=2014-04-29|url=https://blogs.oracle.com/solaris/solaris-verified-boot-v3|title=Solaris Verified Boot|publisher=Oracle|accessdate=2018-04-04}}</ref>。Verified BootはSolarisの起動の前、[[SPARC]] [[OpenBoot]]によってSolarisの[[カーネルモジュール]]をロードする前にモジュールの障害・改ざんを検知する。モジュールの正当性が疑われる場合、モジュールのロードを取り止める、警告ログを出力するなどのエラー処理を実行する。 |
Solaris Verified Bootは[[Solaris]]マシンにおけるセキュアブートの仕組みである<ref>{{cite web|author=Dan Anderson|date=2014-04-29|url=https://blogs.oracle.com/solaris/solaris-verified-boot-v3|title=Solaris Verified Boot|publisher=Oracle|accessdate=2018-04-04}}</ref>。Verified BootはSolarisの起動の前、[[SPARC]] [[OpenBoot]]によってSolarisの[[カーネルモジュール]]をロードする前にモジュールの障害・改ざんを検知する。モジュールの正当性が疑われる場合、モジュールのロードを取り止める、警告ログを出力するなどのエラー処理を実行する。 |
2020年9月6日 (日) 09:39時点における最新版
ハードウェアDRMは、ハードウェアによるハードウェア・ソフトウェア・コンテンツに対するDRMおよびコピーガードを指す技術の総称である[1]。
ハードウェアDRMは電子部品にソフトウェアおよびコンテンツの利用を管理する機構を設けて、その管理部でハードウェア上で動作するソフトウェアの動作を制御することで実現されている。広義の表現で物理的な電子部品による制御の他、OSより下位層のファームウェア、OS起動前のブートローダーによる制御も含む。
手法
[編集]ハードウェアによるDRMは、物理的な電子部品の接合・分離を伴うドングルやハードウェア更新、ファームウェアやブートローダーによるハードウェアDRM・セキュアブートなど、様々な手法が確立されている。一般的なDRMとの違いは、オペレーティングシステムを含むソフトウェア層より下層のファームウェア・ハードウェアでDRMを実現する点である。
ドングル
[編集]ドングル(英: dongle)は、ソフトウェアおよびコンテンツのコピープロテクトのためにコンピュータの入出力ポートに接続する小さなデバイスである[2]。ドングルが接続し、ドングルの検証処理が正常に動作している場合はソフトウェアは正しく起動・動作するが、ドングルが切断・処理中断した場合はソフトウェアは動作を停止する。ドングルを用いたコピープロテクトでは、ソフトウェアやコンテンツのデータ自体はコピーフリーな状態にあるが、ソフトウェアやコンテンツを利用にはドングルが必要であり、実質的にコピープロテクトな状態にある。ドングルの検証処理は基本的にはユーザーが書き換えることは想定されていないが、ドングルの検証処理部をカスタマイズすること前提にしたドングル製品も存在する[3]。
ハードウェア更新
[編集]ハードウェア更新は、更新可能なプロセッサを機能が制限した状態で販売し、後から機能制限を解除する。
インテルの一部のプロセッサは機能が抑制された状態で販売され、追加料金を支払ってアンロックコードを入力することでフルスペックの機能が利用できるようになる[4][5]。
IBMのメインフレームであるSystem/370は拡張ハードウェアを持ち、顧客が追加料金を支払うとカスタマーエンジニアを派遣してマシンのレジスタを切り離すことでハードウェア機能を有効にする。
ハードウェアDRM
[編集]ハードウェアDRMは、ハードウェア層でソフトウェア・コンテンツの著作権を管理し、適切な権利の基に利用を許諾する。
インテル・インサイダーは、インテルのチップセット層でデジタルコンテンツの保護機能を提供し、許諾のない高画素動画のストリーミング再生ができないように動作する[6]。
Appleデバイス(iPhone・Apple Watch・Apple TVなど)のファームウェアはAppleが承認してApp Storeから配信されたアプリケーションのみの実行を許諾する[7]。アプリケーションはApple署名・開発者署名・デバイスUUIDにより保護され、アプリケーションデータを複製してもファームウェアの検証により他デバイスではインストール・実行は抑制される。Androidデバイスでもアプリケーション署名はあるが、こちらはソフトウェア層のDRMである[8]。
セキュアブート
[編集]セキュアブート(英: secure boot)は、ブートローダーがオペレーティングシステムもしくは二次ブートローダーを起動する際に、ブートローダーが起動対象のソフトウェアの電子署名やチェックサムを評価することでソフトウェアの正当性を確認するアーキテクチャである。
UEFI Secure Bootは代表的なセキュアブートの仕組みの1つである[9]。OSベンダーの秘密鍵で電子署名がなされ、署名検証が成功した場合に限りブート処理を継続する。署名検証が失敗した場合にはブート処理を停止してエラー画面等を利用者に表示する。WindowsマークのついたMicrosoft公認マシンのブートローダーはMicrosoftのセキュアブート電子署名に対応しており、ブートローダーから起動するオペレーティングシステムであるWindows 8・RHEL・openSUSE・Ubuntuなどはセキュアブート電子署名が付与されている。
Android Verified BootはAndroidデバイスにおけるセキュアブートの仕組みである[10]。AndroidブートローダーはVerified Bootのブート処理シーケンスで電子署名鍵を用いてbootおよびrecoveryパーティションの正当性を評価する。Verified Bootは、デバイスはロック状態にあるか、電子署名鍵に対してパーティションは正当か、電子署名鍵は正当なOEM Keyであるか、の3点を評価する。評価結果が不正である場合、ブート処理を停止し電源を落とす、警告画面を表示するなどのエラー処理を実行する。
Solaris Verified BootはSolarisマシンにおけるセキュアブートの仕組みである[11]。Verified BootはSolarisの起動の前、SPARC OpenBootによってSolarisのカーネルモジュールをロードする前にモジュールの障害・改ざんを検知する。モジュールの正当性が疑われる場合、モジュールのロードを取り止める、警告ログを出力するなどのエラー処理を実行する。
TPM Trusted BootはTrusted Platform Moduleの機能を用いた物理・仮想プラットフォームでのセキュアブートの仕組みである[12][13]。Trusted Platform Moduleはその在り方から演算処理そのものがThompson hackなどのクラッキングを受ける可能性が低く、ブートローダーが起動対象のソフトウェアを検証するツールとして有効である。
ハッキング
[編集]アンロック
[編集]正規・非正規の手法を用いてハードウェアDRMの管理機能をアンロック(解除)するハッキング手法がある。
インテルやIBMのプロセッサによるハードウェアDRMはコンシューマーが追加料金を支払うことで機能がアンロックされる正規のハッキング手法である。
Androidデバイスはブートローダーのアンロックを無償で許可しているもの、有償で許可しているもの、公式には許可していないものがある。公式には許可されていないデバイスのアンロックは非正規のアンロック手法である。いずれの場合でもアンロックした時点でデバイスはカスタマーサポートの契約の範囲外となり、自己責任においてデバイスを利用することになる。
Jailbreak
[編集]Jailbreakは、非合法のファームウェアを書き換えてハードウェアDRMをハッキングする手法である。主にAppleデバイスのファームウェアのハッキングに対して用いられており[14]、App Storeでは配信されていないアプリケーションのインストールや、Appleがサポートを停止している古いオペレーティングシステムバージョンへのダウングレードなどを実現する。Jailbreakしたデバイスで利用するツールとしてCydiaなどがある[15]。
批評
[編集]Defective by Design
[編集]ハードウェアDRMはハードウェア制約・制限(英: Hardware restrictions)として批判される立場にある。これはフリーソフトウェア運動の一貫において、デジタル著作権管理(DRM、英: Digital rights management)がデジタル制約管理(DRM、英: Digital restrictions management)としてDefective by Designと批判されるのと同様の立場である。
TiVo社がTiVoブランドのハードディスクレコーダー (DVR) にGNU GPLのソフトウェアを利用していたにもかかわらず、ハードウェアDRMによりハードディスクレコーダー上で動作するソフトウェアを制限していたことに対して、フリーソフトウェア財団のリチャード・ストールマンはTiVo化という用語をもって強く批判した[16][17]。
WindowsマークのマシンにおけるセキュアブートはMicrosoft公認のオペレーティングシステム以外をインストールすることを抑制するベンダーロックインを促進しており、LinuxなどのサードパーティーOSのインストールができなくなると、レッドハットの開発者マシュー・ギャレットおよびフリーソフトウェア財団のジョシュア・ゲイにより懸念が表明されている[18][19]。
脚注
[編集]- ^ “If Piracy is the Problem, Is DRM the Answer?” (pdf). HP Laboratories. 2018年4月4日閲覧。
- ^ “dongle”. www.catb.org. 2018年4月4日閲覧。
- ^ “HARDWARE DRM”. Aktiv Soft JSC. 2018年4月4日閲覧。
- ^ Intel wants to charge $50 to unlock stuff your CPU can already do - Engadget
- ^ Intel + DRM: a crippled processor that you have to pay extra to unlock - Boing Boing
- ^ Intel: Sandy Bridge's Insider is not DRM - Computerworld
- ^ “Save SHSH Blobs (ECID SHSH) of iPhone 3.1.3 and iPad 3.2”. Redmond Pie (April 30, 2010). December 30, 2012閲覧。
- ^ “Application Signing - Android Developer”. Google LLC. 2018年4月4日閲覧。
- ^ Tim Burke (2012年6月5日). “UEFI Secure Boot”. BLOG DE RED HAT. 2018年4月4日閲覧。
- ^ “Verified Boot - Android Developer”. Google LLC. 2018年4月4日閲覧。
- ^ Dan Anderson (2014年4月29日). “Solaris Verified Boot”. Oracle. 2018年4月4日閲覧。
- ^ “Trusted Platform Module”. Microsoft. 2018年4月4日閲覧。
- ^ “IBM Knowledge Center - Trusted Boot”. IBM. 2018年4月4日閲覧。
- ^ Chris Foresman (December 13, 2010). “iPhone jailbreaker set to bring Cydia to Mac OS X”. Ars Technica. Condé Nast. August 2, 2011閲覧。
- ^ Jack Loftus (September 11, 2010), Largest iOS Jailbreak App Stores Become One After Cydia Acquires Rock, Gizmodo August 2, 2011閲覧。
- ^ “GNU.org Frequently Asked Questions about the GNU Licenses”. Free Software Foundation. 2011年4月27日閲覧。
- ^ “A Quick Guide to GPLv3”. Free Software Foundation. 2011年4月27日閲覧。
- ^ Garrett, Matthew. “UEFI secure booting”. 2011年9月20日閲覧。
- ^ “Stand up for your freedom to install free software”. www.fsf.org. Free Software Foundation. 2011年10月25日閲覧。