JP5118700B2

Portable mass storage with virtual machine activation

Abstract

This record has no abstract on file.

JP5118700B2, drawing sheet 1
Sheet 1 of 3

Term

Projected expiry 26 July 2027.

  1. Priority
  2. Filed
  3. Granted
  4. Today
  5. Projected expiry

68 claims: 14 independent, 54 dependent

  1. 1
    大容量記憶装置型メモリカードであって、 フラッシュメモリと、 コントローラと、 前記フラッシュメモリの読み出し動作および書き込み動作を制御するファームウェアであって、前記読み出し動作および書き込み動作へのアクセスを制限するセキュリティルーチンを前記ファームウェア内に含むファームウェアと、を備え、 前記ファームウェアは、第1の動作状態または第2の動作状態のいずれかで選択的に動作するように構成され、前記カードは、アクティブ化された仮想マシンがないときに第1の動作状態で動作し、アクティブ化された仮想マシンがあるときに第2の動作状態で動作し、 前記カードが第2の動作状態で動作している間、前記ファームウェアのセキュリティルーチンは読み出しおよび書き込み保護されるデータからのデータへのアクセスを前記仮想マシンに許し、前記カードが第2の動作状態で動作しているときに前記仮想マシンに関連するライセンス料が支払われる大容量記憶装置型メモリカード。
  2. 2
    請求項1記載の大容量記憶装置型メモリカードにおいて、 前記仮想マシンのためのメモリスペースは、前記フラッシュメモリ内に確保される大容量記憶装置型メモリカード。
  3. 3
    請求項1記載の大容量記憶装置型メモリカードにおいて、 前記カードは、仮想マシンが前記カードにロードされるまでは第1の動作状態で動作し、その後は第2の動作状態で動作する大容量記憶装置型メモリカード。
  4. 4
    請求項3記載の大容量記憶装置型メモリカードにおいて、 前記仮想マシンとともにアプレットがロードされる大容量記憶装置型メモリカード。
  5. 5
    請求項4 記載の大容量記憶装置型メモリカードにおいて、 前記アプレットは、デジタル著作権管理(DRM)アプリケーションを含む大容量記憶装置型メモリカード。
  6. 6
    ソフトウェアアプリケーションを大容量記憶装置型メモリカードで使用することを可能にする方法であって、 前記カードのデータ記憶動作を実行させるファームウェア、前記カード内の1つ以上のアプリケーションプログラミングインターフェイス、およびアクティブ化されない仮想マシンを備える大容量記憶装置型メモリカードで、ユーザが前記仮想マシンを利用するソフトウェアアプリケーションを使用するため、アクティブ化コマンドなどによって前記仮想マシンをアクティブ化することを実行し、 前記ファームウェアは、第1の動作状態または第2の動作状態のいずれかで選択的に動作するように構成され、前記カードは、アクティブ化された仮想マシンがないときに第1の動作状態で動作し、アクティブ化された仮想マシンがあるときに第2の動作状態で動作し、 前記カードが第2の動作状態で動作している間、前記ファームウェアのセキュリティルーチンは読み出しおよび書き込み保護されるデータからのデータへのアクセスを前記仮想マシンに許し、前記カードが第2の動作状態で動作しているときに前記仮想マシンに関連するライセンス料が支払われる方法。
  7. 7
    請求項6記載の方法において、 前記仮想マシンについてのライセンス料を前記仮想マシンがアクティブ化された場合に限って支払う方法。
  8. 8
    請求項6記載の方法において、 前記ソフトウェアアプリケーションは、前記カードのプロセッサにより実行されるために前記仮想マシンに依拠する方法。
  9. 9
    請求項6記載の方法において、 前記仮想マシンは、消費者が前記カードを受け取る前に前記カードにロードされる方法。
  10. 10
    請求項6記載の方法において、 前記仮想マシンは、消費者が前記カードを受け取った後に前記カードに現場でロードされる方法。
  11. 11
    請求項6記載の方法において、 前記ファームウェアは、前記カードに格納されているデータに前記仮想マシンがアクセスすることをアクティブ化後に初めて可能にする方法。
  12. 12
    請求項8記載の方法において、 前記ソフトウェアアプリケーションは、デジタル著作権管理(DRM)を含む方法。
  13. 13
    請求項12記載の方法において、 前記仮想マシンは、暗号化される方法。
  14. 14
    請求項13記載の方法において、 前記仮想マシンは、前記カードのハードウェアにより、前記カードにロードされるときに暗号化される方法。
  15. 15
    請求項13記載の方法において、 前記暗号化された仮想マシンは、前記カードのハードウェアの署名を含み、前記署名を作ったハードウェア以外のハードウェアによっては実行され得ない方法。
  16. 16
    請求項10記載の方法において、 前記仮想マシンおよび/または前記仮想マシンのプロバイダの真正性をベリファイすることをさらに含む方法。
  17. 17
    携帯可能なフラッシュメモリ大容量記憶装置を提供する方法であって、 データ記憶動作を実行させるファームウェアを備えるフラッシュメモリ大容量記憶装置で、前記装置にロードするべきアプリケーションを有する第1者の信用証明書をベリファイすることを実行し、 前記信用証明書は、第1者が仮想マシンを含むアプリケーションをロードすることを可能にし、 前記フラッシュメモリ大容量記憶装置が有する、データ記憶動作を実行させるファームウェアは、第1の動作状態または第2の動作状態のいずれかで選択的に動作するように構成され、前記フラッシュメモリ大容量記憶装置は、アクティブ化された仮想マシンがないときに第1の動作状態で動作し、アクティブ化された仮想マシンがあるときに第2の動作状態で動作し、 前記カードが第2の動作状態で動作している間、前記ファームウェアのセキュリティルーチンは読み出しおよび書き込み保護されるデータからのデータへのアクセスを前記仮想マシンに許し、前記フラッシュメモリ大容量記憶装置が第2の動作状態で動作しているときに前記仮想マシンに関連するライセンス料が支払われる方法。
  18. 18
    請求項17記載の方法において、 前記アプリケーションを前記携帯可能なフラッシュメモリ大容量記憶装置に受け取ることをさらに含む方法。
  19. 19
    請求項18記載の方法において、 前記アプリケーションは、前記携帯可能なフラッシュメモリ大容量記憶装置が消費者に販売された後に、現場で前記携帯可能なフラッシュメモリ大容量記憶装置に受け取られる方法。
  20. 20
    大容量記憶装置型メモリカードのユーザにソフトウェアアプリケーションを提供する方法であって、 大容量記憶装置型メモリカードのデータ記憶動作を実行させるファームウェアおよび前記カード内の1つ以上のアプリケーションプログラミングインターフェイスを備える大容量記憶装置型メモリカードで、 ソフトウェアアプリケーションをロードするリクエストを受け取ることと、 前記リクエストを受け取った 後に、 仮想マシンを前記カードに受け取り、かつソフトウェアアプリケーションも前記カードに受け取ることと、を実行し、 前記ファームウェアは、第1の動作状態または第2の動作状態のいずれかで選択的に動作するように構成され、前記カードは、アクティブ化された仮想マシンがないときに第1の動作状態で動作し、アクティブ化された仮想マシンがあるときに第2の動作状態で動作し、 前記カードが第2の動作状態で動作している間、前記ファームウェアのセキュリティルーチンは読み出しおよび書き込み保護されるデータからのデータへのアクセスを前記仮想マシンに許し、前記カードが第2の動作状態で動作しているときに前記仮想マシンに関連するライセンス料が支払われる方法。
  21. 21
    請求項20記載の方法において、 前記仮想マシンは、ソフトウェアアプリケーションの要求側に知られずに受け取られる方法。
  22. 22
    請求項20記載の方法において、 前記仮想マシンを前記カードに受け取るリクエストを提供することをさらに含む方法。
  23. 23
    請求項20記載の方法において、 ソフトウェアアプリケーションを受け取る前に、ソフトウェアアプリケーションのプロバイダを認証することをさらに含む方法。
  24. 24
    請求項20記載の方法において、 前記仮想マシンを受け取る前に、前記仮想マシンのプロバイダを認証することをさらに含む方法。
  25. 25
    請求項23または24のいずれか記載の方法において、 前記認証することは、対称認証を含む方法。
  26. 26
    請求項23または24のいずれか記載の方法において、 前記認証することは、非対称認証を含む方法。
  27. 27
    請求項20記載の方法において、 前記カード内のソフトウェアアプリケーションを暗号化することをさらに含む方法。
  28. 28
    請求項20記載の方法において、 前記カード内の仮想マシンを暗号化することをさらに含む方法。
  29. 29
    請求項27または28のいずれか記載の方法において、 前記暗号化することは、前記カードのコントローラに格納されている鍵を利用することを含む方法。
  30. 30
    請求項20記載の方法において、 ソフトウェアアプリケーションは、動作するために前記仮想マシンを必要とする方法。
  31. 31
    大容量記憶装置型メモリカードとともに使用されるように提供される仮想マシンを動作可能にする方法であって、 大容量記憶装置型メモリカードのデータ記憶動作を実行させるファームウェアを備える大容量記憶装置型メモリカードで、 仮想マシンを前記カードに受け取ることと、 前記仮想マシンの機能を利用するリクエストを前記カードの中に受け取ることと、 前記リクエストを前記カードの中に受け取った 後に、 前記仮想マシンが機能するために必要なアプリケーションプログラミングインターフェイスを受け取り、 前記アプリケーションプログラミングインターフェイスを受け取ること により前記仮想マシンが利用されることを可能にすることと、を実行し、 前記ファームウェアは、第1の動作状態または第2の動作状態のいずれかで選択的に動作するように構成され、前記カードは、アクティブ化された仮想マシンがないときに第1の動作状態で動作し、アクティブ化された仮想マシンがあるときに第2の動作状態で動作し、 前記カードが第2の動作状態で動作している間、前記ファームウェアのセキュリティルーチンは読み出しおよび書き込み保護されるデータからのデータへのアクセスを前記仮想マシンに許し、前記カードが第2の動作状態で動作しているときに前記仮想マシンに関連するライセンス料が支払われる方法。
  32. 32
    大容量記憶装置型メモリカードに用いられるソフトウェアアプリケーションをアクティブ化または非アクティブ化する方法であって、 大容量記憶装置型メモリカードのデータ記憶動作を実行させるファームウェアおよび前記カードに格納されているデータにアクセスするためにファームウェアに依拠するソフトウェアアプリケーションを備える大容量記憶装置型メモリカードで、 前記カードのファームウェアでワンタイムパスワード値を生成することと、 前記カードのファームウェアで生成されたワンタイムパスワード値を前記カードの外で生成されたワンタイムパスワード値と比較することと、 前記カードにより生成された値が前記カードの外で生成された値と一致することを比較することでベリファイされたならば、前記ソフトウェアアプリケーションの実行を可能にするかまたは不可能にすることと、を実行し、 前記ファームウェアは、第1の動作状態または第2の動作状態のいずれかで選択的に動作するように構成され、前記カードは、アクティブ化された仮想マシンがないときに第1の動作状態で動作し、アクティブ化された仮想マシンがあるときに第2の動作状態で動作し、 前記カードが第2の動作状態で動作している間、前記ファームウェアのセキュリティルーチンは読み出しおよび書き込み保護されるデータからのデータへのアクセスを前記仮想マシンに許し、前記カードが第2の動作状態で動作しているときに前記仮想マシンに関連するライセンス料が支払われる方法。
  33. 33
    請求項32記載の方法において、 前記ワンタイムパスワード値を生成することは、パスワードを、種と、ソフトウェアアプリケーションに関連付けられた一意の識別子および前記カードに関連付けられた一意の識別子のうちの1つ以上との関数として作成することを含む方法。
  34. 34
    請求項33記載の方法において、 前記ワンタイムパスワード値を生成することは、パスワードを前記カードの関数として作成することをさらに含む方法。
  35. 35
    請求項32記載の方法において、 前記カードは複数 生産され、前記カードの各々は、同じ種を含むけれども、一意の識別子に基づいて値を様々に変化させるワンタイムパスワード生成アルゴリズムを利用することによって所与のカウントについて異なるワンタイムパスワード値を生じさせる方法。
  36. 36
    請求項32記載の方法において、 一意の識別子は、特定のカードに一意に関連付けられた数を含む方法。
  37. 37
    請求項32記載の方法において、 一意の識別子は、ソフトウェアアプリケーションの特定の要求に一意に関連付けられた数を含む方法。
  38. 38
    大容量記憶装置型フラッシュメモリ装置であって、 コントローラと、 ランダムアクセスメモリと、 フラッシュメモリおよびデータ記憶動作を実行させるファームウェアを備える大容量記憶装置と、 仮想マシンと、 仮想マシンの動作が望まれるときに、 前記仮想マシンの 動作を可能にするメカニズムと、を備え、 前記装置のユーザの活動によって前記メカニズムがトリガされたならば、前記仮想マシンに関連するライセンス料が支払われ、 前記大容量記憶装置が有する、データ記憶動作を実行させるファームウェアは、第1の動作状態または第2の動作状態のいずれかで選択的に動作するように構成され、前記大容量記憶装置は、アクティブ化された仮想マシンがないときに第1の動作状態で動作し、アクティブ化された仮想マシンがあるときに第2の動作状態で動作し、 前記大容量記憶装置が第2の動作状態で動作している間、前記ファームウェアのセキュリティルーチンは読み出しおよび書き込み保護されるデータからのデータへのアクセスを前記仮想マシンに許し、前記大容量記憶装置が第2の動作状態で動作しているときに前記仮想マシンに関連するライセンス料が支払われる大容量記憶装置型フラッシュメモリ装置。
  39. 39
    請求項38記載の装置において、 前記仮想マシンは、前記大容量記憶装置のフラッシュメモリに格納される装置。
  40. 40
    大容量記憶装置型フラッシュメモリ装置であって、 コントローラと、 ランダムアクセスメモリと、 フラッシュメモリおよびデータ記憶動作を実行させるファームウェアを備える大容量記憶装置と、 仮想マシンと、 前記仮想マシンを動作可能にするための手段と、を備え、 前記動作可能にするための手段がトリガされたときに、前記仮想マシンについての料金の支払いが開始され、 前記大容量記憶装置が有する、データ記憶動作を実行させるファームウェアは、第1の動作状態または第2の動作状態のいずれかで選択的に動作するように構成され、前記大容量記憶装置は、アクティブ化された仮想マシンがないときに第1の動作状態で動作し、アクティブ化された仮想マシンがあるときに第2の動作状態で動作し、 前記大容量記憶装置が第2の動作状態で動作している間、前記ファームウェアのセキュリティルーチンは読み出しおよび書き込み保護されるデータからのデータへのアクセスを前記仮想マシンに許し、前記大容量記憶装置が第2の動作状態で動作しているときに前記仮想マシンに関連するライセンス料が支払われる大容量記憶装置型フラッシュメモリ装置。
  41. 41
    データ記憶動作を実行させるファームウェアを備える記憶装置であって、 メモリと、 非アクティブ状態である仮想マシンと、 前記メモリの読み出し動作および書き込み動作を制御するように動作可能なコントローラと、を備え、 前記コントローラは、前記仮想マシンをアクティブ状態にするようにさらに動作可能であり、 前記仮想マシンについてのライセンス料の支払いは、前記仮想マシンがアクティブ状態にされた場合に限って必要とされ、 前記コントローラは、前記仮想マシンが非アクティブ状態である第1の動作状態または前記仮想マシンがアクティブ状態である第2の動作状態のいずれかで動作可能であり、 前記記憶装置が有する、データ記憶動作を実行させるファームウェアは、第1の動作状態または第2の動作状態のいずれかで選択的に動作するように構成され、前記記憶装置は、アクティブ化された仮想マシンがないときに第1の動作状態で動作し、アクティブ化された仮想マシンがあるときに第2の動作状態で動作し、 前記記憶装置が第2の動作状態で動作している間、前記ファームウェアのセキュリティルーチンは読み出しおよび書き込み保護されるデータからのデータへのアクセスを前記仮想マシンに許し、前記記憶装置が第2の動作状態で動作しているときに前記仮想マシンに関連するライセンス料が支払われる記憶装置。
  42. 42
    請求項41記載の記憶装置において、 前記コントローラは、アクティブ化コードを受け取ったことに応答して前記仮想マシンをアクティブ状態にするように動作可能である記憶装置。
  43. 43
    請求項42記載の記憶装置において、 前記コントローラは、アクティブ化コードを前記記憶装置に格納されているアクティブ化コードの暗号化されたバージョンと照合することによって、アクティブ化コードを確認するように動作可能である記憶装置。
  44. 44
    請求項42記載の記憶装置において、 前記コントローラは、アクティブ化コードを確認のためにサーバに送るように動作可能である記憶装置。
  45. 45
    請求項42記載の記憶装置において、 前記コントローラは、認証されているエンティティからアクティブ化コードを受け取った場合に限って前記仮想マシンをアクティブ状態にするように動作可能である記憶装置。
  46. 46
    請求項42記載の記憶装置において、 アクティブ化コードは、前記仮想マシンの識別子および前記記憶装置の識別子のうちの1つまたは両方に基づく記憶装置。
  47. 47
    請求項42記載の記憶装置において、 アクティブ化コードは、デジタル著作権管理(DRM)許可をさらに提供する記憶装置。
  48. 48
    請求項42記載の記憶装置において、 アクティブ化コードは、暗号認証方式に基づく記憶装置。
  49. 49
    請求項42記載の記憶装置において、 アクティブ化コードは、ワンタイムパスワードに基づく記憶装置。
  50. 50
    請求項41記載の記憶装置において、 前記コントローラは、アプリケーションプログラミングインターフェイスを受け取ったことに応答して前記仮想マシンをアクティブ状態にするように動作可能である記憶装置。
  51. 51
    請求項41記載の記憶装置において、 前記コントローラは、前記メモリに格納されているデータを保護するセキュリティシステムを実行するように動作可能であり、さらに前記仮想マシンがアクティブ状態にされているときに前記仮想マシンがデータの少なくとも一部にアクセスすることを可能にするように動作可能である記憶装置。
  52. 52
    請求項41記載の記憶装置において、 前記仮想マシンは、エンドユーザへの販売時より前に前記記憶装置にロードされる記憶装置。
  53. 53
    請求項41記載の記憶装置において、 前記仮想マシンは、エンドユーザへの販売時より後に前記記憶装置にダウンロードされる記憶装置。
  54. 54
    請求項53記載の記憶装置において、 前記仮想マシンをアクティブ状態にするためのアクティブ化コードは、前記仮想マシンとともにダウンロードされる記憶装置。
  55. 55
    請求項41記載の記憶装置において、 前記仮想マシンは、新しいファームウェアと一緒に前記記憶装置にロードされる記憶装置。
  56. 56
    データ記憶動作を実行させるファームウェアを備える記憶装置で仮想マシンをアクティブ化する方法であって、 メモリと非アクティブ状態である仮想マシンとを備える記憶装置のコントローラで、 前記仮想マシンをアクティブ状態にするためのアクティブ化コードを受け取ることと、 前記仮想マシンをアクティブ状態にすることと、を実行し、 前記仮想マシンについてのライセンス料の支払いは、前記仮想マシンがアクティブ状態にされた場合に限って必要とされ、 前記コントローラは、前記仮想マシンが非アクティブ状態である第1の動作状態または前記仮想マシンがアクティブ状態である第2の動作状態のいずれかで動作可能であり、 前記記憶装置が有する、データ記憶動作を実行させるファームウェアは、第1の動作状態または第2の動作状態のいずれかで選択的に動作するように構成され、前記記憶装置は、アクティブ化された仮想マシンがないときに第1の動作状態で動作し、アクティブ化された仮想マシンがあるときに第2の動作状態で動作し、 前記記憶装置が第2の動作状態で動作している間、前記ファームウェアのセキュリティルーチンは読み出しおよび書き込み保護されるデータからのデータへのアクセスを前記仮想マシンに許し、前記記憶装置が第2の動作状態で動作しているときに前記仮想マシンに関連するライセンス料が支払われる方法。
  57. 57
    請求項56記載の方法において、 アクティブ化コードを前記記憶装置に格納されているアクティブ化コードの暗号化されたバージョンと照合することによって、アクティブ化コードを確認することをさらに含む方法。
  58. 58
    請求項56記載の方法において、 アクティブ化コードを確認のためにサーバに送ることをさらに含む方法。
  59. 59
    請求項56記載の方法において、 前記仮想マシンは、認証されているエンティティからアクティブ化コードが受け取られた場合に限ってアクティブ状態にされる方法。
  60. 60
    請求項56記載の方法において、 アクティブ化コードは、前記仮想マシンの識別子および前記記憶装置の識別子のうちの1つまたは両方に基づく方法。
  61. 61
    請求項56記載の方法において、 アクティブ化コードは、デジタル著作権管理(DRM)許可をさらに提供する方法。
  62. 62
    請求項56記載の方法において、 アクティブ化コードは、暗号認証方式に基づく方法。
  63. 63
    請求項56記載の方法において、 アクティブ化コードは、ワンタイムパスワードに基づく方法。
  64. 64
    請求項56記載の方法において、 前記メモリに格納されているデータを保護するセキュリティシステムを実行することと、前記仮想マシンがアクティブ状態にされているときに前記仮想マシンがデータの少なくとも一部にアクセスすることを可能にすることとをさらに含む方法。
  65. 65
    請求項56記載の方法において、 前記仮想マシンは、エンドユーザへの販売時より前に前記記憶装置にロードされる方法。
  66. 66
    請求項56記載の方法において、 前記仮想マシンは、エンドユーザへの販売時より後に前記記憶装置にダウンロードされる方法。
  67. 67
    請求項66記載の方法において、 アクティブ化コードは、前記仮想マシンとともにダウンロードされる方法。
  68. 68
    請求項56記載の方法において、 前記仮想マシンは、新しいファームウェアと一緒に前記記憶装置にロードされる方法。
Independent claims68