JP2004080103A - Authentication system, authentication apparatus, authentication method and program - Google Patents
Authentication system, authentication apparatus, authentication method and program Download PDFInfo
- Publication number
- JP2004080103A JP2004080103A JP2002233916A JP2002233916A JP2004080103A JP 2004080103 A JP2004080103 A JP 2004080103A JP 2002233916 A JP2002233916 A JP 2002233916A JP 2002233916 A JP2002233916 A JP 2002233916A JP 2004080103 A JP2004080103 A JP 2004080103A
- Authority
- JP
- Japan
- Prior art keywords
- authentication
- computer
- unit
- program
- data
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 35
- 238000012545 processing Methods 0.000 claims description 51
- 238000012790 confirmation Methods 0.000 description 10
- 239000013256 coordination polymer Substances 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 101100314276 Drosophila melanogaster SIDL gene Proteins 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000013478 data encryption standard Methods 0.000 description 2
- 101100315260 Picea mariana SB09 gene Proteins 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Abstract
Description
【0001】
【発明の属する技術分野】
この発明は、認証システム、認証装置、認証方法及びプログラムに関する。
【0002】
【従来の技術】
データ交換を行う機器間(例えば、コンピュータとその周辺機器との間)は、バスを介して接続されている。そして、民生用機器相互間を接続するバスの場合、このバスは通常、アーキテクチャが公開された汎用バスからなっている。汎用バスとしては、例えば、IEEE(Institute of Electrical and Electronic Engineers)1394に準拠したバスや、USB(Universal Serial Bus)や、PCI(Peripheral Component Interface)バスなどが知られている。
【0003】
【発明が解決しようとする課題】
汎用バスは、上述の通りアーキテクチャが公開されているので、汎用バスを介して伝送されるデータは、この汎用バスに接続された機器が実行するプログラムを改竄することにより、容易に不正取得ないし不正記録されたり、容易に不正な改竄を加えられたりする、という問題があった。
【0004】
この発明は、上記実状に鑑みてなされたものであり、アーキテクチャが既知のバス上で伝送されるデータが不正に取り扱われないようにするための認証システムや認証方法、及び、そのような認証システムや認証方法の実現を容易にするための認証装置を提供することを目的とする。
【0005】
【課題を解決するための手段】
上記目的を達成すべく、この発明の第1の観点に係る認証システムは、
コンピュータと、前記コンピュータに接続された認証ユニットとより構成されており、
前記コンピュータは、自己が実行する認証対象のプログラム、及び、当該認証対象のプログラムを表す第1のダイジェストデータにデジタル署名を施したものを含んだソフトウェア用証明書を記憶しており、
前記認証ユニットは、自己を識別するデータにデジタル署名を施したものを含んだユニット用証明書を記憶しており、
前記コンピュータは、自己が記憶している前記ソフトウェア用証明書を前記認証ユニットに供給し、
前記認証ユニットは、前記コンピュータより供給されたソフトウェア用証明書に含まれるデジタル署名を認証し、認証に成功した場合に、自己が記憶している前記ユニット用証明書を前記コンピュータに供給し、
前記コンピュータは、前記認証ユニットより供給されたユニット用証明書に含まれるデジタル署名を認証し、認証に成功した場合に、自己が記憶する前記認証対象のプログラムに基づいて第2のダイジェストデータを生成し、当該第2のダイジェストデータにデジタル署名を施して前記認証ユニットに供給し、
前記認証ユニットは、前記コンピュータより供給された前記第2のダイジェストデータに施されたデジタル署名を認証し、認証に成功した場合に、前記第1及び第2のダイジェストデータが同一のプログラムを表すものであるか否かを判別して、同一のプログラムを表さないと判別したとき、前記コンピュータによる前記認証対象のプログラムの実行を阻止する、
ことを特徴とする。
【0006】
前記認証対象のプログラムを実行する前記コンピュータは、当該コンピュータに供給された被処理データを処理する機能を行うものであってもよく、
この場合、前記認証ユニットは、外部より被処理データを取得して、前記第1及び第2のダイジェストデータが同一のプログラムを表すと判別したときは当該被処理データを前記コンピュータへと供給し、同一のプログラムを表さないと判別したときは、当該被処理データの前記コンピュータへの供給を中止することにより、前記コンピュータによる前記認証対象のプログラムの実行を阻止するものであってもよい。
【0007】
前記コンピュータは、ユニット認証用チャレンジデータを生成して認証ユニットに供給してもよく、
前記認証ユニットは、前記ユニット認証用チャレンジデータを暗号化して前記コンピュータに供給してもよく、
前記コンピュータは、前記認証ユニットより供給された、暗号化されているユニット認証用チャレンジデータが、自己が生成したユニット認証用チャレンジデータと実質的に同一のものであるか否かを判別し、同一でないと判別したとき、前記認証対象のプログラムの実行を中止するようにしてもよい。
【0008】
前記認証ユニットは、コンピュータ認証用チャレンジデータを生成して前記コンピュータに供給してもよく、
前記コンピュータは、前記コンピュータ認証用チャレンジデータを暗号化して前記認証ユニットに供給してもよく、
前記認証ユニットは、前記コンピュータより供給された、暗号化されているコンピュータ認証用チャレンジデータが、自己が生成したコンピュータ認証用チャレンジデータと実質的に同一のものであるか否かを判別し、同一でないと判別したとき、暗号化されたユニット認証用チャレンジデータの前記コンピュータへの供給を中止することにより、前記コンピュータによる前記認証対象のプログラムの実行を阻止するようにしてもよい。
【0009】
また、この発明の第2の観点に係る認証装置は、
認証対象のプログラム、及び、当該認証対象のプログラムを表す第1のダイジェストデータにデジタル署名を施したものを含んだソフトウェア用証明書を記憶する記憶手段と、
前記記憶手段が記憶する前記認証対象のプログラムを実行するプログラム実行手段と、
前記ソフトウェア用証明書を外部の装置に供給する手段と、
前記外部の装置より、デジタル署名を含んだユニット用証明書を供給されたとき、当該ユニット用証明書に含まれるデジタル署名を認証し、認証に成功した場合に、前記記憶手段が記憶する前記認証対象のプログラムに基づいて第2のダイジェストデータを生成し、当該第2のダイジェストデータにデジタル署名を施して前記外部の装置に供給する手段と、を備える、
ことを特徴とする。
【0010】
また、この発明の第3の観点に係る認証装置は、
自己を識別するデータにデジタル署名を施したものを含んだユニット用証明書を記憶する記憶手段と、
外部のコンピュータより、当該コンピュータが実行する認証対象のプログラムを表す第1のダイジェストデータにデジタル署名を施して暗号化したものを含んだソフトウェア用証明書を供給されたとき、当該ソフトウェア用証明書を復号化し、復号化された当該ソフトウェア用証明書に含まれるデジタル署名を認証し、認証に成功した場合に、前記記憶手段が記憶している前記ユニット用証明書を当該コンピュータに供給する手段と、
前記コンピュータより、第2のダイジェストデータにデジタル署名を施したものが供給されたとき、当該第2のダイジェストデータに施されたデジタル署名を認証し、認証に成功した場合に、前記第1及び第2のダイジェストデータが同一のプログラムを表すものであるか否かを判別して、同一のプログラムを表さないと判別したとき、前記コンピュータによる前記認証対象のプログラムの実行を阻止する手段と、を備える
ことを特徴とする。
【0011】
また、この発明の第4の観点に係る認証方法は、
コンピュータが実行する認証対象のプログラムを記憶し、
前記認証対象のプログラムを表す第1のダイジェストデータにデジタル署名を施したものを含んだソフトウェア用証明書に含まれるデジタル署名を認証し、認証に成功した場合に、外部の装置を識別するデータにデジタル署名を施したものを含んだユニット用証明書に含まれるデジタル署名を認証し、認証に成功した場合に、記憶されている前記認証対象のプログラムに基づいて第2のダイジェストデータを生成し、当該第2のダイジェストデータにデジタル署名を施し、当該第2のダイジェストデータに施されたデジタル署名を認証し、認証に成功した場合に、前記第1及び第2のダイジェストデータが同一のプログラムを表すものであるか否かを判別して、同一のプログラムを表さないと判別したとき、前記コンピュータによる前記プログラムの実行を阻止する、
ことを特徴とする。
【0012】
また、この発明の第5の観点に係るプログラムは、
コンピュータを、
認証対象のプログラム、及び、当該認証対象のプログラムを表す第1のダイジェストデータにデジタル署名を施したものを含んだソフトウェア用証明書を記憶する記憶手段と、
前記記憶手段が記憶する前記認証対象のプログラムを実行するプログラム実行手段と、
前記ソフトウェア用証明書を外部の装置に供給する手段と、
前記外部の装置より、デジタル署名を含んだユニット用証明書を供給されたとき、当該ユニット用証明書に含まれるデジタル署名を認証し、認証に成功した場合に、前記記憶手段が記憶する前記認証対象のプログラムに基づいて第2のダイジェストデータを生成し、当該第2のダイジェストデータにデジタル署名を施して前記外部の装置に供給する手段と、
して機能させるためのものであることを特徴とする。
【0013】
また、この発明の第6の観点に係るプログラムは、
コンピュータを、
自己を識別するデータにデジタル署名を施したものを含んだユニット用証明書を記憶する記憶手段と、
外部のコンピュータより、当該コンピュータが実行する認証対象のプログラムを表す第1のダイジェストデータにデジタル署名を施して暗号化したものを含んだソフトウェア用証明書を供給されたとき、当該ソフトウェア用証明書を復号化し、復号化された当該ソフトウェア用証明書に含まれるデジタル署名を認証し、認証に成功した場合に、前記記憶手段が記憶している前記ユニット用証明書を当該コンピュータに供給する手段と、
前記コンピュータより、第2のダイジェストデータにデジタル署名を施したものが供給されたとき、当該第2のダイジェストデータに施されたデジタル署名を認証し、認証に成功した場合に、前記第1及び第2のダイジェストデータが同一のプログラムを表すものであるか否かを判別して、同一のプログラムを表さないと判別したとき、前記コンピュータによる前記認証対象のプログラムの実行を阻止する手段と、
して機能させるためのものであることを特徴とする。
【0014】
【発明の実施の形態】
以下、この発明の実施の形態を、図面を参照して説明する。
図1は、この発明の実施の形態に係るPC−DTV(Personal Computer−Digital TeleVision)システムの構成を示す図である。図示するように、このPC−DTVシステムは、コンテンツ再生用マシン1と、PC−DTVボード2とより構成されている。
【0015】
このうちPC−DTVボード2は、コンテンツ再生用マシン1に着脱可能に接続できるよう構成されており、コンテンツ再生用マシン1のユーザ等によって、接続バスBを介してコンテンツ再生用マシン1に接続される。
【0016】
コンテンツ再生用マシン1は、たとえば図1に示すように、プロセッサ11と、主記憶部12と、バスコントローラ13と、入力部14と、出力部15と、外部記憶部16と、を備える。
主記憶部12、バスコントローラ13、入力部14、出力部15及び外部記憶部16は、プロセッサ11に接続されている。また、バスコントローラ13は、接続バスBに接続される。なお、接続バスBは、USB(Universal Serial Bus)からなる。
【0017】
プロセッサ11は、CPU(Central Processing Unit)等からなる。プロセッサ11は、コンテンツ再生用マシン1の起動後、外部記憶部16に記憶されている後述のコンテンツ再生プログラムP1を読み出して実行し、このコンテンツ再生プログラムP1に従って、後述する処理を行う。
【0018】
主記憶部12は、RAM(Random Access Memory)等からなる。主記憶部12は、プロセッサ11のワークエリアとなる記憶領域を有する。
【0019】
バスコントローラ13は、論理回路等からなり、プロセッサ11とコンテンツ再生用マシン1の外部の装置(例えば、PC−DTVボード2)との間での接続バスBを介したデータ交換を制御する。
【0020】
入力部14は、たとえばキーボードやポインティングデバイス(例えば、マウス)等からなっており、操作者の操作に従ったデータをプロセッサ11に供給する。
【0021】
出力部15は、画像の表示を制御するビデオ回路や、この制御に従って画像を表示する液晶パネル等の表示装置や、音声を再生するための増幅回路及びスピーカ等より構成されている。出力部15は、プロセッサ11が供給する指示に従った画像や音声を出力する。
【0022】
外部記憶部16は、ハードディスク装置等からなる。外部記憶部16は、上述したコンテンツ再生プログラムP1などのデータを記憶しており、プロセッサ11からのアクセスに従い、プロセッサ11が供給するデータを記憶したり、自己が記憶しているデータを読み出してプロセッサ11に供給したりする。
【0023】
コンテンツ再生プログラムP1が制御する処理は、機能的には複数の処理ブロックを含んでいる。具体的には、図1に示すように、ハッシュ値計算モジュールM11、署名作成モジュールM12、署名確認モジュールM13、乱数発生モジュールM14及びコンテンツ再生モジュールM15、の各処理ブロックを含んでいる。
【0024】
また、外部記憶部16は、図1に示すように、ソフトウェア証明書Scert、EC−DSA(Elliptic Curve Digital Signature Algorithm)パラメータCP、ユニットID(IDentifier)リストBIDL、このPC−DTVシステムに固有に割り当てられている公開鍵(PC−DTVシステム公開鍵)SysKB、コンテンツ再生プログラムP1の開発者に固有に割り当てられている秘密鍵(ソフトウェア開発元秘密鍵)SKA、を予め記憶している。
【0025】
このうちEC−DSAパラメータCPは、EC−DSAの手法による暗号化や復号化のために用いる楕円曲線を特定するパラメータからなっている。
また、ユニットIDリストBIDLは、正当に製造された各PC−DTVボードに個別に割り当てられているID(ユニットID)を格納するリストである。
【0026】
また、図2に示すように、ソフトウェア証明書Scertは、以下(1)〜(4)として示すデータ、すなわち、
(1) コンテンツ再生プログラムP1に固有に割り当てられた識別符号(ソフトウェアID)SID、
(2) ソフトウェア開発元秘密鍵SKAと対をなす公開鍵(ソフトウェア開発元公開鍵)SKB、
(3) コンテンツ再生プログラムP1を構成するデータをハッシュ関数(例えば、SHA−1(Secure Hash Algorithm 1))に代入して得られる値(ソフトウェアのハッシュ値)Sh1、及び
(4) 上述の(1)〜(3)のデータを互いに結合し、PC−DTVシステム公開鍵と対をなす秘密鍵(PC−DTVシステム秘密鍵SysKA)で暗号化したものに相当するデータ(ソフトウェア証明書のPC−DTVシステム署名データ)SSIG、
を、対称鍵暗号の手法(例えば、AES(Advanced Encryption Standard)の手法)により暗号化したものを含んでいる。(なお、図2は、理解を容易にするため、上述の(1)〜(4)のデータが暗号化される前の状態を模式的に示している。)
【0027】
なお、(1)〜(4)のデータは個別に暗号化されていてもよいし、(1)〜(4)のデータの一部又は全部が互いに結合された上で一括して暗号化されていてもよい。
また、対をなす秘密鍵及び公開鍵は、「暗号化する対象のデータを秘密鍵を用いてEC−DSAの手法により暗号化して得られるデータは、この秘密鍵と対をなす公開鍵を用いて復号化しなければ平文のデータへと復元することが実質上できない」という関係にある。
【0028】
また、図2に示すように、ソフトウェア証明書Scertには、上述の(1)〜(4)のデータを暗号化するために用いた暗号鍵(以下、AES暗号鍵と呼ぶ)を識別する情報を含むデータである鍵ベクトルSKWKが付されている。
【0029】
PC−DTVボード2は、図3に示すように、デジタル放送受信部21と、バスコントローラ22と、内部メモリ23と、認証処理部24とを備える。
【0030】
デジタル放送受信部21は、復調回路より構成されており、内部バスを介して認証処理部24に接続されている。デジタル放送受信部21は、外部よりデジタル放送された、データストリームを表す変調波を入力して復調することにより、データストリームを復元する。そして、復元されたデータストリームを認証処理部24に供給する。
【0031】
なお、デジタル放送受信部21が受信する変調波が表すデータストリームは、上述したコンテンツ加工用の処理ブロックにより再生されるべきコンテンツを表しており、連続した複数のMPEG2(Motion Picture Expert Group 2)−TS(Transport Stream)パケットより構成されている。
【0032】
バスコントローラ22は、論理回路等より構成されており、接続バスBを介してコンテンツ再生用マシン1に着脱可能に接続され、また、内部バスを介して認証処理部24に接続されている。
【0033】
バスコントローラ22は、コンテンツ再生用マシン1が署名登録プログラムや認証プログラムの制御に従って行う認証処理部24へのアクセスを媒介する。
【0034】
内部メモリ23は、コンパクトフラッシュ(登録商標)等の不揮発性メモリと、メモリバスを介したデータの伝送を行うためのインターフェース回路とより構成されており、メモリバスを介して認証処理部24に接続されている。なお、メモリバスは任意の規格に準拠したバスであってよく、内部メモリ23のインターフェース回路は、メモリバスが準拠する規格に適合したデータ交換を媒介するものであればよい。
内部メモリ23は、認証処理部24からのアクセスに従い、認証処理部24が供給するデータを記憶したり、自己が記憶しているデータを読み出して認証処理部24に供給したりする。
【0035】
また、内部メモリ23は、図3に示すように、認証プログラムP2と、ユニット証明書Bcertと、上述したものと同一のEC−DSAパラメータCPと、ソフトウェアIDリストSIDLと、PC−DTVボード2の開発者に固有に割り当てられている秘密鍵(ユニット開発元秘密鍵)BKAと、上述したPC−DTVシステム公開鍵SysKBと、鍵データベースKDBと、を予め記憶している。
【0036】
ソフトウェアIDリストSIDLは、上述したソフトウェアID(SID)を格納するリストである。
鍵データベースKDBは、上述したAES暗号鍵を複数格納するデータベースであり、鍵データベースKDBに格納されている各々のAES暗号鍵は、自己に固有の鍵ベクトルSKWKに対応付けられている。従って、鍵ベクトルSKWKを検索キーとして鍵データベースKDBを検索すれば、AES暗号鍵が1個索出される。
【0037】
また、図4に示すように、ユニット証明書Bcertは、以下(5)〜(7)として示すデータ、すなわち、
(5) PC−DTVボード2に割り当てられている上述のユニットID(BID)、
(6) 上述のユニット開発元秘密鍵BKAと対をなす公開鍵(ユニット開発元公開鍵BKB)、及び
(7) 上述の(5)及び(6)のデータを互いに結合してPC−DTVシステム秘密鍵SysKAで暗号化したものに相当するデータ(ユニット証明書のPC−DTVシステム署名データ)BSIG、
を含む。
【0038】
認証処理部24は、例えば、CPU等のプロセッサと、上述のメモリバスが準拠する規格に適合したデータ交換を媒介するメモリバスコントローラ等とより構成されている。なお、認証処理部24は、認証プログラムP2を実行するプロセッサの機能を行う専用の集積回路を、プロセッサに代えて備えるようにしてもよい。この場合、内部メモリ23は認証プログラムP2を記憶している必要はない。
【0039】
認証処理部24は、内部バスを介してデジタル放送受信部21及びバスコントローラ22に接続され、一方で上述のメモリバスを介して内部メモリ23に接続されている。認証処理部24は、コンテンツ再生用マシン1がバスコントローラ22を介して行うアクセスを受け付け、内部メモリ23から認証プログラムP2を読み出して実行することにより、後述の処理を行う。
【0040】
認証プログラムP2が制御する処理は、機能的には複数の処理ブロックを含んでいる。具体的には、図3に示すように、ハッシュ値計算モジュールM21、署名作成モジュールM22、署名確認モジュールM23、復号化モジュールM24及び乱数発生モジュールM25、の各処理ブロックを含んでいる。
【0041】
なお、バスコントローラ22及び認証処理部24は、コンテンツ再生用マシン1が内部メモリ23からデータを読み出すためにPC−DTVボード2へとアクセスしても、このアクセスを実質的に阻止する。
【0042】
(動作)
次に、このPC−DTVシステムの動作を説明する。
図5は、このPC−DTVシステムの動作の手順を示す図である。
【0043】
コンテンツ再生用マシン1のユーザ等は、コンテンツ再生用マシン1にコンテンツを再生させたい場合は、PC−DTVボード2をコンテンツ再生用マシン1に接続し、次いで、コンテンツ再生用マシン1の入力部14を操作し、コンテンツ再生プログラムP1の起動を指示する。コンテンツ再生用マシン1のプロセッサ11はこの指示に応答して、コンテンツ再生プログラムP1を外部記憶部16より読み出し、実行する。
【0044】
プロセッサ11は、コンテンツ再生プログラムP1の処理を開始すると、まず、乱数発生モジュールM14の制御に従い、乱数Snを生成する(図5、ステップSB01)。
【0045】
次に、プロセッサ11は、外部記憶部16よりソフトウェア証明書Scertを読み出し、ステップSB01で生成した乱数Snと、読み出したソフトウェア証明書Scertとを、バスコントローラ13及び接続バスBを介してPC−DTVボード2へと送付する(ステップSB02)。
【0046】
PC−DTVボード2の認証処理部24は、コンテンツ再生用マシン1より乱数Sn及びソフトウェア証明書Scertを送付されると、復号化モジュールM24の制御に従い、このソフトウェア証明書Scertに付されている鍵ベクトルSKWKをキーとして鍵データベースKDBを検索し、この鍵ベクトルSKWKが示すAES復号鍵を選択して、外部記憶部16から読み出す(図5、ステップSA01)。
【0047】
次に、認証処理部24は、コンテンツ再生用マシン1より送付されたソフトウェア証明書Scertを、ステップSA01で選択したAES復号鍵を用いて、復号化モジュールM24の制御に従い復号化する(ステップSA02)。
【0048】
次に、認証処理部24は、署名確認モジュールM23の制御に従い、ステップSA02で復号化されたソフトウェア証明書Scertに含まれるPC−DTVシステム署名データSSIGを検証し、PC−DTVシステム署名データSSIGがこのPC−DTVシステムの正当な署名であるか否かを判別する(ステップSA03)。そして、正当な署名であると判別すると処理をステップSA04に進め、正当な署名ではないと判別すると、認証プログラムP2の処理を中止する(ステップSA10)。
【0049】
ステップSA10で認証処理部24が処理を中止すると、デジタル放送受信部21より供給されるデータストリームのコンテンツ再生用マシン1への供給は遮断される。従って、コンテンツ再生用マシン1は、デジタル放送受信部21が出力するデータストリームを取得できず、従ってこのデータストリームが表すコンテンツを再生することもできない。
【0050】
なお、ステップSA03で認証処理部24は、具体的には、まず内部メモリ23よりPC−DTVシステム公開鍵SysKB及びEC−DSAパラメータCPを読み出し、PC−DTVシステム公開鍵SysKBを用いて、EC−DSAの手法により、PC−DTVシステム署名データSSIGを復号化する。そして、復号化により得られたデータが、ソフトウェア証明書Scertに含まれる上述の(1)〜(3)のデータと一致するか否かを判別し、一致すると判別すると、ソフトウェア署名データSSIGがこのPC−DTVシステムの正当な署名であると判別し、一致しないと判別すると、正当な署名ではないと判別する。
【0051】
ステップSA04で認証処理部24は、署名確認モジュールM23の制御に従い、内部メモリ23が記憶するソフトウェアIDリストSIDLにアクセスし、ステップSA02で復号化されたソフトウェア証明書Scertに含まれているソフトウェアID(SID)をキーとしてソフトウェアIDリストSIDLを検索して、このソフトウェアID(SID)がソフトウェアIDリストSIDLに含まれているか否かを判別する。そして、含まれていると判別すると処理をステップSA05に進め、含まれていないと判別すると、認証プログラムP2の処理を中止する(ステップSA10)。
【0052】
ステップSA05で認証処理部24は、乱数発生モジュールM25の制御に従い、乱数Bnを生成する。次に、認証処理部24は、内部メモリ23よりユニット証明書Bcertを読み出し、ステップSA05で生成した乱数Bnと、読み出したユニット証明書Bcertとを、接続バスBを介してコンテンツ再生用マシン1へと送付する(ステップSA06)。
【0053】
一方、コンテンツ再生用マシン1のプロセッサ11は、ハッシュ値計算モジュールM11の制御に従い、ステップSB02の処理を終えると、コンテンツ再生プログラムP1を構成するデータを外部記憶部16より読み出し、このデータを用いて、ソフトウェアのハッシュ値Sh2を求める(ステップSB03)。
【0054】
なお、ソフトウェアのハッシュ値Sh2は、ステップSB03で読み出された、コンテンツ再生プログラムP1を構成するデータが改竄されていないものであれば、ソフトウェア証明書Scertに含まれるハッシュ値Sh1と同一の値をとるものであるとする。
【0055】
そして、プロセッサ11は、ステップSA06でPC−DTVボード2より乱数Bn及びユニット証明書Bcertを送付されると、署名確認モジュールM13の制御に従い、このユニット証明書Bcertに含まれるPC−DTVシステム署名データBSIGを検証し、このPC−DTVシステムの正当な署名であるか否かを判別する(ステップSB04)。そして、正当な署名であると判別すると処理をステップSB05に進め、正当な署名ではないと判別すると、コンテンツ再生プログラムP1の処理を中止する(ステップSB10)。
【0056】
ステップSB10でプロセッサ11が処理を中止すると、コンテンツ再生用マシン1は、たとえPC−DTVボード2よりデータストリームが供給されても、このデータストリームを取得せず、従ってこのデータストリームが表すコンテンツの再生を行わない。
【0057】
なお、ステップSB04でプロセッサ11は、具体的には、まず外部記憶部16よりPC−DTVシステム公開鍵SysKB及びEC−DSAパラメータCPを読み出し、PC−DTVシステム公開鍵SysKBを用いて、EC−DSAの手法により、ユニット証明書Bcertに含まれるPC−DTVシステム署名データBSIGを復号化する。そして、復号化により得られたデータが、ユニット証明書Bcertに含まれる上述の(5)及び(6)のデータと一致するか否かを判別し、一致すると判別すると、PC−DTVシステム署名データBSIGがこのPC−DTVシステムの正当な署名であると判別し、一致しないと判別すると、正当な署名ではないと判別する。
【0058】
ステップSB05でプロセッサ11は、署名確認モジュールM13の制御に従い、外部記憶部16が記憶するユニットIDリストBIDLにアクセスし、ステップSA06でPC−DTVボード2より送付されたユニット証明書Bcertに含まれているユニットID(BID)をキーとしてユニットIDリストBIDLを検索して、このユニットID(BID)がユニットIDリストBIDLに含まれているか否かを判別する。そして、含まれていると判別すると処理をステップSB06に進め、含まれていないと判別すると、コンテンツ再生プログラムP1の処理を中止する(ステップSB10)。
【0059】
ステップSB06でプロセッサ11は、署名作成モジュールM12の制御に従い、ステップSA06で送付された乱数BnとステップSB03で生成したハッシュ値Sh2とを結合し、結合により得られたデータを、外部記憶部16が記憶しているソフトウェア開発元秘密鍵SKA及びEC−DSAパラメータCPを用い、EC−DSAの手法により暗号化することにより、署名データSencを生成する。(すなわち、結合により得られたデータに、コンテンツ再生用マシン1のデジタル署名を施す。)
そして、プロセッサ11は、生成した署名データSencを、バスコントローラ13及び接続バスBを介してPC−DTVボード2へと送付する(ステップSB07)。
【0060】
なお、署名データSencには平文の乱数Bnも平文のハッシュ値Sh2も含まれていない。従って、署名データSencを不正に入手した者が平文の乱数Bnやハッシュ値Sh2の値を知ることは、実質的に不可能である。
【0061】
PC−DTVボード2の認証処理部24は、コンテンツ再生用マシン1より署名データSencを送付されると、署名確認モジュールM23の制御に従ってこの署名データSencを検証し、署名データSencがコンテンツ再生用マシン1の正当な署名であるか否かを判別する(ステップSA07)。すなわち、この署名データSencを、ステップSA02で復号化されたソフトウェア証明書Scertに含まれているソフトウェア開発元公開鍵SKB、及び、内部メモリ23が記憶しているEC−DSAパラメータCPを用い、EC−DSAの手法に従って認証する。
【0062】
そして、ステップSA07で、署名データSencがコンテンツ再生用マシン1の正当な署名であると判別すると(認証に成功すると)、認証処理部24は、デジタル放送受信部21より供給されるデータストリームを取得して、バスコントローラ22を介し、コンテンツ再生用マシン1に供給する。
ただし、コンテンツ再生用マシン1は、後述するステップSB08までの処理が完了するまではこのデータストリームを受信せず、従ってこのデータストリームが表すコンテンツの再生を行わない。
一方、署名データSencが正当な署名ではないとステップSA07で判別すると(認証に失敗すると)、認証処理部24は、認証プログラムP2の処理を中止する(ステップSA10)。
【0063】
また、認証処理部24は、署名データSencが正当な署名であるとステップSA07で判別すると、ステップSB02でコンテンツ再生用マシン1より送付された乱数Snを、署名作成モジュールM22の制御に従い、内部メモリ23が記憶しているユニット開発元秘密鍵BKA及びEC−DSAパラメータCPを用い、EC−DSAの手法によって暗号化することにより、署名データBencを生成する(ステップSA08)。(すなわち、乱数Snに、PC−DTVボード2のデジタル署名を施す。)
そして、認証処理部24は、署名データBencを、接続バスBを介してコンテンツ再生用マシン1へと送付する(ステップSA09)。
【0064】
コンテンツ再生用マシン1のプロセッサ11は、接続バスB及びバスコントローラ13を介してPC−DTVボード2より署名データBencを送付されると、署名確認モジュールM13の制御に従い、この署名データBencを検証し、署名データBencがPC−DTVボード2の正当な署名であるか否かを判別する(ステップSB08)。すなわち、この署名データBencを、ステップSB04で正当な署名があると判別されたユニット証明書Bcertに含まれているユニット開発元公開鍵BKB、及び、外部記憶部16が記憶しているEC−DSAパラメータCPを用い、EC−DSAの手法で認証する。
【0065】
そして、ステップSB08で、署名データBencがPC−DTVボード2の正当な署名ではないと判別すると(認証に失敗すると)、プロセッサ11は、コンテンツ再生プログラムP1の処理を中止する(ステップSB10)。
一方、署名データBencがPC−DTVボード2の正当な署名であるとステップSB08で判別(認証に成功)して以降、プロセッサ11は、接続バスB及びバスコントローラ13を介してPC−DTVボード2よりデータストリームが供給されると、コンテンツ再生モジュールM15の制御に従ってこのデータストリームを構成するTSパケットに含まれるコンテンツデータを解析し、このコンテンツデータが表す音声や画像を出力するよう、出力部15に指示を供給する。出力部15は、プロセッサ11が供給する指示に従った画像や音声を出力する(ステップSB09)。
【0066】
以上説明した動作を行った結果、PC−DTVボード2によるステップSA01〜SA09の処理及びコンテンツ再生用マシン1によるステップSB01〜SB07の処理を経てステップSB08での検証に成功すれば、コンテンツ再生用マシン1とPC−DTVボード2との相互認証に成功したものとしてコンテンツが再生され、その他の場合は、この相互認証が失敗したものとしてコンテンツの再生が阻止される。
【0067】
そして、この相互認証は、コンテンツ再生プログラムP1を構成するデータのハッシュ値を用いて行われるので、例えば、接続バスB上を通過するデータの不正取得や不正改竄を行うためにコンテンツ再生プログラムP1が改竄された場合、この相互認証は失敗する。従って、接続バスBを用いて伝送されるデータの保護が十分に図られる。
【0068】
なお、このPC−DTVシステムの構成は上述のものに限られない。
たとえば、ソフトウェアのハッシュ値Sh1やSh2の作成に用いられるハッシュ関数はSHA−1である必要はなく、例えば、SHA−256、SHA−512、MD−5(Message Digest 5)あるいはその他のハッシュ関数でもよい。
また、このPC−DTVシステムは、EC−DSAの手法によるデジタル署名の作成や認証に代えて、他の任意の公開鍵暗号の手法によりデジタル署名の作成や認証を行うようにしてもよい。
また、上述した(1)〜(4)のデータの暗号化や復号化の手法はAESに限られず、DES(Data Encryption Standard)やその他任意の対称鍵暗号の手法であってもよい。
【0069】
また、BIDは、PC−DTVボード2が記憶するデータの全部又は所定の一部(例えば、認証プログラムP2を構成するデータなど)から構成されていてもよい。
【0070】
また、接続バスBは必ずしもUSBに限られず任意の規格に準拠したバスであってよい。従って、接続バスBは、たとえばIEEE(Institute of Electrical and Electronic Engineers)1394に準拠するバスや、あるいはPCI(Peripheral Component Interface)バスからなっていてもよい。そして、バスコントローラ22は、接続バスBが準拠する規格に適合したデータ交換を媒介するものであればよい。
【0071】
以上、この発明の実施の形態を説明したが、この発明にかかる認証システム及び認証装置は、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。
例えば、拡張スロットを備えるパーソナルコンピュータに上述のコンテンツ再生用マシン1の動作を実行させるためのプログラムを格納した媒体(CD−ROM、MO、フロッピー(登録商標)ディスク等)から該プログラムをインストールし、このパーソナルコンピュータの拡張スロットに装着可能なマイクロコンピュータに上述のPC−DTVボード2の動作を実行させるためのプログラムを格納した媒体から該プログラムをインストールすることにより、上述の処理を実行するPC−DTVシステムを構成することができる。
【0072】
また、例えば、通信回線の掲示板(BBS)にこれらのプログラムをアップロードし、これを通信回線を介して配信してもよく、また、これらのプログラムを表す信号により搬送波を変調し、得られた変調波を伝送し、この変調波を受信した装置が変調波を復調して該プログラムを復元するようにしてもよい。
そして、これらのプログラムを起動し、OSの制御下に、他のアプリケーションプログラムと同様に実行することにより、上述の処理を実行することができる。
【0073】
なお、OSが処理の一部を分担する場合、あるいは、OSが本願発明の1つの構成要素の一部を構成するような場合には、記録媒体には、その部分を除いたプログラムを格納してもよい。この場合も、この発明では、その記録媒体には、コンピュータが実行する各機能又はステップを実行するためのプログラムが格納されているものとする。
【0074】
【発明の効果】
以上説明したように、この発明によれば、アーキテクチャが既知のバス上で伝送されるデータが不正に取り扱われないようにするための認証システム及び認証方法、及び、そのような認証システムや認証方法の実現を容易にするための認証装置が実現される。
【図面の簡単な説明】
【図1】この発明の実施の形態に係るPC−DTVシステムの構成を示すブロック図である。
【図2】ソフトウェア証明書のデータ構造を模式的に示す図である。
【図3】PC−DTVボードの構成を示すブロック図である。
【図4】ユニット証明書のデータ構造を模式的に示す図である。
【図5】図1のPC−DTVシステムの動作の手順を示す図である。
【符号の説明】
1 コンテンツ再生用マシン
11 プロセッサ
12 主記憶部
13 バスコントローラ
14 入力部
15 出力部
16 外部記憶部
2 PC−DTVボード
21 デジタル放送受信部
22 バスコントローラ
23 内部メモリ
24 認証処理部
B 接続バス
P1 コンテンツ再生プログラム
M11 ハッシュ値計算モジュール
M12 署名作成モジュール
M13 署名確認モジュール
M14 乱数発生モジュール
M15 コンテンツ再生モジュール
P2 認証プログラム
M21 ハッシュ値計算モジュール
M22 署名作成モジュール
M23 署名確認モジュール
M24 復号化モジュール
M25 乱数発生モジュール
Bcert ユニット証明書
BID ユニットID
BIDL ユニットIDリスト
BKA ユニット開発元秘密鍵
BKB ユニット開発元公開鍵
BSIG ユニット証明書のPC−DTVシステム署名データ
Scert ソフトウェア証明書
SID ソフトウェアID
SIDL ソフトウェアIDリスト
SKA ソフトウェア開発元秘密鍵
SKB ソフトウェア開発元公開鍵
Sh1、Sh2 ソフトウェアのハッシュ値
SSIG ソフトウェア証明書のPC−DTVシステム署名データ
SKWK 鍵ベクトル
KDB 鍵データベース
CP EC−DSAパラメータ
SysKB PC−DTVシステム公開鍵[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an authentication system, an authentication device, an authentication method, and a program.
[0002]
[Prior art]
Devices that exchange data (for example, between a computer and its peripheral devices) are connected via a bus. In the case of a bus connecting between consumer devices, this bus is usually a general-purpose bus whose architecture is disclosed. As the general-purpose bus, for example, a bus conforming to the Institute of Electrical and Electronic Engineers (IEEE) 1394, a universal serial bus (USB), and a bus including a PCI (Peripheral Component) are known.
[0003]
[Problems to be solved by the invention]
Since the architecture of the general-purpose bus is disclosed as described above, data transmitted via the general-purpose bus can be easily obtained or illegally altered by falsifying a program executed by a device connected to the general-purpose bus. There is a problem that the information is recorded or easily tampered with.
[0004]
The present invention has been made in view of the above situation, and has an authentication system, an authentication method, and an authentication system for preventing data transmitted on a bus having a known architecture from being illegally handled. It is an object to provide an authentication device for facilitating the realization of an authentication method.
[0005]
[Means for Solving the Problems]
In order to achieve the above object, an authentication system according to a first aspect of the present invention includes:
A computer and an authentication unit connected to the computer,
The computer stores an authentication target program to be executed by the computer, and a software certificate including a digital signature applied to first digest data representing the authentication target program,
The authentication unit stores a unit certificate including a digitally signed data for identifying itself,
The computer supplies the software certificate stored therein to the authentication unit,
The authentication unit authenticates a digital signature included in a software certificate supplied from the computer, and when the authentication is successful, supplies the unit certificate stored therein to the computer,
The computer authenticates the digital signature included in the unit certificate supplied from the authentication unit, and generates second digest data based on the authentication target program stored therein when authentication is successful. Applying a digital signature to the second digest data and supplying it to the authentication unit;
The authentication unit authenticates a digital signature applied to the second digest data supplied from the computer, and when the authentication is successful, the first and second digest data represent the same program. Determine whether or not, when it is determined that does not represent the same program, to prevent the computer from executing the authentication target program,
It is characterized by the following.
[0006]
The computer that executes the program to be authenticated may perform a function of processing data to be processed supplied to the computer,
In this case, the authentication unit obtains the data to be processed from the outside, and supplies the data to be processed to the computer when it is determined that the first and second digest data represent the same program, When it is determined that they do not represent the same program, the execution of the program to be authenticated by the computer may be prevented by stopping supply of the data to be processed to the computer.
[0007]
The computer may generate challenge data for unit authentication and supply the generated challenge data to the authentication unit.
The authentication unit may encrypt and supply the challenge data for unit authentication to the computer,
The computer determines whether or not the encrypted unit authentication challenge data supplied from the authentication unit is substantially the same as the unit authentication challenge data generated by itself, and Otherwise, the execution of the program to be authenticated may be stopped.
[0008]
The authentication unit may generate challenge data for computer authentication and supply the challenge data to the computer,
The computer may encrypt the computer authentication challenge data and supply it to the authentication unit,
The authentication unit determines whether or not the encrypted computer authentication challenge data supplied from the computer is substantially the same as the computer authentication challenge data generated by the authentication unit. Otherwise, the supply of the encrypted unit authentication challenge data to the computer may be stopped to prevent the computer from executing the program to be authenticated.
[0009]
An authentication device according to a second aspect of the present invention includes:
Storage means for storing a program to be authenticated, and a software certificate including a digital signature applied to first digest data representing the program to be authenticated;
Program execution means for executing the program to be authenticated stored in the storage means,
Means for supplying the software certificate to an external device;
When a certificate for a unit including a digital signature is supplied from the external device, the digital signature included in the certificate for the unit is authenticated, and when the authentication is successful, the authentication stored in the storage unit is performed. Means for generating second digest data based on the target program, applying a digital signature to the second digest data, and supplying the digital signature to the external device,
It is characterized by the following.
[0010]
An authentication device according to a third aspect of the present invention includes:
Storage means for storing a unit certificate including a digitally signed data for identifying itself;
When an external computer is supplied with a software certificate including a digital digest of a first digest data representing a program to be authenticated executed by the computer and a digital certificate, the software certificate is transmitted to the external computer. Decrypting, authenticating the digital signature included in the decrypted software certificate, and, when the authentication is successful, supplying the unit certificate stored in the storage unit to the computer,
When a digital signature is applied to the second digest data from the computer, the digital signature applied to the second digest data is authenticated. If the authentication is successful, the first and the second Means for determining whether or not the digest data of No. 2 represents the same program, and determining that the digest data does not represent the same program, preventing execution of the program to be authenticated by the computer. Prepare
It is characterized by the following.
[0011]
An authentication method according to a fourth aspect of the present invention includes:
Memorize the program to be authenticated executed by the computer,
A digital signature included in a software certificate including a digital signature applied to the first digest data representing the program to be authenticated is authenticated. If the authentication is successful, the digital signature is converted to data for identifying an external device. Authenticating the digital signature included in the unit certificate including the digitally signed one, and, if the authentication is successful, generating second digest data based on the stored program to be authenticated, A digital signature is applied to the second digest data, and the digital signature applied to the second digest data is authenticated. If the authentication is successful, the first and second digest data represent the same program If it is determined whether or not the same program is represented by the same program, the computer To prevent the execution of the ram,
It is characterized by the following.
[0012]
Further, a program according to a fifth aspect of the present invention includes:
Computer
Storage means for storing a program to be authenticated, and a software certificate including a digital signature applied to first digest data representing the program to be authenticated;
Program execution means for executing the program to be authenticated stored in the storage means,
Means for supplying the software certificate to an external device;
When a certificate for a unit including a digital signature is supplied from the external device, the digital signature included in the certificate for the unit is authenticated, and when the authentication is successful, the authentication stored in the storage unit is performed. Means for generating second digest data based on a target program, applying a digital signature to the second digest data, and supplying the digital signature to the external device;
It is characterized in that it is intended to function as
[0013]
Further, a program according to a sixth aspect of the present invention includes:
Computer
Storage means for storing a unit certificate including a digitally signed data for identifying itself;
When an external computer is supplied with a software certificate including a digital digest of a first digest data representing a program to be authenticated executed by the computer and a digital certificate, the software certificate is transmitted to the external computer. Decrypting, authenticating the digital signature included in the decrypted software certificate, and, when the authentication is successful, supplying the unit certificate stored in the storage unit to the computer,
When a digital signature is applied to the second digest data from the computer, the digital signature applied to the second digest data is authenticated. If the authentication is successful, the first and the second Means for preventing the computer from executing the program to be authenticated, when it is determined whether the digest data does not represent the same program, and
It is characterized in that it is intended to function as
[0014]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 is a diagram showing a configuration of a PC-DTV (Personal Computer-Digital Television) system according to an embodiment of the present invention. As shown in the figure, the PC-DTV system includes a
[0015]
The PC-
[0016]
The
The main storage unit 12, the
[0017]
The processor 11 includes a CPU (Central Processing Unit) and the like. After activating the
[0018]
The main storage unit 12 includes a RAM (Random Access Memory) and the like. The main storage unit 12 has a storage area serving as a work area for the processor 11.
[0019]
The
[0020]
The input unit 14 includes, for example, a keyboard and a pointing device (for example, a mouse), and supplies data according to the operation of the operator to the processor 11.
[0021]
The output unit 15 includes a video circuit for controlling display of an image, a display device such as a liquid crystal panel for displaying an image according to the control, an amplifier circuit for reproducing sound, a speaker, and the like. The output unit 15 outputs an image or a sound according to an instruction supplied by the processor 11.
[0022]
The external storage unit 16 includes a hard disk device or the like. The external storage unit 16 stores data such as the content reproduction program P1 described above, and stores data supplied by the processor 11 in accordance with access from the processor 11, or reads out data stored therein to 11 or the like.
[0023]
The processing controlled by the content reproduction program P1 functionally includes a plurality of processing blocks. Specifically, as shown in FIG. 1, it includes processing blocks of a hash value calculation module M11, a signature creation module M12, a signature confirmation module M13, a random number generation module M14, and a content reproduction module M15.
[0024]
Also, as shown in FIG. 1, the external storage unit 16 includes a software certificate Scert, an EC-DSA (Electric Curve Digital Signature Algorithm) parameter CP, a unit ID (IDentifier) list BIDL, and a unique assignment to the PC-DTV system. A public key (PC-DTV system public key) SysKB and a secret key (software developer private key) SKA uniquely assigned to the developer of the content reproduction program P1 are stored in advance.
[0025]
Among them, the EC-DSA parameter CP is a parameter for specifying an elliptic curve used for encryption and decryption by the EC-DSA method.
The unit ID list BIDL is a list that stores IDs (unit IDs) individually assigned to each of the PC-DTV boards that have been properly manufactured.
[0026]
Further, as shown in FIG. 2, the software certificate Scert includes data shown as (1) to (4) below, that is,
(1) An identification code (software ID) SID uniquely assigned to the content reproduction program P1,
(2) A public key (software developer public key) SKB paired with the software developer private key SKA,
(3) A value (software hash value) Sh1 obtained by substituting data constituting the content reproduction program P1 into a hash function (for example, SHA-1 (Secure Hash Algorithm 1)), and
(4) The data (1) to (3) described above are combined with each other, and the data corresponding to data obtained by encrypting with the secret key (PC-DTV system secret key SysKA) paired with the PC-DTV system public key ( PC-DTV system signature data of software certificate) SSIG,
Is encrypted by a symmetric key encryption method (for example, AES (Advanced Encryption Standard) method). (Note that FIG. 2 schematically shows a state before the above-described data (1) to (4) is encrypted for easy understanding.)
[0027]
The data of (1) to (4) may be individually encrypted, or a part or all of the data of (1) to (4) may be combined and then encrypted at once. May be.
The secret key and the public key forming a pair are referred to as “data obtained by encrypting the data to be encrypted by using the secret key and the EC-DSA method using the public key forming a pair with the secret key. Without decryption, it is virtually impossible to restore to plaintext data. "
[0028]
As shown in FIG. 2, information identifying the encryption key (hereinafter, referred to as an AES encryption key) used to encrypt the above data (1) to (4) is included in the software certificate Scert. Is attached to the key vector SKWK.
[0029]
As shown in FIG. 3, the PC-
[0030]
The digital
[0031]
The data stream represented by the modulated wave received by the digital
[0032]
The
[0033]
The
[0034]
The
The
[0035]
Also, as shown in FIG. 3, the
[0036]
The software ID list SIDL is a list that stores the above-described software ID (SID).
The key database KDB is a database that stores a plurality of AES encryption keys described above, and each AES encryption key stored in the key database KDB is associated with a key vector SKWK unique to itself. Therefore, if the key database KDB is searched using the key vector SKWK as a search key, one AES encryption key is found.
[0037]
Further, as shown in FIG. 4, the unit certificate Bcert is data shown as (5) to (7) below, that is,
(5) The above-mentioned unit ID (BID) assigned to the PC-
(6) a public key (unit developer public key BKB) paired with the above-mentioned unit developer secret key BKA, and
(7) Data (PC-DTV system signature data of a unit certificate) BSIG corresponding to a combination of the data of (5) and (6) described above and encrypted with the PC-DTV system secret key SysKA,
including.
[0038]
The
[0039]
The
[0040]
The processing controlled by the authentication program P2 functionally includes a plurality of processing blocks. Specifically, as shown in FIG. 3, it includes processing blocks of a hash value calculation module M21, a signature creation module M22, a signature confirmation module M23, a decryption module M24, and a random number generation module M25.
[0041]
The
[0042]
(motion)
Next, the operation of the PC-DTV system will be described.
FIG. 5 is a diagram showing a procedure of the operation of the PC-DTV system.
[0043]
When the user or the like of the
[0044]
When starting the processing of the content reproduction program P1, the processor 11 first generates a random number Sn under the control of the random number generation module M14 (FIG. 5, step SB01).
[0045]
Next, the processor 11 reads the software certificate Scert from the external storage unit 16 and transmits the random number Sn generated in step SB01 and the read software certificate Scert to the PC-DTV via the
[0046]
Upon receiving the random number Sn and the software certificate Scert from the
[0047]
Next, the
[0048]
Next, under the control of the signature confirmation module M23, the
[0049]
When the
[0050]
Note that in step SA03, the
[0051]
In step SA04, the
[0052]
In step SA05, the
[0053]
On the other hand, the processor 11 of the
[0054]
Note that the software hash value Sh2 is the same value as the hash value Sh1 included in the software certificate Scert if the data constituting the content reproduction program P1 read in step SB03 is not falsified. And take it.
[0055]
When the processor 11 receives the random number Bn and the unit certificate Bcert from the PC-
[0056]
When the processor 11 stops the process in step SB10, the
[0057]
In step SB04, the processor 11 first reads the PC-DTV system public key SysKB and the EC-DSA parameter CP from the external storage unit 16, and uses the PC-DTV system public key SysKB to read the EC-DSA The PC-DTV system signature data BSIG included in the unit certificate Bcert is decrypted by the above method. Then, it is determined whether or not the data obtained by the decryption matches the above-mentioned data (5) and (6) included in the unit certificate Bcert. If it is determined that the data matches, the PC-DTV system signature data If BSIG is determined to be a valid signature of this PC-DTV system, and if it is determined that they do not match, it is determined that the signature is not a valid signature.
[0058]
In step SB05, the processor 11 accesses the unit ID list BIDL stored in the external storage unit 16 according to the control of the signature confirmation module M13, and includes the unit ID list BCert sent from the PC-
[0059]
In step SB06, the processor 11 combines the random number Bn sent in step SA06 with the hash value Sh2 generated in step SB03 under the control of the signature creation module M12, and stores the resulting data in the external storage unit 16. Using the stored software developer private key SKA and the EC-DSA parameter CP, the data is encrypted by the EC-DSA method to generate signature data Senc. (That is, a digital signature of the
Then, the processor 11 sends the generated signature data Senc to the PC-
[0060]
The signature data Senc does not include the plaintext random number Bn or the plaintext hash value Sh2. Therefore, it is virtually impossible for a person who has illegally obtained the signature data Senc to know the value of the plain text random number Bn or the hash value Sh2.
[0061]
Upon receiving the signature data Senc from the
[0062]
If it is determined in step SA07 that the signature data Senc is a valid signature of the content reproducing machine 1 (successful authentication), the
However, the
On the other hand, if it is determined in step SA07 that the signature data Senc is not a valid signature (if the authentication fails), the
[0063]
When the
Then, the
[0064]
Upon receiving the signature data Benc from the PC-
[0065]
Then, when it is determined in step SB08 that the signature data Benc is not a valid signature of the PC-DTV board 2 (authentication fails), the processor 11 stops the processing of the content reproduction program P1 (step SB10).
On the other hand, after determining in step SB08 that the signature data Benc is a valid signature of the PC-DTV board 2 (successful authentication), the processor 11 transmits the PC-
[0066]
As a result of performing the operations described above, if the verification in step SB08 is successful through the processing of steps SA01 to SA09 by the PC-
[0067]
Since this mutual authentication is performed using the hash value of the data constituting the content reproduction program P1, for example, the content reproduction program P1 is used to illegally acquire or falsify data passing through the connection bus B. If it has been tampered with, this mutual authentication will fail. Therefore, protection of data transmitted using the connection bus B is sufficiently achieved.
[0068]
The configuration of the PC-DTV system is not limited to the above.
For example, the hash function used to create the hash values Sh1 and Sh2 of the software does not need to be SHA-1, and for example, SHA-256, SHA-512, MD-5 (Message Digest 5) or other hash functions. Good.
In addition, this PC-DTV system may perform creation and authentication of a digital signature by using any other public key encryption technique instead of creation and authentication of a digital signature by the EC-DSA technique.
The method of encrypting and decrypting the data of (1) to (4) described above is not limited to AES, but may be DES (Data Encryption Standard) or any other symmetric key encryption method.
[0069]
Further, the BID may be composed of all or a predetermined part of data stored in the PC-DTV board 2 (for example, data constituting the authentication program P2).
[0070]
Further, the connection bus B is not necessarily limited to the USB, and may be a bus conforming to an arbitrary standard. Therefore, the connection bus B may be composed of, for example, a bus compliant with the Institute of Electrical and Electronic Engineers (IEEE) 1394 or a PCI (Peripheral Component Interface) bus. The
[0071]
Although the embodiments of the present invention have been described above, the authentication system and the authentication device according to the present invention can be realized by using a normal computer system without using a dedicated system.
For example, the program is installed from a medium (CD-ROM, MO, floppy (registered trademark) disk, etc.) storing a program for causing a personal computer having an expansion slot to execute the operation of the
[0072]
Further, for example, these programs may be uploaded to a bulletin board (BBS) of a communication line and distributed via the communication line, or the carrier wave may be modulated by a signal representing these programs to obtain the obtained modulation. A device that transmits a wave and receives the modulated wave may demodulate the modulated wave and restore the program.
Then, by starting these programs and executing them in the same manner as other application programs under the control of the OS, the above-described processing can be executed.
[0073]
When the OS shares a part of the processing, or when the OS constitutes a part of one component of the present invention, the program excluding the part is stored in the recording medium. You may. Also in this case, in the present invention, it is assumed that the recording medium stores a program for executing each function or step executed by the computer.
[0074]
【The invention's effect】
As described above, according to the present invention, an authentication system and an authentication method for preventing data transmitted on a bus whose architecture is known from being illegally handled, and such an authentication system and an authentication method An authentication device for facilitating the realization is realized.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a PC-DTV system according to an embodiment of the present invention.
FIG. 2 is a diagram schematically illustrating a data structure of a software certificate.
FIG. 3 is a block diagram illustrating a configuration of a PC-DTV board.
FIG. 4 is a diagram schematically illustrating a data structure of a unit certificate.
FIG. 5 is a diagram showing a procedure of an operation of the PC-DTV system of FIG. 1;
[Explanation of symbols]
1 Content playback machine
11 processor
12 Main memory
13 Bus controller
14 Input section
15 Output section
16 External storage unit
2 PC-DTV board
21 Digital broadcast receiver
22 Bus Controller
23 Internal memory
24 Authentication processing unit
B connection bus
P1 content playback program
M11 hash value calculation module
M12 Signature creation module
M13 Signature Confirmation Module
M14 random number generation module
M15 Content playback module
P2 certification program
M21 hash value calculation module
M22 signature creation module
M23 Signature Confirmation Module
M24 decryption module
M25 random number generation module
Bcert unit certificate
BID Unit ID
BIDL unit ID list
BKA Unit Developer Private Key
BKB unit developer public key
PC-DTV system signature data of BSIG unit certificate
Scert software certificate
SID Software ID
SIDL software ID list
SKA software developer private key
SKB software developer public key
Sh1, Sh2 Software hash value
PC-DTV system signature data of SSIG software certificate
SKWK key vector
KDB key database
CP EC-DSA parameters
SysKB PC-DTV system public key
Claims (9)
前記コンピュータは、自己が実行する認証対象のプログラム、及び、当該認証対象のプログラムを表す第1のダイジェストデータにデジタル署名を施したものを含んだソフトウェア用証明書を記憶しており、
前記認証ユニットは、自己を識別するデータにデジタル署名を施したものを含んだユニット用証明書を記憶しており、
前記コンピュータは、自己が記憶している前記ソフトウェア用証明書を前記認証ユニットに供給し、
前記認証ユニットは、前記コンピュータより供給されたソフトウェア用証明書に含まれるデジタル署名を認証し、認証に成功した場合に、自己が記憶している前記ユニット用証明書を前記コンピュータに供給し、
前記コンピュータは、前記認証ユニットより供給されたユニット用証明書に含まれるデジタル署名を認証し、認証に成功した場合に、自己が記憶する前記認証対象のプログラムに基づいて第2のダイジェストデータを生成し、当該第2のダイジェストデータにデジタル署名を施して前記認証ユニットに供給し、
前記認証ユニットは、前記コンピュータより供給された前記第2のダイジェストデータに施されたデジタル署名を認証し、認証に成功した場合に、前記第1及び第2のダイジェストデータが同一のプログラムを表すものであるか否かを判別して、同一のプログラムを表さないと判別したとき、前記コンピュータによる前記認証対象のプログラムの実行を阻止する、
ことを特徴とする認証システム。A computer and an authentication unit connected to the computer,
The computer stores an authentication target program to be executed by the computer, and a software certificate including a digital signature applied to first digest data representing the authentication target program,
The authentication unit stores a unit certificate including a digitally signed data for identifying itself,
The computer supplies the software certificate stored therein to the authentication unit,
The authentication unit authenticates a digital signature included in a software certificate supplied from the computer, and when the authentication is successful, supplies the unit certificate stored therein to the computer,
The computer authenticates the digital signature included in the unit certificate supplied from the authentication unit, and generates second digest data based on the authentication target program stored therein when authentication is successful. Applying a digital signature to the second digest data and supplying it to the authentication unit;
The authentication unit authenticates a digital signature applied to the second digest data supplied from the computer, and when the authentication is successful, the first and second digest data represent the same program. Determine whether or not, when it is determined that does not represent the same program, to prevent the computer from executing the authentication target program,
An authentication system, characterized in that:
前記認証ユニットは、外部より被処理データを取得して、前記第1及び第2のダイジェストデータが同一のプログラムを表すと判別したときは当該被処理データを前記コンピュータへと供給し、同一のプログラムを表さないと判別したときは、当該被処理データの前記コンピュータへの供給を中止することにより、前記コンピュータによる前記認証対象のプログラムの実行を阻止する、
ことを特徴とする請求項1に記載の認証システム。The computer that executes the program to be authenticated performs a function of processing data to be processed supplied to the computer,
The authentication unit acquires the data to be processed from the outside, and when it is determined that the first and second digest data represent the same program, supplies the data to be processed to the computer, and supplies the same program When it is determined that it does not represent, by stopping the supply of the data to be processed to the computer, to prevent the computer from executing the program to be authenticated,
The authentication system according to claim 1, wherein:
前記認証ユニットは、前記ユニット認証用チャレンジデータを暗号化して前記コンピュータに供給し、
前記コンピュータは、前記認証ユニットより供給された、暗号化されているユニット認証用チャレンジデータが、自己が生成したユニット認証用チャレンジデータと実質的に同一のものであるか否かを判別し、同一でないと判別したとき、前記認証対象のプログラムの実行を中止する、
ことを特徴とする請求項1又は2に記載の認証システム。The computer generates challenge data for unit authentication and supplies the generated challenge data to the authentication unit,
The authentication unit encrypts the challenge data for unit authentication and supplies the encrypted challenge data to the computer,
The computer determines whether or not the encrypted unit authentication challenge data supplied from the authentication unit is substantially the same as the unit authentication challenge data generated by itself, and When it is determined that is not, execution of the authentication target program is stopped,
The authentication system according to claim 1 or 2, wherein:
前記コンピュータは、前記コンピュータ認証用チャレンジデータを暗号化して前記認証ユニットに供給し、
前記認証ユニットは、前記コンピュータより供給された、暗号化されているコンピュータ認証用チャレンジデータが、自己が生成したコンピュータ認証用チャレンジデータと実質的に同一のものであるか否かを判別し、同一でないと判別したとき、暗号化されたユニット認証用チャレンジデータの前記コンピュータへの供給を中止することにより、前記コンピュータによる前記認証対象のプログラムの実行を阻止する、
ことを特徴とする請求項3に記載の認証システム。The authentication unit generates and supplies challenge data for computer authentication to the computer,
The computer encrypts the computer authentication challenge data and supplies the challenge data to the authentication unit,
The authentication unit determines whether or not the encrypted computer authentication challenge data supplied from the computer is substantially the same as the computer authentication challenge data generated by the authentication unit. When it is determined that it is not, by stopping the supply of the encrypted unit authentication challenge data to the computer, to prevent the computer from executing the program to be authenticated,
The authentication system according to claim 3, wherein:
前記記憶手段が記憶する前記認証対象のプログラムを実行するプログラム実行手段と、
前記ソフトウェア用証明書を外部の装置に供給する手段と、
前記外部の装置より、デジタル署名を含んだユニット用証明書を供給されたとき、当該ユニット用証明書に含まれるデジタル署名を認証し、認証に成功した場合に、前記記憶手段が記憶する前記認証対象のプログラムに基づいて第2のダイジェストデータを生成し、当該第2のダイジェストデータにデジタル署名を施して前記外部の装置に供給する手段と、を備える、
ことを特徴とする認証装置。Storage means for storing a program to be authenticated, and a software certificate including a digital signature applied to first digest data representing the program to be authenticated;
Program execution means for executing the program to be authenticated stored in the storage means,
Means for supplying the software certificate to an external device;
When a certificate for a unit including a digital signature is supplied from the external device, the digital signature included in the certificate for the unit is authenticated, and when the authentication is successful, the authentication stored in the storage unit is performed. Means for generating second digest data based on the target program, applying a digital signature to the second digest data, and supplying the digital signature to the external device,
An authentication device, characterized in that:
外部のコンピュータより、当該コンピュータが実行する認証対象のプログラムを表す第1のダイジェストデータにデジタル署名を施して暗号化したものを含んだソフトウェア用証明書を供給されたとき、当該ソフトウェア用証明書を復号化し、復号化された当該ソフトウェア用証明書に含まれるデジタル署名を認証し、認証に成功した場合に、前記記憶手段が記憶している前記ユニット用証明書を当該コンピュータに供給する手段と、
前記コンピュータより、第2のダイジェストデータにデジタル署名を施したものが供給されたとき、当該第2のダイジェストデータに施されたデジタル署名を認証し、認証に成功した場合に、前記第1及び第2のダイジェストデータが同一のプログラムを表すものであるか否かを判別して、同一のプログラムを表さないと判別したとき、前記コンピュータによる前記認証対象のプログラムの実行を阻止する手段と、を備える
ことを特徴とする認証装置。Storage means for storing a unit certificate including a digitally signed data for identifying itself;
When an external computer is supplied with a software certificate including a digital digest of a first digest data representing a program to be authenticated executed by the computer and a digital certificate, the software certificate is transmitted to the external computer. Decrypting, authenticating the digital signature included in the decrypted software certificate, and, when the authentication is successful, supplying the unit certificate stored in the storage unit to the computer,
When a digital signature is applied to the second digest data from the computer, the digital signature applied to the second digest data is authenticated. If the authentication is successful, the first and the second Means for determining whether or not the digest data of No. 2 represents the same program, and determining that the digest data does not represent the same program, preventing execution of the program to be authenticated by the computer. An authentication device, comprising:
前記認証対象のプログラムを表す第1のダイジェストデータにデジタル署名を施したものを含んだソフトウェア用証明書に含まれるデジタル署名を認証し、認証に成功した場合に、外部の装置を識別するデータにデジタル署名を施したものを含んだユニット用証明書に含まれるデジタル署名を認証し、認証に成功した場合に、記憶されている前記認証対象のプログラムに基づいて第2のダイジェストデータを生成し、当該第2のダイジェストデータにデジタル署名を施し、当該第2のダイジェストデータに施されたデジタル署名を認証し、認証に成功した場合に、前記第1及び第2のダイジェストデータが同一のプログラムを表すものであるか否かを判別して、同一のプログラムを表さないと判別したとき、前記コンピュータによる前記プログラムの実行を阻止する、
ことを特徴とする認証方法。Memorize the program to be authenticated executed by the computer,
A digital signature included in a software certificate including a digital signature applied to the first digest data representing the program to be authenticated is authenticated. If the authentication is successful, the digital signature is converted to data for identifying an external device. Authenticating the digital signature included in the unit certificate including the digitally signed one, and, if the authentication is successful, generating second digest data based on the stored program to be authenticated, A digital signature is applied to the second digest data, and the digital signature applied to the second digest data is authenticated. If the authentication is successful, the first and second digest data represent the same program If it is determined whether or not the same program is represented by the same program, the computer To prevent the execution of the ram,
An authentication method characterized in that:
認証対象のプログラム、及び、当該認証対象のプログラムを表す第1のダイジェストデータにデジタル署名を施したものを含んだソフトウェア用証明書を記憶する記憶手段と、
前記記憶手段が記憶する前記認証対象のプログラムを実行するプログラム実行手段と、
前記ソフトウェア用証明書を外部の装置に供給する手段と、
前記外部の装置より、デジタル署名を含んだユニット用証明書を供給されたとき、当該ユニット用証明書に含まれるデジタル署名を認証し、認証に成功した場合に、前記記憶手段が記憶する前記認証対象のプログラムに基づいて第2のダイジェストデータを生成し、当該第2のダイジェストデータにデジタル署名を施して前記外部の装置に供給する手段と、
して機能させるためのプログラム。Computer
Storage means for storing a program to be authenticated, and a software certificate including a digital signature applied to first digest data representing the program to be authenticated;
Program execution means for executing the program to be authenticated stored in the storage means,
Means for supplying the software certificate to an external device;
When a certificate for a unit including a digital signature is supplied from the external device, the digital signature included in the certificate for the unit is authenticated, and when the authentication is successful, the authentication stored in the storage unit is performed. Means for generating second digest data based on a target program, applying a digital signature to the second digest data, and supplying the digital signature to the external device;
Program to make it work.
自己を識別するデータにデジタル署名を施したものを含んだユニット用証明書を記憶する記憶手段と、
外部のコンピュータより、当該コンピュータが実行する認証対象のプログラムを表す第1のダイジェストデータにデジタル署名を施して暗号化したものを含んだソフトウェア用証明書を供給されたとき、当該ソフトウェア用証明書を復号化し、復号化された当該ソフトウェア用証明書に含まれるデジタル署名を認証し、認証に成功した場合に、前記記憶手段が記憶している前記ユニット用証明書を当該コンピュータに供給する手段と、
前記コンピュータより、第2のダイジェストデータにデジタル署名を施したものが供給されたとき、当該第2のダイジェストデータに施されたデジタル署名を認証し、認証に成功した場合に、前記第1及び第2のダイジェストデータが同一のプログラムを表すものであるか否かを判別して、同一のプログラムを表さないと判別したとき、前記コンピュータによる前記認証対象のプログラムの実行を阻止する手段と、
して機能させるためのプログラム。Computer
Storage means for storing a unit certificate including a digitally signed data for identifying itself;
When an external computer is supplied with a software certificate including a digital digest of a first digest data representing a program to be authenticated executed by the computer and a digital certificate, the software certificate is transmitted to the external computer. Decrypting, authenticating the digital signature included in the decrypted software certificate, and, when the authentication is successful, supplying the unit certificate stored in the storage unit to the computer,
When a digital signature is applied to the second digest data from the computer, the digital signature applied to the second digest data is authenticated. If the authentication is successful, the first and the second Means for preventing the computer from executing the program to be authenticated, when it is determined whether the digest data does not represent the same program, and
Program to make it work.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002233916A JP3834532B2 (en) | 2002-08-09 | 2002-08-09 | Authentication system, authentication apparatus, authentication method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002233916A JP3834532B2 (en) | 2002-08-09 | 2002-08-09 | Authentication system, authentication apparatus, authentication method and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004080103A true JP2004080103A (en) | 2004-03-11 |
JP3834532B2 JP3834532B2 (en) | 2006-10-18 |
Family
ID=32018916
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002233916A Expired - Fee Related JP3834532B2 (en) | 2002-08-09 | 2002-08-09 | Authentication system, authentication apparatus, authentication method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3834532B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012085320A (en) * | 2011-11-21 | 2012-04-26 | Sony Corp | Information processor, information processing method, and computer program |
JP2013201760A (en) * | 2012-03-26 | 2013-10-03 | Nielsen Co (Us) Llc | Media monitoring using multiple types of signatures |
-
2002
- 2002-08-09 JP JP2002233916A patent/JP3834532B2/en not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012085320A (en) * | 2011-11-21 | 2012-04-26 | Sony Corp | Information processor, information processing method, and computer program |
JP2013201760A (en) * | 2012-03-26 | 2013-10-03 | Nielsen Co (Us) Llc | Media monitoring using multiple types of signatures |
US8768003B2 (en) | 2012-03-26 | 2014-07-01 | The Nielsen Company (Us), Llc | Media monitoring using multiple types of signatures |
US9106952B2 (en) | 2012-03-26 | 2015-08-11 | The Nielsen Company (Us), Llc | Media monitoring using multiple types of signatures |
US9674574B2 (en) | 2012-03-26 | 2017-06-06 | The Nielsen Company (Us), Llc | Media monitoring using multiple types of signatures |
US10212477B2 (en) | 2012-03-26 | 2019-02-19 | The Nielsen Company (Us), Llc | Media monitoring using multiple types of signatures |
US11044523B2 (en) | 2012-03-26 | 2021-06-22 | The Nielsen Company (Us), Llc | Media monitoring using multiple types of signatures |
US11863820B2 (en) | 2012-03-26 | 2024-01-02 | The Nielsen Company (Us), Llc | Media monitoring using multiple types of signatures |
US11863821B2 (en) | 2012-03-26 | 2024-01-02 | The Nielsen Company (Us), Llc | Media monitoring using multiple types of signatures |
Also Published As
Publication number | Publication date |
---|---|
JP3834532B2 (en) | 2006-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7636843B1 (en) | Information transmission system and method, drive device and access method, information recording medium, device and method for producing recording medium | |
JP4714402B2 (en) | Secure transmission of digital data from an information source to a receiver | |
US7877604B2 (en) | Proof of execution using random function | |
WO2018064955A1 (en) | Method and system for recording and playing back program | |
JP2003530599A (en) | System and method for controlling and exercising access rights to encrypted media | |
US7937766B2 (en) | Method and system for preventing simultaneous use of contents in different formats derived from the same content at a plurality of places | |
JP2008009631A (en) | Storage device and storage method | |
US11516194B2 (en) | Apparatus and method for in-vehicle network communication | |
JP2004266360A (en) | Authentication processor and security processing method | |
CN114490552B (en) | Data transmission method, device and electronic device | |
WO2004064318A1 (en) | Content reproduction device, license issuing server, and content reproduction system | |
JP2000076063A (en) | System and device for certification and recording medium | |
CN115065843B (en) | Video encryption and decryption processing method and system under security authentication | |
US20230376574A1 (en) | Information processing device and method, and information processing system | |
EP1145243A2 (en) | Copy protection by message encryption | |
JP3834532B2 (en) | Authentication system, authentication apparatus, authentication method and program | |
JP2001111539A (en) | Encryption key generation device and encryption key transmission method | |
JP2004240959A (en) | Content playback device, license issuing server, and content playback system | |
JP4198509B2 (en) | Mutual authentication method | |
JP4663437B2 (en) | Content usage information transmitting method, content usage information providing device and content usage information receiving device capable of using the method | |
JP4564572B1 (en) | Transmission device, reception device, and content transmission / reception method | |
JP7170588B2 (en) | Data processing method and data processing system | |
JP2007020066A (en) | Information processing apparatus and method, program, and authentication system | |
JPH1141229A (en) | Access controller and medium recording access control program | |
JP2004054798A (en) | Program authentication apparatus, program signature apparatus, program authentication method, program signature method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041129 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060320 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060411 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060612 |
|
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: 20060704 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060724 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3834532 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090728 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100728 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110728 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110728 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120728 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120728 Year of fee payment: 6 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120728 Year of fee payment: 6 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120728 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130728 Year of fee payment: 7 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
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 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
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 |
|
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 |
|
LAPS | Cancellation because of no payment of annual fees |