IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社 ミックウェアの特許一覧 ▶ 華騰國際科技股▲ふん▼有限公司の特許一覧

特許7551547記録媒体の生産方法、装置及びコンピュータプログラム
<>
  • 特許-記録媒体の生産方法、装置及びコンピュータプログラム 図1
  • 特許-記録媒体の生産方法、装置及びコンピュータプログラム 図2
  • 特許-記録媒体の生産方法、装置及びコンピュータプログラム 図3
  • 特許-記録媒体の生産方法、装置及びコンピュータプログラム 図4
  • 特許-記録媒体の生産方法、装置及びコンピュータプログラム 図5
  • 特許-記録媒体の生産方法、装置及びコンピュータプログラム 図6
  • 特許-記録媒体の生産方法、装置及びコンピュータプログラム 図7
  • 特許-記録媒体の生産方法、装置及びコンピュータプログラム 図8
  • 特許-記録媒体の生産方法、装置及びコンピュータプログラム 図9
  • 特許-記録媒体の生産方法、装置及びコンピュータプログラム 図10
  • 特許-記録媒体の生産方法、装置及びコンピュータプログラム 図11
  • 特許-記録媒体の生産方法、装置及びコンピュータプログラム 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-06
(45)【発行日】2024-09-17
(54)【発明の名称】記録媒体の生産方法、装置及びコンピュータプログラム
(51)【国際特許分類】
   G09B 29/00 20060101AFI20240909BHJP
   G06F 21/60 20130101ALI20240909BHJP
【FI】
G09B29/00 Z
G06F21/60 320
【請求項の数】 18
(21)【出願番号】P 2021047471
(22)【出願日】2021-03-22
(65)【公開番号】P2022146484
(43)【公開日】2022-10-05
【審査請求日】2023-07-25
(73)【特許権者】
【識別番号】504050275
【氏名又は名称】株式会社 ミックウェア
(73)【特許権者】
【識別番号】511159048
【氏名又は名称】華騰國際科技股▲ふん▼有限公司
(74)【代理人】
【識別番号】100101454
【弁理士】
【氏名又は名称】山田 卓二
(74)【代理人】
【識別番号】100132241
【弁理士】
【氏名又は名称】岡部 博史
(74)【代理人】
【識別番号】100135703
【弁理士】
【氏名又は名称】岡部 英隆
(72)【発明者】
【氏名】今井田 健太
(72)【発明者】
【氏名】瀬川 琢磨
(72)【発明者】
【氏名】広川 栄信
(72)【発明者】
【氏名】李 建保
(72)【発明者】
【氏名】黄 秀惠
【審査官】井上 香緒梨
(56)【参考文献】
【文献】特開2011-169825(JP,A)
【文献】米国特許第07613917(US,B1)
【文献】特開2004-145905(JP,A)
【文献】特開2003-196922(JP,A)
【文献】特開平10-283270(JP,A)
【文献】特開2004-046452(JP,A)
【文献】特開2013-178641(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F21/00-21/88
G09B29/00-29/14
B42D25/00-25/485
G06K7/00-7/14
(57)【特許請求の範囲】
【請求項1】
コンテンツを示すコンテンツ情報と、前記コンテンツ情報に対するセキュリティのためのセキュリティ情報とが記録された記録領域を有する記録媒体の生産方法であって、
前記記録領域には、前記記録媒体自身を一意に識別する媒体特定情報が予め記録されており、
(a)前記媒体特定情報とは異なる所与の情報を含む仮セキュリティ情報、及び、前記コンテンツ情報を、前記記録領域に書き込むステップと、
(b)前記記録領域から前記媒体特定情報及び前記仮セキュリティ情報を読み出すステップと、
(c)前記仮セキュリティ情報内の前記所与の情報を、前記媒体特定情報に置き換えるステップと、
(d)前記所与の情報が前記媒体特定情報に置き換えられた前記仮セキュリティ情報を暗号化して、前記セキュリティ情報を生成するステップと、
(e)前記ステップ(d)で生成された前記セキュリティ情報を、前記記録領域に記録させるステップと
を包含する記録媒体の生産方法。
【請求項2】
(f)前記仮セキュリティ情報及び前記コンテンツ情報の各々の原本を記録したホスト記録媒体から、前記仮セキュリティ情報及び前記コンテンツ情報を、前記記録媒体とは異なる記録媒体に複製するステップをさらに包含し、
前記ステップ(f)の後に前記ステップ(a)を実行する、請求項1に記載の生産方法。
【請求項3】
(g)前記ステップ(a)によって書き込まれた前記仮セキュリティ情報が、前記仮セキュリティ情報の原本と一致するか否かを検証し、かつ、前記ステップ(a)によって書き込まれた前記コンテンツ情報が、前記原本と一致するか否かを検証するステップをさらに包含する、請求項2に記載の生産方法。
【請求項4】
前記ステップ(g)の各検証結果の少なくとも1つが不一致を示す場合にはエラーを報知する、請求項3に記載の生産方法。
【請求項5】
前記エラーが報知された場合、前記ステップ(g)をリトライする、請求項4に記載の生産方法。
【請求項6】
前記ステップ(g)による両方の検証結果が一致を示す場合には、前記ステップ(b)から前記ステップ(e)までを実行する、請求項3に記載の生産方法。
【請求項7】
(h)前記記録媒体の前記記録領域から前記セキュリティ情報を読み出し、読み出した前記セキュリティ情報内の前記媒体特定情報が、前記ステップ(d)で暗号化された前記媒体特定情報と一致するか否かを検証するステップをさらに包含し、
前記ステップ(e)の後に前記ステップ(h)を実行する、請求項1から6のいずれか1項に記載の生産方法。
【請求項8】
前記ステップ(h)の検証結果が不一致を示す場合にはエラーを報知する、請求項7に記載の生産方法。
【請求項9】
前記エラーが報知された場合、前記ステップ(h)をリトライする、請求項8に記載の生産方法。
【請求項10】
前記コンテンツ情報は、前記コンテンツとして地図を示す地図情報である、請求項1から9のいずれか1項に記載の生産方法。
【請求項11】
前記ステップ(a)において書き込まれる前記仮セキュリティ情報は、前記地図情報が使用される車両を特定する車両特定情報、及び、前記地図情報のバージョンを示すバージョン情報をさらに含み、
前記ステップ(d)は、前記車両特定情報、及び、前記バージョン情報を暗号化する、請求項10に記載の生産方法。
【請求項12】
前記仮セキュリティ情報は予め暗号化されており、
(i)暗号化されている前記仮セキュリティ情報を復号するステップをさらに包含し、
前記ステップ(b)の後に前記ステップ(i)を実行し、かつ、前記ステップ(i)の後に前記ステップ(c)を実行する、請求項11に記載の生産方法。
【請求項13】
前記記録媒体は、SDメモリカードであり、
前記記録領域は、ユーザがデータを書き換え可能なユーザ領域及び、前記ユーザがデータを書き換え不可能な非ユーザ領域を有し、
前記非ユーザ領域には前記媒体特定情報が予め記録されており、
前記ステップ(a)は、前記ユーザ領域に、前記仮セキュリティ情報及び前記コンテンツ情報を書き込み、
前記ステップ(b)は、
前記非ユーザ領域から前記媒体特定情報を読み出すためのリードコマンドを前記記録媒体に送信し、前記リードコマンドに応答した前記記録媒体から送信された前記媒体特定情報を取得することによって前記媒体特定情報を読み出し、かつ、
前記ユーザ領域から前記仮セキュリティ情報を読み出す、
請求項1から12のいずれか1項に記載の生産方法。
【請求項14】
(j)記録対象の前記記録媒体の用意が完了したことを示す通知を受信するステップをさらに包含し、
前記通知を受信した後、前記ステップ(a)を実行する、請求項1から13のいずれか1項に記載の生産方法。
【請求項15】
前記ステップ(j)において受信される前記通知は、複数の前記記録媒体の用意が完了したことを示す信号である、請求項14に記載の生産方法。
【請求項16】
前記記録媒体は複数存在し、
前記エラーの報知は、複数の前記記録媒体のうちの、前記検証結果が不一致を示した前記記録媒体を特定する情報を含む、請求項4、5、8及び9のいずれか1項に記載の生産方法。
【請求項17】
外部機器と通信する通信インタフェースと、
記憶装置と、
演算回路と
を備え、前記演算回路を用いて請求項15に記載の生産方法を実行する装置であって、
前記記憶装置は、前記コンテンツ情報、及び、前記所与の情報を含む前記仮セキュリティ情報を格納しており、
前記演算回路は、前記信号の受信に応答して、
前記記憶装置から前記コンテンツ情報及び前記仮セキュリティ情報を読み出して、前記通信インタフェースを介して機能検査装置に送信し、
前記機能検査装置に前記ステップ(a)及び(b)を実行させ、
前記機能検査装置から前記通信インタフェースを介して前記媒体特定情報及び前記仮セキュリティ情報を受信し、
前記ステップ(d)を実行し、
前記ステップ(d)の実行によって生成された前記セキュリティ情報を、前記通信インタフェースを介して前記機能検査装置に送信し、
前記機能検査装置に前記ステップ(e)を実行させる
装置。
【請求項18】
請求項17に記載の装置の前記演算回路に、
前記記憶装置から前記コンテンツ情報及び前記仮セキュリティ情報を読み出させる処理と、
前記コンテンツ情報及び前記仮セキュリティ情報を、前記通信インタフェースを介して前記機能検査装置に送信させる処理と、
前記機能検査装置に前記ステップ(a)及び(b)を実行させるための指令を送信させる処理と、
前記機能検査装置から前記通信インタフェースを介して前記媒体特定情報及び前記仮セキュリティ情報を受信させる処理と、
前記ステップ(d)を実行させる処理と、
前記ステップ(d)の実行によって生成された前記セキュリティ情報を、前記通信インタフェースを介して前記機能検査装置に送信させる処理と、
前記機能検査装置に前記ステップ(e)を実行させるための指令を送信させる処理と
を実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、記録媒体の生産方法、装置及びコンピュータプログラムに関する。
【背景技術】
【0002】
従来、ナビゲーションシステムで使用される地図データにはセキュリティ対策が施されてきた。
【0003】
例えば特許文献1は、地図データの不正な使用を禁止することが可能な地図更新システムを開示する。特許文献1では、ユーザは、配信センタから配信される地図データを記録媒体に記録し、その記録媒体をナビゲーション装置に接続することでナビゲーション装置の地図データを更新する。地図データの更新に用いられる記録媒体には、ナビゲーション装置に付与されたユニークな個体IDが予め記録される。ユーザがパソコンに記録媒体をセットすると、パソコンは、記録媒体に記憶されている個体IDを配信センタに送信する。配信センタは、更新用の地図データに当該個体IDを属性データとして付加して更新用の地図データを配信する。更新用の地図データは、パソコンにセットされている記録媒体に書き込まれる。
【0004】
記録媒体がパソコンから取り外されてナビゲーション装置にセットされると、当該装置は、記録媒体上の地図データに付加された個体IDと自らの個体IDとが一致するかどうかを判断する。一致する場合には記録媒体上の地図データがハードディスクにコピーされ、一致しない場合にはコピーは禁止される。これにより、更新用の地図データの不正な使用を効果的に防止することが可能となる。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2005‐331579号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1の技術では、地図データを更新したいナビゲーション装置の個体IDが予め読み取られてしまうと、更新用の地図データの不正な使用が可能となる。
【0007】
本発明の目的は、記録媒体に複製された地図その他のコンテンツの適正な使用を担保するための技術を提供することにある。
【課題を解決するための手段】
【0008】
本発明による例示的な実施形態にかかる第1の開示の方法は、コンテンツを示すコンテンツ情報と、上記コンテンツ情報に対するセキュリティのためのセキュリティ情報とが記録された記録領域を有する記録媒体の生産方法である。上記記録領域には、上記記録媒体自身を一意に識別する媒体特定情報が予め記録されている。
当該方法は、
(a)上記媒体特定情報とは異なる所与の情報を含む仮セキュリティ情報、及び、上記コンテンツ情報を、上記記録領域に書き込むステップと、
(b)上記記録領域から上記媒体特定情報及び上記仮セキュリティ情報を読み出すステップと、
(c)上記仮セキュリティ情報内の上記所与の情報を、上記媒体特定情報に置き換えるステップと、
(d)上記所与の情報が上記媒体特定情報に置き換えられた上記仮セキュリティ情報を暗号化して、上記セキュリティ情報を生成するステップと、
(e)上記ステップ(d)で生成された上記セキュリティ情報を、上記記録領域に記録させるステップと
を包含する。
【0009】
第2の開示の生産方法は、第1の開示において、(f)上記仮セキュリティ情報及び上記コンテンツ情報の各々の原本を記録したホスト記録媒体から、上記仮セキュリティ情報及び上記コンテンツ情報を、上記記録媒体とは異なる記録媒体に複製するステップをさらに包含する。当該方法は、上記ステップ(f)の後に上記ステップ(a)を実行する。
【0010】
第3の開示の生産方法は、第2の開示において、(g)上記ステップ(a)によって書き込まれた上記仮セキュリティ情報が、上記仮セキュリティ情報の原本と一致するか否かを検証し、かつ、上記ステップ(a)によって書き込まれた上記コンテンツ情報が、上記原本と一致するか否かを検証するステップをさらに包含する。
【0011】
第4の開示の生産方法は、第3の開示において、上記ステップ(g)の各検証結果の少なくとも1つが不一致を示す場合にはエラーを報知する。
【0012】
第5の開示の生産方法は、第4の開示において、上記エラーが報知された場合、上記ステップ(g)をリトライする。
【0013】
第6開示の生産方法は、第3の開示において、上記ステップ(g)による両方の検証結果が一致を示す場合には、上記ステップ(b)から上記ステップ(e)までを実行する。
【0014】
第7の開示の生産方法は、第1から第6のいずれかの開示において、(h)上記記録媒体の上記記録領域から上記セキュリティ情報を読み出し、読み出した上記セキュリティ情報内の上記媒体特定情報が、上記ステップ(d)で暗号化された上記媒体特定情報と一致するか否かを検証するステップをさらに包含する。当該方法は、上記ステップ(e)の後に上記ステップ(h)を実行する。
【0015】
第8の開示の生産方法は、第7の開示にかかる生産方法である。上記ステップ(h)の検証結果が不一致を示す場合にはエラーを報知する。
【0016】
第9の開示の生産方法は、第8の開示にかかる生産方法である。上記エラーが報知された場合、上記ステップ(h)をリトライする。
【0017】
第10の開示の生産方法は、第1から第9のいずれかの開示にかかる生産方法である。上記コンテンツ情報は、上記コンテンツとして地図を示す地図情報である。
【0018】
第11の開示の生産方法は、第10の開示にかかる生産方法である。上記ステップ(a)において書き込まれる上記仮セキュリティ情報は、上記地図情報が使用される車両を特定する車両特定情報、及び、上記地図情報のバージョンを示すバージョン情報をさらに含む。上記ステップ(d)は、上記車両特定情報、及び、上記バージョン情報を暗号化する。
【0019】
第12の開示の生産方法は、第11の開示にかかる生産方法である。上記仮セキュリティ情報は予め暗号化されている。当該方法は、(i)暗号化されている上記仮セキュリティ情報を復号するステップをさらに包含する。当該方法は、上記ステップ(b)の後に上記ステップ(i)を実行し、かつ、上記ステップ(i)の後に上記ステップ(c)を実行する。
【0020】
第13の開示の生産方法は、第1から第12のいずれかの開示にかかる生産方法である。上記記録媒体は、SDメモリカードである。上記記録領域は、ユーザがデータを書き換え可能なユーザ領域及び、上記ユーザがデータを書き換え不可能な非ユーザ領域を有している。上記非ユーザ領域には上記媒体特定情報が予め記録されている。上記ステップ(a)は、上記ユーザ領域に、上記仮セキュリティ情報及び上記コンテンツ情報を書き込む。上記ステップ(b)は、上記非ユーザ領域から上記媒体特定情報を読み出すためのリードコマンドを上記記録媒体に送信し、上記リードコマンドに応答した上記記録媒体から送信された上記媒体特定情報を取得することによって上記媒体特定情報を読み出し、かつ、上記ユーザ領域から上記仮セキュリティ情報を読み出す。
【0021】
第14の開示の生産方法は、第1から第13のいずれかの開示において、(j)記録対象の上記記録媒体の用意が完了したことを示す通知を受信するステップをさらに包含する。当該方法は、上記通知を受信した後、上記ステップ(a)を実行する。
【0022】
第15の開示の生産方法は、第14の開示にかかる生産方法である。上記ステップ(j)において受信される上記通知は、複数の上記記録媒体の用意が完了したことを示す信号である。
【0023】
第16の開示の生産方法は、第4、5、8及び9のいずれかの開示にかかる生産方法である。上記記録媒体は複数存在する。上記エラーの報知は、複数の上記記録媒体のうちの、上記検証結果が不一致を示した上記記録媒体を特定する情報を含む。
【0024】
本発明による例示的な実施形態にかかる第17の開示の装置は、外部機器と通信する通信インタフェースと、記憶装置と、演算回路とを備え、上記演算回路を用いて第1の開示から第16の開示のいずれかの生産方法を実行する装置である。上記記憶装置は、上記コンテンツ情報、及び、上記所与の情報を含む上記仮セキュリティ情報を格納している。
上記演算回路は、上記信号の受信に応答して、
上記記憶装置から上記コンテンツ情報及び上記仮セキュリティ情報を読み出して、上記通信インタフェースを介して上記機能検査装置に送信し、
上記機能検査装置に上記ステップ(a)及び(b)を実行させ、
上記機能検査装置から上記通信インタフェースを介して上記媒体特定情報及び上記仮セキュリティ情報を受信し、
上記ステップ(d)を実行し、
上記ステップ(d)の実行によって生成された上記セキュリティ情報を、上記通信インタフェースを介して上記機能検査装置に送信し、
上記機能検査装置に上記ステップ(e)を実行させる。
【0025】
本発明による例示的な実施形態にかかる第18の開示のコンピュータプログラムは、第17の開示にかかる装置の上記演算回路に、
上記記憶装置から上記コンテンツ情報及び上記仮セキュリティ情報を読み出させる処理と、
上記コンテンツ情報及び上記仮セキュリティ情報を、上記通信インタフェースを介して上記機能検査装置に送信させる処理と、
上記機能検査装置に上記ステップ(a)及び(b)を実行させるための指令を送信させる処理と、
上記機能検査装置から上記通信インタフェースを介して上記媒体特定情報及び上記仮セキュリティ情報を受信させる処理と、
上記ステップ(d)を実行させる処理と、
上記ステップ(d)の実行によって生成された上記セキュリティ情報を、上記通信インタフェースを介して上記機能検査装置に送信させる処理と、
上記機能検査装置に上記ステップ(e)を実行させるための指令を送信させる処理と
を実行させる。
【発明の効果】
【0026】
本発明の例示的な実施形態によれば、記録媒体に複製された地図その他のコンテンツの適正な使用を担保するための技術を提供することが可能になる。
【図面の簡単な説明】
【0027】
図1】SDメモリカードの構造を示す図
図2】SDメモリカードの記録領域を示す図
図3】記録媒体を生産する生産システムの構成を示す図
図4】PCの構成を示す図
図5】地図情報の販売供給元である地図ベンダが行う処理を説明するための図
図6】地図ベンダからゴールデンサンプルを受け取った製造者が行う処理を説明するための図
図7】ゴールデンサンプルのセキュリティ情報から、各SDメモリカード用のセキュリティ情報を生成する処理を説明するための図
図8】SDテスタに装填された複数枚のSDメモリカードの配置例を示す図
図9】各SDメモリカードに記録される情報の変遷を示す図
図10】PCによって行われる処理の手順を示すフローチャート
図11図10のステップS12の詳細な処理の手順を示すフローチャート
図12図10のステップS16の詳細な処理の手順を示すフローチャート
【発明を実施するための形態】
【0028】
以下、適宜図面を参照しながら、実施の形態を詳細に説明する。但し、必要以上に詳細な説明は省略する場合がある。例えば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になるのを避け、当業者の理解を容易にするためである。
【0029】
なお、本発明者らは、当業者が本開示を十分に理解するために添付図面および以下の説明を提供するのであって、これらによって特許請求の範囲に記載の主題を限定することを意図しない。
【0030】
まず、本発明者らが本発明を完成させるにいたった経緯を説明し、その後、本発明を構成する記録媒体の生産方法及び装置等を説明する。
本発明者らは、SD(Secure Digital)メモリカードを利用して、カーナビゲーション装置が利用する既存の地図情報を更新する用途を想定して開発を進めた。SDメモリカードには更新用の地図情報が予め格納されており、ユーザは当該SDメモリカードをカーナビゲーション装置に装填して既存の地図情報を更新する。本発明者らは、更新用の地図情報が地図提供者以外の者によって複製された場合でも、当該地図情報を使用できないようにするための方策を検討した。以下、その方策を具体的に説明する。
【0031】
なお、地図情報は更新用であることに限定される必要はない。そこで以下では、更新用であるか否かにかかわらず、地図を示す情報を「地図情報」と記述する。ここでいう地図は、例えば世界のいずれかの国または地域の地図、当該国または地域の一部の地図、または、所定の時期以降に変更があった地域のみの更新用の地図のいずれであってもよい。また、以下ではSDメモリカードを例として挙げながら説明するが、SDメモリカードであることは必須ではなく、任意の記録媒体を採用し得る。
【0032】
[SDメモリカードの構成]
本発明者らが検討した方策は、SDメモリカードに記録された、各SDメモリカードに固有に付与された情報を利用する。そこで、まずSDメモリカードの構造を、図1を用いて説明する。なお、以下では、インタフェース(interface)という語を「I/F」と記述する。
SDメモリカード100は、ピンI/F101と、I/Fドライバ102と、I/Fコントローラ103と、パワーオン検出部104と、レジスタ群105と、フラッシュメモリコントローラ106と、フラッシュメモリ107とを有している。
【0033】
ピンI/F101は、9本のピンを含む。9本のピンは、例えばデータ入出力用ピン、カード検出用ピン、グランド用ピン、電源用ピン、クロック信号用ピンを含む。ユーザの指が直接ピンに触れることを回避するため、9本のピンの各々は不図示のガードによって仕切られている。
【0034】
I/Fドライバ102は、SDメモリカード100が使用されるホスト機器からのコマンドまたは指令、及びデータを受信して適切なデータ形式に変換する。ホスト機器とは、SDメモリカード100が装填される機器、例えばカーナビゲーション装置、PCである。またI/Fドライバ102は、フラッシュメモリ107内のデータやレジスタの情報を読み出して適切なデータ形式に変換し、ピン群101を介してホスト機器に送信する。なお、SDメモリカード100とホスト機器とのデータの送受信は、ホスト機器から供給されるクロック信号に同期して行われる。
【0035】
I/Fコントローラ103は、SDメモリカード100を構成する種々の要素と接続されている。I/Fコントローラ103は、例えばI/Fドライバ102と接続されており、I/Fドライバ102が上述の動作を行うようI/Fドライバ102に指令を与える。またI/Fコントローラ103は、レジスタ群105、パワーオン検出部104、フラッシュメモリコントローラ106とも接続され、それぞれと通信可能である。
【0036】
パワーオン検出部104は、SDメモリカード100がホスト機器に装着されることによってホスト機器と接続されると共に電源がON状態になっているかどうかの判別を行う。
【0037】
レジスタ群105は複数のレジスタから構成される。例えばレジスタ群105は、CID(Card IDentification)レジスタ105aを有する。CIDレジスタ105aには、あらゆるSDメモリカードを一意に識別可能な情報が予め格納されている。このような情報を本明細書では「CID」または「媒体特定情報」と記述する。なお、「予め」とは、SDメモリカード100の製造者が製造を完了させた時点で、という意味である。本実施形態との関係では、地図情報の販売供給元である地図ベンダによって、地図情報がSDメモリカード100に記録される時点では、CIDは既にSDメモリカード100に格納されている。以下では、SDメモリカード100の製造者を、単に「製造者」と記述する。
【0038】
CIDは種々の情報の集合である。例えばCIDは、SDメモリカード100の製造者を識別するID(IDentification)、その製品の名称、リビジョン、シリアル番号および製造日の情報を含む。CIDは、製造者によって各SDメモリカード100に書き込まれた後はもはや変更されることはなく、読み出されるのみである。ホスト機器は特別な指令をSDメモリカード100に送信することによってCIDを読み出すことができる。
【0039】
フラッシュメモリコントローラ106は、フラッシュメモリ107にデータを書き込む制御を行い、またフラッシュメモリ107からデータを読み出す制御を行う。
【0040】
フラッシュメモリ107は、例えば128GB(ギガバイト)の大容量の記録可能領域を有しており、コンテンツの情報を記憶する。「コンテンツ」とは、地図、音楽、映像であり得る。SDメモリカード100がカーナビゲーション装置で利用される場合、コンテンツは、オービスの最新の設置位置データ、カーナビゲーション装置または自動車のシステムの動作を制御するOS(Operation System)のアップデートデータを含み得る。本明細書では、このようなコンテンツを示す情報を「コンテンツ情報」と記述する。なお本明細書では、理解の便宜のため地図情報を例示しながら説明する。
【0041】
SDメモリカード100の記録領域120を図2に示している。記録領域120は、非ユーザ領域121と、ユーザ領域122とに大別し得る。さらに、非ユーザ領域121は、ファームウェア領域121aと、管理領域121bとを含む。
【0042】
非ユーザ領域121にはユーザが書き換え不可能な情報が記録され、ユーザ領域122にはユーザが書き換え可能な情報が記録される。図示される態様とは異なり、現実には、記録領域120は連続したメモリ空間として設けられている必要はない。書き換え不可能な情報が記録される記録領域を、概念的に「非ユーザ領域121」と呼び、書き換え可能な情報が記録される記録領域を、概念的に「ユーザ領域122」と呼ぶに過ぎない。製造者の工場においてSDメモリカード100が適切に動作することが確認された後は、SDメモリカード100には図2に記載の記録領域120が形成されている。
【0043】
非ユーザ領域121のファームウェア領域121aには、ファームウェアが記録される。ファームウェアは、フラッシュメモリコントローラ106を動作させるためのプログラムである。管理領域121bには、種々の管理情報が記録されている。管理情報は、レジスタ群105を構成する種々のレジスタに記録された情報を含む。すなわち、種々のレジスタは管理領域121bを構成する。上述のCIDは管理情報の一例である。
【0044】
ユーザ領域122はフラッシュメモリ107内に確保される領域である。ユーザ領域122には地図情報等が読み書き可能に記録される。
【0045】
SDメモリカード100と接続されたホスト機器は、ユーザ領域122のデータを随時読み出し可能であるが、非ユーザ領域121には通常アクセスできない。非ユーザ領域121にアクセスできるのは、非ユーザ領域121のうちの管理領域121bに記録された管理情報を読み出すための指令が実装されたホスト機器のみである。例えばSDメモリカード100の製造者は、そのような指令が実装されたホスト機器であるPCを所有している。
【0046】
いま、地図情報を正規の流通経路で頒布する態様として、地図ベンダが、地図情報が記録されたSDメモリカード100を販売することを考える。地図情報はSDメモリカード100のユーザ領域122に記録されているため、PC等を利用することで技術的には容易に他のSDメモリカードにコピーされ得る。そのようにコピーされた地図情報を不正に使用されないようにする必要がある。本発明者らは、地図情報と、当該地図情報が記録されたSDメモリカード100とを紐付ける方法を検討した。互いに紐付けられたSDメモリカード100から読み出された地図情報の使用は許可し、そうでない地図情報の使用を制限する。このような動作を保証するための仕組みが必要である。
【0047】
そこで本発明者らは、地図情報が記録される各SDメモリカード100のCID等を暗号化したセキュリティ情報を生成し、そのセキュリティ情報を利用して地図情報の使用の許否を判定する、という仕組みを導入することとした。カーナビゲーション装置には、装填された記録媒体のCIDを読み出す指令を実装し、その指令を用いて読み出したCIDとその地図情報において暗号化されているCIDとが一致するか否かを判定させる。そして一致する場合のみ、カーナビゲーション装置は地図情報の利用を許可する。
【0048】
上記対策は一見すると容易に実現するように思われるが、実際には大きな問題が存在する。その問題とは、地図ベンダは、頒布する多数のSDメモリカードのCIDを読み出すことができないため、自身でそのCID等を暗号化したセキュリティ情報を作成できない、ということである。
上記問題を回避するため、本発明者らは以下のような対策を採用した。
【0049】
(1)CIDが予め判明している特定の記録媒体を地図ベンダが用意する。地図ベンダは、当該CIDを含むセキュリティ情報を生成する。セキュリティ情報は、少なくとも当該CIDを含む。地図ベンダは、そのようなセキュリティ情報を暗号化し、または暗号化せず、仮のセキュリティ情報として地図情報とともに製造者に提供する。「仮」と呼ぶ理由は、次に説明されるように、当該セキュリティ情報が個々の記録媒体のCID等に応じて書き換えられることを想定しているからである。以下、仮のセキュリティ情報を「仮セキュリティ情報」と呼ぶ。
【0050】
(2)製造者は、仮セキュリティ情報を読み出す。そして、仮セキュリティ情報が暗号化されている場合には、製造者は予め用意された手順または復号プログラムで復号する。
【0051】
(3)製造者は、多数のブランクのSDメモリカード100を用意している。製造者は、各SDメモリカード100のCIDを読み出すことが可能である。地図ベンダから提供された仮セキュリティ情報中のCIDを、地図情報を記録しようとする個々のSDメモリカード100のCIDに置き換える。そして、CIDを特定のSDメモリカード100のCIDに置き換えた後の仮セキュリティ情報を暗号化する。この結果、そのSDメモリカード100固有のCIDを含む「セキュリティ情報」が生成される。つまり、この時点で、「仮セキュリティ情報」が本来必要とされる「セキュリティ情報」に変換されたと言える。カーナビゲーション装置に、装填された記録媒体のCIDを読み出す指令を実装し、その指令を用いて読み出したCIDと、暗号化されたセキュリティ情報内のCIDとが一致するか否かを判定させる。そして一致する場合のみ、カーナビゲーション装置は地図情報の利用を許可する。
【0052】
上述の仮セキュリティ情報は、地図情報が使用される車両を特定する車両特定情報、及び、地図情報のバージョンを示すバージョン情報をさらに含んでもよい。なお、SDメモリカード100が販売されない状況では、地図情報が実際に使用される車両を特定できない場合、すなわち車両特定情報を決定できない場合もあり得る。そのような場合は、全てのSDメモリカード100に共通の車両特定情報を割り当ててもよい。そのような共通の車両特定情報は、販売後、各ユーザの車両に使用された時点以降の所定のタイミングで、その車両を一意に特定する車両特定情報に書き換えられてもよい。
【0053】
上記(3)の過程では、製造者が、個々のSDメモリカード100のCIDを暗号化する必要が生じる。地図ベンダにとっては、暗号化方法はセキュリティの根幹に関わるため、その具体的な暗号化方法の社外への開示は可能な限り控えたい。また、暗号化されたCIDの復号方法の社外への開示も可能な限り控えたい。そこで地図ベンダは、具体的な仕様を開示することなく、暗号化を行うためのソフトウェアまたはライブラリを製造者に提供する。ライブラリによって行われている具体的な暗号化処理は通常容易には知られ得ないため、地図ベンダにとっては、保持したい暗号化方法の具体的な開示を避けることができる。上記(2)の過程において、復号する必要がある場合も同様に復号を行うためのソフトウェアまたはライブラリを製造者に提供しておけばよい。
【0054】
一方、製造者にとっても、各SDメモリカード100のCID自体、またはCIDを読み出すための指令の社外への開示を避けることができる。これにより、双方の事業に配慮しつつ、個々のSDメモリカード100のCIDを暗号化することができる。
【0055】
上述の仕組みを導入することにより、仮に、上記(2)の過程で作成されたセキュリティ情報が窃取等されて外部に漏洩したとしても、他のSDメモリカード100に記録された地図情報の不正な使用を回避できる。漏洩したセキュリティ情報を利用しても、そのセキュリティ情報内のCIDと、他のSDメモリカードのCIDとが一致せず、任意のSDメモリカード100で地図情報を利用することはできないからである。また、CIDを読み出すための指令、及び、CIDを利用して新たなセキュリティ情報を作成するための暗号化方法も一般には入手できない。よって、任意のSDメモリカード100に正当なセキュリティ情報を書き込むことができない。
以上の方法により、SDメモリカード100に記録されて頒布される地図情報の不正な使用を防ぐ仕組みを提供することが可能になる。
【0056】
以下、本発明の例示的な実施形態を説明する。
1.[実施形態]
以下、添付の図面を参照しながら、本開示の例示的な実施形態を説明する。
[生産システムの構成]
まず、記録媒体を生産する生産システム1の構成を、図3を用いて説明する。
【0057】
生産システム1は、PC2と、ディスプレイ4と、機能検査装置6と、インジケータ8とを備えている。
【0058】
PC2は、後述のフローチャートに記載された処理を実行するコンピュータシステムである。PC2の具体的な構成は図4を参照しながら後述する。PC2は、他の形態のコンピュータ、例えば、ワークステーションやタブレット端末であってもよい。PC2には後述のUSB(Universal Serial Bus)ドングル24が接続され得る。本実施形態において、USBドングル24にはPC2によって実行される暗号化プログラムが記録されている。ディスプレイ4はPC2と接続されて、PC2から出力される映像情報を表示する。
【0059】
機能検査装置6は、PC2と接続され、PC2とともにSDメモリカード100を検査するために用いられる。機能検査装置6は、セントラルボード10と、テスタ台12と、SDテスタ14とを有している。セントラルボード10及びSDテスタ14は、テスタ台12の上に配置される。
【0060】
機能検査装置6のセントラルボード10は、PC2及びインジケータ8と接続され、PC2からの指令に従って、SDテスタ14に装填されたSDメモリカード100の機能を検査する。セントラルボード10とPC2とは、例えばUSBケーブル18を介して接続される。また、セントラルボード10とインジケータ8とは、例えばRJ45ケーブル20を介して接続される。さらにインジケータ8とPC2とは、例えばUSBケーブル22を介して接続される。
【0061】
機能検査装置6のSDテスタ8には複数の端子が設けられている。SDメモリカード100がSDテスタ14に装填されると、SDテスタ14の各端子がピンI/F101(図1)の各ピンと通信可能に接続される。
【0062】
SDメモリカード100の機能検査の概要は以下の通りである。まず、SDメモリカード100が装填されると、装填を検出することによって自動的に、またはユーザの操作により、機能検査装置6のセントラルボード10は、記録媒体の用意が完了したことを示す通知をPC2に送信する。通知を受信したPC2は、セントラルボード10に書き込み指令または読み出し指令を送信する。指令の内容に応答して、セントラルボード10は、SDテスタ14の各端子及びSDメモリカード100の各ピンを介して、SDメモリカード100に情報を書き込み、またはSDメモリカード100に書き込まれた情報を読み出す。セントラルボード10は、読み出した情報をPC2に送る。PC2は、SDテスタ8から受け取った情報が、書き込みを指示した情報と一致しているか否かを検証する。検証結果が一致している場合は、SDメモリカード100への情報の記録及びSDメモリカード100からの情報の読み出しが正しく行われている。一方、検証結果が一致していない場合は、SDメモリカード100における情報の記録または読み出しの少なくとも一方が正しく行われていない。このような検証動作を、SDメモリカード100の動作検証と呼ぶ。
【0063】
なお、本実施形態において、SDテスタ14は、SDメモリカード100を複数枚装填するための不図示の配置枠を有する。例えば、SDテスタ14の配置枠には4行×8列の合計32枚のSDメモリカード100が装填され、各SDメモリカード100について独立して上述の動作検証が行われ得る。個々のSDメモリカード100の動作検証の結果、検証結果が一致していないSDメモリカード100が存在する場合、PC2または機能検査装置6はインジケータ8を利用してエラーを報知する。
【0064】
インジケータ8は複数の点光源16を有するボード状の装置である。各点光源16は、例えばLED(Light Emitting Diode)、白熱電球である。図3に示すように、複数の点光源16はSDテスタ14の配置枠の行数及び列数と同じ行数及び列数で配置されている。インジケータ8は、上述の検証結果が一致していないSDメモリカード100の位置に対応する位置の点光源16を点灯させることにより、生産システム1のユーザにエラーを報知する。例えば、SDテスタ14の配置枠の第2行第3列に装填されたSDメモリカード100の検証結果が一致しなかった場合、インジケータ8は、PC2または機能検査装置6からの信号により、第2行第3列の点光源16を点灯させる。点光源16の点灯方法は任意である。例えば、点光源16を消灯状態から点灯状態へ変化させてもよいし、点滅させてもよい。
【0065】
次に、PC2の構成を、図4を用いて説明する。
PC2は、図4に示すように、演算回路202と、記憶装置204と、通信I/F206とを有している。演算回路202は、PC2に実装されたコンピュータであり、いわゆるCPUと呼ばれる半導体集積回路である。以下、演算回路202を「CPU202」と記述する。通信I/F206は、例えばUSB(登録商標)および/またはイーサネット(登録商標)などの通信規格に準拠する通信を行うための端子である。図4には、通信I/F206であるUSB端子に接続されるUSBドングル24、及び、USBケーブル18及び22が例示されている。PC2は、例えばIEEE802.11規格に準拠した無線通信を行ってもよい。その場合、通信I/F206は、無線通信回路であり得る。
【0066】
記載の便宜のため、以下ではPC2またはCPU202が、機能検査装置6及びインジケータ8等の外部機器との間で情報の授受を行うと説明する。ただし実際には、CPU202が当該外部機器に情報を送信し、当該外部機器から情報を受信するよう、通信I/F206に指示し、または通信I/F206を制御している。
【0067】
記憶装置204はRAM(Random Access Memory)、ROM(Read Only Memory)、および/または、ハードディスクドライブ等の二次記憶装置、である。記憶装置204は、コンピュータプログラム204aを記憶している。例えば、記憶装置204であるROMは、コンピュータプログラム204aを記憶する。コンピュータプログラム204aは、CPU202によって読み出され、同じく記憶装置204であるRAMに展開される。これにより、CPU202はコンピュータプログラム204aを実行することができる。以下に説明するPC2の動作は、PC2にインストールされ、実行されるコンピュータプログラム204aによって実現される。
【0068】
なお、記憶装置204には、後述の地図情報及びセキュリティ情報も記憶される。地図情報はコンテンツ情報の一例であり、SDメモリカード100に格納されて頒布される。セキュリティ情報は、地図情報の使用許否を判断するために用いられる情報であり、少なくとも特定のSDメモリカード100のCIDを所定の暗号化方法で暗号化することによって生成される。本実施形態では、セキュリティ情報にはCIDの他、車両特定情報の初期値、及び、地図情報のバージョンを示すバージョン情報が暗号化されて含められている。暗号化処理の具体的な説明は後述する。
【0069】
なお、「車両特定情報」は、地図情報が使用される車両を特定する情報であり、例えば車台番号、VIN(vehicle identification Number)、車両に搭載した機器の製造番号などを利用できる。ただし、SDメモリカード100の出荷時には、各SDメモリカード100がどの車両で使用されるかは決定され得ない。つまり、地図ベンダ及び製造者は、車両特定情報を決定し得ない。そこで、セキュリティ情報には予め定められた車両特定情報の初期値が記述されている。当該初期値は、将来、特定の車両で使用が開始された後にその車両の車両特定情報に書き換えられる。車両特定情報、CID及びバージョン情報は、暗号化された1つのファイルとしてSDメモリカード100に書き込まれる。当該ファイルは、「車両特定ファイル」とも呼ばれ得る。
【0070】
[地図ベンダにおけるゴールデンサンプルの生産処理]
次に、地図情報の販売供給元である地図ベンダが行う処理を、図5を用いて説明する。
地図ベンダは、地図を示す地図情報と、当該地図の使用許否を判断するために用いられるセキュリティ情報とを製造者に送る。このとき地図ベンダが行う処理及び処理の手順が図5に示されている。
【0071】
まず、地図ベンダは、CIDが判明している特定のSDメモリカードを準備する。図5では、既知のCID-G300が記録されたSDメモリカード100Gとして記載されている。そのようなSDメモリカード100Gは、例えば製造者から地図ベンダにCID300を示す情報とともに特に提供されたSDメモリカード100であり得る。
【0072】
図5の処理(1)では、地図ベンダのPC200に、CID-G300が入力されている様子を示している。併せて処理(1)では、地図ベンダのPC200に、車両特定情報302、地図バージョン情報304、及び地図情報306が入力されていることも示されている。上述のとおり、車両特定情報302は予め定められた初期値である。なお、地図ベンダのPC200のハードウェア構成は、図4と同等であるため、図示は省略する。
【0073】
図5の処理(2)では、地図ベンダのPC200は、CID-G300、車両特定情報302及び地図バージョン情報304を所定の暗号化方法で暗号化する。暗号化方法として、例えば、予め用意された秘密鍵を利用する可逆の暗号化方法、製造者から予め取得した公開暗号鍵を利用する可逆の暗号化方法、ハッシュ関数を利用する不可逆の暗号化方法を採用し得る。上述の予め用意された秘密鍵及びハッシュ関数は地図ベンダ及び製造者の間で事前に共有されている。秘密鍵は共通鍵とも呼ばれ得る。なお、CID-G300、車両特定情報302及び地図バージョン情報304を暗号化することは必須ではない。
【0074】
暗号化処理により、仮セキュリティ情報308が生成される。仮セキュリティ情報308は、それぞれ暗号化された、CID-G308a、車両特定情報308b及び地図バージョン情報308cを含む。図5及び図6以降の図面では、暗号化されていることを示すため、情報の名称に「*」を付している。
【0075】
次に、地図ベンダのPC200は処理(3)を実行する。処理(3)では、地図ベンダのPC200は、SDメモリカード100Gのユーザ領域122(図2)に、地図情報306及び生成した仮セキュリティ情報308を複製する。これにより、SDメモリカード100Gには、地図情報306の他、自身を一意に識別するCID-G300と、仮セキュリティ情報308とが記録されている状態になる。この時点では、CID-G300と、仮セキュリティ情報308内のCID-G308aとは一致するため、SDメモリカード100Gは正当なSDメモリカードであると言える。処理(3)によって得られたSDメモリカード100Gは、「ゴールデンサンプル」とも呼ばれる。また本明細書では、メモリカード100Gを「ホスト記録媒体」と呼ぶことがある。
【0076】
製造業において用いられる「ゴールデンサンプル」という語は、製品の製造者によって作成された最終的な製品のサンプルを言う。一方、本明細書でいう「ゴールデンサンプル」は、厳密には最終的な製品のサンプルではない。後述のように、SDメモリカード100Gの内容がそのまま消費者に頒布されるのではないからである。各消費者に販売される各SDメモリカード100では、各CIDを利用して、セキュリティ情報308中の暗号化されたCID-G308aが書き換えられて頒布される。
【0077】
そのような事情に鑑みると、ゴールデンサンプルに含まれる仮セキュリティ情報308内に、CID-G308aが含まれていることは必須ではなく、任意のダミーデータであってもよい。暗号化されていることも必須ではない。例えば、SDメモリカード100GのCID-G300のビット数と同じビット数を有する任意のデータであればよい。最終的には、消費者に頒布される際のSDメモリカード100上で、非ユーザ領域に記録されたCIDと、セキュリティ情報内の暗号化されたCIDとが対応していればよいからである。
【0078】
最後に、処理(4)において、地図ベンダは得られたSDメモリカード100Gを製造者に送付する。
【0079】
[製造者におけるSDメモリカードの生産処理]
次に、地図ベンダによる処理(4)に続けて、地図ベンダからゴールデンサンプルを受け取った製造者側の処理(5)~(10)を、図6を用いて説明する。製造者は、図3に示すPC2を利用して不特定多数のSDメモリカード100に地図情報を複製し、各SDメモリカード100のCIDを暗号化したセキュリティ情報を記録して、最終製品であるSDメモリカードを生産する。
【0080】
処理(5)において、製造者のPC2は、地図ベンダから入手したSDメモリカード100Gから、地図情報306及び仮セキュリティ情報308を読み出して記憶装置204に格納する。すなわちPC2は、地図情報306及び仮セキュリティ情報308を、ホスト記録媒体であるSDメモリカード100Gから、後述のSDメモリカード100Aとは異なる記録媒体である記憶装置204に複製する。
【0081】
処理(6)において、PC2は、製造者が用意した新たなSDメモリカード100Aに、PC2に格納されている地図情報306及び仮セキュリティ情報308を複製する。SDメモリカード100Aの管理領域121bには、そのSDメモリカード100AのCID-A320が記録されている。この時点では、仮セキュリティ情報308内に存在するのは暗号化されたCID-G308a、車両特定情報308b及び地図バージョン情報308cである。
【0082】
なお、SDメモリカード100Aは、機能検査装置6(図3)のSDテスタ14に装填されている。PC2による、SDメモリカード100Aに対する情報の書き込みおよび/または読み出しの操作はセントラルボード10を介して行われる。記載の簡略化のため、以下ではセントラルボード10を介して行われるという記載は省略し、PC2が情報を読み出し、書き込むなどと記述する。
【0083】
処理(7)において、PC2は、SDメモリカード100Aに格納されていた仮セキュリティ情報308を復号する。その結果、復号されたCID-G308a、車両特定情報308b及び地図バージョン情報308cが得られる。
【0084】
次に、処理(8)において、PC2は、SDメモリカード100AからCID-A320を読み出す。具体的には、PC2は、自身が知っているCIDを読み出すための指令をSDメモリカード100Aに送信して、CID-A320を取得する。そして処理(7)において得られていた、復号されたCID-G308aを、読み出したCID-A320で置き換える。その結果、CID-A320、車両特定情報308b及び地図バージョン情報308cを含むセキュリティ情報322が得られる。
【0085】
セキュリティ情報308からセキュリティ情報322を生成する処理を、図7を用いてより具体的に説明する。
【0086】
同じ製造者が製造したSDメモリカード100G及びSDメモリカード100Aであれば、CID-G300及びCID-A320は同じビット数の数値列で表現されているという前提を置くことができる。そのため、復号されたセキュリティ情報308内のCID-G308aの先頭ビット位置に、読み出されたCID-A320の先頭ビットを配置し、以降、CID-G308aをCID-A320で置き換えていくと、もとのCID-G308aと1ビットもずれることなく、CID-A320に置き換えることができる。仮セキュリティ情報308のCID-G308aが、CID-A320に書き換えられると、SDメモリカード100A固有のセキュリティ情報322が得られる。
【0087】
なお、上述の説明では、セキュリティ情報308が復号される例を挙げたが、暗号化された状態でも書き換えは可能である。例えば、暗号化された仮セキュリティ情報308内で、CID-G300、車両特定情報308b及び地図バージョン情報308cがそれぞれ分離可能に存在し、かつ、それぞれの先頭ビット位置及びデータ長が固定されている場合である。CID-A320は読み出されて予め暗号化されている。PC2は、CID-G308aの先頭ビット位置から、暗号化されたCID-A320を書き込めばよい。ただしこのとき、暗号化されたCID-G300及びCID-A320のデータ長も一致している必要がある。このような処理によっても、暗号化されたCID-G308aと1ビットもずれることなく、暗号化されたCID-A322aに書き換えることができる。セキュリティ情報308の暗号化されたCID-G308aが、暗号化されたCID-A322aに書き換えられると、セキュリティ情報322が得られる。
【0088】
再び図6を参照する。
処理(9)において、PC2は、地図ベンダから指定された暗号化方法で、セキュリティ情報322を暗号化する。例えば、地図ベンダは製造者に、予め定めた暗号化方法による暗号化を行うためのソフトウェアまたはライブラリを記憶させたUSBドングル24を提供しておく。PC2が、セキュリティ情報322をソフトウェアまたはライブラリに入力すると、その処理の結果として、暗号化されたセキュリティ情報322が出力される。PC2は、SDメモリカード100Aに既に存在している仮セキュリティ情報308を、暗号化したセキュリティ情報322に書き換える。地図情報306はそのまま維持され、また書き換え不可の非ユーザ領域121に記録されているCID-A320もそのまま維持されている。地図情報306はそのまま維持され、また書き換え不可の非ユーザ領域121に記録されているCID-A320もそのまま維持されている。これにより、SDメモリカード100Aには、CID-A320、地図情報306及び暗号化されたセキュリティ情報322が記録されている。
上述のPC2の動作により、製造者側で新たに用意されたSDメモリカード100Aのセキュリティ情報322には、そのSDメモリカード100AのCID-A320が含まれることになる。これにより、そのSDメモリカードのCIDが暗号化されてセキュリティ情報に含まれている場合にのみ、地図情報306の使用を許可する仕組みを実現できる。地図情報306が複製等されたとしても、地図情報306の不正な使用を回避できる。
【0089】
なお、上述したセキュリティ情報322を作成する処理(7)から(9)は一例であり、種々の変形例が考えられる。例えばPC2は、処理(7)によって得られたセキュリティ情報308から車両特定情報308b及び地図バージョン情報308cを抽出する。PC2は、CID-A320と、車両特定情報308bと、地図バージョン情報308cとを、例えば図6に示すような順序でメモリ上に配置してセキュリティ情報322を作成する。そしてPC2は、セキュリティ情報322を暗号化して、SDメモリカード100A内のセキュリティ情報308を、暗号化したセキュリティ情報322に書き換えてもよい。
【0090】
上述の処理及びその変形例は、結論として処理(6)によって得られたSDメモリカード100A内の暗号化された仮セキュリティ情報308が、暗号化されたセキュリティ情報322に書き換えられていると言える。上述した処理以外の方法を採用したとしても、暗号化された仮セキュリティ情報308が、暗号化されたセキュリティ情報322に書き換えられている場合には、本発明の範疇である。
【0091】
上述の処理は、便宜上、1枚のSDメモリカードのみを用いて説明した。機能検査装置6には複数枚のSDメモリカード100を装填可能であり、その各々に独立かつ並列的に情報を書き込んだり、読み出したりできる。例えば、SDテスタ14に装填された複数枚のSDメモリカード100A~100Zの配置例が図8に示されている。また、各SDメモリカード100A~100Zに記録される情報の変遷が、図9に示されている。
【0092】
SDメモリカード100A~100Zは、各ユーザ領域122に情報が存在しない状態、すなわちブランク状態402にある。上述の処理により、SDメモリカード100A~100Zの各ユーザ領域122には、共通の地図情報306及び仮セキュリティ情報308が記録される。その結果、SDメモリカード100A~100Zは、ゴールデンサンプルを単に複製した状態404に遷移する。その後、各SDメモリカード100A~100Zの仮セキュリティ情報308は、各SDメモリカード100A~100ZのCIDに応じたセキュリティ情報322、324、・・・、326に書き換えられる。その結果、SDメモリカード100A~100Zごとのセキュリティ情報322、324、・・・、326が記録された状態406に遷移する。
【0093】
このように、SDテスタ14に装填された全てのSDメモリカードについて、個々のCIDに応じたセキュリティ情報に書き換えることができる。
【0094】
次に、上述したPC2の処理を、図10を用いて説明する。なお、以下では上述のCIDを「媒体特定情報」と記述し、SDメモリカードを単に「カード」と記述する。
【0095】
ステップS10において、PC2のCPU202は、機能検査装置6から、全てのカードの用意が完了したことを示す信号を受信する。次のステップS11において、CPU202は、ゴールデンサンプルのコンテンツ情報、及び仮セキュリティ情報を機能検査装置6に送信する。
【0096】
ステップS12において、CPU202は、機能検査装置6に指令を送信し、ゴールデンサンプルのコンテンツ情報、及び仮セキュリティ情報を、各カードのユーザ領域に書き込ませる。本ステップのより具体的な処理は後述する。
【0097】
ステップS13において、CPU202は、機能検査装置6に、仮セキュリティ情報及び媒体特定情報の読み出しを要求する司令を送信する。これにより、CPU202は機能検査装置6に、各カードのユーザ領域から仮セキュリティ情報を読み出させ、非ユーザ領域から媒体特定情報を読み出させて、各仮セキュリティ情報及び媒体特定情報をPC2に送信させる。ステップS14において、CPU202は、機能検査装置6から各仮セキュリティ情報及び媒体特定情報を受信する。
【0098】
ステップS15において、CPU202は、受信した仮セキュリティ情報を復号し、仮セキュリティ情報内のゴールデンサンプルの媒体特定情報を各媒体特定情報に置き換えてセキュリティ情報を生成し、暗号化する。上述のとおり、暗号化は地図ベンダから提供された暗号化のためのソフトウェアまたはライブラリが利用される。
【0099】
ステップS16において、CPU202は機能検査装置6に指令及び暗号化したセキュリティ情報を送信し、各カードに記録されている仮セキュリティ情報を、暗号化したセキュリティ情報に書き換えさせる。
【0100】
以上の処理により、PC2は、機能検査装置6に装填された各SDメモリカード100に、地図情報306と、各SDメモリカード100の媒体特定情報に応じて書き換えられたセキュリティ情報322、324、326とを記録することができる。なお、上述のステップS10は実際上あることが好ましいが、必須ではなく、省略可能である。
【0101】
次に、ステップS12及びS16の処理の詳細を説明する。いずれも、カードへの書き込みが適切に行われたことを検証する処理である。
【0102】
まず、ステップS12の詳細を、図11を用いて説明する。
ステップS121において、PC2のCPU202は、機能検査装置6に、各カードのユーザ領域122への書き込み指令、書き込むべき地図情報306、及びゴールデンサンプルのセキュリティ情報308を送信する。
【0103】
ステップS122において、CPU202は、機能検査装置6から、書き込み完了の通知を受信する。
【0104】
続くステップS123以降は、書き込まれるべき情報が正しく書き込まれたかを検証する処理である。ステップS123において、CPU202は、機能検査装置6に、各カードのユーザ領域122に書き込まれた地図情報、及びセキュリティ情報の読み出し指令を送信する。読み出し指令は、読み出された情報をCPU202に送信する指令を含む。
【0105】
ステップS124において、CPU202は、各カードのユーザ領域122から読み出された地図情報、及びセキュリティ情報を、機能検査装置6から受信する。
ステップS125において、CPU202は、全てのカードについて、機能検査装置6に送信した地図情報306と機能検査装置6から受信した地図情報との一致/不一致を検証する。同様にCPU202は、全てのカードについて、機能検査装置6に送信したセキュリティ情報308と機能検査装置6から受信したセキュリティ情報との一致/不一致を検証する。
【0106】
ステップS126において、CPU202は、全てのカードについて検証結果が一致したか否かを判定する。一致した場合、CPU202はステップS12の処理を終了し、図10のステップS13の処理に進む。一方、検証結果が1枚でも一致しないことを示している場合、処理はステップS127に進む。
【0107】
ステップS127において、CPU202は、不一致を示すカードの位置の通知を機能検査装置6から取得する。CPU202は、インジケータ8の、通知された不一致を示すカードの位置に対応する位置の点光源16を点灯させて、ユーザにエラーを報知する。
【0108】
ステップS128において、CPU202は、エラー報知が1回目であるか否かを判定する。エラー報知が初めて行われた場合、すなわち1回目である場合、処理はステップS121からリトライされる。このとき製造者は、例えばSDテスタ14の各端子とカードの各ピンとの接触不良がないかどうかを確認する。経験的に、接触不良に伴う書き込みエラーが発生することが多いことが判明している。そのため、接触不良の確認後に再度ステップS121から処理を開始すると、多くの場合、検証結果は一致する。
【0109】
一方、エラー報知が以前にも行われており2回目である場合には、CPU202はカードにエラーが存在するとして処理を停止する。
【0110】
次に、図10のステップS16の詳細を、図12を用いて説明する。
ステップS161において、PC2のCPU202は、機能検査装置6に、情報の書き換え指令と、書き換えに用いられる、各カードの暗号化済みセキュリティ情報を送信する。書き換え指令に応答して、機能検査装置6は、各カードについて、仮セキュリティ情報308を、暗号化済みセキュリティ情報322に書き換える。ステップS162において、CPU202は、機能検査装置6から、書き換え完了の通知を受信する。
【0111】
ステップS163において、CPU202は、機能検査装置6に、各カードのセキュリティ情報の読み出し指令を送信する。読み出し指令に応答して、機能検査装置6は、各カードのセキュリティ情報を読み出す。ステップS164において、CPU202は、各カードから読み出されたセキュリティ情報を、機能検査装置6から受信する。
【0112】
ステップS165において、CPU202は、全てのカードについて、機能検査装置6に送信した後、引き続き保持していた暗号化済みセキュリティ情報と、機能検査装置6から受信したセキュリティ情報との一致/不一致を検証する。
【0113】
ステップS166、S167及びS168の処理は、図11のステップS126、S127及びS128の処理とそれぞれ同じである。
【0114】
ステップS166において、CPU202は、検証結果が一致したか否かを判定する。一致した場合、CPU202はステップS16の処理を終了する。つまり、図10の処理も終了する。一方、検証結果が1枚でも一致しないことを示している場合、処理はステップS167に進む。
【0115】
ステップS167において、CPU202は、不一致を示すカードの位置の通知を機能検査装置6から取得する。CPU202は、インジケータ8の、通知された不一致を示すカードの位置に対応する位置の点光源16を点灯させて、ユーザにエラーを報知する。
【0116】
ステップS168において、CPU202は、エラー報知が1回目であるか否かを判定する。エラー報知が初めて行われた場合、すなわち1回目である場合、処理はステップS161からリトライされる。このとき製造者は、例えばSDテスタ14の各端子とカードの各ピンとの接触不良がないかどうかを確認する。
【0117】
一方、エラー報知が以前にも行われており2回目である場合には、CPU202はカードにエラーが存在するとして処理を停止する。
【0118】
以上の処理によって生産されたSDメモリカード100のユーザ領域122には、地図情報及びセキュリティ情報が記録されている。セキュリティ情報には、バージョン情報と、各SDメモリカード100のCIDと、車両特定情報とが暗号化されて含まれている。地図情報が、セキュリティ情報とともに、またはセキュリティ情報なしで、他のSDメモリカードに複製された場合、カーナビゲーション装置はその地図情報の使用を許可しない。複製先のSDメモリカードのCIDを含むセキュリティ情報が存在しないからである。これにより、SDメモリカードを利用して地図情報を頒布したとしても、地図ベンダから正規に購入したユーザのみが、カーナビゲーション装置でその地図情報を使用できる。
【0119】
上述のSDメモリカード100の例では、非ユーザ領域121内の管理領域121bには、SDメモリカード100のCIDが記録されていると説明した。ユーザは非ユーザ領域121のデータを書き換え不可能であるため、管理領域121bにCIDを記録するとCIDの改ざんを防ぐことができ、セキュリティをより高く保つことができる。しかしながら、そのような非ユーザ領域121が存在せず、ユーザがデータを書き換え可能なユーザ領域のみが設けられたメモリカードにCIDが記憶され、このCIDに基づいてセキュリティ情報を書き換える構成であってもよい。
【0120】
上述の説明では、SDメモリカード100に記録されていた仮セキュリティ情報を、上書きすることによって暗号化済みセキュリティ情報に書き換えた。しかしながら、上書きによる書き換える処理は必須ではない。例えば、SDメモリカード100Aから仮セキュリティ情報308をPC2のメモリその他の記録媒体に移動して、SDメモリカード100上から仮セキュリティ情報308を一旦消去する。その後、PC2で生成したセキュリティ情報322をSDメモリカード100Aの記録領域に書き込んでもよい。または、SDメモリカード100A上に仮セキュリティ情報308を残しつつ、PC2で生成したセキュリティ情報322を追記してもよい。要するに、最終的にセキュリティ情報322がSDメモリカード100A上に記録されていればよい。
【0121】
以上、本発明の実施形態を説明した。本発明は、上述した実施形態には限定されることはなく、適宜、変更、置き換え、付加、省略などを行った他の実施形態も本発明の範疇である。例えば、SDメモリカードに記録された地図情報の使用許否は、セキュリティ情報内の、SDメモリカードのCIDを利用して判断される。そのため、セキュリティ情報には、少なくともSDメモリカードのCIDが含まれていればよく、地図のバージョン情報および/または車両特定情報が含まれていることは必須ではない。
【0122】
また、本発明の実施形態を説明するために、添付図面および詳細な説明を提供した。添付図面および詳細な説明には、課題解決のためには必須でない内容も含まれており、その全てが課題解決のためには必須ではないことに留意されたい。
【符号の説明】
【0123】
1 生産システム
2 PC
4 ディスプレイ
6 機能検査装置
8 インジケータ
10 セントラルボード
14 SDテスタ
16 点光源
24 USBドングル
100 SDメモリカード
202 演算回路(CPU)
204 記憶装置
206 通信I/F(インタフェース)
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12