Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5452988B2 - メモリ制御装置、コンテンツ再生装置、制御方法及び記録媒体 - Google Patents
[go: Go Back, main page]

JP5452988B2 - メモリ制御装置、コンテンツ再生装置、制御方法及び記録媒体 - Google Patents

メモリ制御装置、コンテンツ再生装置、制御方法及び記録媒体 Download PDF

Info

Publication number
JP5452988B2
JP5452988B2 JP2009138281A JP2009138281A JP5452988B2 JP 5452988 B2 JP5452988 B2 JP 5452988B2 JP 2009138281 A JP2009138281 A JP 2009138281A JP 2009138281 A JP2009138281 A JP 2009138281A JP 5452988 B2 JP5452988 B2 JP 5452988B2
Authority
JP
Japan
Prior art keywords
content
unit
reproduction
data
integrity check
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.)
Expired - Fee Related
Application number
JP2009138281A
Other languages
English (en)
Other versions
JP2010027038A (ja
Inventor
裕一 布田
智之 芳賀
孝幸 伊藤
秀樹 松島
好克 井藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2009138281A priority Critical patent/JP5452988B2/ja
Publication of JP2010027038A publication Critical patent/JP2010027038A/ja
Application granted granted Critical
Publication of JP5452988B2 publication Critical patent/JP5452988B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/2101Auditing as a secondary aspect
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)
  • Memory System (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

本発明はフラッシュメモリの劣化対策に関し、特に、コンテンツの不正利用を防止するために用いられるインテグリティチェックデータを格納するフラッシュメモリの劣化対策に関する発明である。
近年、サーバからクライアントへコンテンツを送信し、クライアントにてコンテンツを視聴するコンテンツ配信システムが利用されるようになってきている。
上記システムにおけるコンテンツの販売形態としては、1回のみ視聴可能、視聴回数の制限を設ける、累積視聴時間の制限を設ける、視聴時間に応じて課金する等、様々なものがある(非特許文献1を参照)。コンテンツの試聴回数や累積視聴時間等に応じて課金する場合、視聴回数や視聴時間等の再生に関する情報(以下、「再生情報」と呼称する。)をクライアントにて管理する必要がある。
このとき、悪意のあるユーザや外部の攻撃者が、再生情報を改ざんしたり、再生情報の前の状態を保持しておき視聴後に前の状態の再生情報に戻すセーブリストア攻撃をしたりして、利用可能な範囲を超えてコンテンツを不正利用する可能性がある。
そこで、従来は、再生情報に対するハッシュ値などのインテグリティチェックデータをセキュアなメモリに格納して、再生情報の改ざんが行われているか否かをチェックすることで、コンテンツの不正利用を防止している。インテグリティチェックデータを格納するセキュアなメモリとして、不揮発性メモリであるフラッシュメモリを使用することが考えられる。しかし、フラッシュメモリは書き込みにより劣化し、最終的には破壊されてしまう。
特に、インテグリティチェックデータは、数秒から数分単位で頻繁に更新されることが多く、インテグリティチェックデータを格納するメモリとしてフラッシュメモリを用いると、書き込みが頻繁に発生することにより、劣化度合いが大きくなる。
特許文献1及び特許文献2は、フラッシュメモリの劣化対策を開示している。
特許文献1は、フラッシュメモリの格納領域に対するデータの書き込み回数が、劣化に耐え得る回数以下となるように制御する技術を開示している。具体的には、図13(a)に示すように、格納領域に、データとデータを書き込んだ回数とを対にして格納し、現在使用している格納領域を示すポインタを、フラッシュメモリの最初の場所に格納する。そして、データを書き込んだ回数が、閾値を超えたときに、図13(b)に示すように、次の格納領域を使用するように、ポインタを更新する。その結果、すべての格納領域を閾値以下の書き込み回数となるように制御することができる。
また、特許文献2は、フラッシュメモリの各格納領域の使用頻度に基づいて、次に使用する格納領域を決定する技術を開示している。これにより、各格納領域の使用頻度を平均化して、フラッシュメモリの劣化を抑制することができる。
特開平8−314807号公報 特開平11−85629号公報
Marlin Use Cases Part 1,2,2008年3月24日、(URL:http://www.marlin−community.com/) 岡本龍明、山本博資著「現代暗号」、産業図書(1997年)
しかしながら、特許文献1では、フラッシュメモリに格納されているインテグリティチェックデータの読み込み処理の際に、ポインタ及びデータの両方の読み込みが必要であり、また、書き込み処理の際に、ポインタの読み込みやデータとデータを書き込んだ回数との両方の書き込みが必要であるため、処理量が増加する。更に、通常、フラッシュメモリはブロック単位を最低書き込み単位として書き込むが、データと回数とをそれぞれ書き込むブロックが異なる場合に、データと回数との両方を書き込むことにより劣化度合いが大きくなる。また、特許文献2では、各領域の使用頻度を管理する必要がある。
このように、特許文献1及び特許文献2に記載の劣化対策は、データの読み込み及び書き込みに伴う処理量が増加するという問題がある。
本発明は、上記の問題点に鑑みなされたものであって、上記の従来技術と比較して、読み込み及び書き込み時の処理量を少なくしつつ、インテグリティチェックデータを格納するセキュアなフラッシュメモリに適した劣化対策を実現するデータ格納装置、コンテンツ再生装置、データ格納方法、コンピュータプログラム、記録媒体及び集積回路を提供することを目的とする。
上記の目的を達成するために、本発明は、メモリ制御装置であって、所定の情報を格納し耐タンパー技術により保護されていない非セキュア格納部と、耐タンパー技術で保護され且つデータの書き込みの繰り返しによって劣化する性質を有するセキュア格納部と、前記非セキュア格納部に格納された前記所定の情報に所定の計算を施してインテグリティチェックデータを生成する生成部と、前記インテグリティチェックデータの所定領域を構成する数値列に基づいて、前記インテグリティチェックデータを格納する前記セキュア格納部の格納先アドレスを生成して、この生成された格納先アドレスに基づいて前記インテグリティチェックデータを前記セキュア格納部に格納する格納処理部と、を具備することを特徴とする。
上記の構成によると、非セキュア格納部に格納された所定の情報に所定の計算を施して生成されたインテグリティチェックデータの一部に基づいて、前記セキュア格納部の格納先アドレスを生成することにより、所定の情報が更新される毎に生成されたインテグリティチェックデータも異なるので、前記セキュア格納部の所定領域に書き込みが集中して前記セキュア格納部が劣化するのを抑制できる。
また、前記所定の情報から生成されたインテグリティチェックデータそのものの一部に基づいて前記セキュア格納部の格納先アドレスを生成して、この生成された格納先アドレスを用いて前記格納先アドレスに前記生成されたインテグリティチェックデータを格納するので、インテグリティチェックデータを格納するためのアドレスを別途生成する処理を削減でき、その分処理を高速化できる。
また、本発明は、コンテンツ再生装置であって、コンテンツの再生部と、前記コンテンツの再生に関する再生情報を格納し耐タンパー技術により保護されていない非セキュア格納部と、耐タンパー技術で保護され且つデータの書き込みの繰り返しによって劣化する性質を有するセキュア格納部と、前記非セキュア格納部に格納された前記再生情報に所定の計算を施してインテグリティチェックデータを生成する生成部と、前記インテグリティチェックデータの所定領域を構成する数値列に基づいて、前記インテグリティチェックデータを格納する前記セキュア格納部の格納先アドレス生成して、この生成された格納先アドレスに基づいて前インテグリティチェックデータを前記セキュア格納部に格納する格納処理部とを具備することを特徴とする。
本態様によると、非セキュア格納部に格納されたコンテンツの再生情報に所定の計算を施して生成されたインテグリティチェックデータの一部に基づいて、前記セキュア格納部の格納先アドレスを生成することにより、前記再生情報が更新される毎に生成されたインテグリティチェックデータも異なるので、前記セキュア格納部の所定領域に書き込みが集中して前記セキュア格納部が劣化するのを抑制できる。
また、前記再生情報から生成されたインテグリティチェックデータそのものの一部に基づいて前記セキュア格納部の格納先アドレスを生成して、この生成された格納先アドレスを用いて前記格納先アドレスに前記生成されたインテグリティチェックデータを格納するので、インテグリティチェックデータを格納するためのアドレスを別途生成する処理を削減でき、その分処理を高速化できる。
また、本発明は、コンテンツ再生装置であって、コンテンツの再生部と、前記コンテンツの再生に関する再生情報を格納し耐タンパー技術により保護されていない通常格納部と、耐タンパー技術で保護され且つデータの書き込みの繰り返しによって劣化する性質を有するセキュア格納部と、前記非セキュア格納部に格納された前記再生情報に所定の計算を施して第1インテグリティチェックデータを生成する生成部と、前記第1インテグリティチェックデータの所定領域を構成する第1数値列に基づいて、前記第1インテグリティチェックデータを格納する前記セキュア格納部の第1格納先アドレス生成して、この生成された第1格納先アドレスに基づいて前記第1インテグリティチェックデータを前記セキュア格納部に格納する格納処理部と、再生対象のコンテンツの再生情報を前記非セキュア格納部から読み出して前記所定の計算を施して第2インテグリティチェックデータを計算し、前記第2インテグリティチェックデータの所定領域を構成する第2数値列に基づいて生成された前記セキュア格納部の第2アドレスから所定のインテグリティチェックデータを読み出し、前記読み出した所定のインテグリティチェックデータと前記第1インテグリティチェックデータとを比較して一致した場合前記再生情報は改竄されていないと判断し、一方、不一致の場合前記再生情報は改竄されていると判断する検証部とを具備することを特徴とする。
本態様によると、再生対象のコンテンツの再生情報を前記非セキュア格納部から読み出して前記所定の計算を施して第2インテグリティチェックデータを計算し、前記第2インテグリティチェックデータの所定領域を構成する第2数値列に基づいて生成された前記セキュア格納部の第2アドレスから所定のインテグリティチェックデータを読み出し、前記読み出した所定のインテグリティチェックデータと前記第1インテグリティチェックデータとを比較して一致した場合前記再生情報は改竄されていないと判断し、一方、不一致の場合前記再生情報は改竄されていると判断する。
これにより、本装置の外部からアクセス可能である非セキュア格納部に格納された再生情報が、改竄されたか否かを、本装置の外部からアクセスできないセキュア格納部に格納されたインテグリティチェックデータとの比較により検証する。そのため、前記再生情報は改竄された否かの判断を確実に検証できる。
ここで、前記再生情報が改竄されていると前記検証部が判断した場合、前記再生部は前記コンテンツの再生を禁止するように構成してもよい。
本態様によると、コンテンツの不正利用を防止できる。
ここで、前記再生情報が改竄されていないと前記検証部が判断した場合、前記再生部は前記コンテンツを再生するように構成してもよい。
本態様によると、前記再生情報が改竄されていない場合には、コンテンツの再生を許可する。
ここで、前記再生部によりコンテンツが再生されると前記再生情報を更新して前記更新された再生情報を前記非セキュア格納部に格納する再生情報生成部を備え、前記再生部は、前記再生情報が改竄されていないと前記検証部が判断した場合、前記コンテンツを再生し、前記再生情報生成部は、前記コンテンツの再生により更新された再生情報を前記非セキュア格納部に格納し、前記生成部は、前記更新された再生情報に前記所定の計算をして第3インテグリティチェックデータを生成し、前記格納処理部は、前記セキュア格納部の前記第1格納先アドレスに格納されている前記第1インテグリティチェックデータの一部を書き換え、前記格納処理部は、さらに、前記第3インテグリティチェックデータの所定領域を構成する第3数値列に基づいて、前記第3インテグリティチェックデータを格納する前記セキュア格納部の第3格納先アドレスを生成し、この生成された第3格納先アドレスに基づいて前記第3インテグリティチェックデータを前記セキュア格納部に格納するように構成してもよい。
前記再生部がコンテンツを再生した場合、前記コンタンツの再生情報も更新される必要がある。この場合、再生後の再生情報からインテグリティチェックデータが生成され、前記セキュア格納部に格納される。一方、前記セキュア格納部には、再生前の再生情報に対応するインテグリティチェックデータも格納されている。ここで、非セキュア格納部は、本装置の外部からアクセス可能であるため、格納された再生情報が更新前のものに改竄されるおそれがある。
上記のように、前記セキュア格納部には、再生前の再生情報に対応するインテグリティチェックデータも格納されているため、改竄された更新前の再生情報からインテグリティチェックデータが生成された場合、更新前の再生情報からインテグリティチェックデータと前記セキュア格納部に格納されたインテグリティチェックデータとが一致して、コンテンツが不正利用されるおそれがある。
そこで、本態様によると、前記セキュア格納部の前記第1格納先アドレスに格納されている前記第1インテグリティチェックデータの一部を書き換える。
これにより、仮に、非セキュア格納部に格納された再生情報が更新前のものに改竄された場合であっても、前記更新前の再生情報から生成されたインテグリティチェックデータは、前記セキュア格納部に格納され且つ前記更新前の再生情報に対応するインテグリティチェックデータとは一致しないので、前記再生情報は改竄された否かを確実に判断でき、コンテンツの不正利用を防止できる。
ここで、前記コンテンツ再生装置は、前記所定のインテグリティチェックデータが前記一部を書き換えた第1インテグリティチェックデータの場合、所定のインテグリティチェックデータと前記第1インテグリティチェックデータとを比較して不一致と判断するように構成してもよい。
本態様によると、前記第1インテグリティチェックデータと前記一部を書き換えた第1インテグリティチェックデータとを比較するので、両者の比較結果は不一致となって、コンテンツの不正利用を防止できる。
ここで、前記コンテンツ再生装置は、前記一部を書き換えた前記第1インテグリティチェックデータの第1格納先アドレスを保持した旧アドレス保持部を備え、前記検証部は、前記旧アドレス保持部から読み出された第1格納先アドレスに基づいて、前記セキュア格納部から前記一部を書き換えた前記第1インテグリティチェックデータを前記所定のインテグリティチェックデータとして読み出し、前記一部を書き換えた第1インテグリティチェックデータと前記第1インテグリティチェックデータとを比較して不一致と判断するように構成してもよい。
本態様によると、前記一部を書き換えた第1インテグリティチェックデータの第1格納先アドレスを保持した旧アドレス保持部を備えることにより、更新後の再生情報に対応する第3インテグリティチェックデータの第3格納先アドレスとは別に、更新前の再生情報に対応する一部を書き換えた第1インテグリティチェックデータの格納先が保持されているので、前記一部を書き換えた第1インテグリティチェックデータと前記第1インテグリティチェックデータとの比較が容易となる。
ここで、前記セキュア格納部は、所定のサイズのブロックを最低書込み単位としてデータを書き込むフラッシュメモリであるとしてもよい。
本態様によると、フラッシュメモリの所定領域に書き込みが集中してフラッシュメモリが劣化するのを抑制できる。
ここで、前記インテグリティチェックデータの所定領域を構成する数値列は、前記インテグリティチェックデータの下位所定ビットの数値列であるとしてもよい。
本態様によると、インテグリティチェックデータの下位所定ビットの数値列に基づき、格納先アドレスを生成することができる。
ここで、前記所定の計算はハッシュ計算であり、前記インテグリティチェックデータはハッシュ値であるとしてもよい。
本態様によると、ハッシュ値を用いることで、改竄検出の信頼性を高めることができる。また、本態様によると、ハッシュ値に基づき格納先アドレスが生成されるので、セキュア格納部におけるデータの格納先を分散させることができる。
ここで、前記再生情報は、前記コンテンツを再生した履歴を示す再生履歴情報であるとしてもよい。
本態様によると、再生履歴の改竄検出を行い、コンテンツの不正利用を防止することができる。
ここで、前記再生情報は、前記コンテンツの再生権利を示す情報であるとしてもよい。
本態様によると、再生権利の改竄検出を行い、コンテンツの不正利用を防止することができる。
本発明に係るひとつの実施形態としてのコンテンツ再生装置1000の構成を示すブロック図である。 コンテンツ再生装置1000における各メモリに格納されるデータを示す図である。 再生履歴情報の例を示す図である。 コンテンツ再生装置1000の動作を示すフローチャートである。 コンテンツ再生装置1000の再生情報検証処理の動作を示すフローチャートである。 コンテンツ再生装置1000のコンテンツ再生処理の動作を示すフローチャートである。 コンテンツ再生装置1000の再生情報蓄積処理の動作を示すフローチャートである。 コンテンツ再生装置1000の再生情報送信処理の動作を示すフローチャートである。 確認データ変更部1010による確認データの変更処理の具体例を示す図である。 コンテンツ再生装置1000のセーブリストア攻撃に関する効果を説明する図である。 従来方法の再生検証処理と、コンテンツ再生装置1000が行う再生検証処理とを比較して説明するための図である。 従来方法の再生情報蓄積処理と、コンテンツ再生装置1000が行う再生情報蓄積処理とを比較して説明するための図である。 従来技術であるフラッシュメモリの劣化対策方法を示す図である。
以下では、本発明に係る一つの実施形態であるコンテンツ再生装置1000について、図面を参照して説明する。
<コンテンツ再生装置1000の構成>
図1は、コンテンツ再生装置1000の構成を機能的に示す機能ブロック図である。
同図に示すように、コンテンツ再生装置1000は、コンテンツ用メモリ2001、コンテンツ鍵用メモリ2002、再生情報用メモリ2003、確認データ用メモリ2004、コンテンツ再生部1001、再生情報生成部1002、確認データ生成部1003、第1のアドレス計算部1004、確認データ格納部1005、第2のアドレス計算部1006、比較対象データ読込部1007、検証部1008、旧アドレス保持部1009、確認データ変更部1010、再生情報送信部1011及び検証結果通知部1012から構成される。
コンテンツ再生装置1000は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット等を備えるコンピュータシステムである。
ROM及びハードディスクユニットにはコンピュータプログラムが記録されており、マイクロプロセッサがコンピュータプログラムに従って動作することにより、コンテンツ再生装置1000は、その機能を達成する。
(1)コンテンツ用メモリ2001
コンテンツ用メモリ2001は、暗号化コンテンツを格納するためのメモリである。コンテンツ用メモリ2001は、例えば、フラッシュメモリやハードディスクなどの不揮発メモリで実現される。また、コンテンツ用メモリ2001は、フラッシュメモリやハードディスクに限定されず、コンテンツ再生装置1000に挿入されているカードであってもよい。
暗号化コンテンツは、コンテンツがコンテンツ鍵で暗号化されて生成された暗号文である。なお、コンテンツ鍵は、コンテンツ鍵用メモリ2002に格納されている。
コンテンツは、音楽、動画、写真、アニメーション、コンピュータゲーム、コンピュータプログラム等であって、コンテンツのデータCDには、コンテンツ識別子IDが付加されている。
そして、暗号化コンテンツのデータCCDは、
CCD=Enc(KC,ID‖CD)
である。ここで、「KC」は、コンテンツ鍵を示し、「‖」は、データの連結を示し、「Enc(K,D)」は、暗号鍵KでデータDを暗号化した暗号文を示す。
コンテンツを暗号化する暗号方式は、共通鍵暗号(ブロック暗号やストリーム暗号)を使用する。なお、暗号方式は公開鍵暗号であってもよい。その場合は、暗号化コンテンツのデータCCDは、
CCD=Enc(KPC,ID‖CD)
である。ここで、「KPC」は、公開鍵を示す。
なお、暗号方式については、非特許文献2の79〜105ページ(共通鍵暗号)及び107〜130ページ(公開鍵暗号)に詳しく記載されているため、ここでは説明を省略する。
また、ここでは、コンテンツのデータCDにコンテンツ識別子IDも含めて暗号化したものを暗号化コンテンツとしているが、これに限らない。コンテンツ識別子IDを含めずに暗号化してもよいし、他のデータ(例えば、コンテンツの権利情報)を含めて暗号化したものを暗号化コンテンツとしてもよい。
図2(a)は、コンテンツ用メモリ2001に格納されている情報の一例を示す図である。同図に示すように、コンテンツ用メモリ2001は、コンテンツ識別子ごとに暗号化コンテンツを格納している。
図2(a)に示す具体例では、コンテンツ用メモリ2001は、コンテンツ識別子「ID1」及び「ID1」で識別される暗号化コンテンツ、コンテンツ識別子「ID2」及び「ID2」で識別される暗号化コンテンツを含む、複数個のコンテンツ識別子と暗号化コンテンツとの組を格納しているが、単純に1個の暗号化コンテンツのみを格納する場合があってもよい。
(2)コンテンツ鍵用メモリ2002
コンテンツ鍵用メモリ2002は、コンテンツ鍵を格納するためのメモリである。コンテンツ鍵は、コンテンツを暗号化するための鍵である。
コンテンツ鍵用メモリ2002は、例えば、フラッシュメモリやハードディスクなどの不揮発メモリで実現される。また、コンテンツ鍵用メモリ2002は、フラッシュメモリやハードディスクに限定されず、コンテンツ再生装置1000に挿入されているカードであってもよい。
コンテンツ鍵が漏洩すると、暗号化コンテンツを不正に復号化される恐れがあるため、安全性の観点から、コンテンツ鍵用メモリ2002は、セキュアに実装されることが望ましい。
コンテンツ鍵を使用する暗号方式は、コンテンツ用メモリ2001の説明で述べたように共通鍵暗号であるが、公開鍵暗号で使用してもよい。
共通鍵暗号を使用する場合は、暗号化で使用する暗号鍵と同じものを、コンテンツ鍵としてコンテンツ鍵用メモリ2002に格納する。
公開鍵暗号を使用する場合は、暗号化で使用する公開鍵に対応する秘密鍵を、コンテンツ鍵としてコンテンツ鍵用メモリ2002に格納する。
同図に示すように、コンテンツ鍵用メモリ2002は、コンテンツ用メモリ2001(図2(a)参照)に格納されている暗号化コンテンツに対応するコンテンツ鍵を、コンテンツ識別子と対応付けて記憶している。
(3)再生情報用メモリ2003
再生情報用メモリ2003は、コンテンツ再生の履歴を示す再生履歴情報を格納するためのメモリである。
再生情報用メモリ2003は、例えば、フラッシュメモリやハードディスクなどの不揮発メモリで実現される。また、再生情報用メモリ2003は、フラッシュメモリやハードディスクに限定されず、コンテンツ再生装置1000に挿入されているカードであってもよい。
図2(c)は、再生情報用メモリ2003に格納されている情報の一例を示す図である。同図に示すように、再生情報用メモリ2003は、コンテンツ毎のコンテンツの再生履歴情報を、コンテンツ識別子と対応付けて格納している。
なお、コンテンツごとの格納先の開始アドレスは、予め与えられているものとする。
図3は、再生履歴情報の例を示している。図3(a)は、再生履歴情報として、再生時間を使用している例であり、図3(b)は、再生履歴情報として、再生回数を使用している例である。
(4)確認データ用メモリ2004
確認データ用メモリ2004は、再生履歴情報のハッシュ値である確認データを格納するためのメモリである。
確認データ用メモリ2004は、例えば、フラッシュメモリなどの不揮発メモリで実現される。また、確認データ用メモリ2004は、フラッシュメモリに限定されず、ハードディスクやコンテンツ再生装置1000に挿入されているカードであってもよい。
確認データが改ざんされると、再生履歴情報の改ざんを正しくチェックすることができず、不正なコンテンツ利用がなされる恐れがあるため、安全性の観点から、確認データ用メモリ2004は、セキュアに実装されることが望ましい。
図2(d)は、確認データ用メモリ2004に格納される情報の一例を示す図である。同図に示すように、確認データ用メモリ2004は、コンテンツごとに確認データを格納するための領域が予め与えられているものとする。
例えば、領域2004aには、コンテンツ識別子「ID1」が割り振られており、領域2004aは、「ID1」により識別されるコンテンツの確認データを格納するための領域である。同様に、領域2004bには、コンテンツ識別子「ID2」が割り振られており、領域2004bは、「ID2」により識別されるコンテンツの確認データを格納するための領域である。
各領域は、確認データを複数個以上格納できる大きさが確保されている。一例として、確認データの大きさが256ビット=32バイトである場合は、各領域の大きさは、2^8×32=8,192バイトである。ここで、x^yはxのy乗を示す。
なお、コンテンツごとの確認データの格納可能領域の開始アドレスは、予め与えられているものとする。
(5)コンテンツ再生部1001
コンテンツ再生部1001は、コンテンツ用メモリ2001に格納されている暗号化コンテンツと、コンテンツ鍵用メモリ2002に格納されているコンテンツ鍵とを読み込み、コンテンツ鍵を用いて暗号化コンテンツを復号化する。さらに、コンテンツ再生部1001は、復号化したコンテンツを再生する。
なお、コンテンツ再生の際には、外部からコンテンツ再生部1001に対して、再生するコンテンツのコンテンツ識別子が指定され、コンテンツ再生部1001は、指定されたコンテンツ識別子に対応する暗号化コンテンツとコンテンツ鍵とを読み込み、復号化処理及び再生処理を行うものとする。
ここで、コンテンツ再生部1001は、コンテンツ識別子と、暗号化コンテンツの格納先の開始アドレス及びコンテンツ鍵の格納先の開始アドレスとを対応付けたテーブルを予め保持しており、それに基づいて、指定されたコンテンツ識別子に対応する暗号化コンテンツとコンテンツ鍵とを読み込むように構成してもよい。
(6)再生情報生成部1002
再生情報生成部1002は、コンテンツ再生部1001にてコンテンツが再生されると、再生履歴情報を生成し、生成した再生履歴情報を、再生情報用メモリ2003に格納する。
再生履歴情報の具体例としては、図3(a)及び(b)に示すように、コンテンツを再生した累積の時間を示す再生時間や、コンテンツを再生した累積の回数を示す再生回数を用いることができる。
再生情報生成部1002は、図3(a)の例では、コンテンツ識別子ごとに、コンテンツの再生時間である再生履歴情報を生成し、図3(b)の例では、コンテンツ識別子ごとに、コンテンツの再生回数である再生履歴情報を生成する。なお、再生時間及び再生回数は、再生履歴情報の一例であり、再生履歴情報はこれらに限定されるものではない。
再生情報生成部1002は、再生履歴情報が再生時間であれば、一定時間(例えば、1分)ごとに再生履歴情報を生成し、再生履歴情報が再生回数であれば、再生開始時又は再生終了時に、再生回数を更新した再生履歴情報を生成する。また、再生情報生成部1002は、再生開始時又は再生終了時に再生回数を更新するのではなく、所定の時間を再生したときに再生回数を更新するとしてもよい。
再生履歴情報として再生時間を用いる場合には、再生情報生成部1002は、再生時間を計測する手段を有するものとする。また、再生履歴情報として再生回数を用いる場合には、再生情報生成部1002は、再生開始又は再生終了を検知する手段を有するものとする。再生履歴情報の生成のトリガをチェックするための方法については、本発明では特に限定しない。
再生情報生成部1002は、生成した再生履歴情報を、再生情報用メモリ2003に格納する。
(7)確認データ生成部1003
確認データ生成部1003は、コンテンツ再生中の再生履歴情報更新に伴い、更新された再生履歴情報に対する確認データを生成する。
また、確認データ生成部1003は、コンテンツの再生前に、再生履歴情報の検証のため、再生情報用メモリ2003に格納されている再生履歴情報に基づいて、確認データを生成する。
確認データは、具体的には、ハッシュ対象データHDをハッシュ関数へ入力したときの出力、すなわちハッシュ値である。
ハッシュ関数へ入力するハッシュ対象データHDは、図3(a)の例であれば、コンテンツ識別子と再生時間とを連結したものであり、図3(b)の例であれば、コンテンツ識別子と再生回数とを連結したものである。なお、ハッシュ対象データHDは、複数のコンテンツ識別子と再生時間との組であってもよいし、複数のコンテンツ識別子と再生回数との組であってもよい。
確認データ生成部1003が使用するハッシュ関数は、SHA−1、SHA−2(SHA−256など)、RIPEMD、MD5などである。
確認データ生成部1003は、安全性の観点から、攻撃者に知られないようにセキュアにハッシュ関数を実行する必要があるため、例えば、鍵付ハッシュ関数を用いることができる。
鍵付ハッシュ関数の鍵をKHとして、ハッシュ対象データをHDとすると、確認データは、H=Hash(KH‖HD)となる。ここで、「Hash()」は、ハッシュ関数を示し、「‖」はデータの連結を示す。
本実施形態では、確認データ生成部1003は、SHA−256を用いた鍵付ハッシュ関数を用いるものとする。すなわち、確認データ生成部1003にて生成される確認データ(ハッシュ値)は、256ビットである。
なお、確認データ生成部1003は、MACなどの共通鍵暗号を用いた鍵付ハッシュ関数を用いても良い。鍵付ハッシュ関数については、非特許文献2の189〜195ページに記載されている。
確認データ生成部1003は、コンテンツ再生中の再生履歴情報更新に伴い、更新された再生履歴情報に対する確認データを生成した場合、生成した確認データを、確認データ格納部1005へ出力する。
確認データ生成部1003は、コンテンツの再生前に、再生履歴情報の検証のため、再生情報用メモリ2003に格納されている再生履歴情報に基づいて確認データを生成した場合、生成した確認データを、第2のアドレス計算部1006へ出力する。
(8)第1のアドレス計算部1004
第1のアドレス計算部1004は、コンテンツ再生中の再生履歴情報更新に伴い、更新された再生履歴情報に対して生成された確認データの格納先アドレスを計算する。
以下では、計算方法の一例を示す。コンテンツ識別子IDに対応する確認データをH、コンテンツ識別子IDに対応する確認データの格納可能領域の開始アドレスをSとして、格納先アドレスAS1を、
AS1=S+H mod 2^8
とする。ここで、「x mod y」は、xをyで割ったときの余りを示す。
上記一例では、AS1がHの下位8ビットに対応するため、第1のアドレス計算部1004は、mod計算をせず単純に、確認データ(ハッシュ値)の下位8ビットを格納先アドレスとすればよい。
第1のアドレス計算部1004は、格納先アドレスを、確認データ格納部1005へ出力する。
(9)確認データ格納部1005
確認データ格納部1005は、確認データ生成部1003から確認データを受け取り、第1のアドレス計算部1004から格納先アドレスを受け取る。
確認データ格納部1005は、確認データ用メモリ2004の格納先アドレスが示す領域に、確認データを格納する。
(10)第2のアドレス計算部1006
第2のアドレス計算部1006は、確認データ生成部1003から、検証対象の確認データを受け取ると、受け取った確認データの検証に必要な比較対象データの読込先アドレスを計算する。
具体的には、第2のアドレス計算部1006は、確認データ生成部1003から受け取った確認データに基づいて、比較対象データの読込先アドレスを計算する。計算方法は、第1のアドレス計算部1004と同様である。すなわち、受け取った確認データをH、確認データの格納可能領域の開始アドレスをSとすると、読込先アドレスAR2は、
AR2=S+H mod 2^8
である。そして、第2のアドレス計算部1006は、第1のアドレス計算部1004と同様に、mod計算せず単純に、確認データ生成部1003から受け取った確認データ(ハッシュ値)の下位8ビットを、読込先アドレスとすればよい。
第2のアドレス計算部1004は、確認データと読込先アドレスとを、比較対象データ読込部1007へ出力する。
また、第2のアドレス計算部1004は、検証部1008から、検証成功の通知を受け取ると、生成した読込先アドレスを、旧アドレス保持部1009へ出力する。
(11)比較対象データ読込部1007
比較対象データ読込部1007は、第2のアドレス計算部1004から、確認データと読込先アドレスとを受け取る。
比較対象データ読込部1007は、確認データ用メモリ2004から、読込先アドレスが示す領域に格納されているデータを読み込み、読み込んだデータを比較対象データとする。
そして、比較対象データ読込部1007は、第2のアドレス計算部1004から受け取った確認データと、確認データ用メモリ2004から読み込んだ比較対象データとを、検証部1008へ出力する。
(12)検証部1008
検証部1008は、比較対象データ読込部1007から、確認データと比較対象データとを受け取る。そして、確認データと比較対象データとが一致するか否か検証する。
確認データと比較対象データとが一致する場合は、再生履歴情報の改ざん、セーブリストア攻撃などが行われていないことを意味する。この場合、コンテンツ再生装置1000は、コンテンツ再生処理を開始する。また、確認データと比較対象データとが一致する場合、検証部1008は、第2のアドレス計算部1006へその旨を通知する。
確認データと比較対象データとが一致しない場合は、再生履歴情報の改ざん、セーブリストア攻撃などが行われていることを意味する。この場合、コンテンツ再生装置1000は、コンテンツ再生処理を中止する。
検証部1008は、検証結果を、検証結果通知部1012へ出力する。
(13)旧アドレス保持部1009
旧アドレス保持部1009は、古い確認データの格納先アドレスを保持する。より具体的には、旧アドレス保持部1009は、検証部1008において比較対象データと確認データとが一致した場合に、第2のアドレス計算部1006が計算した読込先アドレスを、旧アドレスとして保持する。
図2(e)は、旧アドレス保持部1009に保持されている情報の一例を示す図である。同図に示すように、旧アドレス保持部1009は、コンテンツ毎に、コンテンツ識別子と旧アドレス(古い確認データの格納先アドレス)とを対応付けて格納している。
(14)確認データ変更部1010
確認データ変更部1010は、確認データ用メモリ2004に格納されている古い確認データを変更する。
より具体的には、確認データ変更部1010は、確認データ用メモリ2004の、旧アドレス保持部1009が保持している旧アドレスが示す領域に格納されている確認データの一部を変更する。例えば、確認データ変更部1010は、確認データの最初の1バイトを変更してもよいし、任意の1バイトや、任意の1ビットを変更してもよい。
(15)再生情報送信部1011
再生情報送信部1011は、再生情報用メモリ2003に格納されている再生履歴情報を、図示していないコンテンツ管理サーバへ送信する。
再生情報送信部1011は、コンテンツ識別子が示すコンテンツごとに再生履歴情報を送るとしてもよい。
また、再生情報送信部1011は、ディジタル署名を生成する機能を有し、再生履歴情報にディジタル署名を付加して、コンテンツ管理サーバへ送信するとしてもよい。ディジタル署名については、非特許文献2の171〜187ページに記載されている。
(16)検証結果通知部1012
検証結果通知部1012は、検証部1008から受け取った検証結果を、外部に通知する。ここで、外部の通知先の具体例は、コンテンツ管理サーバやコンテンツ再生装置1000の製造機関などである。
なお、検証結果通知部1012は、検証部1008において、確認データと比較対象データとが一致しない場合にのみ、その旨を外部へ通知するとしてもよい。
<コンテンツ再生装置1000の動作>
ここでは、図4から図8に示すフローチャートを用いて、コンテンツ再生装置1000の動作について説明する。
(1)全体の処理の流れ
図4は、コンテンツ再生装置1000の全体の処理の流れを示している。
コンテンツ再生装置1000は、外部から、再生すべきコンテンツのコンテンツ識別子IDが入力されると、コンテンツ再生処理に先立ち、そのコンテンツ識別子IDに対応する再生履歴情報の検証処理を行い(ステップS1)、その後、コンテンツ再生処理群を行う(ステップS2)。そして、コンテンツ再生装置1000は、再生履歴情報検証処理(ステップS3)と、コンテンツ再生処理群(ステップS4)とを繰り返したのち、再生情報送信処理を行う(ステップS5)。
ここで、ステップS2のコンテンツ再生処理群では、コンテンツ再生(ステップS11)、再生情報蓄積処理(ステップS12)、コンテンツ再生(ステップS13)、再生情報蓄積処理(ステップS14)、・・・と、コンテンツ再生及び再生情報蓄積処理の一連の動作が、繰り返し行われる。ステップS4のコンテンツ再生処理群においても同様である。
(2)再生情報検証処理
図5は、コンテンツ再生装置1000による再生情報検証処理の動作を示すフローチャートである。なお、ここに示す動作は、図4のステップS1及びステップS3の詳細である。
確認データ生成部1003は、外部から入力されたコンテンツ識別子に対応する再生履歴情報を、再生情報用メモリ2003から読み出す(ステップS100)。
そして、確認データ生成部1003は、読み出した再生履歴情報をハッシュ対象データとしてハッシュ関数へ入力し、ハッシュ値である確認データを生成する(ステップS101)。
続いて、第2のアドレス計算部1006は、比較対象データの読み込み先のアドレスを計算する(ステップS102)。具体的には、第2のアドレス計算部1006は、ステップS101で生成された確認データの下位8ビットを比較対象データの読込先アドレスとする。
比較対象データ読込部1007は、確認データ用メモリ2004から、ステップS102で計算された読込先アドレスの位置にある比較対象データを読み込む(ステップS103)。
検証部1008は、比較対象データと確認データとが一致するか否か確認する(ステップS104)。比較対象データと確認データとが一致する場合(ステップS104でYES)、ステップS105へ進み、一致しない場合(ステップS104でNO)、ステップS106へ進む。
ステップS104でYESの場合、旧アドレス保持部1009は、ステップS102で計算したアドレスを旧アドレスとして保持する(ステップS105)。その後、コンテンツ再生装置1000は、再生情報検証処理を終了し、コンテンツ再生処理へ進む。
ステップS104でNOの場合、検証結果通知部1012は、比較対象データと確認データとが一致しない旨を、外部へ通知する(ステップS106)。その後、コンテンツ再生装置1000は、処理を終了する。
(3)コンテンツ再生処理
図6は、コンテンツ再生装置1000によるコンテンツ再生の動作を示すフローチャートである。なお、ここに示す動作は、図4のステップS11及びステップS14の詳細である。
コンテンツ再生部1001は、外部から入力されたコンテンツ識別子に対応する暗号化コンテンツをコンテンツ用メモリ2001から読み込み、更に、対応するコンテンツ鍵をコンテンツ鍵用メモリ2002から読み込む(ステップS201)。
次に、コンテンツ再生部1001は、暗号化コンテンツを、コンテンツ鍵を用いて復号し、コンテンツを生成する。そして、生成したコンテンツを再生する(ステップS202)。その後、コンテンツ再生装置1000は、再生履歴情報蓄積処理を行う。
(4)再生情報蓄積処理
図7は、コンテンツ再生装置1000による再生情報蓄積処理の動作を示すフローチャートである。なお、ここに示す動作は、図4のステップS12及びステップS14の詳細である。
再生情報生成部1002は、再生履歴情報を生成し、生成した再生履歴情報を、再生情報用メモリ2003に格納する(ステップS301)。
その後、確認データ変更部1010は、旧アドレス保持部1009が保持する旧アドレスを読み出す。そして、旧アドレスが示す位置の確認データの一部を変更する(ステップS302)。
続いて、確認データ生成部1003は、ステップS301で生成し、格納した再生履歴情報を、ハッシュ対象データとしてハッシュ関数へ入力し、ハッシュ値である確認データを生成する(ステップS303)。
その後、第1のアドレス計算部1004は、確認データの格納先アドレスを計算する(ステップS304)。具体的には、第1のアドレス計算部1004は、ステップS303で生成された確認データの下位8ビットを格納先アドレスとする。
確認データ格納部1005は、確認データを確認データ用メモリ2004の格納先アドレスが示す位置に格納する(ステップS305)。その後、コンテンツ再生装置1000は、コンテンツ再生処理を行う。
なお、コンテンツ再生及び再生情報蓄積処理は、正確に図4のフローチャートに示す順序で行われることは必須ではない。コンテンツ再生装置1000は、コンテンツを再生しつつ、所定のタイミングで(例えば1分毎に)、再生情報蓄積処理を行う。
ここで、図9を用いて、ステップS302の確認データ変更部1010による確認データの変更処理について、2つの具体例を用いて説明する。
図9(a)は、確認データ用メモリ2004の古い確認データの最上位バイトに0x00を書き込む(最上位バイトを0埋めする)ことにより、古い確認データを変更する例である。古い確認データが「0x153e48ab…」であったとすると、変更後は、「0x003e48ab…」となる。
図9(b)は、確認データ用メモリ2004の古い確認データの最上位バイトに任意の値(ここでは、0xffとする。)をXOR(排他的論理和)演算することにより、古い確認データを変更する例である。古い確認データが「0x153e48ab…」であったとすると、変更後は、「0xea3e48ab…」となる。
確認データ変更部1010は、(a)及び(b)の何れの具体例を用いてもよい。
しかし、(a)の具体例では、変更前の古い確認データの最上位バイトが「0x00」である場合には、値が変更されないので、安全性を考慮すると、確認データ変更部1010は、(b)のXOR演算を用いるほうがよい。
(5)再生情報送信処理
図8は、コンテンツ再生装置1000による再生情報送信処理の動作を示すフローチャートである。なお、ここに示す動作は、図4のステップS5の詳細である。
再生情報送信部1011は、コンテンツ管理サーバから要求を受け付けると、要求されたコンテンツ識別子に対応する再生履歴情報を再生情報用メモリ2003から読み出す。そして、再生情報送信部1011は、読み出した再生履歴情報を、コンテンツ管理サーバへ送信する(ステップS401)。その後、コンテンツ再生装置1000は、再生情報送信処理を終了する。
なお、コンテンツ再生装置1000は、コンテンツ管理サーバから要求を受け付けたときに限らず、所定のタイミングで上記の再生情報送信処理を行ってもよい。
<実施形態の効果>
上述したように、本実施形態では、格納対象である確認データそのものに基づいて格納先アドレス決定することで、格納先アドレスを容易に生成することができる。
ここで、引用文献1に記載されている技術と比較すると、データの読み込み時には、引用文献1に記載されている技術は、ポインタの読み込み及びデータの読み込みという2回の読み込み処理が必要であるのに対して、本実施形態では、データのみ1回の読み込み処理だけでよい。データの書き込み時は、引用文献1に記載されている技術は、2回の読み込み、2回の書き込み、及び回数の判定が必要であるのに対して、本実施形態では、2回の書き込み処理だけでよい。
さらに、本実施形態では、再生履歴情報のハッシュ値(確認データ)が格納対象データであるから、再生履歴情報に対して格納先アドレスの値が拡散される。そして、入力に対して出力が一様に分布するハッシュ関数を用いると、確認データ用メモリ2004の各領域の使用頻度(書き込み回数)を平均化することができる。そこで、確認データの格納可能領域を大きくすることで、確認データ用メモリ2004の各領域の使用頻度を低下させることができ、確認データ用メモリ2004の劣化を抑制することができる。
また、本実施形態では、コンテンツ再生装置1000は、コンテンツを再生しながら再生履歴情報を更新していくが、再生履歴情報が更新されたときに、古い(更新前の)確認データを変更する。これは、セーブリストア攻撃を防止するためである。
図10は、古い確認データを変更しなかった場合に生じる問題について説明するための図である。古い確認データを変更しない場合、図10のように、再生情報用メモリ2003を古い再生情報用メモリのデータに置き換えると、再生情報検証処理(図5参照)において、確認データ生成部1003は、古い再生履歴情報のハッシュ値を確認データとして生成する。
その後、第2のアドレス計算部1006は、確認データに基づいて、比較対象データの読込先アドレスを決定するが、古い再生履歴情報から生成された確認データに基づいて決定する読込先アドレスには、古い確認データが格納されている。
そのため、再生情報用メモリ2003を古い再生情報用メモリのデータに置き換えても、検証部1008による検証処理で正しく検証されてしまうため、セーブリストア攻撃が可能になってしまう。
そこで、本実施形態では、再生履歴情報が更新されたときに、古い確認データを変更することにより、再生情報用メモリ2003を古い再生情報用メモリのデータに置き換えても、確認データと比較対象データとが一致しないため、検証部1008による検証処理で不正であることが検証できる。
さらに、本実施形態では、古い確認データの全部を変更するのではなく、一部を変更するので、書き込みのためにアクセスするサイズが削減できる。古い確認データの「一部」を変更すればよい理由は、コンテンツ再生装置1000は、再生情報検証処理でハッシュ関数を用いて確認データを計算しており、少なくとも1ビットを変更した確認データに対応するハッシュ対象データを求めることは、変更前の確認データに対応するハッシュ対象データ(古い再生履歴情報)が既知であっても、困難だからである。
ここで、確認データ用メモリ2004としてフラッシュメモリを用いる場合を考える。フラッシュメモリは、通常、ブロック単位を最低書き込み単位としてアクセスする。
確認データのサイズが1ブロックのサイズより大きい場合、確認データの中の任意の1ブロック(確認データの一部)を変更すればよいので、変更するブロックを削減でき、フラッシュメモリの劣化を抑えることができる。
また、確認データが2ブロックに跨って格納されている場合、どちらか1ブロックに格納されている確認データの一部を変更すればよいので、変更するブロックを削減でき、フラッシュメモリの劣化を抑えることができる。
なお、古い確認データは少なくとも1ビット変更すればよいので、古い確認データの任意の1ビット、1バイト、1ブロック又は古い確認データの全部を変更するとしてもよい。また、古い確認データからランダムに選択した1ビット、1バイト又は1ブロックを変更するとしてもよい。
次に、図11を用いて、再生情報検証処理について、従来方法と上記実施形態とを比較する。
図11(a)は、従来の再生情報検証処理を示す図である。
従来の再生情報検証処理は、再生履歴情報を読み出し(ステップS501)、再生履歴情報から確認データを生成する(ステップS502)。そして、比較対象データの格納先を示すアドレスを読み込み(ステップS503)、そのアドレスから、比較対象データを読み出す(ステップS504)。その後、確認データと比較対象データとを比較する(ステップS505)。
図11(b)は、本発明の上記実施形態の再生情報検証処理を示す図である。
実施形態の再生情報検証処理は、再生履歴情報を読み出し(ステップS501)、再生履歴情報から確認データを生成する(ステップS502)。そして、比較対象データの格納先を示すアドレスを計算する(ステップS503a)、そのアドレスから、比較対象データを読み出す(ステップS504)。その後、確認データと比較対象データとを比較する(ステップS505)。
両者を比較すると、ステップS503とステップS503aとが異なる。即ち、本発明の実施形態では、従来のアドレスの読み込みに替えて、アドレスを計算する。このアドレス計算は、確認データのモジュロ計算であったり、確認データの下位所定ビットを抽出することであった。そのため、ステップS503aのアドレス計算は、ステップS503のアドレス読み込みより高速である。
従って、再生検証処理全体を比較すると、本発明の実施形態の方が、従来方法よりも高速に処理することが可能である。
続いて、図12を用いて、再生情報蓄積処理について、従来方法と上記実施形態とを比較する。
図12(a)は、従来の再生情報蓄積処理を示す図である。
従来の再生情報蓄積処理は、先ず、再生履歴情報を生成し(ステップS601)、その後、再生履歴情報から確認データを生成する(ステップS603)。続いて、確認データの格納先を示すアドレスを読み込む(ステップS604)。その後、書き込み回数を読み込み(ステップS605)、書き込み回数と閾値とを比較し、書き込み回数が閾値以下であるか判定する(ステップS606)。書き込み回数が閾値以下であれば、確認データを、ステップS604で読み込んだアドレスが示す位置へ格納する(ステップS607)。最後に、書き込み回数を更新する(ステップS608)。
図12(b)は、本発明の上記実施形態の再生情報蓄積処理を示す図である。
実施形態の再生情報蓄積処理は、先ず、再生履歴情報を生成し(ステップS601)、その後、古い確認データの一部を変更する(ステップS602)。次に、再生履歴情報から確認データを生成し(ステップS603)、生成した確認データから格納先のアドレスを計算する(ステップS604a)。そして、確認データを、ステップS604で計算したアドレスが示す位置へ格納する(ステップS607)。
両者を比較すると、従来方法は7つのステップを含むのに対し、実施形態はそれより少ない5つのステップを含む。
また、本発明の実施形態のステップS604aでは、従来のアドレスの読み込みに替えて、アドレスを計算する。このアドレス計算は、確認データのモジュロ計算であったり、確認データの下位所定ビットを抽出することであった。そのため、ステップS604aのアドレス計算は、ステップS604のアドレス読み込みより高速である。
従って、実施形態の再生検証処理は、従来方法よりも高速に処理することが可能である。
<その他の変形例>
上記に説明した実施形態は、本発明の実施形態の一例であり、本発明はこの実施形態に何ら限定されるものではなく、本発明の思想から逸脱しない範囲において種々なる態様で実施し得るものである。例えば、以下のような場合も本発明に含まれる。
(1)上記の実施形態では、コンテンツ再生装置1000は、コンテンツ管理サーバに対して再生履歴情報を送信しているが、再生履歴情報を送信する前に、再生情報検証処理を行い、送信する再生情報の正当性を確認した後に、コンテンツ管理サーバに再生履歴情報を送信するように構成してもよい。
(2)コンテンツ再生装置1000は、再生履歴情報として、再生時間や再生回数を使用していたが、これに限らない。例えば、コンテンツの所定の箇所を再生した回数であってもよい。また、早送りや巻戻しなどの特殊再生を行った回数としてもよい。さらに、再生時間やこれらの回数のいずれかの組み合わせであってもよい。
(3)上記の実施形態では、コンテンツ再生装置1000は、コンテンツの再生履歴情報を更新(蓄積)し、再生履歴情報の正当性を検証していた。しかし、これに限らず、再生権利情報を更新(蓄積)・検証してもよい。
再生権利情報を蓄積する場合は、コンテンツ再生装置1000は、予め、コンテンツ管理サーバからコンテンツやコンテンツ鍵を入手する際に、再生権利情報を入手するとしてもよい。
ここで、再生権利情報は、例えば、コンテンツの再生可能期限(例:2008年3月25日まで)、コンテンツを再生するための残りの再生時間、残りの再生回数、コンテンツの所定の箇所を再生する残りの回数や特殊再生を行うための残りの回数である。さらに、再生権利情報は、これらの組み合わせであってもよい。
また、コンテンツ再生装置1000は、再生履歴情報と再生権利情報とを組み合わせた再生情報を更新・検証してもよい。
(4)上記の実施形態では、確認データ用メモリ2004は、コンテンツ識別子ごとに確認データの格納可能領域が設定されているが、これに限定されず、複数のコンテンツ識別子で一つの格納可能領域を共用していてもよい。
(5)上記の実施形態では、確認データ用メモリ2004は、コンテンツ識別子ごとに確認データの格納可能領域を、確認データの大きさの2^8倍の大きさとしているが、これに限定されない。確認データの格納可能領域の大きさは、確認データの大きさの何倍であってもよい。例えば、n倍(n:2以上の整数)の大きさでもよい。
その場合は、第1のアドレス計算部1004及び第2のアドレス計算部1006は、確認データをmod nしたものを格納先アドレス及び読込先アドレスとして計算する。
また、格納可能領域の大きさを確認データのn倍とした場合であっても、第1のアドレス計算部1004及び第2のアドレス計算部1006は、確認データをmod m(m≠n)したものを格納先アドレス及び読込先アドレスとして計算してもよい。
さらに、格納可能領域は、確認データの大きさの整数倍でなくてもよい。例えば、格納可能領域の大きさは、確認データの1000.5倍の大きさであってもよい。
(6)上記の実施形態では、旧アドレス保持部1009は、検証部1008において比較対象データと確認データとが一致した場合に、その確認データに対して、第2のアドレス計算部1006が計算したアドレスを旧アドレスとして保持しているが、保持するアドレスや保持するタイミングはこれに限らない。
たとえば 確認データ格納部1005が確認データ格納部1005を格納したときの、第1のアドレス計算部1004で計算した格納先アドレスを旧アドレスを保持するとしてもよい。また、旧アドレスを格納するタイミングはいつでもよい。
(7)上記の実施形態では、旧アドレス保持部1009にて、古い確認データの旧アドレスを保持した上で、確認データ変更部1010が、旧アドレスに格納されている確認データを変更しているが、これに限らない。
旧アドレス保持部1009が、古い確認データ自体を保持し、確認データ変更部1010が、古い確認データに基づきアドレスを計算し、そのアドレスに格納されている確認データを変更してもよい。アドレスの計算方法は、第1のアドレス計算部1004や第2のアドレス計算部1006と同様の方法を用いてもよい。
(8)上述したように、コンテンツは、音楽、動画、写真、アニメーション、コンピュータゲーム、コンピュータプログラム等である。上記の実施形態において、コンテンツ再生装置1000は、コンテンツを「再生」していたが、コンテンツがプログラムである場合には、コンテンツ再生装置1000は、プログラムを「実行」するとしてもよい。
(9)上記の実施形態では、本発明の一つの形態であるコンテンツ再生装置1000について説明した。しかし、本発明にこれに限らず、コンテンツ再生の機能を備えていない、データ格納装置の形態で実現することも可能である。
データ格納装置は、例えば、移動端末であってもよい。そして、コンテンツ再生装置1000が再生履歴情報の更新(蓄積)・検証を行う代わりに、データ格納装置は、移動の履歴、すなわち、位置履歴を更新(蓄積)・検証するとしてもよい。
データ格納装置が位置履歴を更新・検証する場合は、上記実施形における再生情報生成部1002を、位置履歴情報を生成する位置履歴情報生成部1002’に変更し、上記実施形態における再生履歴情報を位置履歴情報に変更する。
そして、位置履歴情報生成部1002’は、位置履歴を検知する手段を備え、所定のタイミング(例えば、一定時間ごとなど)または位置履歴が変更されるごとに、位置履歴情報を更新する。
(10)また、位置履歴ではなく、所定の処理、例えば、サーバや計算機へのアクセス履歴、乱数生成の処理の履歴、鍵発行や証明書発行処理の履歴などを管理し、これらを更新・検証するデータ格納装置も本発明に含まれる。
この場合、データ格納装置は、コンテンツ再生装置1000のようなコンテンツ再生の機能は備えず、単純にそれらの履歴データを蓄積する機能を備えるとしてもよい。また、乱数生成の処理の履歴の場合、データ格納装置は、履歴情報として、乱数を蓄積してもよいし、乱数を生成するシード情報を蓄積してもよい。また、鍵発行や証明書発行処理の場合、データ格納装置は、履歴情報として、秘密鍵や公開鍵などの鍵自体を蓄積してもよいし、証明書の署名部分を蓄積してもよい。
(11)上記の実施形態では、コンテンツ再生装置1000は、検証の対象である再生履歴情報を再生情報用メモリ2003に格納していた。しかし、本発明はこれに限定されず、コンテンツ再生装置1000は、再生履歴情報を外部から取得するとしてもよい。
また、本発明は、検証対象のデータを外部から入力して検証するデータ検証装置としてもよい。この場合、検証対象のデータとして再生履歴情報ではなくパスワードデータを使用してもよい。
検証対象のデータとしてパスワードデータを使用する場合、頻繁にパスワードデータが変更されてもよい。データ検証装置は、古いパスワードデータに対応する古い確認データの一部又は全部を変更するように構成してもよい。
(12)上記の実施形態におけるコンテンツ再生装置1000は、位置情報を取得する手段を備える構成としてもよい。そして、コンテンツ再生装置1000は、位置情報を検証することにより、コンテンツを特定の場所でのみ再生可能とする仕組みを提供するとしてもよい。
また、コンテンツ再生装置1000は、コンテンツを再生することが可能な前記特定の場所を任意のタイミングで変更するように構成してもよい。
また、本発明は、コンテンツ再生処理に代えて、他の特定の処理を行う装置であって、前記特定の処理を特定の場所でのみ実行することが可能な仕組みを提供する装置としてもよい。
(13)上記の各装置は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。前記RAMまたはハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、各装置は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
(14)上記の各装置を構成する構成要素の一部または全部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されているとしてもよい。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM、RAMなどを含んで構成されるコンピュータシステムである。前記RAMには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、システムLSIは、その機能を達成する。
(15)上記の各装置を構成する構成要素の一部または全部は、各装置に脱着可能なICカードまたは単体のモジュールから構成されているとしてもよい。前記ICカードまたは前記モジュールは、マイクロプロセッサ、ROM、RAMなどから構成されるコンピュータシステムである。前記ICカードまたは前記モジュールは、上記の超多機能LSIを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、前記ICカードまたは前記モジュールは、その機能を達成する。このICカードまたはこのモジュールは、耐タンパ性を有するとしてもよい。
(16)本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるディジタル信号であるとしてもよい。
(17)また、本発明は、前記コンピュータプログラムまたは前記ディジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−ray Disc)、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されている前記ディジタル信号であるとしてもよい。
(18)また、本発明は、前記コンピュータプログラムまたは前記ディジタル信号を、電気通信回線、無線または有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。
(19)また、本発明は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムにしたがって動作するとしてもよい。
(20)また、前記プログラムまたは前記ディジタル信号を前記記録媒体に記録して移送することにより、または前記プログラムまたは前記ディジタル信号を前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
(21)上記の実施形態及び上記の変形例をそれぞれ組み合わせるとしてもよい。
本発明は、インテグリティチェックデータ用メモリとして用いられるフラッシュメモリの劣化対策として、フラッシュメモリの製造及び販売をする産業において利用することができる。また、フラッシュメモリを組み込んだコンテンツ再生機器の製造及び販売をする産業においても利用することができる。
1000 コンテンツ再生装置
1001 コンテンツ再生部
1002 再生情報生成部
1003 確認データ生成部
1004 第1のアドレス計算部
1005 確認データ格納部
1006 第2のアドレス計算部
1007 比較対象データ読込部
1008 検証部
1009 旧アドレス保持部
1010 確認データ変更部
1011 再生情報送信部
1012 検証結果通知部

Claims (10)

  1. コンテンツの再生部と、
    前記コンテンツの再生に関する再生情報を格納し耐タンパー技術により保護されていない非セキュア格納部と、
    耐タンパー技術で保護され且つデータの書き込みの繰り返しによって劣化する性質を有するセキュア格納部と、
    前記非セキュア格納部に格納された前記再生情報に所定の計算を施して第1インテグリティチェックデータを生成する生成部と、
    前記第1インテグリティチェックデータの所定領域を構成する第1数値列に基づいて、前記第1インテグリティチェックデータを格納する前記セキュア格納部の第1格納先アドレスを生成して、この生成された第1格納先アドレスに基づいて前記第1インテグリティチェックデータを前記セキュア格納部に格納する格納処理部と、
    前記コンテンツの再生が指定されると、再生対象の前記コンテンツの再生情報を前記非セキュア格納部から読み出して前記所定の計算を施して第2インテグリティチェックデータを確認データとして生成し、前記第2インテグリティチェックデータの所定領域を構成する第2数値列に基づいて生成された前記セキュア格納部の第2アドレスから所定のインテグリティチェックデータを比較対象データとして読み出し、前記読み出した比較対象データと前記生成された確認データとを比較して一致した場合前記再生情報は改竄されていないと判断し、一方、不一致の場合前記再生情報は改竄されていると判断する検証部と、
    前記再生部によりコンテンツが再生されると前記再生情報を更新して前記更新された再生情報を前記非セキュア格納部に格納する再生情報生成部と、を具備し、
    前記再生情報が改竄されていないと前記検証部が判断した場合、
    前記再生部は、前記コンテンツを再生し
    記生成部は、前記更新された再生情報に前記所定の計算をして第3インテグリティチェックデータを生成し、
    記格納処理部は、前記セキュア格納部に格納されている前記比較対象データの一部を書き換え、
    記格納処理部は、さらに、前記第3インテグリティチェックデータの所定領域を構成する第3数値列に基づいて、前記第3インテグリティチェックデータを格納する前記セキュア格納部の第3格納先アドレスを生成し、この生成された第3格納先アドレスに基づいて前記第3インテグリティチェックデータを前記セキュア格納部に格納することを特徴とするコンテンツ再生装置。
  2. 前記再生情報が改竄されていると前記検証部が判断した場合、前記再生部は前記コンテンツの再生を禁止することを特徴とする請求項記載のコンテンツ再生装置。
  3. 前記検証部が前記比較対象データを読み出した前記第2アドレスを旧アドレスとして保持する旧アドレス保持部を設け、
    前記旧アドレス保持部は、前記再生情報が改竄されていないと前記検証部が判断した場合に、前記第2アドレスを前記旧アドレスとして保持し、
    前記格納処理部は、前記再生部が前記コンテンツを再生した後に、前記旧アドレス保持部が保持する前記旧アドレスを読み出し、前記セキュア格納部の前記旧アドレスに格納されている前記比較対象データの一部を変更することを特徴とする請求項記載のコンテンツ再生装置。
  4. 前記セキュア格納部は、所定のサイズのブロックを最低書込み単位としてデータを書き込むフラッシュメモリであることを特徴とする請求項記載のコンテンツ再生装置。
  5. 前記第1、第2及び第3インテグリティチェックデータの所定領域を構成する数値列は、前記第1、第2及び第3インテグリティチェックデータの下位所定ビットの数値列であることを特徴とする請求項記載のコンテンツ再生装置。
  6. 前記所定の計算はハッシュ計算であり、前記第1、第2及び第3インテグリティチェックデータはハッシュ値であることを特徴とする請求項記載のコンテンツ再生装置。
  7. 前記再生情報は、前記コンテンツを再生した履歴を示す再生履歴情報であることを特徴とする請求項記載のコンテンツ再生装置。
  8. 前記再生情報は、前記コンテンツの再生権利を示す情報であることを特徴とする請求項記載のコンテンツ再生装置。
  9. コンテンツの再生部と、前記コンテンツの再生に関する再生情報を格納し耐タンパー技術により保護されていない非セキュア格納部と、耐タンパー技術で保護され且つデータの書き込みの繰り返しによって劣化する性質を有するセキュア格納部と、を具備するコンテンツ再生装置の制御方法であって、
    前記コンテンツ再生装置の生成部は、前記非セキュア格納部に格納された前記再生情報に所定の計算を施して第1インテグリティチェックデータを生成し、
    前記コンテンツ再生装置の格納処理部は、前記第1インテグリティチェックデータの所定領域を構成する第1数値列に基づいて、前記第1インテグリティチェックデータを格納する前記セキュア格納部の第1格納先アドレスを生成して、この生成された第1格納先アドレスに基づいて前記第1インテグリティチェックデータを前記セキュア格納部に格納し、
    前記コンテンツ再生装置の検証部は、前記コンテンツの再生が指定されると、再生対象の前記コンテンツの再生情報を前記非セキュア格納部から読み出して前記所定の計算を施して第2インテグリティチェックデータを確認データとして生成し、前記第2インテグリティチェックデータの所定領域を構成する第2数値列に基づいて生成された前記セキュア格納部の第2アドレスから所定のインテグリティチェックデータを比較対象データとして読み出し、前記読み出した比較対象データと前記生成された確認データとを比較して一致した場合前記再生情報は改竄されていないと判断し、一方、不一致の場合前記再生情報は改竄されていると判断し、
    前記コンテンツ再生装置の再生情報生成部は、前記再生部によりコンテンツが再生されると、前記再生情報を更新して前記更新された再生情報を前記非セキュア格納部に格納し、
    前記再生情報が改竄されていないと前記検証部が判断した場合、
    前記再生部は、前記コンテンツを再生し、
    前記生成部は、前記更新された再生情報に前記所定の計算をして第3インテグリティチェックデータを生成し、
    前記格納処理部は、前記セキュア格納部に格納されている前記比較対象データの一部を書き換え、
    前記格納処理部は、さらに、前記第3インテグリティチェックデータの所定領域を構成する第3数値列に基づいて、前記第3インテグリティチェックデータを格納する前記セキュア格納部の第3格納先アドレスを生成し、この生成された第3格納先アドレスに基づいて前記第3インテグリティチェックデータを前記セキュア格納部に格納することを特徴とする制御方法。
  10. コンテンツの再生部と、前記コンテンツの再生に関する再生情報を格納し耐タンパー技術により保護されていない非セキュア格納部と、耐タンパー技術で保護され且つデータの書き込みの繰り返しによって劣化する性質を有するセキュア格納部と、を具備するコンテンツ再生装置を制御するコンピュータプログラムを記憶した記録媒体であって、
    前記コンピュータプログラムは、前記コンテンツ再生装置を、
    前記非セキュア格納部に格納された前記再生情報に所定の計算を施して第1インテグリティチェックデータを生成する生成手段と、
    前記第1インテグリティチェックデータの所定領域を構成する第1数値列に基づいて、前記第1インテグリティチェックデータを格納する前記セキュア格納部の第1格納先アドレスを生成して、この生成された第1格納先アドレスに基づいて前記第1インテグリティチェックデータを前記セキュア格納部に格納する格納処理手段と、
    前記コンテンツの再生が指定されると、再生対象の前記コンテンツの再生情報を前記非セキュア格納部から読み出して前記所定の計算を施して第2インテグリティチェックデータを確認データとして生成し、前記第2インテグリティチェックデータの所定領域を構成する第2数値列に基づいて生成された前記セキュア格納部の第2アドレスから所定のインテグリティチェックデータを比較対象データとして読み出し、前記読み出した比較対象データと前記生成された確認データとを比較して一致した場合前記再生情報は改竄されていないと判断し、一方、不一致の場合前記再生情報は改竄されていると判断する検証手段と、
    前記再生部によりコンテンツが再生されると、前記再生情報を更新して前記更新された再生情報を前記非セキュア格納部に格納する再生情報生成手段として機能させ、
    前記再生情報が改竄されていないと前記検証手段が判断した場合、
    前記再生部に、前記コンテンツを再生させ、
    前記生成手段に、前記更新された再生情報に前記所定の計算をして第3インテグリティチェックデータを生成させ、
    前記格納処理手段に、前記セキュア格納部に格納されている前記比較対象データの一部を書き換えさせ、
    前記格納処理手段に、さらに、前記第3インテグリティチェックデータの所定領域を構成する第3数値列に基づいて、前記第3インテグリティチェックデータを格納する前記セキュア格納部の第3格納先アドレスを生成させ、この生成された第3格納先アドレスに基づいて前記第3インテグリティチェックデータを前記セキュア格納部に格納させることを特徴とする記録媒体。
JP2009138281A 2008-06-17 2009-06-09 メモリ制御装置、コンテンツ再生装置、制御方法及び記録媒体 Expired - Fee Related JP5452988B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009138281A JP5452988B2 (ja) 2008-06-17 2009-06-09 メモリ制御装置、コンテンツ再生装置、制御方法及び記録媒体

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2008157930 2008-06-17
JP2008157930 2008-06-17
JP2009138281A JP5452988B2 (ja) 2008-06-17 2009-06-09 メモリ制御装置、コンテンツ再生装置、制御方法及び記録媒体

Publications (2)

Publication Number Publication Date
JP2010027038A JP2010027038A (ja) 2010-02-04
JP5452988B2 true JP5452988B2 (ja) 2014-03-26

Family

ID=41415822

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009138281A Expired - Fee Related JP5452988B2 (ja) 2008-06-17 2009-06-09 メモリ制御装置、コンテンツ再生装置、制御方法及び記録媒体

Country Status (2)

Country Link
US (1) US8418256B2 (ja)
JP (1) JP5452988B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101438072B1 (ko) 2010-04-15 2014-09-03 라모트 앳 텔-아비브 유니버시티 리미티드 소거 없는 플래시 메모리의 다중 프로그래밍
JP5908991B2 (ja) * 2011-12-21 2016-04-26 インテル・コーポレーション 安全なダイレクトメモリアクセス
US9940455B2 (en) 2015-02-25 2018-04-10 International Business Machines Corporation Programming code execution management
US10251119B2 (en) * 2016-01-27 2019-04-02 Mediatek Singapore Pte. Ltd. Method and apparatus for handling reject
JP7143626B2 (ja) * 2018-05-11 2022-09-29 大日本印刷株式会社 配置装置、検証装置、制御方法、データ生成方法及びデータ構造
CN109408406B (zh) * 2018-10-18 2023-02-14 深圳三地一芯电子有限责任公司 闪存的数据存储方法及存储介质
JP7735238B2 (ja) * 2022-09-16 2025-09-08 株式会社東芝 情報処理装置、方法およびプログラム
US20250119288A1 (en) * 2023-10-04 2025-04-10 Nvidia Corporation Secure data storage using data integrity verification for autonomous systems and applications

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3446397B2 (ja) 1995-05-19 2003-09-16 富士ゼロックス株式会社 Eepromの制御方法
JPH1185629A (ja) 1997-07-15 1999-03-30 Fujitsu Ltd フラッシュ・メモリの管理方式
JP4779183B2 (ja) * 1999-03-26 2011-09-28 ソニー株式会社 再生装置および再生方法
US20030076957A1 (en) * 2001-10-18 2003-04-24 Nadarajah Asokan Method, system and computer program product for integrity-protected storage in a personal communication device
JP4340856B2 (ja) * 2003-04-25 2009-10-07 ソニー株式会社 データの保護方法およびその保護装置
US9075851B2 (en) * 2003-12-09 2015-07-07 Emc Corporation Method and apparatus for data retention in a storage system
JP2005353127A (ja) * 2004-06-08 2005-12-22 Ricoh Co Ltd 情報記憶・再生装置
JP2007219802A (ja) * 2006-02-16 2007-08-30 Hitachi Global Storage Technologies Netherlands Bv 記憶装置、そのコントローラ、および、その制御方法

Also Published As

Publication number Publication date
US20090313425A1 (en) 2009-12-17
JP2010027038A (ja) 2010-02-04
US8418256B2 (en) 2013-04-09

Similar Documents

Publication Publication Date Title
JP5452988B2 (ja) メモリ制御装置、コンテンツ再生装置、制御方法及び記録媒体
US9183357B2 (en) Recording/reproducing system, recording medium device, and recording/reproducing device
CN103348623B (zh) 终端装置、验证装置、密钥分发装置、内容再现方法及密钥分发方法
US7325139B2 (en) Information processing device, method, and program
US7702109B2 (en) Content recording/reproducing system, distribution device, reproducing device, and recording device
US8635453B2 (en) Controller to be incorporated in storage medium device, storage medium device, system for manufacturing storage medium device, and method for manufacturing storage medium device
JP5793709B2 (ja) 鍵実装システム
JP5097130B2 (ja) 情報端末、セキュリティデバイス、データ保護方法及びデータ保護プログラム
US20140143544A1 (en) Rights enforcement and usage reporting on a client device
JP5573489B2 (ja) 情報処理装置、および情報処理方法、並びにプログラム
JP2009504026A (ja) デジタルコンテンツに関連付けられた検証用来歴データ
CN101086759A (zh) 未授权内容检测系统
WO2001078298A1 (en) Information processing system and method
KR100601706B1 (ko) Drm 시스템에 있어서 시스템 키를 공유하고 생성하는방법 및 장치
US8914646B2 (en) Information processing apparatus and information processing method for determining access permission
JP2012008756A (ja) 情報処理装置、および情報処理方法、並びにプログラム
JP5598115B2 (ja) 情報処理装置、および情報処理方法、並びにプログラム
CN103380589A (zh) 终端装置、服务器装置、内容记录控制系统、记录方法以及记录许可与否控制方法
CN100585713C (zh) 信息处理装置和信息处理方法
CN1922817B (zh) 信息处理装置
KR20060130645A (ko) 서비스 제공 서버, 정보 처리 장치 및 데이터 처리 방법과컴퓨터·프로그램
JP5552917B2 (ja) 情報処理装置、および情報処理方法、並びにプログラム
US20080304389A1 (en) Method for Recording Data Having a Distinctive Feature
KR20080031925A (ko) 보안 패치 시스템
JP2013141171A (ja) 情報処理装置、および情報処理方法、並びにプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120321

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130726

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130806

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130927

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: 20131210

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140106

R150 Certificate of patent or registration of utility model

Ref document number: 5452988

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees