JP4785823B2 - メモリ装置およびメモリ書込み装置 - Google Patents

メモリ装置およびメモリ書込み装置 Download PDF

Info

Publication number
JP4785823B2
JP4785823B2 JP2007320231A JP2007320231A JP4785823B2 JP 4785823 B2 JP4785823 B2 JP 4785823B2 JP 2007320231 A JP2007320231 A JP 2007320231A JP 2007320231 A JP2007320231 A JP 2007320231A JP 4785823 B2 JP4785823 B2 JP 4785823B2
Authority
JP
Japan
Prior art keywords
information
key
unit
program
memory device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2007320231A
Other languages
English (en)
Other versions
JP2009146008A (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.)
Sanyo Electric Co Ltd
Sanyo Electric System Solutions Co Ltd
Original Assignee
Sanyo Electric Co Ltd
Sanyo Electric System Solutions 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 Sanyo Electric Co Ltd, Sanyo Electric System Solutions Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP2007320231A priority Critical patent/JP4785823B2/ja
Publication of JP2009146008A publication Critical patent/JP2009146008A/ja
Application granted granted Critical
Publication of JP4785823B2 publication Critical patent/JP4785823B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、フラッシュROM(Read OnlyMemory)等の書込み可能なメモリ装置および
当該メモリ装置に所定のプログラム情報を書込むためのメモリ書込み装置に関する。
従来、制御プログラムを格納する媒体として、フラッシュROM(以下、「FROM」という)等のROM媒体が用いられている。これらのROM媒体は、書き換え可能であるため、適宜、制御プログラムを書き換えることにより、リユースが可能である。このようにリユースを行うことにより、資源の浪費を抑制でき、物的・人的リソースの有効活用を図ることができる。
しかし、この種のROM媒体が、パチンコ遊技装置やスロットマシーンに搭載される場合には、制御プログラムの改竄・盗用等に十分な配慮を払う必要がある。健全な遊技の実現のため、パチンコ遊技装置やスロットマシーンでは、国家公安委員会の規則に則った検査・認定が必要である。具体的には、保安電子通信技術協会による試験を受ける必要があり、これに合格したもののみが遊技場に設置可能となっている。しかし、この試験に合格した後に、不正に、制御プログラムが改竄されると、健全な遊技の実現が阻害される惧れがあり、上記検査・認定を行う意味がなくなる。よって、この種のROM媒体が、パチンコ遊技装置やスロットマシーン等に搭載される場合には、制御プログラムの改竄を確実に抑止する必要がある。
また、最近、パチンコ遊技装置やスロットマシーン等では画像コンテンツの充実が図られ、これとともに、画像コンテンツに対する知的財産権(著作権、等)の保護要請が高まっている。しかし、ROM媒体は、汎用品であるが故に、不特定多数の第三者によるリユースないし書き換えの機会が増加し易い。このように、リユースの際の物流経路が多くなると、その分、制御プログラムが拡散の機会に晒され易くなる。よって、現状では、画像コンテンツに対する知的財産権の保護体制が十分であるとは言い難いものとなっている。
特開平11−276704号 特開平2004−103027号 特許第3495409号
本発明は、上記問題を解消するためになされたものであり、プログラムの改竄と拡散を抑制しながらメモリ媒体のリユースを円滑化できるメモリ装置およびメモリ書込み装置を提供することを目的とする。
上記課題に鑑み本発明は、以下の特徴を有する。
上記課題に鑑み本発明は、以下の特徴を有する。
請求項1の発明は、外部からアクセス可能なユーザ領域と、特別な手順を経ることによりアクセス可能なセキュア領域と、前記セキュア領域に対するアクセスの認証制御を行うアクセス認証制御部とを有するメモリ装置に関する。このメモリ装置は、前記ユーザ領域に設定され所定のプログラム情報を格納するデータ格納部と、前記セキュア領域のうち一度書込まれると読出しおよび再書込みが不可能な領域に設定され前記データ格納部に対する再書込みアクセスに必要な第1のキー情報(PSW)を格納する第1キー格納部と、前記
第1のキー情報(PSW)に基づいて前記データ格納部に対する再書込みを許可するかを判
定する再書込み判定部と、前記再書込み判定部における判定結果に基づいて前記データ格納部に対する書込みアクセス制御を行うアクセス制御部と、前記第1のキー情報(PSW)
の再生に必要な第2のキー情報(pIDe)を格納する第2キー格納部と前記セキュア領域に設定され前記プログラム情報の取得に必要な第3のキー情報(uKe)を格納する第3キー
格納部とを有する。前記第3のキー情報(uKe)は、前記第2のキー情報(pIDe)を用い
て前記プログラム情報の取得に必要なキー情報(Kd)が復号化可能となるよう暗号化されていることを特徴とする。
請求項2の発明は、請求項1に記載のメモリ装置において、前記再書込み判定部は、前記データ格納部に対するプログラム情報の再書込み要求時に入力されたキー情報が前記第1のキー情報(PSW)に一致する場合に、当該プログラム情報の再書込みを許可することを特徴とする。
請求項1および2の発明によれば、第2キー格納部から第2のキー情報(pIDe)を読み出して第1のキー情報(PSW)を再生し、再生した第1のキー情報(PSW)をメモリ装置に提示することにより、プログラム情報の再書込みを行うことができる。よって、メモリ装置のリユースを円滑に行うことができる。
ただし、この場合、第1のキー情報(PSW)の再生方法が、暗号化手法等により秘匿化された状態にあると、制御プログラムを不正に改竄しようとしても、その前段階において第1のキー情報(PSW)を適正に再生することができず、結果的に、制御プログラムの不正改竄を抑止できる。よって、このように第1のキー情報(PSW)の再生方法を秘匿化することにより、プログラム情報の不正改竄を未然に防止することができる。
さらに、このように第1のキー情報(PSW)の再生方法を秘匿化すれば、当該再生方法を知るもののみがプログラム情報を書き換えることができ、不特定多数の第三者によるリユースの機会を制限することができる。よって、当該メモリ装置をリユースする際の物流経路を、第1のキー情報(PSW)の再生方法を知るもののみに制限することができ、その結果、リユースの際の制御プログラムの拡散機会を効果的に抑制することができる。
このように請求項1および2の発明によれば、プログラムの改竄と拡散を効果的に抑制しながらメモリ装置のリユースを円滑かつ適正に行うことができる。
なお、請求項1および2の発明では、リユース時に、第2のキー情報(pIDe)が外部に読出し可能である必要がある。したがって、第2のキー情報(pIDe)の格納場所は、メモリ装置内の記録領域のうち、外部に読出し可能な領域に設定される必要がある。たとえば、第2のキー情報(pIDe)は、ユーザ領域、または、セキュア領域内の外部に読出し可能な領域に格納される。
また、請求項1および2の発明によれば、第3のキー情報(uKe)と第2のキー情報(pIDe)をメモリ装置から適正に読み出せない限り、プログラム情報を取得できないため、
プログラム情報の不正拡散を抑制することができる。また、上記リユース時の認証過程の他、このようにプログラム情報の取得過程においても、第2のキー情報(pIDe)が利用されるため、第2のキー情報(pIDe)の役割が強化される。
請求項の発明は、請求項1または2に記載のメモリ装置の各格納部に対応する情報を書込むメモリ書込み装置に関する。このメモリ書込み装置は、前記第1のキー情報(PSW
)を生成して前記第1キー格納部に書込む第1処理部と、前記第2のキー情報(pIDe)を生成して前記第2キー格納部に書込む第2処理部と、前記アクセス制御部を介して前記データ格納部に所定のプログラム情報を書込むプログラム書込み処理部とを有することを特徴とする。
本発明によれば、第1キー格納部および第2キー格納部に、それぞれ、第1のキー情報(PSW)と第2のキー情報(pIDe)が格納されるため、請求項1および2の発明と同様の理由から、プログラムの改竄と拡散を効果的に抑制でき、且つ、メモリ装置のリユースを円滑かつ適正に行うことができる。
請求項の発明は、請求項3に記載のメモリ書込み装置において、前記プログラム情報に基づいて識別情報(pID)を生成する識別情報生成部をさらに備え、第1のキー情報(PSW)および第2のキー情報(pIDe)の両方または何れか一方が、前記識別情報(pID)に
基づき前記プログラム情報に関連付けられて生成されていることを特徴とする。
本発明によれば、第1のキー情報(PSW)および第2のキー情報(pIDe)の両方または何れか一方が、識別情報(pID)を介して、プログラム情報に関連付けられるため、プログラム情報を参照することによって第1のキー情報(PSW)または第2のキー情報(pIDe)が適正であるかを判定でき、逆に、第1のキー情報(PSW)または第2のキー情報(pIDe)を参照することによってプログラム情報が適正であるかを判定することができる。よって、これら情報を互いに参照し合うことにより、何れかの情報が不正に改竄されたかを検証することができる。
請求項の発明は、請求項1または2に記載のメモリ装置にプログラム情報を書込むメモリ書込み装置である。このメモリ書込み装置は、上記請求項1ないし3の何れかに記載のメモリ装置をリユースする際に必要な構成を備えている。すなわち、このメモリ装置は、前記アクセス制御部を介して前記データ格納部に所定のプログラム情報を書込むプログラム書込み処理部と、前記第2格納部に格納されている情報を読み出して前記第1のキー情報(PSW)に対応する被認証情報を生成する被認証情報生成部と、生成された前記被認
証情報とともにプログラム情報の再書込み要求を前記メモリ装置に送信する再書込み要求部とを有する。
よって、請求項の発明によれば、請求項1および2の発明と同様の理由から、プログラムの改竄と拡散を効果的に抑制でき、且つ、メモリ装置のリユースを円滑かつ適正に行うことができる。
以上のとおり本発明によれば、プログラムの改竄と拡散を抑制しながらメモリ媒体のリユースを円滑化できるメモリ装置、メモリ書込み装置を提供することができる。
本発明の効果ないし意義は、以下に示す実施の形態の説明により更に明らかとなろう。ただし、以下の実施の形態は、あくまでも、本発明を実施化する際の一つの例示形態であって、本発明は、以下の実施の形態に記載されたものに何ら制限されるものではない。
以下、本発明の実施の形態につき図面を参照して説明する。
なお、本実施の形態におけるROMライター200は、ハードウェア的には、MPU、メモリ、その他のLSIなどで実現できる。また、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。図2および図8には、ハードウェアおよびソフトウェアによって実現されるROMライター200の機能ブロックが示されている。ただし、これらの機能ブロックが、ハードウェアのみ、ソフトウェアのみ、あるいは、それらの組合せ等、いろいろな形態で実現できることは言うまでもない。
また、本実施の形態に係るメモリ装置100は、メモリ領域とMPUおよび所定の処理を実現するための制御プログラムにて実現できる。図1および図8には、メモリ装置100の制御プログラムに関する機能ブロックが、概念的なエリア区分とともに示されている。
さらに、本実施の形態に係るアプリケーションプログラム300は、たとえば、遊技装置上の画像ボードにロードされ、MPUによって実行されることにより、所定の機能が実現されるものである。図4および図10には、アプリケーションプログラム300によって実現される機能のうち、メモリ装置100に対する読出し制御に関する機能のみが機能ブロックとして示されている。
図1に、実施例1に係るメモリ装置100の構成(機能ブロック図)を示す。メモリ装置100は、たとえば、FROMからなっている。メモリ装置100は、特別な手順を経ることによりアクセス可能なセキュア領域100aと、通常のアクセス制御にて外部からアクセス可能なユーザ領域100bに区分されている。
セキュア領域100aには、当該セキュア領域に対するアクセス認証制御を行うアクセス認証制御部101と、一度書込まれると読出しおよび再書込みが不可能なパスワード領域102が配されている。また、ユーザ領域100bには、ユーザ領域100bに対するデータ書込みおよび読出し制御を行うアクセス制御部103が配されている。
アクセス認証制御部101は、ROMライター200(後述)から書込み要求があり、また、アプリケーションプログラム(以下、「アプリケーション」という)300(後述)から読出し要求があった場合に、当該書込み要求および読出し要求の適否を判定する。そして、書込み要求が適正であれば、ユーザ領域100bに格納された暗号化製品コードpIDeをROMライター200に送信させる指示をアクセス制御部103に出力し、さらに、これに応じてROMライター200から受信した書込みパスワードPSWがパスワード領域102内の書込みパスワードPSWに一致する場合に、ユーザ領域100bへの書込みを許可する指示を書き込みアクセス制御部103に出力する。
また、アクセス認証制御部101は、アプリケーション300からの読出し要求が適正である場合に、セキュア領域100a内の所定の格納領域に格納された暗号化暗号鍵uKeを読み出して、アプリケーション300に送信する。
パスワード領域102は、書込みパスワードPSWを格納する。アクセス制御部103は、アクセス認証制御部10からの指示に応じて、ユーザ領域100bに格納された暗号化製品コードpIDeをROMライター200に送信する。また、アクセス制御部103は、アクセス認証制御部10からの指示に応じて、ユーザ領域100bに対する書込み禁止状態を解除し、ユーザ領域100bに対する書込みアクセスを行う。
図2に、実施例1に係るROMライター200の構成(機能ブロック図)を示す。図示の如く、ROMライター200は、キー発行部201と、データ暗号化部202と、pID生成部203と、pID暗号化部204と、キー暗号化部205と、パスワード生成部206と、pID復号化部207を備えている。
キー発行部201は、暗号鍵Keを発行する。データ暗号化部202は、キー発行部201によって発行された暗号鍵Keを用いてプログラムデータDATを暗号化し(暗号化関数:C(Ke,DAT))、暗号化したプログラムデータDATeを、書き込みアクセス制御部103に送信する。
pID生成部203は、プログラムデータDATに所定の演算処理P(DAT)を施して製品コードpIDを生成する。ここで、製品コードpIDは、たとえば、既存のチェックサムと同様、プログラムデータDATを一定のビット幅毎に加算して生成され、あるいは、プログラムデータDATにインタリーブを掛けながらチェックサム処理を施して生成される。
pID暗号化部204は、pID生成部203にて生成された製品コードpIDを暗号化し(暗号化関数:B(pID))、暗号化された製品コードpIDeを書き込みアクセス制御部103に送信する。
キー暗号化部205は、pID生成部203にて生成された製品コードpIDを用いて暗号鍵Keを暗号化し(暗号化関数:A(Ke,pID))、暗号化された暗号鍵uKeをアクセス認証制御部101に送信する。
パスワード生成部206は、pID生成部203にて生成された製品コードpIDに所定の演算処理Q(pID)を施してパスワードPSWを生成し、生成したパスワードPSWをアクセス認証制御部101に送信する。また、パスワード生成部206は、pID復号化部207にて復号化された製品コードpIDに上記演算処理Q(pID)を施してパスワードPSWを生成し、生成したパスワードPSWをアクセス認証制御部101に送信する。
pID復号化部207は、アクセス制御部103から受信した暗号化製品コードpIDeに復号化演算処理B−1(pIDe)を施して製品コードpIDを復号化し、復号化した製品コードpIDをパスワード生成部206に出力する。なお、演算処理B−1(pIDe)は、pID暗号化部204における演算処理B(pID)の逆演算処理である。
図3に、メモリ装置100に最初にプログラムデータDATを書込む場合(初期書込み)の処理フローを示す。
初期書込み時、まず、前処理として、書込み認証処理が行われる。すなわち、ROMライター200は、メモリ装置100のアクセス認証制御部101に、アクセス認証のためのコマンド列を送信する。これを受けて、アクセス認証制御部101は、受信したコマンド列の適否を判定し、コマンド列が適正である場合に、ROMライター200による書込みを許可し、アクセス制御部103に書込み禁止を解除する指示を出力する。
このようにして、書込み可能となると、ROMライター200は、キー発行部201にて暗号鍵Keを発行し(S101)、データ暗号化部202を機能させる。データ暗号化部202は、発行された暗号鍵Keを用いて随時プログラムデータDATを暗号化し(S102)、暗号化したプログラムデータDATeをアクセス制御部103に送信する(S104)。これにより、メモリ装置100のユーザ領域100bに暗号化プログラムデータDATeが書込まれる。
かかる書込み処理に並行して、pID生成部203は、随時、プログラムデータDATに対し演算処理P(DAT)を実行し、製品コードpIDの生成を行う(S103)。
しかして、全てのプログラムデータDATに対する書込み処理が終了すると(S105:YES)、pID生成部203にて生成された製品コードpIDが、pID暗号化部204、キー暗号化部205、パスワード生成部206に供給される。
これを受けて、pID暗号化部204は、製品コードpIDを暗号化して暗号化pIDeを生成し(S106)、これをアクセス制御部103に送信する(S107)。これにより、暗号化製品コードpIDeがユーザ領域100bの所定の格納領域に格納される。
また、キー暗号化部205は、製品コードpIDを用いて暗号鍵Keに演算処理A(Ke,pID)を施し、暗号化暗号鍵uKeを生成する(S108)。そして、これをアクセス認証制御部101に送信する(S109)。これを受けて、アクセス認証制御部101は、暗号化暗号鍵uKeをセキュア領域100a内の読出し可能領域に格納する(S110)。
さらに、パスワード生成部206は、pID生成部203から受信した製品コードpIDに演算処理Q(pID)を施してパスワードPSWを生成する(S111)。そして、これをアクセス認証制御部101に送信する(S112)。これを受けて、アクセス認証制御部101は、パスワードPSWをセキュア領域100a内のパスワード領域102に格納する(S113)。これにより、メモリ装置100に対する初期書込み処理が終了する。
図4に、実施例1に係るアプリケーション300の構成(機能ブロック図)を示す。図示の如く、アプリケーション300は、キー復号化部301と、データ復号化部302とを備えている。
キー復号化部301は、メモリ装置100のユーザ領域100bから暗号化製品コードpIDeを読出し、読み出した暗号化製品コードpIDeに復号化処理B−1(pIDe)を施して復号化製品コードpIDdを生成する。さらに、キー復号化部301は、メモリ装置100のセキュア領域100aから暗号化暗号鍵uKeを読出し、復号化製品コードpIDdと暗号化暗号鍵uKeに演算処理A−1(uKe,pIDd)を施して復号化暗号鍵Kdを生成する。
なお、演算処理B−1(pIDe)は、ROMライター200における演算処理B(pID)の逆演算処理であり、演算処理A−1(uKe,pIDd)は、ROMライター200における演算処理A(uKe,pID)の逆演算処理である。
データ復号化部302は、メモリ装置100のユーザ領域100bから暗号化プログラムデータDATeを読出し、キー復号化部301から受信した復号化暗号鍵Kdと読み出した暗号化プログラムデータDATeに対し復号化処理C−1(Kd,DATe)を施して、暗号化プログラムデータDATeを復号する。そして、復号化したプログラムデータDATを後段の機能ブロックに提供する。
なお、復号化処理C−1(Kd,DATe)は、ROMライター200における暗号化処理C(Ke,DAT)の逆演算処理である。
図5に、メモリ装置100からプログラムデータDATeを読み出す場合の処理フローを示す。
データ読出し時、アプリケーション300は、キー復号化部301において、メモリ装置100のユーザ領域100bから暗号化製品コードpIDeを読出す(S201)。さらに、キー復号化部301は、読み出した暗号化製品コードpIDeに演算処理B−1(pIDe)を施して、復号化製品コードpIDdを生成する(S202)。
しかる後、アプリケーション300は、メモリ装置100のアクセス認証処理部101に対し、アクセス認証のためのコマンド列を送信する(S203)。これを受けて、アクセス認証制御部101は、コマンド列の適否を判定し(S204)、受信したコマンド列が適正である場合(S205:YES)に、セキュア領域101aから暗号化製品コードuKeを読み出してアプリケーション300に送信する(S207)。一方、受信したコマンド列が不適正であれば(S205:NO)、暗号化製品コードuKeの送信を拒否する(S206)。
アプリケーション300は、アクセス認証処理部101に対してアクセス要求を行った後、暗号化暗号鍵uKeの受信を待つ(S208)。ここで、暗号化暗号鍵uKeを受信できなければ(S208:NO)、エラー処理が行われる(S209)。一方、暗号化暗号鍵コードuKeをメモリ装置100から受信した場合(S208:YES)には、キー復号化部301において、暗号化暗号鍵uKeと復号化製品コードpIDdを用いて演算処理A−1(uKe,pIDd)が行われ、復号化暗号鍵Kdが生成される(S210)。
しかる後、データ復号化部302において、随時、ユーザ領域101bから暗号化プログラムデータDATeが読み出される(S211)。データ復号化部302は、読み出した暗号化プログラムデータDATeを復号化暗号鍵Kdを用いて復号化し、復号化したプログラムデータDATを後段の機能ブロックに送信する(S212)。データ復号化部302におけるデータ読出しと復号化は、読み出すべきデータが終了するまで実行される(S213)。しかして、読出しデータが終了すると(S213:YES)、読出し処理が終了する。
図6に、メモリ装置200内のプログラムデータを書き換える場合の処理フローを示す。
データ書き換え時、ROMライター200は、pID復号化部207において、メモリ装置100のユーザ領域100bから暗号化製品コードpIDeを読出す(S301)。さらに、pID復号化部207は、読み出した暗号化製品コードpIDeに演算処理B−1(pIDe)を施して製品コードpIDを取得し、取得した製品コードpIDをパスワード生成部206に送信する(S302)。これを受けて、パスワード生成部206は、受信した製品コードpIDに演算処理Q(ID)を施して、パスワードPSWを生成する(S303)。
しかる後、パスワード生成部206は、メモリ装置100のアクセス認証処理部101に対し、書込み要求を送信する。このとき、パスワード生成部206は、アクセス認証のためのコマンド列とS303にて生成したパスワードPSWをアクセス認証処理部101に送信する(S304)。
これを受けて、アクセス認証制御部101は、受信した書込み要求の適否を判定する(S305)。すなわち、まず、受信したコマンド列の適否を判定し(S306)、受信したコマンド列が適正であると(S306:YES)、さらに、受信したパスワードPSWが、パスワード領域102内のパスワードPSWに一致するかを判定する(S307)。そして、両パスワードが一致すれば(S307:YES)、アクセス制御部103を書込み可能状態に設定し、書込み許可通知をROMライター200に送信する(S308)。
一方、受信したコマンド列が不適正であれば(S306:NO)、当該書込み要求を拒否する(S309)。また、コマンド列は適正である(S306:YES)が、パスワードが不適正である(S307:NO)場合にも、当該書込み要求を拒否する(S309)。
ROMライター200は、アクセス認証処理部101に対して書き込み要求を行った後、書込み許可通知の受信を待つ(S310)。ここで、書込み許可通知を受信できなければ(S310:NO)、エラー処理が行われる(S311)。一方、書込み許可通知をメモリ装置100から受信した場合(S210:YES)には、ユーザ領域100bに対するプログラムデータDATの書込み処理を行う(S312)。
図7に、図6のS312における書込み処理時の処理フローを示す。
この書込み処理において、ROMライター200は、キー発行部201にて暗号鍵Keを発行し(S321)、データ暗号化部202を機能させる。データ暗号化部202は、発行された暗号鍵Keを用いて随時プログラムデータDATを暗号化し(S322)、暗号化したプログラムデータDATeをアクセス制御部103に送信する(S323)。これにより、メモリ装置100のユーザ領域100bに暗号化プログラムデータDATeが書込まれる。
しかして、全てのプログラムデータDATに対する書込み処理が終了すると(S324:YES)、pID復号化部207にて復号化された製品コードpIDと、キー発行部201にて発行された暗号化鍵Keをもとに、キー暗号化部205において、暗号化暗号鍵uKeが生成される(S325)。そして、生成された暗号化暗号鍵uKeがアクセス認証制御部101に送信される(S326)。これを受けて、アクセス認証制御部101は、暗号化暗号鍵uKeをセキュア領域100a内の読出し可能領域に上書きし(S327)、暗号化暗号鍵uKeを書き換えられる。これにより、当該書込み処理が終了する。
なお、図7の処理フローは、暗号化暗号鍵uKeの格納領域が書き換え可能な領域である場合の処理フローである。暗号化暗号鍵uKeの格納領域が書き換え不可能な場合には、図7のS325〜S327の処理ステップが省略される。また、S321において暗号鍵Keを発行する代わりに、図5のS201〜S210と同様の処理を行って、プログラムデータDATを暗号化するための暗号鍵Kdが、メモリ装置100内のセキュア領域100aに格納された暗号化暗号鍵uKeから生成される。
以上、本実施例によれば、ユーザ領域100bから暗号化製品コードpIDeを読み出してパスワードPSWを生成し、生成したパスワードPSWをメモリ装置100に提示することにより、プログラムデータDATの再書込みを行うことができる。よって、メモリ装置100のリユースを円滑に行うことができる。
ただし、この場合、パスワードを生成するための演算処理B−1(pID)が秘匿化された状態にあると、制御プログラムを書き換えまたは改竄しようとしても、適正なパスワードPSWを取得することができないため、結果的に、制御プログラムの不正な変更・改竄を抑止できる。よって、本実施例によれば、プログラムデータの不正改竄を未然に防止することができる。
さらに、このようにパスワードを生成するための演算処理B−1(pID)を秘匿化すると、当該演算処理を知るもののみがプログラムデータDATを書き換えることができ、不特定多数の第三者によるリユースの機会を制限することができる。よって、当該メモリ装置100をリユースする際の物流経路を、当該演算処理B−1(pID)を知るもののみに制限することができ、その結果、リユースの際の制御プログラムの拡散機会を効果的に抑制することができる。
このように本実施例によれば、プログラムの改竄と拡散を効果的に抑制しながらメモリ装置のリユースを円滑かつ適正に行うことができる。
また、本実施例によれば、暗号化暗号鍵uKeと暗号化製品コードpIDeをメモリ装置100から適正に読み出すことができ、さらに、これら暗号化暗号鍵uKeと暗号化製品コードpIDeを適正に復号化して復号化暗号鍵Kdを取得できない限り、プログラムデータDATを取得できないため、プログラムデータDATの不正拡散を抑制することができる。
さらに、本実施例によれば、パスワードPSW、暗号化暗号鍵uKeおよび暗号化製品コードpIDeが、何れも、プログラムデータDATをもとに生成した製品コードpIDから生成されるため、これらは、プログラムデータDATに関連付けられることとなる。このため、ユーザ領域101bに格納されたプログラムデータDATを参照することによってパスワードPSW、暗号化暗号鍵uKeおよび暗号化製品コードpIDeの適否を検証でき、逆に、スワードPSW、暗号化暗号鍵uKeおよび暗号化製品コードpIDeを参照することによってプログラムデータDATが適正であるかを判定することができる。よって、これらデータを互いに参照し合うことにより、何れかのデータが不正に改竄されたかを検証することができる。
図8に、実施例2に係るメモリ装置100とROMライター200の構成(機能ブロック)を示す。
本実施例では、メモリ装置100のユーザ領域100bに、暗号化認証コードaIDeが格納され、プログラムデータDATは暗号化されずにそのままユーザ領域100bに格納される。一方、ROMライター200には、認証コードaIDを発行するaID発行部211と、認証コードaIDと暗号鍵201に対し演算処理D(Ke,aID)を施して暗号化認証コードaIDeを生成するaID暗号化部212が新たに配され、プログラムデータDATを暗号化するデータ暗号化部202が省略されている。
図9に、本実施例におけるメモリ装置100に最初にプログラムデータDATを書込む場合(初期書込み)の処理フローを示す。
上記実施例1と同様、初期書込み時には、まず、前処理として、書込み認証処理が行われる。すなわち、ROMライター200は、メモリ装置100のアクセス認証制御部101に、アクセス認証のためのコマンド列を送信する。これを受けて、アクセス認証制御部101は、受信したコマンド列の適否を判定し、コマンド列が適正である場合に、ROMライター200による書込みを許可し、アクセス制御部103に書込み禁止を解除する指示を出力する。
このようにして、書込み可能となると、ROMライター200は、プログラムデータDATをアクセス制御部103に送信する(S121)。これにより、メモリ装置100のユーザ領域100bにプログラムデータDATが書込まれる。かかる書込み処理に並行して、随時、プログラムデータDATに対する演算処理P(DAT)がpID生成部203において実行され、製品コードpIDの生成が行われる(S122)。
しかして、全てのプログラムデータDATに対する書込み処理が終了すると(S123:YES)、pID生成部203にて生成された製品コードpIDが、pID暗号化部204、キー暗号化部205、パスワード生成部206に供給される。
これを受けて、pID暗号化部204は、製品コードpIDを暗号化して暗号化pIDeを生成し(S124)、これをアクセス制御部103に送信する(S125)。これにより、暗号化製品コードpIDeがユーザ領域100bの所定の格納領域に格納される。
これに並行して、キー発行部201とaID発行部211から、それぞれ、暗号鍵Keと認証コードaIDが発行される(S126,127)。これを受けてaID暗号化部212は、暗号化鍵Keと認証コードaIDに上記演算処理を施して暗号化認証コードaIDeを生成し(S128)、これをアクセス制御部103に送信する(S129)。これにより、暗号化認証コードaIDeがユーザ領域100bの所定の格納領域に格納される。
以下、上記図3(実施例1)のS108〜S113の処理が行われ、暗号化暗号鍵uKeとパスワードPSWが、それぞれ、メモリ装置100のセキュア領域100aとパスワード領域102に格納される。これにより、メモリ装置100に対する初期書込み処理が終了する。
図10に、実施例2に係るアプリケーション300の構成(機能ブロック図)を示す。図示の如く、アプリケーション300は、キー復号化部301と、aID復号化部311と、aID認証部312を備えている。
キー復号化部301は、上記実施例1と同様の処理を行って復号化暗号鍵Kdを生成する。
aID復号化部311は、メモリ装置100のユーザ領域100bから暗号化認証コードaIDeを読出し、キー復号化部301から受信した復号化暗号鍵Kdと、読み出した暗号化認証コードaIDeに対し復号化処理D−1(Kd,aIDe)を施して、復号化認証コードaIDdを生成する。なお、復号化処理D−1(Kd,aIDe)は、ROMライター200における暗号化処理C(Ke,aID)の逆演算処理である。
aID認証部312は、適正な認証コードaIDcを保持しており、この認証コードaIDcと、aID復号化部311にて復号化された復号化認証コードaIDdとを比較して、両者が一致するかを判定する。そして、両者が一致するときにのみ、メモリ装置100のユーザ領域100bからプログラムデータDATの読出しを許可する。
図11に、メモリ装置100からプログラムデータDATを読み出す場合の処理フローを示す。
データ読出し時、アプリケーション300は、キー復号化部301において、メモリ装置100のユーザ領域100bから暗号化製品コードpIDeと暗号化認証コードaIDeを読出す(S221)。その後、上記図5(実施例1)のS202〜S210と同様の処理が行われ、復号化暗号鍵Kdが取得される。
しかる後、aID復号化部311において、復号化暗号鍵Kdと、S221にて読み出した暗号化認証コードaIDeに対し、復号化処理D−1(Kd,aIDe)が行われ、復号化認証コードaIDdが生成される(S222)。そして、aID認証部312において、上記の如く、復号化認証コードaIDdの適否が判定される(S223)。
復号化認証コードaIDdが不適正の場合(S223:NO)、エラー処理が行われる(S209)。復号化認証コードaIDdが適正である場合(S223:YES)、ユーザ領域100bからプログラムデータDATが読み出され、後段の機能ブロックに提供される(S224)。しかして、読出しデータが終了すると(S225:YES)、読出し処理が終了する。
次に、メモリ装置200内のプログラムデータを書き換える場合の処理であるが、この処理のうち、メモリ装置101に対するプログラムデータの書込みを開始するまでの処理は、上記図6(実施例1)のS301〜S311と同じである。本実施例では、図6のS312における処理が、図7のものから図12のように変更される。
すなわち、書込みが許可されると、ROMライター200は、プログラムデータDATをアクセス制御部103に送信する(S331)。これにより、メモリ装置100のユーザ領域100bにプログラムデータDATが書込まれる。
しかして、全てのプログラムデータDATに対する書込み処理が終了すると(S1332:YES)、キー発行部201とaID発行部211から、それぞれ、暗号鍵Keと認証コードaIDが発行される(S333、334)。これを受けてaID暗号化部212は、暗号化鍵Keと認証コードaIDに演算処理を施して暗号化認証コードaIDeを生成し(S335)、これをアクセス制御部103に送信する(S335)。これにより、暗号化認証コードaIDeがユーザ領域100bの所定の格納領域に格納される。
さらに、上記図7のS325と同様、pID復号化部207にて復号化された製品コードpIDと、キー発行部201にて発行された暗号化鍵Keをもとに、キー暗号化部205において、暗号化暗号鍵uKeが生成される(S337)。そして、生成された暗号化暗号鍵uKeがアクセス認証制御部101に送信される(S328)。これを受けて、アクセス認証制御部101は、暗号化暗号鍵uKeをセキュア領域100a内の読出し可能領域に上書きし(S339)、暗号化暗号鍵uKeを書き換えられる。これにより、当該書込み処理が終了する。
なお、図12の処理フローは、図7と同様、暗号化暗号鍵uKeの格納領域が書き換え可能な領域である場合の処理フローである。暗号化暗号鍵uKeの格納領域が書き換え不可能な場合には、S337〜S339の処理ステップが省略される。また、S333において暗号鍵Keを発行する代わりに、図11のS221およびS202〜S210と同様の処理を行って、暗号鍵Kdが、メモリ装置100内のセキュア領域100aに格納された暗号化暗号鍵uKeから生成される。
本実施例においても、上記実施例1と同様、プログラムの改竄と拡散を効果的に抑制しながらメモリ装置のリユースを円滑かつ適正に行うことができる。なお、本実施例では、プログラムデータが暗号化されずにユーザ領域100bに格納されるため、プログラムデータに対するセキュリティ能力が上記実施例1に比べやや低くなる。しかし、その反面、プログラムデータの書き込みと読み出し時に、プログラムデータに対する暗号化処理と復号化処理が不要となるため、処理の簡素化を図ることができ、メモリ装置100に対する書込み速度と読み出し速度を高めることができる。
なお、上記実施例1、2において、メモリ装置100をリユースする際にも初回書込み時と同様、製品コードpIDをプログラムデータDATから生成すると、製品コードpIDが初回書込み時のものから変化することとなる。このため、こうすると、製品コードpIDに関連付けられたパスワードPSWも初回設定時のものから変えなければならないこととなるが、上記実施例1、2では、パスワード領域102は書き換え不能領域であるため、初回設定されたパスワードPSWはリユース時に亘って再生・使用する必要がある。したがって、このように製品コードpIDをリユース時のプログラムデータDATに応じて更新する場合には、間接アドレッシング手法を用いて、最新の製品コードpIDと、初回設定された製品コードpIDの両方をメモリ装置100に格納するようにする。具体的には、pIDe生成関数Bの中で初回設定されたpIDへの間接アドレスのエンコードが可能なようにし、また、その逆関数B−1の中でこの間接アドレスをデコード可能なようにしておく。こうすることで、メモリ装置100のリユースを円滑に行うことができる。
以上、本発明の実施形態について説明したが、本発明は上記実施の形態に何ら制限されるものではない。また、本発明の実施形態も、上記以外に、種々の変更が可能である。たとえば、上記実施例1,2では、暗号化製品コードpIDeがユーザ領域100bに格納されたが、暗号化製品コードpIDeをセキュア領域100aに格納するようにしても良い。
本発明の実施の形態は、特許請求の範囲に示された技術的思想の範囲内において、適宜、種々の変更が可能である。
実施例1に係るメモリ装置の構成を示す図 実施例1に係るROMライターの構成を示す図 実施例1に係る初期書込み時の処理フローを示す図 実施例1に係るアプリケーションプログラムの機能ブロックを示す図 実施例1に係るプログラムデータ読出し時の処理フローを示す図 実施例1に係るプログラムデータ書き換え時の処理フローを示す図 実施例1に係るプログラムデータ書き換え時の処理フローを示す図 実施例2に係るメモリ装置とROMライターの構成を示す図 実施例2に係る初期書込み時の処理フローを示す図 実施例2に係るアプリケーションプログラムの機能ブロックを示す図 実施例2に係るプログラムデータ読出し時の処理フローを示す図 実施例2に係るプログラムデータ書き換え時の処理フローを示す図
符号の説明
100 メモリ装置
100a セキュア領域
100b ユーザ領域
101 アクセス認証制御部
102 パスワード領域
103 アクセス制御部
200 ROMライター
201 キー発行部
203 pID生成部
204 pID暗号化部
205 キー暗号化部
206 パスワード生成部206
207 pID復号化部

Claims (5)

  1. 外部からアクセス可能なユーザ領域と、特別な手順を経ることによりアクセス可能なセキュア領域と、前記セキュア領域に対するアクセスの認証制御を行うアクセス認証制御部とを有するメモリ装置であって、
    前記ユーザ領域に設定され所定のプログラム情報を格納するデータ格納部と、
    前記セキュア領域のうち一度書込まれると読出しおよび再書込みが不可能な領域に設定され前記データ格納部に対する再書込みアクセスに必要な第1のキー情報(PSW)を格納
    する第1キー格納部と、
    前記第1のキー情報(PSW)に基づいて前記データ格納部に対する再書込みを許可する
    かを判定する再書込み判定部と、
    前記再書込み判定部における判定結果に基づいて前記データ格納部に対する書込みアクセス制御を行うアクセス制御部と、
    前記第1のキー情報(PSW)の再生に必要な第2のキー情報(pIDe)を格納する第2キ
    ー格納部と、
    前記セキュア領域に設定され前記プログラム情報の取得に必要な第3のキー情報(uKe
    )を格納する第3キー格納部とを有し、
    前記第3のキー情報(uKe)は、前記第2のキー情報(pIDe)を用いて前記プログラム
    情報の取得に必要なキー情報(Kd)が復号化可能となるよう暗号化されている、
    ことを特徴とするメモリ装置。
  2. 請求項1に記載のメモリ装置において、
    前記再書込み判定部は、前記データ格納部に対するプログラム情報の再書込み要求時に入力されたキー情報が前記第1のキー情報(PSW)に一致する場合に、当該プログラム情
    報の再書込みを許可する、
    ことを特徴とするメモリ装置。
  3. 請求項1または2に記載のメモリ装置の各格納部に対応する情報を書込むメモリ書込み装置であって、
    前記第1のキー情報(PSW)を生成して前記第1キー格納部に書込む第1処理部と、
    前記第2のキー情報(pIDe)を生成して前記第2キー格納部に書込む第2処理部と、
    前記アクセス制御部を介して前記データ格納部に所定のプログラム情報を書込むプログ
    ラム書込み処理部と、
    を有することを特徴とするメモリ書込み装置。
  4. 請求項に記載のメモリ書込み装置において、
    前記プログラム情報に基づいて識別情報(pID)を生成する識別情報生成部をさらに備
    え、
    第1のキー情報(PSW)および第2のキー情報(pIDe)の両方または何れか一方が、前
    記識別情報(pID)に基づき前記プログラム情報に関連付けられて生成されている、
    ことを特徴とするメモリ書込み装置。
  5. 請求項1または2に記載のメモリ装置にプログラム情報を書込むメモリ書込み装置であって、
    前記アクセス制御部を介して前記データ格納部に所定のプログラム情報を書込むプログラム書込み処理部と、
    前記第2格納部に格納されている情報を読み出して前記第1のキー情報(PSW)に対応
    する被認証情報を生成する被認証情報生成部と、
    生成された前記被認証情報とともにプログラム情報の再書込み要求を前記メモリ装置に送信する再書込み要求部とを有する、
    ことを特徴とするメモリ書込み装置。
JP2007320231A 2007-12-11 2007-12-11 メモリ装置およびメモリ書込み装置 Active JP4785823B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007320231A JP4785823B2 (ja) 2007-12-11 2007-12-11 メモリ装置およびメモリ書込み装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007320231A JP4785823B2 (ja) 2007-12-11 2007-12-11 メモリ装置およびメモリ書込み装置

Publications (2)

Publication Number Publication Date
JP2009146008A JP2009146008A (ja) 2009-07-02
JP4785823B2 true JP4785823B2 (ja) 2011-10-05

Family

ID=40916573

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007320231A Active JP4785823B2 (ja) 2007-12-11 2007-12-11 メモリ装置およびメモリ書込み装置

Country Status (1)

Country Link
JP (1) JP4785823B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5529657B2 (ja) 2010-07-15 2014-06-25 ラピスセミコンダクタ株式会社 不揮発性半導体メモリ装置及び再利用方法
KR101835981B1 (ko) * 2016-06-28 2018-03-07 라인 가부시키가이샤 데이터 관리 방법 및 시스템
KR102242952B1 (ko) * 2019-10-04 2021-04-22 한국전자통신연구원 Usb 포렌식 데이터 획득 장치 및 방법
CN112364324A (zh) * 2020-11-16 2021-02-12 深圳安捷丽新技术有限公司 一种基于声纹识别的高安全等级数据访问方法和装置
CN112364325A (zh) * 2020-11-16 2021-02-12 深圳安捷丽新技术有限公司 一种基于用户指纹识别的多安全等级存储访问方法和装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11276704A (ja) * 1998-02-02 1999-10-12 Shinko Electric Co Ltd 遊戯装置の記憶装置、遊技装置の記憶装置の書込装置及び遊技装置の記憶装置の書込方法並びに遊戯装置の制御装置及びその制御方法
JP2005011151A (ja) * 2003-06-20 2005-01-13 Renesas Technology Corp メモリカード
JP4746993B2 (ja) * 2006-01-19 2011-08-10 Necネッツエスアイ株式会社 情報処理装置、セキュリティシステム、書込み先切替方法、プログラム
JP2007233725A (ja) * 2006-03-01 2007-09-13 Freescale Semiconductor Inc 集積回路、ウェハ及び集積回路の製造方法
JP4769608B2 (ja) * 2006-03-22 2011-09-07 富士通株式会社 起動検証機能を有する情報処理装置

Also Published As

Publication number Publication date
JP2009146008A (ja) 2009-07-02

Similar Documents

Publication Publication Date Title
JP4011792B2 (ja) 記録方法、再生方法、記録装置、再生装置及び記録媒体
KR100359885B1 (ko) 컴퓨터 시스템 및 콘텐츠 보호 방법
US7765604B2 (en) Information processing method, information processing apparatus and recording medium
JP4621314B2 (ja) 記憶媒体
JP5895230B2 (ja) 記録媒体装置に組み込まれるコントローラ、記録媒体装置、記録媒体装置の製造システム、および記録媒体装置の製造方法
US20140075207A1 (en) Apparatus, method, and computer program product for processing information
JP2005505885A (ja) 安全な1つのドライブによるコピー方法および装置
JP2003248629A (ja) 識別情報を有するリムーバブルディスク装置
JP4785823B2 (ja) メモリ装置およびメモリ書込み装置
JP2012008757A (ja) 情報処理装置、および情報処理方法、並びにプログラム
JP5009832B2 (ja) コンテンツ利用管理システム、情報処理装置、および方法、並びにプログラム
KR20010029724A (ko) 정보처리장치, 방법 및 제공매체
US20020146121A1 (en) Method and system for protecting data
KR101405915B1 (ko) 데이터의 암호화 저장 방법 및 암호화된 데이터의 판독방법
JPH11224456A (ja) 情報処理装置、情報処理方法、提供媒体、および記録媒体
JP3993384B2 (ja) 情報記録媒体、記録/再生装置及び方法
JP2001176189A (ja) 記録装置及び方法、再生装置及び方法並びに記録媒体
JP2000350013A (ja) 透かしデータ埋め込み装置、透かしデータ埋め込み方法、伝送方法、記録媒体、透かしデータ読み出し装置及び透かしデータ読み出し方法。
JP2010231623A (ja) キャッシュメモリ制御装置及び方法
JP2008011219A (ja) 電子透かし埋込システム、装置及びプログラム
JP3184189B2 (ja) 電子化データ保護システム、使用許諾者側装置、使用者側装置、使用許諾情報生成処理方法および電子化データ復号処理方法
JP2000231760A (ja) 情報記録装置および方法、情報再生装置および方法、並びに記録媒体
JP2003524922A (ja) キーを生成する方法及び装置
JP2003337754A (ja) 記録装置、リストア方法、プログラム、記録媒体
JP4590333B2 (ja) データ処理方法、データ処理装置およびプログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110301

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110428

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110712

R151 Written notification of patent or utility model registration

Ref document number: 4785823

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140722

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250