センサモジュールおよびセンサモジュールの製造方法
【課題】磁気ヘッドから出力されたカードデータが第三者に盗取されることはなく、データの安全性を確保することができるセンサモジュールを提供する。
【解決手段】センサモジュール10Aでは、接続端子と抵抗素子とA/D変換チップとデジタルICとを取り付けた可撓性基板13の前端部が一方向へ向かって4つに折り畳まれた状態で所定容積のハウジング11の内部に収容され、接続端子と抵抗素子とA/D変換チップとデジタルICとが可撓性基板13の前端部とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されている。
【解決手段】センサモジュール10Aでは、接続端子と抵抗素子とA/D変換チップとデジタルICとを取り付けた可撓性基板13の前端部が一方向へ向かって4つに折り畳まれた状態で所定容積のハウジング11の内部に収容され、接続端子と抵抗素子とA/D変換チップとデジタルICとが可撓性基板13の前端部とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されている。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、センサモジュールおよびその製造方法に関する。
【背景技術】
【0002】
ドーム状のレンズ部とその下端から下方に延出する筒状のケース部とを備えたレンズ一体ケースと、ケース部に収容された取付板と、ケース部に収容されて取付板の下方に配置された回路基板と、取付板の上面に固定されたセンサと、ケース部の下端開口を塞ぐ下板とから形成されたセンサモジュールがある(特許文献1参照)。このセンサモジュールでは、センサから下方に延びる複数の端子が取付板と回路基板と下板とを貫通し、下板から下方へ突出している。センサは、その端子の回路基板に対する貫通部において回路基板に接続されている。回路基板は、センサから出力されたアナログ信号を増幅しつつデジタル信号に変換する。このセンサモジュールは、レンズ一体ケース内に取付板に固定されたセンサや回路基板が積層状態で収容されており、ケース部の下端開口が下板に被覆されているから、レンズ一体ケース内にそれらを納めることができ、センサモジュールの小型化を図ることができる。
【先行技術文献】
【特許文献】
【0003】
特開2002−131446号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
前記公報に開示のセンサモジュールは、それに取り付けられた回路基板においてセンサから出力されたアナログ信号を増幅しつつデジタル信号に変換するが、そのデジタル信号を暗号化することはできない。したがって、センサモジュールから出力されたデジタル信号を第三者が盗取し、そのデジタル信号からデータが第三者に取得されてしまう場合がある。また、取付板や回路基板がレンズ一体ケース内に露出しているから、レンズ一体ケースから回路基板を取り出し、それにデータを盗取するための回路を設置することができ、データの安全性を確保することができない。
【0005】
本発明の目的は、センサから出力された各種データが第三者に盗取されることはなく、データの安全性を確保することができるセンサモジュールおよびそのセンサモジュールの製造方法を提供することにある。
【課題を解決するための手段】
【0006】
前記課題を解決するための本発明に係るセンサモジュールは、一方向へ延びる可撓性基板と、可撓性基板の前端部に設置された信号処理装置と、測定対象からの測定量をアナログ信号に変換するセンサ素子とを備え、信号処理装置が、センサ素子に接続されてセンサ素子から出力されたアナログ信号を受信する接続端子と、接続端子に接続されて接続端子がセンサ素子から受信したアナログ信号をデジタル信号に変換するA/D変換チップと、A/D変換チップに接続されてA/D変換チップから出力されたデジタル信号を暗号化するデジタルICとを含み、接続端子とA/D変換チップとデジタルICとを取り付けた可撓性基板の前端部が一方向へ向かって少なくとも2つに折り畳まれた状態で所定容積のハウジングの内部に収容され、接続端子とA/D変換チップとデジタルICとが可撓性基板の前端部とともにハウジングの内部に充填された固化物質によってハウジングに固定されていることにある。
【0007】
本発明に係るセンサモジュールの一例としては、接続端子とA/D変換チップとデジタルICとが一方向へ並んだ状態で可撓性基板の前端部に設置され、可撓性基板の前端部が接続端子とA/D変換チップとの間で折曲されているとともに、A/D変換チップとデジタルICとの間で折曲されている。
【0008】
本発明に係るセンサモジュールの他の一例としては、可撓性基板の前端部のうちの接続端子を設置する部分が一方向へ並ぶ接続端子設置領域と電子部品設置領域とに区分され、接続端子設置領域と電子部品設置領域とに間で一方向へ向かって折曲されている。
【0009】
本発明に係るセンサモジュールの他の一例としては、センサ素子がコイルとコアとを有して所定のデータを記憶した磁気カードからデータを読み取る磁気ヘッドである。
【0010】
本発明に係るセンサモジュールの製造方法は、一方向へ延びる可撓性基板と、可撓性基板の前端部に設置された信号処理装置と、所定容積のハウジングと、測定対象からの測定量をアナログ信号に変換するセンサ素子とから作られるセンサモジュールの製造方法であり、信号処理装置が、センサ素子に接続されてセンサ素子から出力されたアナログ信号を受信する接続端子と、接続端子に接続されて接続端子がセンサ素子から受信したアナログ信号をデジタル信号に変換するA/D変換チップと、A/D変換チップに接続されてA/D変換チップから出力されたデジタル信号を暗号化するデジタルICとを含み、可撓性基板の前端部に接続端子とA/D変換チップとデジタルICとを設置する設置工程と、可撓性基板の前端部を一方向へ向かって少なくとも2つに折り畳む折曲工程と、折り畳んだ可撓性基板の前端部を接続端子とA/D変換チップとデジタルICとともにハウジングの内部に収容する収容工程と、ハウジング内部に固化物質を充填し、固化物質によって接続端子とA/D変換チップとデジタルICとを可撓性基板の前端部とともにハウジングの内部に固定する固定工程とを有する。
【0011】
本発明に係るセンサモジュールの製造方法の一例として、設置工程では、接続端子とA/D変換チップとデジタルICとが一方向へ並んだ状態で可撓性基板の前端部に設置され、折曲工程では、可撓性基板の前端部が接続端子とA/D変換チップとの間で折曲されるとともに、A/D変換チップとデジタルICとの間で折曲される。
【0012】
本発明に係るセンサモジュールの製造方法の他の一例として、折曲工程では、可撓性基板の前端部のうちの接続端子を設置する部分が一方向へ並ぶ接続端子設置領域と電子部品設置領域とに区分され、接続端子設置領域と電子部品設置領域とに間で一方向へ向かって折曲されている。
【0013】
本発明に係るセンサモジュールの製造方法の他の一例としては、センサ素子がコイルとコアとを有して所定のデータを記憶した磁気カードからデータを読み取る磁気ヘッドである。
【発明の効果】
【0014】
本発明に係るセンサモジュールによれば、それを構成する信号処理装置がデジタル信号を暗号化するデジタルICを含み、デジタルICがハウジング内に固定されているから、モジュール自身においてセンサから出力された各種データの暗号化を行うことができる。センサモジュールは、センサから出力された各種データがデジタルICによって暗号化され、暗号化された信号がセンサモジュールから外部に出力されるから、第三者が暗号化されたデータを盗取したとしても、そのデータを復号化しなければデータの内容を把握することができず、データの安全性を確保することができる。センサモジュールは、接続端子とA/D変換チップとデジタルICとを取り付けた可撓性基板の前端部が一方向へ向かって少なくとも2つに折り畳まれた状態でハウジングの内部に収容され、接続端子とA/D変換チップとデジタルICとが可撓性基板の前端部とともにハウジングの内部に充填された固化物質によってハウジングに固定されているから、接続端子とA/D変換チップとデジタルICとをハウジングの内部に一体に固定することができ、暗号化を行うデジタルICを含むモジュールの小型化を実現することができる。このセンサモジュールは、可撓性基板の前端部をハウジングから取り出すときに固化物質を取り除かなければならず、固化物質を取り除く際に、基板のみならず、接続端子やA/D変換チップ、デジタルICが破壊されるから、基板にデータ盗取用回路を設置して再び組み立てることはできず、基板に対するデータ盗取用回路の設置を防ぐことができ、データの安全性を確実に確保することができる。
【0015】
可撓性基板の前端部が接続端子とA/D変換チップとの間で折曲されているとともに、A/D変換チップとデジタルICとの間で折曲されているセンサモジュールは、可撓性基板の前端部が一方向へ向かって3つに折り畳まれた状態でハウジングの内部に収容され、接続端子とA/D変換チップとデジタルICとが可撓性基板の前端部とともにハウジングの内部に充填された固化物質によってハウジングに固定されているから、接続端子とA/D変換チップとデジタルICとをハウジングの内部に一方向に重ね合わせて一体に固定することができ、暗号化を行うデジタルICを含むモジュールの小型化を実現することができる。センサモジュールは、デジタルICをハウジング内に固定することで、モジュール自身においてセンサから出力された各種データの暗号化を行うことができ、センサから出力された各種データの安全性を確保することができる。このセンサモジュールは、接続端子とA/D変換チップとデジタルICとが一方向へ並んだ状態で基板の前端部に設置されるから、前端部の両面に接続端子やA/D変換チップ、デジタルICを設置する場合と比較し、前端部の一方の面にそれらを並べて設置することができ、前端部にそれらを容易に設置することができる。
【0016】
可撓性基板の前端部のうちの接続端子を設置する部分が接続端子設置領域と電子部品設置領域とに区分され、接続端子設置領域と電子部品設置領域とに間で一方向へ向かって折曲されているセンサモジュールは、可撓性基板の前端部が一方向へ向かって4つに折り畳まれた状態でハウジングの内部に収容され、接続端子と電子部品とA/D変換チップとデジタルICとが可撓性基板の前端部とともにハウジングの内部に充填された固化物質によってハウジングに固定されているから、接続端子と電子部品とA/D変換チップとデジタルICとをハウジングの内部に一方向に重ね合わせて一体に固定することができ、暗号化を行うデジタルICを含むモジュールの小型化を実現することができる。センサモジュールは、デジタルICをハウジング内に固定することで、モジュール自身においてセンサから出力された各種データの暗号化を行うことができ、センサから出力された各種データの安全性を確保することができる。このセンサモジュールは、接続端子と電子部品とA/D変換チップとデジタルICとが一方向へ並んだ状態で基板の前端部に設置されるから、前端部の両面に接続端子や電子部品、A/D変換チップ、デジタルICを設置する場合と比較し、前端部の一方の面にそれらを並べて設置することができ、前端部にそれらを容易に設置することができる。
【0017】
センサ素子がコイルとコアとを有して所定のデータを記憶した磁気カードからそのデータを読み取る磁気ヘッドであるセンサモジュールは、磁気カードから読み取った各種データがデジタルICによって暗号化され、暗号化された信号がセンサモジュールから外部に出力されるから、暗号化された磁気カードのデータを盗取した第三者がそのデータを復号化しなければ、磁気カードのデータの内容を把握することができず、データの安全性を確保することができる。このセンサモジュールは、第三者による磁気カードのデータの不正な取得を確実に防ぐことができ、第三者による磁気カードの不正な複製や第三者による「なりすまし」を確実に防ぐことができる。
【0018】
本発明に係るセンサモジュールの製造方法によれば、接続端子とA/D変換チップとデジタルICとを取り付けた可撓性基板の前端部が一方向へ向かって少なくとも2つに折り畳まれた状態でハウジングの内部に収容され、接続端子とA/D変換チップとデジタルICとが可撓性基板の前端部とともにハウジングの内部に充填された固化物質によってハウジングに固定されるから、接続端子とA/D変換チップとデジタルICとをハウジングの内部に一体に固定することができ、暗号化を行うデジタルICを含む小型のセンサモジュールを作ることができる。センサモジュールの製造方法は、デジタルICがハウジング内に固定されるから、自身においてセンサから出力された各種データを暗号化することができ、センサから出力された各種データの安全性を確保可能なセンサモジュールを製造することができる。
【0019】
設置工程において接続端子とA/D変換チップとデジタルICとが一方向へ並んだ状態で可撓性基板の前端部に設置され、折曲工程において可撓性基板の前端部が接続端子とA/D変換チップとの間で折曲され、A/D変換チップとデジタルICとの間で折曲されるセンサモジュールの製造方法は、可撓性基板の前端部が一方向へ向かって3つに折り畳まれた状態でハウジングの内部に収容され、接続端子とA/D変換チップとデジタルICとが可撓性基板の前端部とともにハウジングの内部に充填された固化物質によってハウジングに固定されるから、接続端子とA/D変換チップとデジタルICとをハウジングの内部に一方向に重ね合わせて一体に固定することができ、暗号化を行うデジタルICを含む小型のセンサモジュールを作ることができる。センサモジュールの製造方法は、デジタルICがハウジング内に固定されるから、自身においてセンサから出力された各種データを暗号化することができ、センサから出力された各種データの安全性を確保可能なセンサモジュールを製造することができる。このセンサモジュールの製造方法は、接続端子とA/D変換チップとデジタルICとが一方向へ並んだ状態で基板の前端部に設置されるから、前端部の両面に接続端子やA/D変換チップ、デジタルICを設置する場合と比較し、前端部の一方の面にそれらを並べて設置することができ、前端部にそれらを容易に設置することができる。
【0020】
折曲工程において可撓性基板の前端部のうちの接続端子を設置する部分が一方向へ並ぶ接続端子設置領域と電子部品設置領域とに区分され、接続端子設置領域と電子部品設置領域との間で一方向へ向かって折曲されるセンサモジュールの製造方法は、可撓性基板の前端部が一方向へ向かって4つに折り畳まれた状態でハウジングの内部に収容され、接続端子と電子部品とA/D変換チップとデジタルICとが可撓性基板の前端部とともにハウジングの内部に充填された固化物質によってハウジングに固定されるから、接続端子と電子部品とA/D変換チップとデジタルICとをハウジングの内部に一方向に重ね合わせて一体に固定することができ、暗号化を行うデジタルICを含む小型のセンサモジュールを作ることができる。センサモジュールの製造方法は、デジタルICがハウジング内に固定されるから、自身においてセンサから出力された各種データを暗号化することができ、センサから出力された各種データの安全性を確保可能なセンサモジュールを製造することができる。このセンサモジュールの製造方法は、接続端子と電子部品とA/D変換チップとデジタルICとが一方向へ並んだ状態で基板の前端部に設置されるから、前端部の両面に接続端子や電子部品、A/D変換チップ、デジタルICを設置する場合と比較し、前端部の一方の面にそれらを並べて設置することができ、前端部にそれらを容易に設置することができる。
【0021】
センサ素子がコイルとコアとを有して所定のデータを記憶した磁気カードからそのデータを読み取る磁気ヘッドであるセンサモジュールの製造方法は、接続端子とA/D変換チップとデジタルICとを取り付けた可撓性基板の前端部が一方向へ向かって少なくとも2つに折り畳まれた状態で磁気ヘッドを設置するハウジングに収容され、接続端子とA/D変換チップとデジタルICとが可撓性基板の前端部とともにハウジングの内部に充填された固化物質によってハウジングに固定されるから、自身において磁気ヘッドから出力された各種データを暗号化することができ、磁気カードの各種データの安全性を確実に確保することが可能なセンサモジュールを作ることができる。
【図面の簡単な説明】
【0022】
【図1】一例として示すセンサモジュールの斜視図。
【図2】一例として示す可撓性基板の平面図。
【図3】信号処理装置を設置した可撓性基板の平面図。
【図4】折り曲げた状態で示す可撓性基板の斜視図。
【図5】ハウジングおよび可撓性基板の斜視図。
【図6】ハウジングにエポキシ樹脂を充填中のセンサモジュールの斜視図。
【図7】図1とは異なる態様のセンサモジュールの斜視図。
【図8】可撓性基板の平面図。
【図9】可撓性基板の平面図。
【図10】図1,7とは異なる態様のセンサモジュールの斜視図。
【図11】可撓性基板の平面図。
【図12】可撓性基板の平面図。
【図13】センサモジュールを利用した一例として示す磁気カード読み取りシステムのハードウェア構成図。
【図14】外部サーバと磁気ヘッドとの間で行われる処理の一例を示すブロック図。
【図15】外部認証の一例を示すラダー図。
【図16】内部認証の一例を示すラダー図。
【図17】外部サーバとマイクロプロセッサとの間におけるダウンロード処理の一例を示すラダー図。
【図18】暗号化および復号化に使用する鍵の生成の一例を説明する図。
【図19】暗号化および復号化に使用する鍵の生成の一例を説明する図。
【図20】暗号化および復号化に使用する鍵の生成の一例を説明する図。
【図21】暗号化および復号化に使用する鍵の生成の一例を説明する図。
【図22】暗号化および復号化に使用する鍵の生成の一例を説明する図。
【図23】暗号化および復号化に使用する鍵の生成の一例を説明する図。
【図24】磁気ヘッドとホストコンピュータとの間で行われる処理の一例を示すブロック図。
【図25】外部認証の一例を示すラダー図。
【図26】内部認証の一例を示すラダー図。
【図27】システムにおけるメイン処理の一例を示すラダー図。
【図28】暗号化および復号化に使用する鍵の生成の他の一例を説明する図。
【図29】暗号化および復号化に使用する鍵の生成の他の一例を説明する図。
【図30】暗号化および復号化に使用する鍵の生成の他の一例を説明する図。
【図31】暗号化および復号化に使用する鍵の生成の他の一例を説明する図。
【図32】暗号化および復号化に使用する鍵の生成の他の一例を説明する図。
【図33】暗号化および復号化に使用する鍵の生成の他の一例を説明する図。
【発明を実施するための形態】
【0023】
添付の図面を参照し、本発明に係るセンサモジュールおよびその製造方法の詳細を説明すると、以下のとおりである。図1は、一例として示すセンサモジュール10Aの斜視図であり、図2は、一例として示す可撓性基板13の平面図である。図3は、信号処理装置14を設置した可撓性基板13の平面図であり、図4は、折り曲げた状態で示す可撓性基板13の斜視図である。図5は、ハウジング11および可撓性基板13の斜視図であり、図6は、ハウジング11の内部にエポキシ樹脂28(固化物質)を充填中のセンサモジュール10Aの斜視図である。図1,2では、縦方向を矢印Aで示し、横方向を矢印Bで示す。
【0024】
なお、センサ素子として磁気ヘッド12を例としてセンサモジュール10Aを説明するが、センサ素子に特に限定はなく、他のあらゆるセンサ素子を使用することができる。それらセンサ素子には、ストレインゲージ、加速度センサ、レゾルバ、熱電対、白金線センサ、サーミスタ、半導体温度センサ、サーモグラフィー、セラミックスセンサ、高分子膜センサ、感圧導電性ゴム、感圧半導体、感圧フィルム、力角センサ、CdSセル、フォトダイオード、光電管、焦電センサ、CCDセンサ、PSDセンサ、マイクロホン、超音波センサ、半導体ガスセンサ、イオン電極センサ、ホール素子等がある。
【0025】
センサモジュール10Aは、所定容積のハウジング11および磁気ヘッド12(センサ素子)と、縦方向(一方向)へ延びる可撓性基板13(フレキシブルプリント基板)と、信号処理装置14とから構成されている。ハウジング11は、金属または合成樹脂から作られ、その内部が中空に成形されている。ハウジング11は、上端開口15と下端開口16とを有する。磁気ヘッド12は、磁気カード(測定対象)の磁性層に記憶された各種データ(測定量)を電気信号(アナログ信号)に変換する。磁気ヘッド12は、図1に示すように、その外周面がハウジング11に包被され、その一部分がハウジング11の下端開口16から露出している。磁気ヘッド12は、図示はしていないが、磁気カードに記憶された各種データをアナログ信号(電気信号)に変換するコイルと、そのコイルが取り付けられたコアとを有する。
【0026】
可撓性基板13は、前端部17と、前端部17から縦方向へ延出する後端部18とを有する。可撓性基板13では、前端部17がハウジング11の内部に収容され、後端部18がハウジング11の上端開口15から露出している。可撓性基板13は、図示はしていないが、12μm〜50μmの厚み寸法を有するフィルム状絶縁体と、フィルム状絶縁体の上に形成された接着層と、12μm〜50μmの厚み寸法を有して接着層の上に形成された導体箔とから作られている。可撓性基板13は、優れた柔軟性を有し、折り畳み等自由に変形させることができ、変形後もその電気的特性を維持する。絶縁体には、ポリイミド膜やフォトソルダーレジスロ膜が使用され、導体箔には、銅が使用される。導体箔は、前端部17から後端部18に向かって縦方向へ延び、それら端部17,18に取り付けられている。
【0027】
可撓性基板13の前端部17は、接続端子設置領域19(第1部分)、電子部品設置領域20(第2部分)、A/D変換チップ設置領域21(第3部分)、マイクロプロセッサ設置領域22(デジタルIC設置領域)(第4部分)に区分されている。それら領域19〜22は、前端部17の前端23から後端部18に向かって接続端子設置領域19→電子部品設置領域20→A/D変換チップ設置領域21→マイクロプロセッサ設置領域22の順で縦方向へ並んでいる。
【0028】
信号処理装置14は、可撓性基板13の前端部17に取り付けられている。信号処理装置14は、磁気ヘッド12から出力されたアナログ信号を受信する接続端子24と、アナログ信号のインピーダンスを調節する抵抗素子25(電子部品)と、アナログ信号をデジタル信号に変換するA/D変換チップ26と、A/D変換チップ26から出力されたデジタル信号を暗号化するマイクロプロセッサ27(デジタルIC)とから形成されている。可撓性基板13の前端部17では、その前端23から後端部18に向かって接続端子24→抵抗素子25→A/D変換チップ26→マイクロプロセッサ27の順で縦方向へ並んでいる。
【0029】
接続端子24は、接続端子設置領域19に設置され、磁気ヘッド12に接続されている。抵抗素子25は、電子部品設置領域20に設置され、接続端子24に接続されている。A/D変換チップ26は、A/D変換チップ設置領域21に設置され、抵抗素子25に接続されている。マイクロプロセッサ27は、マイクロプロセッサ設置領域22に設置され、A/D変換チップ26に接続されている。
【0030】
マイクロプロセッサ27は、中央処理部とメモリ(フラッシュメモリやEEROM)とを有する。プロセッサ27の中央処理部は、演算ユニットおよび制御ユニットから形成されている。なお、マイクロプロセッサ27に代えて、ゲートアレイやフィールドプログラマブルゲートアレイ、専用ハードウェアのうちのいずれかのデジタルICを使用することもできる。
【0031】
このセンサモジュール10Aでは、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とを取り付けた可撓性基板13の前端部17が縦一方向へ向かって4つに折り畳まれた状態でハウジング11の内部に収容されている。具体的に可撓性基板13の前端部17は、接続端子設置領域19と電子部品設置領域20との間において縦方向へ向かって折曲され、電子部品設置領域20とA/D変換チップ設置領域21との間において縦方向へ向かって折曲されている。さらに、A/D変換チップ設置領域21とマイクロプロセッサ設置領域22との間において縦方向へ向かって折曲され、マイクロプロセッサ設置領域22と後端部18との間において縦方向へ向かって折曲されている。センサモジュール10Aでは、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが可撓性基板13の前端部17とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されている。
【0032】
センサモジュール10Aは、可撓性基板13の前端部17が縦方向へ向かって4つに折り畳まれた状態でハウジング11の内部に収容され、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが可撓性基板13の前端部17とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されているから、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とをハウジング11の内部に縦方向に重ね合わせて一体に固定することができ、暗号化を行うマイクロプロセッサ27を含むモジュール10Aの小型化を実現することができる。センサモジュール10Aは、マイクロプロセッサ27をハウジング11内に固定することで、モジュール10A自身において磁気ヘッド12から出力された各種データの暗号化を行うことができ、磁気ヘッド12から出力された各種データの安全性を確保することができる。
【0033】
このセンサモジュール10Aの製造方法の一例を説明すると、以下のとおりである。なお、ハウジング11には、既に磁気ヘッド12が設置されているものとする。センサモジュール10Aの製造方法は、設置工程、折曲工程、収容工程、固定工程を有する。それら各工程は、設置工程→折曲工程→収容工程→固定工程の順で実施される。設置工程では、図3に示すように、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とを縦方向へ並べた状態で可撓性基板13の前端部17の一方の面に取り付ける。
【0034】
設置工程では、接続端子24が接続端子設置領域19に設置され、抵抗素子25が電子部品設置領域20に設置され、導体箔を介して接続端子24に接続される。A/D変換チップ26がA/D変換チップ設置領域21に設置され、導体箔を介して抵抗素子25に接続され、マイクロプロセッサ27がマイクロプロセッサ設置領域22に設置され、導体箔を介してA/D変換チップ26に接続される。それらの取り付け順番に特に限定はないが、それらが取り付けられた状態では、既述のようにそれらが前端部17の前端23から後端部18に向かって接続端子24→抵抗素子25→A/D変換チップ26→マイクロプロセッサ27の順で並ぶ。
【0035】
折曲工程では、図4に示すように、可撓性基板13の前端部17が縦方向に向かって4つに折り畳まれる。折曲工程において可撓性基板13の前端部17は、接続端子設置領域19と電子部品設置領域20との間において横方向へ延びる第1折曲線29を介して縦方向へ折曲され、電子部品設置領域20とA/D変換チップ設置領域21との間において横方向へ延びる第2折曲線30を介して縦方向へ折曲される。さらに、A/D変換チップ設置領域21とマイクロプロセッサ設置領域22との間において横方向へ延びる第3折曲線31を介して縦方向へ折曲され、マイクロプロセッサ設置領域22と後端部18の間において横方向へ延びる第4折曲線32を介して縦方向へ折曲される。折り畳まれた前端部13では、接続端子設置領域19と電子部品設置領域20とが対向し、A/D変換チップ設置領域21とマイクロプロセッサ設置領域22とが対向する。
【0036】
収容工程では、図5に示すように、4つに折り畳んだ可撓性基板13の前端部17をハウジング11の上端開口15からハウジング11の内部に収容する。前端部17がハウジング11に収容されると、ハウジング11の内部において接続端子23が磁気ヘッド12に当接し、接続端子23と磁気ヘッド12とが接続される。可撓性基板13の後端部18は、ハウジング11の外側に露出する。固定工程では、図6に示すように、ハウジング11の内部にエポキシ樹脂28を充填し、エポキシ樹脂28によって接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とを可撓性基板13の前端部17とともにハウジング11の内部に固定する。
【0037】
センサモジュール10Aの製造方法は、可撓性基板13の前端部17が縦方向へ向かって4つに折り畳まれた状態でハウジング11の内部に収容され、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが可撓性基板13の前端部17とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されるから、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とをハウジング11の内部に縦方向に重ね合わせて一体に固定することができ、暗号化を行うマイクロプロセッサ27を含む小型のセンサモジュール10Aを作ることができる。
【0038】
製造方法は、マイクロプロセッサ27がハウジング11内に固定されるから、自身において磁気ヘッド12から出力された各種データを暗号化することができ、磁気ヘッド12から出力された各種データの安全性を確保可能なセンサモジュール10Aを製造することができる。この製造方法は、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが縦方向へ並んだ状態で可撓性基板13の前端部17に設置されるから、前端部17の両面に接続端子24や抵抗素子25、A/D変換チップ26、マイクロプロセッサ27を設置する場合と比較し、前端部17の一方の面にそれらを並べて設置することができ、前端部17にそれらを容易に設置することができる。
【0039】
図7は、図1とは異なる態様のセンサモジュール10Bの斜視図であり、図8,9は、可撓性基板13の平面図である。図7では、エポキシ樹脂28の図示を省略している。図8は、可撓性基板13の一方の面を示し、図9は、可撓性基板13の他方の面を示す。このセンサモジュール10Bは、所定容積のハウジング11および磁気ヘッド12と、縦方向(一方向)へ延びる可撓性基板13(フレキシブルプリント基板)と、可撓性基板13の前端部17に設置された信号処理装置14とから構成されている。ハウジング11や磁気ヘッド12、可撓性基板13は図1のそれらと同一である。
【0040】
可撓性基板13の前端部17は、その前端23から後端部18に向かって第1部分〜第3部分33〜35に3等分されている。第1部分33は、接続端子設置領域19と電子部品設置領域20とを兼ねている。第1部分33では、接続端子設置領域19が部分33の他方の面に形成され、電子部品設置領域20が部分33の一方の面に形成されている。第2部分34は、A/D変換チップ設置領域21となる。A/D変換チップ設置領域21は、第2部分34の一方の面に形成されている。第3部分35は、マイクロプロセッサ設置領域22(デジタルIC設置領域)となる。マイクロプロセッサ設置領域22は、第3部分35の一方の面に形成されている。それら領域19〜22は、前端部17の前端23から後端部18に向かって接続端子設置領域19および電子部品設置領域20→A/D変換チップ設置領域21→マイクロプロセッサ設置領域22の順で縦方向へ並んでいる。
【0041】
信号処理装置14は、磁気ヘッド12から出力されたアナログ信号を受信する接続端子24と、アナログ信号のインピーダンスを調節する抵抗素子25(電子部品)と、アナログ信号をデジタル信号に変換するA/D変換チップ26と、A/D変換チップ26から出力されたデジタル信号を暗号化するマイクロプロセッサ27(デジタルIC)とから形成されている。可撓性基板13の前端部17では、その前端23から後端部18に向かって接続端子24および抵抗素子25→A/D変換チップ26→マイクロプロセッサ27の順で縦方向へ並んでいる。接続端子24は、接続端子設置領域19に設置され、磁気ヘッド12に接続されている。抵抗素子25は、電子部品設置領域20に設置され、接続端子24に接続されている。A/D変換チップ26は、A/D変換チップ設置領域21に設置され、抵抗素子25に接続されている。マイクロプロセッサ27は、マイクロプロセッサ設置領域22に設置され、A/D変換チップ26に接続されている。
【0042】
このセンサモジュール10Bでは、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とを取り付けた可撓性基板13の前端部17が縦方向へ向かって3つに折り畳まれた状態でハウジング11の内部に収容されている。具体的に可撓性基板13の前端部17は、第1部分33と第2部分34との間において縦方向へ向かって折曲され、第2部分34と第3部分35との間において縦方向へ向かって折曲され、さらに、第3部分35と後端部18との間において縦方向へ向かって折曲されている。センサモジュール10Bでは、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが可撓性基板13の前端部17とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されている。
【0043】
センサモジュール10Bは、可撓性基板13の前端部17が縦方向へ向かって3つに折り畳まれた状態でハウジング11の内部に収容され、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが可撓性基板13の前端部17とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されているから、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とをハウジング11の内部に縦方向に重ね合わせて一体に固定することができ、暗号化を行うマイクロプロセッサ27を含むモジュール10Bの小型化を実現することができる。センサモジュール10Bは、マイクロプロセッサ27をハウジング11内に固定することで、モジュール10A自身において磁気ヘッド12から出力された各種データの暗号化を行うことができ、磁気ヘッド12から出力された各種データの安全性を確保することができる。
【0044】
このセンサモジュール10Bの製造方法の一例を説明すると、以下のとおりである。なお、ハウジング11には、既に磁気ヘッド12が設置されているものとする。センサモジュール10Bの製造方法は、センサモジュール10Aのそれと同様に、設置工程、折曲工程、収容工程、固定工程を有する。
【0045】
設置工程では、接続端子24が第1部分33の他方の面に形成された接続端子設置領域19に設置され、抵抗素子25が第1部分33の一方の面に形成された電子部品設置領域20に設置され、導体箔を介して接続端子24に接続される。A/D変換チップ26が第2部分34の一方の面に形成されたA/D変換チップ設置領域21に設置され、導体箔を介して抵抗素子25に接続され、マイクロプロセッサ27が第3部分35の一方の面に形成されたマイクロプロセッサ設置領域22に設置され、導体箔を介してA/D変換チップ26に接続される。
【0046】
折曲工程では、可撓性基板13の前端部17が縦方向に向かって3つに折り畳まれる。折曲工程において可撓性基板13の前端部17は、第1部分33と第2部分32との間において横方向へ延びる第1折曲線29を介して縦方向へ折曲され、第2部分34と第3部分35との間において横方向へ延びる第2折曲線30を介して縦方向へ折曲される。さらに、第3部分35と後端部18との間において横方向へ延びる第3折曲線31を介して縦方向へ折曲される。折り畳まれた前端部13では、電子部品設置領域20とA/D変換チップ設置領域21とが対向する。
【0047】
収容工程では、3つに折り畳んだ可撓性基板13の前端部17をハウジング11の上部開口15からハウジング11の内部に収容する。前端部17がハウジング11に収容されると、ハウジング11の内部において接続端子23が磁気ヘッド12に当接し、接続端子23と磁気ヘッド12とが接続される。可撓性基板13の後端部18は、ハウジング11の外側に露出する。固定工程では、ハウジング11の内部にエポキシ樹脂28を充填し、エポキシ樹脂28によって接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とを可撓性基板13の前端部17とともにハウジング11の内部に固定する。
【0048】
センサモジュール10Bの製造方法は、可撓性基板13の前端部17が縦方向へ向かって3つに折り畳まれた状態でハウジング11の内部に収容され、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが可撓性基板13の前端部17とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されるから、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とをハウジング11の内部に縦方向に重ね合わせて一体に固定することができ、暗号化を行うマイクロプロセッサ27を含む小型のセンサモジュール10Bを作ることができる。この製造方法は、マイクロプロセッサ27がハウジング11内に固定されるから、自身において磁気ヘッド12から出力された各種データを暗号化することができ、磁気ヘッド12から出力された各種データの安全性を確保可能なセンサモジュール10Bを製造することができる。
【0049】
このセンサモジュール10Bでは、抵抗素子25を省くこともできる。この場合、第1部分33の一方の面に接続端子設置領域19が形成され、第2部分34の一方の面にA/D変換チップ設置領域21が形成され、第3部分35の一方の面にマイクロプロセッサ設置領域22(デジタルIC設置領域)が形成される。それら領域19,21,22は、前端部17の前端23から後端部18に向かって接続端子設置領域19→A/D変換チップ設置領域21→マイクロプロセッサ設置領域22の順で縦方向へ並ぶ。
【0050】
図10は、図1,7とは異なる態様のセンサモジュール10Cの斜視図であり、図11,12は、可撓性基板13の平面図である。図10では、エポキシ樹脂28の図示を省略している。図11は、可撓性基板13の一方の面を示し、図12は、可撓性基板13の他方の面を示す。このセンサモジュール10Cは、所定容積のハウジング11および磁気ヘッド12と、縦方向(一方向)へ延びる可撓性基板13(フレキシブルプリント基板)と、可撓性基板13の前端部17に設置された信号処理装置14とから構成されている。ハウジング11や磁気ヘッド12、可撓性基板13は図1のそれらと同一である。
【0051】
可撓性基板13の前端部17は、その前端23から後端部18に向かって第1部分33〜第2部分34に2等分されている。第1部分33は、接続端子設置領域19と電子部品設置領域20とを兼ねている。第1部分33では、接続端子設置領域19が部分33の一方の面に形成され、電子部品設置領域20が部分33の他方の面に形成されている。第2部分34は、A/D変換チップ設置領域21とマイクロプロセッサ設置領域22(デジタルIC設置領域)とを兼ねている。第2部分34では、A/D変換チップ設置領域21が部分34の他方の面に形成され、マイクロプロセッサ設置領域22が部分34の一方の面に形成されている。それら領域19〜22は、前端部17の前端23から後端部18に向かって接続端子設置領域19および電子部品設置領域20→A/D変換チップ設置領域21およびマイクロプロセッサ設置領域22の順で縦方向へ並んでいる。
【0052】
信号処理装置14は、磁気ヘッド12から出力されたアナログ信号を受信する接続端子24と、アナログ信号のインピーダンスを調節する抵抗素子25(電子部品)と、アナログ信号をデジタル信号に変換するA/D変換チップ26と、A/D変換チップ26から出力されたデジタル信号を暗号化するマイクロプロセッサ27(デジタルIC)とから形成されている。可撓性基板13の前端部17では、その前端23から後端部18に向かって接続端子24および抵抗素子25→A/D変換チップ26およびマイクロプロセッサ27の順で縦方向へ並んでいる。
【0053】
接続端子24は、接続端子設置領域19に設置され、磁気ヘッド12に接続されている。抵抗素子25は、電子部品設置領域20に設置され、接続端子24に接続されている。A/D変換チップ26は、A/D変換チップ設置領域21に設置され、抵抗素子25に接続されている。マイクロプロセッサ27は、マイクロプロセッサ設置領域22に設置され、A/D変換チップ26に接続されている。
【0054】
このセンサモジュール10Cでは、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とを取り付けた可撓性基板13の前端部17が縦方向へ向かって2つに折り畳まれた状態でハウジング11の内部に収容されている。具体的に可撓性基板13の前端部17は、第1部分33と第2部分34との間において縦方向へ向かって折曲され、第2部分34と後端部18との間において縦方向へ向かって折曲されている。センサモジュール10Cでは、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが可撓性基板13の前端部17とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されている。
【0055】
センサモジュール10Cは、可撓性基板13の前端部17が縦方向へ向かって2つに折り畳まれた状態でハウジング11の内部に収容され、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが可撓性基板13の前端部17とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されているから、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とをハウジング11の内部に縦方向に重ね合わせて一体に固定することができ、暗号化を行うマイクロプロセッサ27を含むモジュール10Cの小型化を実現することができる。センサモジュール10Cは、マイクロプロセッサ27をハウジング11内に固定することで、モジュール10A自身において磁気ヘッド12から出力された各種データの暗号化を行うことができ、磁気ヘッド12から出力された各種データの安全性を確保することができる。
【0056】
このセンサモジュール10Cの製造方法の一例を説明すると、以下のとおりである。なお、ハウジング11には、既に磁気ヘッド12が設置されているものとする。センサモジュール10Cの製造方法は、センサモジュール10Aのそれと同様に、設置工程、折曲工程、収容工程、固定工程を有する。
【0057】
設置工程では、接続端子24が第1部分33の一方の面に形成された接続端子設置領域19に設置され、抵抗素子25が第1部分33の他方の面に形成された電子部品設置領域20に設置され、導体箔を介して接続端子24に接続される。A/D変換チップ26が第2部分34の他方の面に形成されたA/D変換チップ設置領域21に設置され、導体箔を介して抵抗素子25に接続され、マイクロプロセッサ27が第2部分34の一方の面に形成されたマイクロプロセッサ設置領域22に設置され、導体箔を介してA/D変換チップ26に接続される。
【0058】
折曲工程では、可撓性基板13の前端部17が縦方向に向かって2つに折り畳まれる。折曲工程において可撓性基板13の前端部17は、第1部分33と第2部分34との間において横方向へ延びる第1折曲線29を介して縦方向へ折曲され、第2部分34と後端部18との間において横方向へ延びる第2折曲線30を介して縦方向へ折曲される。折り畳まれた前端部13では、電子部品設置領域20とA/D変換チップ設置領域21とが対向する。
【0059】
収容工程では、2つに折り畳んだ可撓性基板13の前端部17をハウジング11の内部に収容する。前端部17がハウジング11に収容されると、ハウジング11の内部において接続端子23が磁気ヘッド12に当接し、接続端子23と磁気ヘッド12とが接続される。可撓性基板13の後端部18は、ハウジング11の外側に露出する。固定工程では、ハウジング11の内部にエポキシ樹脂28を充填し、エポキシ樹脂28によって接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とを可撓性基板13の前端部17とともにハウジング11の内部に固定する。
【0060】
センサモジュール10Cの製造方法は、可撓性基板13の前端部17が縦方向へ向かって2つに折り畳まれた状態でハウジング11の内部に収容され、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが可撓性基板13の前端部17とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されるから、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とをハウジング11の内部に縦方向に重ね合わせて一体に固定することができ、暗号化を行うマイクロプロセッサ27を含む小型のセンサモジュール10Cを作ることができる。この製造方法は、マイクロプロセッサ27がハウジング11内に固定されるから、自身において磁気ヘッド12から出力された各種データを暗号化することができ、磁気ヘッド12から出力された各種データの安全性を確保可能なセンサモジュール10Cを製造することができる。
【0061】
このセンサモジュール10Cでは、抵抗素子25を省くこともできる。この場合、第1部分33の一方の面に接続端子設置領域19が形成され、第2部分34の一方の面にマイクロプロセッサ設置領域22が形成され、第2部分34の一方の面にA/D変換チップ設置領域21が形成される。それら領域19,21,22は、前端部17の前端23から後端部18に向かって接続端子設置領域19→A/D変換チップ設置領域21およびマイクロプロセッサ設置領域22の順で縦方向へ並ぶ。
【0062】
図13は、センサモジュール10A〜10Cのいずれかを利用した一例として示す磁気カード読み取りシステム50のハードウェア構成図である。磁気カード読み取りシステム50は、外部サーバ51と、磁気カードに記憶されたカードデータ(各種データ)を読み取る磁気カードリーダ52と、ホストコンピュータ53とから形成されている。システム50では、サーバ51とカードリーダ52とがインターフェイス(有線または無線)を介して接続され、カードリーダ52とコンピュータ53とがインターフェイス(有線または無線)を介して接続されている。
【0063】
カードデータには、カード番号や暗証番号、ユーザID、パスワード、カード所持者の個人情報(郵便番号、住所または居所、氏名または名称、生年月日、家族構成、年収、勤務会社、電話番号、ファクシミリ番号、メールアドレス、URL等)、カード所持者の法人情報(郵便番号、住所、名称、設立年月日、各種の経営情報、取引先情報、電話番号、ファクシミリ番号、メールアドレス、URL等)、商取引内容等が含まれる。
【0064】
外部サーバ51は、中央処理部(CPUまたはMPU)とメモリ(大容量ハードディスク)とを有するコンピュータであり、DNSサーバ機能を備えている。メモリには、カードリーダ52のURLが格納されている。サーバ51の中央処理部は、演算ユニットおよび制御ユニットから形成されている。サーバ51には、キーボードやマウス等の入力装置54、ディスプレイやプリンタ等の出力装置55がインターフェイスを介して接続されている。サーバ51の中央処理部は、オペレーティングシステムによる制御に基づいて、メモリに格納されたアプリケーションを起動し、起動したアプリケーションに従って以下の各手段を実行する。
【0065】
外部サーバ51の中央処理部は、メモリに格納された鍵を使用して所定のファームウェアを暗号化するファームウェア暗号化手段を実行し、メモリに格納された鍵を使用して所定の暗号化アルゴリズムを暗号化するアルゴリズム暗号化手段を実行する。サーバ51の中央処理部は、インターネットを介してカードリーダ52の後記するコントローラにアクセスするアクセス手段を実行し、センサモジュール10A〜10Cとの間で相互に認証を行う相互認証手段を実行する。
【0066】
外部サーバ51の中央処理部は、暗号化していないファームウェアまたは暗号化した後のファームウェアをセンサモジュール10A〜10Cにダウンロードするファームウェア第1ダウンロード手段を実行し、暗号化していないあらたなファームウェア(バージョンアップファームウェア)または暗号化した後のあらたなファームウェア(バージョンアップファームウェア)をセンサモジュール10A〜10Cにダウンロードするファームウェア第2ダウンロード手段を実行する。サーバ51の中央処理部は、暗号化していない暗号化アルゴリズムまたは暗号化した後の暗号化アルゴリズムをセンサモジュール10A〜10Cにダウンロードするアルゴリズム第1ダウンロード手段を実行し、暗号化していないあらたな暗号化アルゴリズムまたは暗号化した後のあらたな暗号化アルゴリズムをセンサモジュール10A〜10Cにダウンロードするアルゴリズム第2ダウンロード手段を実行する。
【0067】
ファームウェアとは、センサモジュール10A〜10Cのマイクロプロセッサ27の演算・記憶機能を制御するとともにプロセッサ27につながる外部ハードウェアを制御するアプリケーションである。ファームウェアには、磁気カードの各種フォーマットに対応させてセンサモジュール10A〜10Cのプロセッサ27にカードの各種データを読み取らせるデータ読み取り制御が含まれる。さらに、所定の暗号化アルゴリズムに基づいてセンサモジュール10A〜10Cのプロセッサ27にカードデータ(デジタル信号)を暗号化させるデータ暗号化制御が含まれる。ファームウェアは、それを利用することで、センサモジュール10A〜10Cの動作環境に応じたプロセッサ27の演算・記憶機能の最適な制御を行うことができるとともに、プロセッサ27につながる外部ハードウェアの最適な制御を行うことができる。
【0068】
磁気カードリーダ52は、挿入電動型であり、コントローラ(図示せず)が内蔵されている。カードリーダ52は、図示はしていないが、前端に形成されたカード挿入口と、後端に形成されたカード排出口と、カード挿入口からカード排出口につながるカード案内レールとを有する。カードリーダ52の中央には、センサモジュール10A〜10Cが取り付けられている。挿入口や排出口、センサモジュール10A〜10Cの近傍には、案内レールを移動する磁気カードの位置を検出するための光センサが取り付けられている。
【0069】
挿入口から磁気カードを挿入すると、カードが案内レールを自動的に移動して排出口から排出される。案内レールにおけるカードの移動は、カードリーダ52内に取り付けられたベルトによって行われる。ベルトの駆動は、カードリーダ52内に設置されたモータによって行われる。センサモジュール10A〜10Cや各センサ、モータは、カードリーダ52のコントローラに接続されている。
【0070】
カードリーダ52のコントローラは、中央処理部(CPUまたはMPU)とメモリ(大容量ハードディスク)とを有するコンピュータである。メモリには、外部サーバ51のURLが格納されている。コントローラの中央処理部は、演算ユニットおよび制御ユニットから形成されている。コントローラは、DNSサーバ(図示せず)とホストコンピュータ53とに接続されている。コントローラは、インターネットを介して外部サーバ51にアクセス可能である。コントローラは、スイッチのON/OFFによってモータの駆動や停止を行うとともに、カードデータの読み取り開始指令やカードデータの読み取り停止指令をセンサモジュール10A〜10Cに出力する。
【0071】
センサモジュール10A〜10Cは、インターフェイスを介してホストコンピュータ13に接続されている。カードリーダ52内に設置されたセンサモジュール10A〜10Cでは、磁気ヘッド19を構成するコアの先端部が案内レールに対向している。磁気カードは、図示はしていないが、その下面から、カラー印刷層、ベース層、磁性層、遮蔽層、印字層の順で並んでいる。磁性層は強磁性体から作られ、ベース層はポリエチレン・テレフタレートから作られている。
【0072】
マイクロプロセッサ27の中央処理部は、オペレーティングシステムによる制御に基づいて、メモリに格納されたアプリケーションを起動し、起動したアプリケーションに従って以下の各手段を実行する。プロセッサ27の中央処理部は、外部サーバ51またはホストコンピュータ53との間で相互に認証を行う相互認証手段を実行する。プロセッサ27の中央処理部は、暗号化していないファームウェアが外部サーバ11からセンサモジュール10A〜10Cにダウンロードされると、そのファームウェアをメモリに格納するファームウェア記憶手段を実行する。
【0073】
マイクロプロセッサ27の中央処理部は、暗号化されたファームウェアがサーバ51からセンサモジュール10A〜10Cにダウンロードされると、メモリに格納された鍵を使用して暗号化されたファームウェアを復号化するファームウェア復号化手段を実行し、復号化したファームウェアをメモリに格納するファームウェア記憶手段を実行する。プロセッサ27の中央処理部は、バージョンアップされたあらたなファームウェアがサーバ51からセンサモジュール10A〜10Cにダウンロードされると、バージョンアップ前のファームウェアをバージョンアップ後のファームウェアに書き換えるファームウェア更新手段を実行する。
【0074】
ファームウェアをメモリに格納すると、マイクロプロセッサ27の中央処理部は、メモリに格納したファームウェアを起動し、起動したファームウェアに従って以下の各手段を実行する。プロセッサ27の中央処理部は、暗号化前の各種の暗号化アルゴリズムが外部サーバ51からセンサモジュール10A〜10Cにダウンロードされると、その暗号化アルゴリズムをメモリに格納するアルゴリズム記憶手段を実行する。または、暗号化後の各種の暗号化アルゴリズムが外部サーバ51からセンサモジュール10A〜10Cにダウンロードされると、メモリに格納された鍵を使用して暗号化された暗号化アルゴリズムを復号化するアルゴリズム復号化手段を実行し、復号化した暗号化アルゴリズムをメモリに格納するアルゴリズム記憶手段を実行する。
【0075】
マイクロプロセッサ27の中央処理部は、暗号化していないあらたな暗号化アルゴリズムが外部サーバ51からセンサモジュール10A〜10Cにダウンロードされると、すでに記憶した暗号化アルゴリズムをあらたな暗号化アルゴリズムに書き換えるアルゴリズム更新手段を実行する。または、暗号化されたあらたな暗号化アルゴリズムが外部サーバ51からセンサモジュール10A〜10Cにダウンロードされると、メモリに格納された鍵を使用して暗号化されたあらたな暗号化アルゴリズムを復号化するアルゴリズム復号化手段を実行し、すでに記憶した暗号化アルゴリズムを復号化したあらたな暗号化アルゴリズムに書き換えるアルゴリズム更新手段を実行する。プロセッサ27の中央処理部は、磁気カードの各種フォーマットに対応してカードから各種データを読み取るフォーマット対応読み取り手段を実行し、カードデータ(デジタル信号)を所定の暗号化アルゴリズムに基づいて暗号化するデータ暗号化手段を実行する。プロセッサ27の中央処理部は、暗号化したカードデータをホストコンピュータ53に出力する暗号化データ出力手段を実行する。
【0076】
ホストコンピュータ53は、中央処理部(CPUまたはMPU)とメモリ(大容量ハードディスク)とを有する。コンピュータ53の中央処理部は、演算ユニットおよび制御ユニットから形成されている。コンピュータ53には、キーボードやマウス等の入力装置56、ディスプレイやプリンタ等の出力装置57がインターフェイスを介して接続されている。コンピュータ53の中央処理部は、オペレーティングシステムによる制御に基づいて、メモリに格納されたアプリケーションを起動し、起動したアプリケーションに従って以下の各手段を実行する。
【0077】
ホストコンピュータ53の中央処理部は、マイクロプロセッサ27との間で相互に認証を行う相互認証手段を実行する。コンピュータ53の中央処理部は、暗号化されたカードデータがセンサモジュール10A〜10Cから出力されると、そのデータを複合化するデータ復号化手段を実行し、復号化したデータをメモリに格納するデータ記憶手段を実行する。コンピュータ53の中央処理部は、復号化したデータを出力装置57を介して出力するデータ出力手段を実行する。
【0078】
図14は、外部サーバ51とセンサモジュール10A〜10Cとの間で行われる処理の一例を示すブロック図である。外部サーバ51とセンサモジュール10A〜10Cとの間で行われる相互認証の一例を説明すると、以下のとおりである。システム50を起動させると、外部サーバ51や磁気カードリーダ52、ホストコンピュータ53が稼動する。サーバ51がカードリーダ52のURLを利用し、インターネットを介してカードリーダ52にアクセスする(アクセス手段)。または、カードリーダ52がサーバ51のURLを利用し、インターネットを介してサーバ51にアクセスする。
【0079】
外部サーバ51と磁気カードリーダ52のコントローラとがインターネットを介して接続されると、サーバ51の中央処理部とマイクロプロセッサ27の中央処理部とがカードリーダ52のコントローラを介して接続される。サーバ51の中央処理部とプロセッサ27の中央処理部とは、メモリーテスト(S−10)とコードサイニング(S−11)とを行う(初期テスト)。コードサイニング(S−11)は、ファームウェアのオブジェクトコードが書き替えられていないかを判定する。初期テストが終了し、その結果が正しい場合、サーバ51の中央処理部とプロセッサ27の中央処理部とは、それらの正当性を判断する相互認証を行う(相互認証手段)。相互認証は、サーバ51がセンサモジュール10A〜10Cの正当性を認証する外部認証(S−12)を行った後、センサモジュール10A〜10Cがサーバ51の正当性を認証する内部認証(S−13)を行う。
【0080】
外部サーバ51の中央処理部とマイクロプロセッサ27の中央処理部とが相互認証による互いの認証結果を正当であると判断すると、サーバ51からファームウェアや暗号化アルゴリズムのセンサモジュール10A〜10Cへのダウンロードが可能となり、サーバ51とプロセッサ27との間でダウンロード処理が行われる(S−14)。逆に、サーバ51とプロセッサ27との少なくとも一方が認証結果を不可であると判断すると、認証不可メッセージがサーバ51のディスプレイに表示され、ファームウェアや暗号化アルゴリズムのセンサモジュール10A〜10Cへのダウンロードを行うことができない。
【0081】
サーバ51とプロセッサ27との間の相互認証は、システム50を起動させる度毎に行われる場合、システム50を連続して稼働させるときは日時単位や週単位、月単位で行われる場合、あるいは、ファームウェアをセンサモジュール10A〜10Cにダウンロードする度毎に行われる場合、暗号化アルゴリズムをセンサモジュール10A〜10Cにダウンロードする度毎に行われる場合がある。なお、サーバ51とプロセッサ27とが相互認証を行うことなく、サーバ51とプロセッサ27とがインターネットを介して接続され、サーバ15がセンサモジュール10A〜10Cへファームウェアや暗号化アルゴリズムのダウンロードを行うこともできる。
【0082】
図15は、外部認証の一例を示すラダー図であり、図16は、内部認証の一例を示すラダー図である。外部認証における認証手順は、以下のとおりである。外部サーバ51の中央処理部がマイクロプロセッサ27の中央処理部に乱数(認証子)の生成と送信とを要求する(S−20)。プロセッサ27の中央処理部は、サーバ51の指令に従って64bit乱数を生成し、生成した乱数をサーバ51に送信する(S−21)。64bit乱数を取得したサーバ51の中央処理部は、メモリに格納された認証用の鍵を使用し、トリプルDES(Triple Data Encryption Standard)によって乱数を暗号化した後、暗号化した乱数をプロセッサ27に送信する(S−22)。
【0083】
プロセッサ27の中央処理部は、メモリに格納された認証用の鍵を使用し、トリプルDESによって暗号化された乱数を復号化する。プロセッサ27の中央処理部は、それが生成した乱数と復号化した乱数とを比較し、両者が同一であれば認証結果を正当であると判断し、認証結果正当情報をサーバ51に送信する(S−23)。一方、生成した乱数と復号化した乱数とが異なる場合、認証結果を不可であると判断し、認証結果不可情報をサーバ51に送信する(S−23)。サーバ51は、プロセッサ27から外部認証結果を取得する(S−24)。
【0084】
トリプルDESは、シングルDES(Single Data Encryption Standard)を3回繰り返すことにより、鍵の伸長やアルゴリズムの偏りの減少を図り、暗号強度を強化する。トリプルDESには、3つの鍵が全て異なる3−KeyトリプルDESと、1回目と3回目とに同じ鍵を用いる2−KeyトリプルDESとがある。なお、トリプルDESは、3−KeyトリプルDESと2−KeyトリプルDESとのいずれでもよい。また、DESは、トリプルDESではなく、シングルDESであってもよい。
【0085】
内部認証における認証手順は、以下のとおりである。外部サーバ51の中央処理部は、64bit乱数(認証子)を生成し、それをマイクロプロセッサ27に送信する(S−25)。64bit乱数を取得したプロセッサ27の中央処理部は、メモリに格納された認証用の鍵を使用し、トリプルDESによって乱数を暗号化した後、暗号化した乱数をサーバ51に送信する(S−26)。サーバ51の中央処理部は、メモリに格納された認証用の鍵を使用し、トリプルDESによって暗号化された乱数を復号化する(S−27)。サーバ51の中央処理部は、それが生成した乱数と復号化した乱数とを比較し、両者が同一であれば認証結果を正当であると判断する。一方、生成した乱数と復号化した乱数とが異なる場合、認証結果を不可であると判断し、センサモジュール10A〜10Cへのファームウェアや暗号化アルゴリズムのダウンロードを不可とする。
【0086】
図17は、外部サーバ51とマイクロプロセッサ27との間におけるダウンロード処理の一例を示すラダー図である。外部サーバ51のメモリには、ファームウェアおよび暗号化アルゴリズムとそれらを暗号化する暗号化用の鍵とが格納されており、必要に応じてバージョンアップされたあらたなファームウェアまたはあらたな暗号化アルゴリズムが随時格納される。マイクロプロセッサ27のメモリには、ファームウェアおよび暗号化アルゴリズムの復号化用の鍵が格納されている。
【0087】
外部サーバ51の中央処理部は、ファームウェアおよび暗号化アルゴリズムと暗号化用の鍵とをメモリから取り出し、その鍵を使用してトリプルDESによってファームウェアや暗号化アルゴリズムを暗号化する(ファームウェア暗号化手段、アルゴリズム暗号化手段)(S−28)。サーバ51の中央処理部は、暗号化したファームウェアや暗号化アルゴリズムをインターネットを介してセンサモジュール10A〜10Cにダウンロードする(ファームウェア第1ダウンロード手段、アルゴリズム第1ダウンロード手段)(S−29)。なお、ファームウェアや暗号化アルゴリズムを暗号化しない場合、サーバ51の中央処理部は、それらを暗号化せずにそのままセンサモジュール10A〜10Cにダウンロードする(ファームウェア第1ダウンロード手段、アルゴリズム第1ダウンロード手段)(S−29)。
【0088】
外部サーバ51の中央処理部は、バージョンアップされたあらたなファームウェアまたはあらたな暗号化アルゴリズムのセンサモジュール10A〜10Cへのダウンロードが必要になると、あらたなファームウェアやあらたな暗号化アルゴリズムと暗号化用の鍵とをメモリから取り出し、その鍵を使用してトリプルDESによってファームウェアや暗号化アルゴリズムを暗号化する(ファームウェア暗号化手段、アルゴリズム暗号化手段)(S−28)。サーバ51の中央処理部は、暗号化したあらたなファームウェアおよびあらたな暗号化アルゴリズムをインターネットを介してセンサモジュール10A〜10Cにダウンロードする(ファームウェア第2ダウンロード手段、アルゴリズム第2ダウンロード手段)(S−29)。
【0089】
なお、あらたなファームウェアやあらたな暗号化アルゴリズムを暗号化しない場合、サーバ51の中央処理部は、それらを暗号化せずにそのままセンサモジュール10A〜10Cにダウンロードする(ファームウェア第2ダウンロード手段、アルゴリズム第2ダウンロード手段)(S−29)。サーバ51からダウンロードされたファームウェアや暗号化アルゴリズムは、磁気カードリーダ52のコントローラのメモリに一時保管された後、コントローラからセンサモジュール10A〜10Cに出力される。
【0090】
マイクロプロセッサ27の中央処理部は、暗号化されたファームウェアおよび暗号化アルゴリズムを外部サーバ51から受け取ると、メモリから復号化用の鍵を取り出し、その鍵を使用してリプルDESによって暗号化されたファームウェアや暗号化アルゴリズムを復号化する(ファームウェア復号化手段、アルゴリズム復号化手段)(S−30)。プロセッサ27の中央処理部は、複合化したファームウェアおよび暗号化アルゴリズムをメモリに格納する(ファームウェア記憶手段、アルゴリズム記憶手段)。暗号化していないファームウェアおよび暗号化アルゴリズムを外部サーバ51から受け取ると、プロセッサ27の中央処理部は、そのファームウェアや暗号化アルゴリズムをメモリに格納する(ファームウェア記憶手段、アルゴリズム記憶手段)。
【0091】
マイクロプロセッサ27の中央処理部は、暗号化されたあらたなファームウェアおよびあらたな暗号化アルゴリズムを外部サーバ51から受け取ると、復号化用の鍵を使用してリプルDESによって暗号化されたあらたなファームウェアやあらたな暗号化アルゴリズムを復号化する(ファームウェア復号化手段、アルゴリズム復号化手段)(S−30)。プロセッサ27の中央処理部は、バージョンアップ前のファームウェアをバージョンアップ後の複合化したファームウェアに書き換え(ファームウェア更新手段)、バージョンアップ後のファームウェアをメモリに格納する。さらに、すでに記憶した暗号化アルゴリズムを復号化したあらたな暗号化アルゴリズムに書き換え(アルゴリズム更新手段)、あらたな暗号化アルゴリズムをメモリに格納する。
【0092】
暗号化していないあらたなファームウェアやあらたな暗号化アルゴリズムをサーバ51から受け取ると、プロセッサ27の中央処理部は、バージョンアップ前のファームウェアをバージョンアップ後のファームウェアに書き換え(ファームウェア更新手段)、バージョンアップ後のファームウェアをメモリに格納するとともに、すでに記憶した暗号化アルゴリズムをあらたな暗号化アルゴリズムに書き換え(アルゴリズム更新手段)、あらたな暗号化アルゴリズムをメモリに格納する。
【0093】
ファームウェアの書き換えは、それがバージョンアップされた場合、磁気カードの仕様が変更され、カードのフォーマットが変更された場合に行われる。暗号化アルゴリズムの書き換えは、第3者にアルゴリズムが解析されたことで、書き換えの必要が生じた場合、システム50を起動させる度毎に行う場合、日時単位や週単位、月単位で行う場合、同期がずれた後、再び同期する場合に行われる。
【0094】
図18〜図23は、暗号化および復号化に使用する鍵の生成の一例を説明する図である。外部サーバ51の中央処理部とマイクロプロセッサ27の中央処理部とは、暗号化されたファームウェアまたは暗号化アルゴリズムがセンサモジュール10A〜10Cにダウンロードされる度毎に、それらのメモリにあらかじめ格納された同一かつ有限の回帰カウンタ値を使用して互いに同期しつつ、ファームウェアまたは暗号化アルゴリズムの暗号化と復号化とに必要な同一のあらたな第2〜第n鍵を順に生成する(鍵生成手段)。サーバ15の中央処理部とプロセッサ27の中央処理部とが行う鍵生成手順の一例を説明すると、以下のとおりである。なお、回帰カウンタ値は1〜20とする。ただし、回帰カウンタ値に特に限定はなく、カウンタ値を21以上とすることもできる。
【0095】
外部サーバ51が第1番目のファームウェア(新規ファームウェア)または暗号化アルゴリズム(新規アルゴリズム)をセンサモジュール10A〜10Cにダウンロードする場合、サーバ15の中央処理部は、図18に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値1を選択し、ファームウェアや暗号化アルゴリズムにカウンタ値1を添付する。カウンタテーブルには、カウンタ値(1〜20)の格納エリアとそれに対応する3つの鍵の格納エリア(K1,K2,K3)とが作られている。ただし、図18のカウンタデーブルでは、回帰カウンタ値2〜20に対応する第2鍵〜第20鍵は生成されていない。なお、カウンタ値1に対応する第1鍵(Key1)は、初期値としてシステム50の導入時に設定される。
【0096】
外部サーバ51の中央処理部は、カウンタテーブルからカウンタ値1に対応する第1鍵を取り出し、第1鍵を使用し、トリプルDES(3−KeyトリプルDES)によってファームウェアまたは暗号化アルゴリズムとカウンタ値1とを暗号化し(ファームウェア暗号化手段、アルゴリズム暗号化手段)、暗号化したファームウェアや暗号化アルゴリズムをセンサモジュール10A〜10Cにダウンロードする(ファームウェア第1ダウンロード手段、アルゴリズム第1ダウンロード手段)。サーバ51の中央処理部は、暗号化したファームウェアや暗号化アルゴリズムをセンサモジュール10A〜10Cにダウンロードした後、回帰カウンタ値を1から2に変更し、カウンタ値2をメモリに格納する。
【0097】
暗号化されたファームウェア(第1番目のファームウェア)または暗号化アルゴリズム(第1番目の暗号化アルゴリズム)を受け取ったマイクロプロセッサ27の中央処理部は、図19に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値1を選択する。カウンタテーブルには、カウンタ値(1〜20)の格納エリアとそれに対応する3つの鍵の格納エリア(K1,K2,K3)とが作られている。ただし、図19のカウンタデーブルでは、回帰カウンタ値2〜20に対応する第2鍵〜第20鍵は生成されていない。なお、カウンタ値1に対応する第1鍵(Key1)は、外部サーバ51のメモリに格納された第1鍵と同一であり、初期値としてシステム50の導入時に設定される。
【0098】
マイクロプロセッサ27の中央処理部は、カウンタテーブルからカウンタ値1に対応する第1鍵を取り出し、第1鍵を使用し、トリプルDES(3−KeyトリプルDES)によって暗号化されたファームウェアや暗号化アルゴリズムを復号化して平文ファームウェア、平文アルゴリズムを取得する(ファームウェア復号化手段、アルゴリズム復号化手段)。プロセッサ27の中央処理部は、ファームウェアや暗号化アルゴリズムを復号化した後、それらをメモリに格納するとともに(ファームウェア記憶手段、アルゴリズム記憶手段)、回帰カウンタ値を1から2に変更し、カウンタ値2をメモリに格納する。
【0099】
外部サーバ51は、マイクロプロセッサ27が現在使用しているファームウェアや暗号化アルゴリズムの使用を中止させ、メモリに格納されたファームウェアや暗号化アルゴリズムの中からあらたなファームウェアやあらたなアルゴリズムを選択し、そのファームウェアやアルゴリズムを使用させることができる。サーバ51が第2番目のファームウェア(バージョンアップファームウェア)または第2番目の暗号化アルゴリズム(あらたな暗号化アルゴリズム)をセンサモジュール10A〜10Cにダウンロードする場合、外部サーバ51の中央処理部は、図20に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値2を選択し、第2番目のファームウェアや暗号化アルゴリズムにカウンタ値2を添付する。
【0100】
外部サーバ51の中央処理部は、カウンタ値1に対応する第1鍵(初期値)とカウンタ値1とを一方向ハッシュ関数によってハッシュ化したハッシュ出力値を生成し、そのハッシュ出力値をカウンタ値2に対応する第2鍵(Key2)とする(鍵生成手段)。第2鍵(Key2)となるハッシュ出力値は、カウンタテーブルのカウンタ値2に対応する鍵格納エリア(K1,K2,K3)に書き込まれる。なお、図20のカウンタデーブルでは、回帰カウンタ値3〜20に対応する第3鍵〜第20鍵は生成されていない。
【0101】
外部サーバ51の中央処理部は、カウンタテーブルからカウンタ値2に対応する第2鍵を取り出し、第2鍵を使用し、トリプルDES(3−KeyトリプルDES)によってファームウェアや暗号化アルゴリズムを暗号化(カウンタ値2を含む)し(ファームウェア暗号化手段、アルゴリズム暗号化手段)、暗号化したファームウェアや暗号化アルゴリズムをセンサモジュール10A〜10Cにダウンロードする(ファームウェア第2ダウンロード手段、アルゴリズム第2ダウンロード手段)。サーバ51の中央処理部は、暗号化したファームウェアまたは暗号化アルゴリズムをセンサモジュール10A〜10Cにダウンロードした後、回帰カウンタ値を2から3に変更し、カウンタ値3をメモリに格納する。
【0102】
暗号化されたファームウェア(第2番目のファームウェア)または暗号化アルゴリズム(第2番目の暗号化アルゴリズム)を受け取ったマイクロプロセッサ27の中央処理部は、図21に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値2を選択する。プロセッサ27の中央処理部は、カウンタ値1に対応する第1鍵(初期値)とカウンタ値1とを一方向ハッシュ関数によってハッシュ化したハッシュ出力値を生成し、そのハッシュ出力値をカウンタ値2に対応する第2鍵(Key2)とする(鍵生成手段)。プロセッサ27の中央処理部が使用するハッシュ関数はサーバ51の中央処理部が使用するそれと同一であり、生成した第2鍵(Key2)はサーバ51の中央処理部が生成したそれと同一である。第2鍵(Key2)となるハッシュ出力値は、カウンタテーブルのカウンタ値2に対応する鍵格納エリア(K1,K2,K3)に書き込まれる。なお、図21のカウンタデーブルでは、回帰カウンタ値3〜20に対応する第3鍵〜第20鍵は生成されていない。
【0103】
マイクロプロセッサ27の中央処理部は、カウンタテーブルからカウンタ値2に対応する第2鍵を取り出し、第2鍵を使用し、トリプルDES(3−KeyトリプルDES)によって暗号化されたファームウェアや暗号化アルゴリズムを復号化して平文ファームウェア、平文アルゴリズムを取得する(ファームウェア復号化手段、アルゴリズム復号化手段)。プロセッサ27の中央処理部は、ファームウェアや暗号化アルゴリズムを復号化した後、それらをメモリに格納するとともに(ファームウェア記憶手段、アルゴリズム記憶手段)、回帰カウンタ値を2から3に変更し、カウンタ値3をメモリに格納する。
【0104】
外部サーバ51が第3番目のファームウェア(バージョンアップファームウェア)または第3番目の暗号化アルゴリズム(あらたな暗号化アルゴリズム)をセンサモジュール10A〜10Cにダウンロードする場合、サーバ51の中央処理部は、図22に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値3を選択し、第3番目のファームウェアや暗号化アルゴリズムにカウンタ値3を添付する。
【0105】
外部サーバ51の中央処理部は、カウンタ値2に対応する第2鍵(Key2、ハッシュ値)とカウンタ値2とを一方向ハッシュ関数によってハッシュ化したハッシュ出力値を生成し、そのハッシュ出力値をカウンタ値3に対応する第3鍵(Key3)とする(鍵生成手段)。第3鍵(Key3)となるハッシュ出力値は、カウンタテーブルのカウンタ値3に対応する鍵格納エリア(K1,K2,K3)に書き込まれる。なお、図22のカウンタデーブルでは、回帰カウンタ値4〜20に対応する第4鍵〜第20鍵は生成されていない。
【0106】
外部サーバ51の中央処理部は、カウンタテーブルからカウンタ値3に対応する第3鍵を取り出し、第3鍵を使用し、トリプルDES(3−KeyトリプルDES)によってファームウェアや暗号化アルゴリズムを暗号化(カウンタ値3を含む)し(ファームウェア暗号化手段、アルゴリズム暗号化手段)、暗号化したファームウェアや暗号化アルゴリズムをセンサモジュール10A〜10Cにダウンロードする(ファームウェア第2ダウンロード手段、アルゴリズム第2ダウンロード手段)。サーバ51の中央処理部は、暗号化したファームウェアまたは暗号化アルゴリズムをセンサモジュール10A〜10Cにダウンロードした後、回帰カウンタ値を3から4に変更し、カウンタ値4をメモリに格納する。
【0107】
暗号化されたファームウェア(第3番目のファームウェア)または暗号化アルゴリズム(第3番目の暗号化アルゴリズム)を受け取ったマイクロプロセッサ27の中央処理部は、図23に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値3を選択する。プロセッサ27の中央処理部は、カウンタ値2に対応する第2鍵(Key2)とカウンタ値2とを一方向ハッシュ関数によってハッシュ化したハッシュ出力値を生成し、そのハッシュ出力値をカウンタ値3に対応する第3鍵(Key3)とする(鍵生成手段)。プロセッサ27の中央処理部が生成した第3鍵(Key3)は外部サーバ51の中央処理部が生成したそれと同一である。第3鍵(Key3)となるハッシュ出力値は、カウンタテーブルのカウンタ値3に対応する鍵格納エリア(K1,K2,K3)に書き込まれる。なお、図23のカウンタデーブルでは、回帰カウンタ値4〜20に対応する第4鍵〜第20鍵は生成されていない。
【0108】
マイクロプロセッサ27の中央処理部は、カウンタテーブルからカウンタ値3に対応する第3鍵を取り出し、第3鍵を使用し、トリプルDES(3−KeyトリプルDES)によって暗号化されたファームウェアや暗号化アルゴリズムを復号化して平文ファームウェア、平文アルゴリズムを取得する(ファームウェア復号化手段、アルゴリズム復号化手段)。プロセッサ27の中央処理部は、ファームウェアや暗号化アルゴリズムを復号化した後、それらをメモリに格納するとともに(ファームウェア記憶手段、アルゴリズム記憶手段)、回帰カウンタ値を3から4に変更し、カウンタ値4をメモリに格納する。
【0109】
このように、外部サーバ51の中央処理部とマイクロプロセッサ27の中央処理部とは、回帰カウンタ値1〜20を順番に使って互いに同期しつつ、一方向ハッシュ関数を使用して第2〜第n鍵を生成する。回帰カウンタ値が20を超えると、サーバ51の中央処理部とプロセッサ27の中央処理部とは、再びカウンタ値1を使用し、第21鍵〜第40鍵を順に生成する。サーバ51の中央処理部とプロセッサ27の中央処理部とは、第21鍵を生成すると、鍵格納エリアに格納された第1鍵を第21鍵に書き換え、第22鍵を生成すると、鍵格納エリアに格納された第2鍵を第22鍵に書き替える。
【0110】
この磁気カード読み取りシステム50は、相互認証手段を実行することで外部サーバ51の中央処理部とマイクロプロセッサ27の中央処理部とが互いの正当性を判断することができるから、偽サーバがセンサモジュール10A〜10Cに接続された場合や偽センサモジュールが外部サーバ51に接続された場合であっても、それを見破ることができる。このシステム50は、第3者が偽サーバを利用してセンサモジュール10A〜10Cにアクセスすることはできず、ファームウェアの改竄による第3者の磁気カードの不正利用を防ぐことができる。また、このシステム50は、第3者が偽センサモジュールを利用して外部サーバ51にアクセスすることはできず、サーバ51から偽センサモジュールに暗号化アルゴリズムがダウンロードされることはない。
【0111】
システム50は、外部サーバ51の中央処理部とマイクロプロセッサ27の中央処理部とが第2〜第n鍵を個別に生成するから、サーバ51からプロセッサ27へ鍵を送信する必要はなく、鍵の送信過程における鍵の不正な取得を防ぐことができる。システム50は、サーバ51の中央処理部が常に別の鍵を使用してファームウェアや暗号化アルゴリズムの暗号化を行い、プロセッサ27の中央処理部が常に別の鍵を使用してファームウェアや暗号化アルゴリズムの復号化を行うから、鍵を第3者に取得されたとしても、ファームウェアや暗号化アルゴリズムを復号化することはできない。また、第2〜第n鍵にハッシュ値を使用するから、たとえ鍵が第3者に不正に取得されたとしても、鍵の解読をすることはできず、第3者による鍵の使用を確実に防ぐことができる。
【0112】
システム50は、外部サーバ51の中央処理部とマイクロプロセッサ27の中央処理部とが同一かつ有限の回帰カウンタ値を使用して互いに同期しつつ、第2〜第n鍵を順に生成するから、サーバ15が生成する鍵とプロセッサ27が生成する鍵とを一致させることができ、生成した鍵の不一致による暗号データの復号不能を防ぐことができる。また、第2〜第n鍵となるハッシュ出力値に回帰カウンタ値をハッシュ化したハッシュ出力値が含まれるから、第3者がシステム50に不正に進入したとしても、ハッシュ化した回帰カウンタ値を解読することはできず、サーバ51の中央処理部とプロセッサ27の中央処理部とがどのカウンタ値を使用して同期しているかを判別することができない。
【0113】
システム50の稼働中に外部サーバ51の中央処理部とマイクロプロセッサ27の中央処理部との同期がずれると、サーバ51の中央処理部が生成した鍵とプロセッサ27の中央処理部が生成したそれとが異なり、サーバ51の中央処理部からダウンロードされた暗号データをプロセッサ27の中央処理部が復号化することができない。この場合、プロセッサ27の中央処理部は、生成した鍵による復号化が不可能であると判断し、復号化不能をサーバ51に送信するとともに(復号化不能情報送信手段)、サーバ51との再同期を要求する(再同期要求手段)。
【0114】
マイクロプロセッサ27の中央処理部は、カードリーダ52のコントローラに外部サーバ51へのアクセスを要求するとともに、メモリに格納されたデータ送受信用の鍵を使用し、トリプルDESによって復号化不能情報と再同期要求とを暗号化する。サーバ51とカードリーダ52とがインターネットを介して接続されると、プロセッサ27の中央処理部は、暗号化した復号化不能情報と再同期要求とをサーバ51に送信する。プロセッサ27の中央処理部と再同期要求を受け取ったサーバ51の中央処理部とは、それらの正当性を判断する外部認証と内部認証と(図15,16参照)を行う(相互認証手段)。サーバ51の中央処理部とプロセッサ27の中央処理部とは、相互認証による互いの認証結果を正当であると判断すると、回帰カウンタ値を1(初期値)に戻して再び同期を開始する。サーバ51の中央処理部とプロセッサ27の中央処理部とは、カウンタ値を1に戻すと、再び第1鍵を使用して暗号化および復号化を行う。
【0115】
システム50は、外部サーバ51とマイクロプロセッサ27とが生成した鍵に不一致が生じたとしても、サーバ51とプロセッサ27とが回帰カウンタ値を1に戻して再び同期することができるから、サーバ51が生成する鍵とプロセッサ27が生成する鍵とを再度一致させることができ、生成した鍵の不一致によるファームウェアや暗号化アルゴリズムの復号不能を防ぐことができる。なお、システム50が連続して稼働し、相互認証を日時単位や週単位、月単位で行う場合、サーバ51の中央処理部とプロセッサ27の中央処理部とは、相互認証による互いの認証結果を正当であると判断すると、回帰カウンタ値を1に戻して再び同期を開始する。以後の手順は、図18〜図23に基づいて説明したそれと同一である。
【0116】
一方向ハッシュ関数には、SHA−1(Secure Hash Algorithm 1)、MD2,MD4,MD5(Message Digest2,4,5)、RIPEMD−80、RIPEMD−128、RIPEMD−160、N−Hashのいずれかを使用する。それらハッシュ関数は、外部サーバ51のメモリとホストコンピュータ53のメモリとに格納されている。
【0117】
暗号化アルゴリズムとしては、DESの他に、RSA、AES(Advanced Encryption Standard)、IDEA(International Data Encryption Algorithm)、FEAL−N/NX(Fast Encryption Algorithm)、MULTI2(Multimedia Encryption2)、MISTY、SXAL(Substitution Xor
Algorithm)、MBAL(Multi Block Algorithm)、RC2、RC5、ENCRiP、SAFER(Secure And Fast Encryption Routine)、Blowfish、Skipjack、Khufu、Khafre、CAST、GOST28147−89のいずれかを使用することもできる。それらアルゴリズムは、外部サーバ51のメモリとホストコンピュータ53のメモリとに格納されている。
【0118】
このシステム50では、外部サーバ51とマイクロプロセッサ27とが図18〜図23に示す鍵の生成を行うことなく、サーバ51がプロセッサ27にファームウェアや暗号化アルゴリズムをダウンロードすることもできる。その一例を説明すると、以下のとおりである。外部サーバ51がカードリーダ52のURLを利用し、インターネットを介してカードリーダ52にアクセスする(アクセス手段)。または、カードリーダ52が外部サーバ51のURLを利用し、インターネットを介してサーバ51にアクセスする。サーバ51とカードリーダ52とがインターネットを介して接続されると、サーバ51の中央処理部とマイクロプロセッサ27の中央処理部とがコントローラを介して接続される。サーバ51の中央処理部とプロセッサ27の中央処理部とは、それらの正当性を判断する外部認証と内部認証と(図15,16参照)を行う(相互認証手段)。サーバ51の中央処理部とプロセッサ27の中央処理部とが相互認証による互いの認証結果を正当であると判断すると、サーバ51からファームウェアや暗号化アルゴリズムのセンサモジュール10A〜10Cへのダウンロードが可能となり、サーバ51とプロセッサ27との間でダウンロード処理が行われる。
【0119】
外部サーバ51の中央処理部は、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによってあらたなファームウェアや暗号化アルゴリズムを暗号化し(ファームウェア暗号化手段、アルゴリズム暗号化手段)、暗号化したファームウェアやアルゴリズムをセンサモジュール10A〜10Cにダウンロードする(ファームウェア第1ダウンロード手段、アルゴリズム第1ダウンロード手段)。サーバ51からダウンロードされたファームウェアや暗号化アルゴリズムは、カードリーダ52のコントローラのメモリに一時的に保管された後、センサモジュール10A〜10Cに出力される。
【0120】
マイクロプロセッサ27の中央処理部は、暗号化されたファームウェアや暗号化アルゴリズムをサーバ51から受け取ると、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって暗号化されたファームウェアやアルゴリズムを復号化して平文ファームウェア、平文アルゴリズムを取得する(ファームウェア復号化手段、アルゴリズム復号化手段)、復号化したファームウェアやアルゴリズムをメモリに格納する(ファームウェア記憶手段、アルゴリズム記憶手段)。
【0121】
外部サーバ51は、マイクロプロセッサ27が現在使用しているファームウェアや暗号化アルゴリズムの使用を中止させ、メモリに格納されたファームウェアや暗号化アルゴリズムの中からあらたなファームウェアやあらたなアルゴリズムを選択し、そのファームウェアやアルゴリズムを使用させることができる。サーバ51は、あらたなファームウェアやあらたな暗号化アルゴリズムをプロセッサ27に使用させる場合、プロセッサ27に既存のファームウェアや暗号化アルゴリズムの書き換えを指示する(更新指令)。なお、外部認証と内部認証と(図15,16参照)がすでに行われ、サーバ51とプロセッサ27とが相互認証による互いの認証結果を正当であると判断したものとする。
【0122】
外部サーバ51の中央処理部は、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって更新指令とあらたなファームウェアやあらたな暗号化アルゴリズムとを暗号化し(ファームウェア暗号化手段、アルゴリズム暗号化手段)、暗号化した更新指令やファームウェア、アルゴリズムをセンサモジュール10A〜10Cにダウンロードする(ファームウェア第2ダウンロード手段、アルゴリズム第2ダウンロード手段)。サーバ51からダウンロードされた更新指令やファームウェア、暗号化アルゴリズムは、カードリーダ52のコントローラのメモリに一時的に保管された後、センサモジュール10A〜10Cに出力される。
【0123】
マイクロプロセッサ27の中央処理部は、暗号化された更新指令やファームウェア、暗号化アルゴリズムを外部サーバ51から受け取ると、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって暗号化された更新指令とファームウェアやアルゴリズムとを復号化する(ファームウェア復号化手段、アルゴリズム復号化手段)。プロセッサ27の中央処理部は、メモリに格納された既存のファームウェアを復号化したあらたなファームウェアに書き換え(ファームウェア更新手段)、あらたなファームウェアをメモリに格納する。さらに、プロセッサ27の中央処理部は、メモリに格納された既存のアルゴリズムを復号化したあらたなアルゴリズムに書き換え(アルゴリズム更新手段)、あらたなアルゴリズムをメモリに格納する。プロセッサ27の中央処理部は、更新完了をサーバ51に通知する(更新完了通知)。プロセッサ27の中央処理部は、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって更新完了通知を暗号化し、暗号化した更新完了通知をサーバ51に送信する。
【0124】
外部サーバ51は、現在使用しているハッシュ関数の使用を中止し、メモリに格納されたハッシュ関数の中からあらたなハッシュ関数を選択し、そのハッシュ関数を使用することができる。ハッシュ関数の変更は、システム50を起動させる度毎に行う場合、日時単位や週単位、月単位で行う場合、同期がずれた後、再び同期するときに行う場合がある。サーバ51は、あらたなハッシュ関数を使用する場合、マイクロプロセッサ27に既存のハッシュ関数の書き換えを指示する(関数変更指令)。サーバ51の中央処理部は、カードリーダ52にアクセスする。サーバ51とカードリーダ52とがインターネットを介して接続されると、サーバ51の中央処理部とプロセッサ27の中央処理部とは、それらの正当性を判断する外部認証と内部認証と(図15,16参照)を行う(相互認証手段)。サーバ51の中央処理部とプロセッサ27の中央処理部とが相互認証による互いの認証結果を正当であると判断すると、サーバ51の中央処理部は、メモリに格納されたデータ送受信用の鍵を使用し、トリプルDESによって関数変更指令とあらたなハッシュ関数とを暗号化した後、暗号化した関数変更指令とハッシュ関数とをプロセッサ27に送信する。
【0125】
マイクロプロセッサ27の中央処理部は、関数変更指令とハッシュ関数とを受信すると、メモリに格納されたデータ送受信用の鍵を使用し、トリプルDESによって暗号化された関数変更指令とハッシュ関数とを復号化する。プロセッサ27の中央処理部は、メモリに格納した既存のハッシュ関数を復号化したあらたなハッシュ関数に変更した後、変更完了を外部サーバ51に通知する(変更完了通知手段)。プロセッサ27の中央処理部は、メモリに格納されたデータ送受信用の鍵を使用し、トリプルDESによって変更完了通知を暗号化し、暗号化した変更完了通知をサーバ51に送信する。このシステム50は、関数変更指令やハッシュ関数を暗号化してハッシュ関数の変更を行うから、使用するハッシュ関数を第3者に取得されることはなく、第3者によるハッシュ関数の解読を防ぐことができる。
【0126】
この磁気カード読み取りシステム50は、ファームウェアまたは暗号化アルゴリズムが外部サーバ51からセンサモジュール10A〜10Cにダウンロードされると、プロセッサ27がそのファームウェアや暗号化アルゴリズムをメモリに格納するから、センサモジュール10A〜10Cが市場に出荷された後やセンサモジュール10A〜10Cが磁気カードリーダ52に設置された後において、サーバ51からダウンロードされたファームウェアや暗号化アルゴリズムをプロセッサ27に随時格納することができる。
【0127】
システム50は、センサモジュール10A〜10Cの出荷後や設置後でも、各種のファームウェアに対応することができ、それらファームウェアを利用することで、センサモジュール10A〜10Cの動作環境に応じてプロセッサ27の演算・記憶機能や外部ハードウェアの最適な制御を行うことができる。このシステム50は、センサモジュール10A〜10Cの出荷後や設置後において、センサモジュール10A〜10Cを磁気カードの各種フォーマットに対応させることができ、磁気カードの各種仕様に適応しつつ、それらカードに記憶されたデータをセンサモジュール10A〜10Cに確実に読み取らせることができる。
【0128】
システム50は、センサモジュール10A〜10Cの出荷後や設置後でも、各種の暗号化アルゴリズムを利用することができ、それらアルゴリズムを利用してカードデータを暗号化することができる。このシステム50では、プロセッサ27がバージョンアップ前のファームウェアをバージョンアップ後のファームウェアに書き換えるから、センサモジュール10A〜10Cの出荷後や設置後において、ファームウェアのバージョンアップが行われたとしても、バージョンアップ後のファームウェアに即座に対応することができる。
【0129】
図24は、センサモジュール10A〜10Cとホストコンピュータ53との間で行われる処理の一例を示すブロック図である。このシステム50を起動させると、ホストコンピュータ53の中央処理部とマイクロプロセッサ27の中央処理部とは、メモリーテスト(S−50)とコードサイニング(S−51)とを行う(初期テスト)。初期テストが終了し、その結果が正しい場合、コンピュータ53の中央処理部とプロセッサ27の中央処理部とは、それらの正当性を判断する相互認証を行う(相互認証手段)。相互認証は、コンピュータ53がセンサモジュール10A〜10Cの正当性を認証する外部認証(S−52)を行った後、磁気ヘッド19がコンピュータ13の正当性を認証する内部認証(S−53)を行う。
【0130】
コンピュータ53の中央処理部とマイクロプロセッサ27の中央処理部とが相互認証による互いの認証結果を正当であると判断すると、磁気カードリーダ52における磁気カードの読み取りが可能となり、コンピュータ53とプロセッサ27との間でメイン処理(S−54)が行われる。逆に、コンピュータ53とプロセッサ27との少なくとも一方が認証結果を不可であると判断すると、カードリーダ52による磁気カードの読み取りができず、読み取り不能メッセージがコンピュータ53のディスプレイに表示される。相互認証は、システム50を起動させる度毎に行われる他、システム50を連続して稼働させる場合は日時単位や週単位、月単位で行われ、また、後記するように、コンピュータ53の中央処理部とプロセッサ27の中央処理部との同期が不一致になった場合にも行われる。
【0131】
図25は、外部認証の一例を示すラダー図であり、図26は、内部認証の一例を示すラダー図である。外部認証における認証手順は、以下のとおりである。ホストコンピュータ53の中央処理部がマイクロプロセッサ27の中央処理部に乱数(認証子)の生成と送信とを要求する(S−60)。プロセッサ27の中央処理部は、コンピュータ53の指令に従って64bit乱数を生成し、生成した乱数をコンピュータ53に送信する(S−61)。64bit乱数を取得したコンピュータ53の中央処理部は、メモリに格納された認証用の鍵を使用し、トリプルDESによって乱数を暗号化した後、暗号化した乱数をプロセッサ27に送信する(S−62)。
【0132】
マイクロプロセッサ27の中央処理部は、メモリに格納された認証用の鍵を使用し、トリプルDESによって暗号化された乱数を復号化する(S−63)。プロセッサ27の中央処理部は、それが生成した乱数と復号化した乱数とを比較し、両者が同一であれば認証結果を正当であると判断し、認証結果正当情報をコンピュータ53に送信する。一方、生成した乱数と復号化した乱数とが異なる場合、認証結果を不可であると判断し、認証結果不可情報と磁気カードの読み取り不可情報とをコンピュータ53に送信する。コンピュータ53は、マイクロプロセッサ27から外部認証結果を取得する(S−64)。
【0133】
内部認証における認証手順は、以下のとおりである。コンピュータ53の中央処理部は、64bit乱数(認証子)を生成し、それをマイクロプロセッサ27に送信する(S−65)。64bit乱数を取得したプロセッサ27の中央処理部は、メモリに格納された認証用の鍵を使用し、トリプルDESによって乱数を暗号化した後、暗号化した乱数をコンピュータ53に送信する(S−66)。コンピュータ53の中央処理部は、メモリに格納された認証用の鍵を使用し、トリプルDESによって暗号化された乱数を復号化する(S−67)。コンピュータ53の中央処理部は、それが生成した乱数と復号化した乱数とを比較し、両者が同一であれば認証結果を正当であると判断する。一方、生成した乱数と復号化した乱数とが異なる場合、認証結果を不可であると判断し、カードリーダ52における磁気カードの読み取りを不可とする。
【0134】
図27は、このシステム50におけるメイン処理の一例を示すラダー図である。図28〜図33は、暗号化および復号化に使用する鍵の生成の他の一例を説明する図である。相互認証の結果が正当であり、磁気カードの読み取りが可能となった後、カード所持者が磁気カードリーダ52のカード挿入口から磁気カードを挿入すると、モータが駆動してカードが案内レールを移動する。カードが挿入口を通過すると、光センサがそれを検出し、カード挿入信号が光センサから出力されてカードリーダ52のコントローラに入力される。コントローラは、カード挿入信号を受け取ると、センサモジュール10A〜10Cのマイクロプロセッサ27に、カードに記憶されたカードデータの読み取り開始指令を出力する。磁気カードがセンサモジュール10A〜10Cを通過するとともに排出口から排出されると、光センサがそれを検出し、カード通過信号が光センサから出力されてカードリーダ52のコントローラに入力される。カードリーダ52のコントローラは、カード通過信号を受け取ると、センサモジュール10A〜10Cのプロセッサ27にカードデータの読み取り停止指令を出力するとともに、モータの駆動を停止する。
【0135】
磁気カードの磁化された磁性層が磁気ヘッド12のコアの先端部(コアのギャップ)を通過すると、コア内に磁束が発生し、磁束と鎖交する方向へ誘導起電力が生じてコイルに電流が流れる。コイルに流れる電流は、その値が磁束の変化にともなって変わる。磁気カードの磁性層に記憶されたカードデータは、コイルによってアナログ信号として取り出され、アナログ信号が磁気ヘッド12からA/D変換チップ26に入力される。A/D変換チップ26は、磁気ヘッド12から入力されたアナログ信号をデジタル信号に変換する。デジタル信号は、A/D変換チップ26からマイクロプロセッサ27に入力され、プロセッサ27のメモリに格納される。
【0136】
システム50の稼働中、ホストコンピュータ53の中央処理部は、マイクロプロセッサ27のメモリに処理すべきカードデータが存在するかを所定間隔でプロセッサ27に問い合わせる(データ確認指令)。コンピュータ53の中央処理部は、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによってデータ確認指令を暗号化し、暗号化したデータ確認指令をプロセッサ27に送信する(S−68)。なお、所定間隔は、秒単位またはミリ秒単位であることが好ましい。
【0137】
マイクロプロセッサ27の中央処理部は、データ確認指令を受信すると、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって暗号化されたデータ確認指令を復号化する。プロセッサ27の中央処理部は、コンピュータ53からのデータ確認指令に従ってメモリを検索し、磁気カードのカードデータがデジタル信号としてメモリに格納されている場合、データ保有をコンピュータ53に返答し(データ保有情報)、カードデータがメモリにない場合、データ非保有をコンピュータ53に返答する(データ非保有情報)。プロセッサ27は、情報送受信用の鍵を使用し、トリプルDESによってデータ保有情報やデータ非保有情報を暗号化し、暗号化したデータ保有情報やデータ非保有情報をコンピュータ53に送信する(S−69)。
【0138】
ホストコンピュータ53の中央処理部は、データ保有情報やデータ非保有情報を受信すると、情報送受信用の鍵を使用し、トリプルDESによってデータ保有情報やデータ非保有情報を復号化する。コンピュータ53の中央処理部は、データ非保有情報を受信すると、暗号化したデータ確認指令を所定の間隔で再びマイクロプロセッサ27に送信し、メモリに処理すべきカードデータが存在するかをプロセッサ27に問い合わせる(データ確認指令)。コンピュータ53の中央処理部は、データ保有情報を受信すると、プロセッサ27のメモリに格納されたカードデータの送信をプロセッサ27に要求する(データ送信指令)。コンピュータ53の中央処理部は、情報送受信用の鍵を使用し、トリプルDESによってデータ送信指令を暗号化し、暗号化したデータ送信指令をプロセッサ27に送信する(S−70)。プロセッサ27の中央処理部は、データ送信指令を受信すると、情報送受信用の鍵を使用し、トリプルDESによって暗号化されたデータ送信指令を復号化する。
【0139】
マイクロプロセッサ27の中央処理部は、メモリからデジタル信号(カードデータ)と暗号用の鍵とを取り出し、その鍵を使用してデジタル信号を暗号化して暗号データとする(データ暗号化手段)(S−71)。プロセッサ27の中央処理部は、暗号データをホストコンピュータ53に送信する(暗号データ送信手段)。コンピュータ53は、暗号データを増幅する増幅回路(図示せず)を有し、メモリから復号用の鍵を取り出し、その鍵を使用して増幅回路で増幅した暗号データを復号化する(データ復号化手段)(S−72)。
【0140】
コンピュータ53は、復号化したデジタル信号(平文カードデータ)を文字情報としてディスプレイに表示することができ(データ出力手段)、復号化したデジタル信号(平文カードデータ)を印字情報としてプリンタに印字させることができる(データ出力手段)。コンピュータ53は、暗号化されたデジタル信号または復号化されたデジタル信号をメモリに格納する(データ記憶手段)。コンピュータ53は、暗号データを復号化すると、暗号化したデータ確認指令を所定の間隔で再びプロセッサ27に送信し、メモリに処理すべきカードデータが存在するかをプロセッサ27に問い合わせる(データ確認指令)。
【0141】
コンピュータ53の中央処置部とマイクロプロセッサ27の中央処理部とは、暗号化されたデジタル信号がコンピュータ53に入力される度毎に、コンピュータ53のメモリとプロセッサ27のメモリとにあらかじめ格納された同一かつ有限の回帰カウンタ値を使用して互いに同期しつつ、デジタル信号の暗号化と復号化とに必要な同一のあらたな第2〜第n鍵を順に生成する(鍵生成手段)。コンピュータ53の中央処置部とプロセッサ27の中央処理部とが行う鍵生成手順の一例を、図28〜図33に基づいて説明すると、以下のとおりである。なお、回帰カウンタ値は1〜20とする。ただし、回帰カウンタ値に特に限定はなく、カウンタ値を21以上とすることもできる。
【0142】
システム50を起動した後、第1番目のデジタル信号(カードデータ)がA/D変換チップ26からマイクロプロセッサ27に入力され、デジタル信号をメモリに格納した後、データ送信指令を受信すると、プロセッサ27の中央処理部は、図28に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値1を選択し、デジタル信号にカウンタ値1を添付する。カウンタテーブルには、カウンタ値(1〜20)の格納エリアとそれに対応する3つの鍵の格納エリア(K1,K2,K3)とが作られている。ただし、図28のカウンタデーブルでは、回帰カウンタ値2〜20に対応する第2鍵〜第20鍵は生成されていない。なお、カウンタ値1に対応する第1鍵(Key1)は、初期値としてシステム50の導入時に設定される。
【0143】
マイクロプロセッサ27の中央処理部は、カウンタテーブルからカウンタ値1に対応する第1鍵を取り出し、第1鍵を使用し、トリプルDES(3−KeyトリプルDES)によってデジタル信号とカウンタ値1とを暗号化して暗号データとし(データ暗号化手段)、暗号データをコンピュータ53に送信する(データ送信手段)。プロセッサ27の中央処理部は、暗号データをコンピュータ53に送信した後、回帰カウンタ値を1から2に変更し、カウンタ値2をメモリに格納するとともに、第1番目のデジタル信号(カードデータ)をメモリから消去する。
【0144】
第1番目の暗号データを受信したホストコンピュータ53の中央処理部は、図29に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値1を選択する。カウンタテーブルには、カウンタ値(1〜20)の格納エリアとそれに対応する3つの鍵の格納エリア(K1,K2,K3)とが作られている。ただし、図29のカウンタデーブルでは、回帰カウンタ値2〜20に対応する第2鍵〜第20鍵は生成されていない。なお、カウンタ値1に対応する第1鍵(Key1)は、マイクロプロセッサ27のメモリに格納された第1鍵と同一であり、初期値としてシステム50の導入時に設定される。コンピュータ53の中央処理部は、カウンタテーブルからカウンタ値1に対応する第1鍵を取り出し、第1鍵を使用し、トリプルDES(3−KeyトリプルDES)によって暗号データを復号化してデジタル信号(平文カードデータ)を取得する。コンピュータ53の中央処理部は、暗号データを復号化した後、回帰カウンタ値を1から2に変更し、カウンタ値2をメモリに格納する。
【0145】
第2番目のデジタル信号(カードデータ)がA/D変換チップ26からマイクロプロセッサ27に入力され、デジタル信号をメモリに格納した後、データ送信指令を受信すると、プロセッサ27の中央処理部は、図30に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値2を選択し、デジタル信号にカウンタ値2を添付する。プロセッサ27の中央処理部は、カウンタ値1に対応する第1鍵(初期値)とカウンタ値1とを一方向ハッシュ関数によってハッシュ化したハッシュ出力値を生成し、そのハッシュ出力値をカウンタ値2に対応する第2鍵(Key2)とする(鍵生成手段)。第2鍵(Key2)となるハッシュ出力値は、カウンタテーブルのカウンタ値2に対応する鍵格納エリア(K1,K2,K3)に書き込まれる。なお、図30のカウンタデーブルでは、回帰カウンタ値3〜20に対応する第3鍵〜第20鍵は生成されていない。
【0146】
マイクロプロセッサ27の中央処理部は、カウンタテーブルからカウンタ値2に対応する第2鍵を取り出し、第2鍵を使用し、トリプルDES(3−KeyトリプルDES)によってデジタル信号を暗号化(カウンタ値2を含む)して暗号データとし(データ暗号化手段)、暗号データをコンピュータ53に送信する。プロセッサ27の中央処理部は、暗号データをコンピュータ53に送信した後、回帰カウンタ値を2から3に変更し、カウンタ値3をメモリに格納するとともに、第2番目のデジタル信号(カードデータ)をメモリから消去する。
【0147】
第2番目の暗号データを受信したコンピュータ53は、図31に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値2を選択する。コンピュータ53の中央処理部は、カウンタ値1に対応する第1鍵(初期値)とカウンタ値1とを一方向ハッシュ関数によってハッシュ化したハッシュ出力値を生成し、そのハッシュ出力値をカウンタ値2に対応する第2鍵(Key2)とする(鍵生成手段)。コンピュータ53の中央処理部が使用するハッシュ関数はマイクロプロセッサ27の中央処理部が使用するそれと同一であり、生成した第2鍵(Key2)はプロセッサ27の中央処理部が生成したそれと同一である。第2鍵(Key2)となるハッシュ出力値は、カウンタテーブルのカウンタ値2に対応する鍵格納エリア(K1,K2,K3)に書き込まれる。なお、図31のカウンタデーブルでは、回帰カウンタ値3〜20に対応する第3鍵〜第20鍵は生成されていない。
【0148】
コンピュータ53の中央処理部は、カウンタテーブルからカウンタ値2に対応する第2鍵を取り出し、第2鍵を使用し、トリプルDES(3−KeyトリプルDES)によって暗号データを復号化してデジタル信号(平文カードデータ)を取得する。コンピュータ53の中央処理部は、暗号データを復号化した後、回帰カウンタ値を2から3に変更し、カウンタ値3をメモリに格納する。
【0149】
第3番目のデジタル信号(カードデータ)がA/D変換チップ26からマイクロプロセッサ27に入力され、デジタル信号をメモリに格納した後、データ送信指令を受信すると、プロセッサ27の中央処理部は、図32に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値3を選択し、デジタル信号にカウンタ値3を添付する。プロセッサ27の中央処理部は、カウンタ値2に対応する第2鍵(Key2、ハッシュ値)とカウンタ値2とを一方向ハッシュ関数によってハッシュ化したハッシュ出力値を生成し、そのハッシュ出力値をカウンタ値3に対応する第3鍵(Key3)とする(鍵生成手段)。第3鍵(Key3)となるハッシュ出力値は、カウンタテーブルのカウンタ値3に対応する鍵格納エリア(K1,K2,K3)に書き込まれる。なお、図32のカウンタデーブルでは、回帰カウンタ値4〜20に対応する第4鍵〜第20鍵は生成されていない。
【0150】
マイクロプロセッサ27の中央処理部は、カウンタテーブルからカウンタ値3に対応する第3鍵を取り出し、第3鍵を使用し、トリプルDES(3−KeyトリプルDES)によってデジタル信号を暗号化(カウンタ値3を含む)して暗号データとし(暗号化手段)、暗号データをコンピュータ53に送信する。プロセッサ27の中央処理部は、暗号データをコンピュータ53に送信した後、回帰カウンタ値を3から4に変更し、カウンタ値4をメモリに格納するとともに、第3番目のデジタル信号(カードデータ)をメモリから消去する。
【0151】
第3番目の暗号データを受信したホストコンピュータ53の中央処理部は、図33に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値3を選択する。コンピュータ53の中央処理部は、カウンタ値2に対応する第2鍵(Key2)とカウンタ値2とを一方向ハッシュ関数によってハッシュ化したハッシュ出力値を生成し、そのハッシュ出力値をカウンタ値3に対応する第3鍵(Key3)とする(鍵生成手段)。コンピュータ53の中央処理部が生成した第3鍵(Key3)は、マイクロプロセッサ27の中央処理部が生成したそれと同一である。第3鍵(Key3)となるハッシュ出力値は、カウンタテーブルのカウンタ値3に対応する鍵格納エリア(K1,K2,K3)に書き込まれる。なお、図33のカウンタデーブルでは、回帰カウンタ値4〜20に対応する第4鍵〜第20鍵は生成されていない。
【0152】
コンピュータ53の中央処理部は、カウンタテーブルからカウンタ値3に対応する第3鍵を取り出し、第3鍵を使用し、トリプルDES(3−KeyトリプルDES)によって暗号データを復号化してデジタル信号(平文カードデータ)を取得する。コンピュータ53の中央処理部は、暗号データを復号化した後、回帰カウンタ値を3から4に変更し、カウンタ値4をメモリに格納する。
【0153】
このように、ホストコンピュータ53の中央処理部とマイクロプロセッサ27の中央処理部とは、回帰カウンタ値1〜20を順番に使って互いに同期しつつ、一方向ハッシュ関数を使用して第2〜第n鍵を生成する。回帰カウンタ値が20を超えると、コンピュータ53の中央処理部とプロセッサ27の中央処理部とは、再びカウンタ値1を使用し、第21鍵〜第40鍵を順に生成する。コンピュータ53の中央処理部とプロセッサ27の中央処理部とは、第21鍵を生成すると、鍵格納エリアに格納された第1鍵を第21鍵に書き換え、第22鍵を生成すると、鍵格納エリアに格納された第2鍵を第22鍵に書き替える。
【0154】
この磁気カード読み取りシステム50は、相互認証手段を実行することでホストコンピュータ53の中央処理部とマイクロプロセッサ27の中央処理部とが互いの正当性を判断することができるから、偽コンピュータがセンサモジュール10A〜10Cに接続された場合や偽センサモジュールがコンピュータ53に接続された場合であっても、それを見破ることができる。システム50は、第3者が偽コンピュータや偽センサモジュールを利用してシステム50に進入することはできず、磁気カードのカードデータ、ハッシュ関数、鍵の盗取を防ぐことができる。
【0155】
このシステム50は、コンピュータ53の中央処理部とプロセッサ27の中央処理部とが認証手段による認証結果が正当であると判断した後に、プロセッサ27の中央処理部がデータ暗号化手段とデータ送信手段とを実行し、コンピュータ53の中央処理部が復号化手段を実行するから、認証を行わずにそれら手段を実行する場合と比較し、磁気カードに格納されたカードデータの盗取を確実に防ぐことができ、第3者による磁気カードの不正な複製や第3者による「なりすまし」を確実に防ぐことができる。
【0156】
このシステム50は、ホストコンピュータ53の中央処理部とマイクロプロセッサ27の中央処理部とが第2〜第n鍵を個別に生成するから、コンピュータ53からプロセッサ27へ鍵を送信する必要はなく、鍵の送信過程における鍵の不正な取得を防ぐことができる。システム50は、プロセッサ27の中央処理部が常に別の鍵を使用して暗号化を行い、コンピュータ53の中央処理部が常に別の鍵を使用して復号化を行うから、鍵を第3者に取得されたとしても、磁気カードに格納されたカードデータを復号化することはできない。また、第2〜第n鍵にハッシュ値を使用するから、たとえ鍵が第3者に不正に取得されたとしても、鍵の解読をすることはできず、第3者による鍵の使用を確実に防ぐことができる。
【0157】
このシステム50は、ホストコンピュータ53の中央処理部とマイクロプロセッサ27の中央処理部とが同一かつ有限の回帰カウンタ値を使用して互いに同期しつつ、第2〜第n鍵を順に生成するから、コンピュータ53が生成する鍵とプロセッサ27が生成する鍵とを一致させることができ、生成した鍵の不一致による暗号データの復号不能を防ぐことができる。また、第2〜第n鍵となるハッシュ出力値に回帰カウンタ値をハッシュ化したハッシュ出力値が含まれるから、第3者がシステム50に不正に進入したとしても、ハッシュ化した回帰カウンタ値を解読することはできず、コンピュータ53の中央処理部とプロセッサ27の中央処理部とがどのカウンタ値を使用して同期しているかを判別することができない。
【0158】
システム50の稼働中にホストコンピュータ53の中央処理部とマイクロプロセッサ27の中央処理部との同期がずれると、コンピュータ53の中央処理部が生成した鍵とプロセッサ27の中央処理部が生成したそれとが異なり、プロセッサ27の中央処理部から送信された暗号データをコンピュータ53の中央処理部が復号化することができない。この場合、コンピュータ53の中央処理部は、生成した鍵による復号化が不可能であると判断し、復号化不能を通知するとともに(復号化不能情報)再同期を要求する(再同期要求)。コンピュータ53の中央処理部は、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって復号化不能情報と再同期要求とを暗号化し、暗号化した復号化不能情報と再同期要求とをプロセッサ27に送信する。
【0159】
コンピュータ53の中央処理部と再同期要求を受け取ったプロセッサ27の中央処理部とは、それらの正当性を判断する外部認証と内部認証(図15,16参照)とを行う(相互認証手段)。コンピュータ53の中央処理部とプロセッサ27の中央処理部とは、相互認証による互いの認証結果を正当であると判断すると、回帰カウンタ値を1(初期値)に戻して再び同期を開始する。コンピュータ53の中央処理部とプロセッサ27の中央処理部とは、カウンタ値を1に戻すと、再び第1鍵を使用して暗号化および復号化を行う。
【0160】
システム50は、生成した鍵に不一致が生じたとしても、ホストコンピュータ53とマイクロプロセッサ27とが回帰カウンタ値を1に戻して再び同期することができるから、コンピュータ53が生成する鍵とプロセッサ27が生成する鍵とを再度一致させることができ、生成した鍵の不一致によるカードデータの復号不能を防ぐことができる。なお、システム50が連続して稼働し、相互認証を日単位や週単位、月単位で行う場合、コンピュータ53の中央処理部とプロセッサ27の中央処理部とは、相互認証による互いの認証結果を正当であると判断すると、回帰カウンタ値を1に戻して再び同期を開始する。以後の手順は、図28〜図33に基づいて説明したそれと同一である。
【0161】
ホストコンピュータ53は、現在使用しているハッシュ関数の使用を中止し、メモリに格納されたハッシュ関数の中からあらたなハッシュ関数を選択し、そのハッシュ関数を使用することができる。ハッシュ関数の変更は、システム50を起動させる度毎に行う場合、日単位や週単位、月単位で行う場合、同期がずれた後、再び同期するときに行う場合がある。コンピュータ53は、あらたなハッシュ関数を使用する場合、マイクロプロセッサ27に既存のハッシュ関数の書き換えを指示する(関数変更指令)。コンピュータ53の中央処理部は、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって関数変更指令とあらたなハッシュ関数とを暗号化し、暗号化した関数変更指令とハッシュ関数とをプロセッサ27に送信する。
【0162】
マイクロプロセッサ27の中央処理部は、関数変更指令とハッシュ関数とを受信すると、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって暗号化された関数変更指令とハッシュ関数とを復号化する。プロセッサ27の中央処理部は、メモリに格納した既存のハッシュ関数を復号化したあらたなハッシュ関数に変更した後、変更完了をコンピュータ53に通知する(変更完了通知)。プロセッサ27の中央処理部は、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって変更完了通知を暗号化し、暗号化した変更完了通知をコンピュータ53に送信する。このシステム50は、関数変更指令やハッシュ関数を暗号化してハッシュ関数の変更を行うから、使用するハッシュ関数を第3者に取得されることはなく、第3者によるハッシュ関数の解読を防ぐことができる。
【0163】
ホストコンピュータ53は、現在使用している暗号化アルゴリズムの使用を中止し、メモリに格納された暗号化アルゴリズムの中からあらたなアルゴリズムを選択し、そのアルゴリズムを使用することができる。暗号化アルゴリズムの変更は、システム50を起動させる度毎に行う場合、日単位や週単位、月単位で行う場合、同期がずれた後、再び同期するときに行う場合がある。コンピュータ53は、あらたな暗号化アルゴリズムを使用する場合、マイクロプロセッサ27に既存のアルゴリズムの書き換えを指示する(関数変更指令)。コンピュータ53の中央処理部は、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって関数変更指令とあらたな暗号化アルゴリズムとを暗号化し、暗号化した関数変更指令とアルゴリズムとをプロセッサ27に送信する。
【0164】
マイクロプロセッサ27の中央処理部は、関数変更指令と暗号化アルゴリズムとを受信すると、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって暗号化された関数変更指令とアルゴリズムとを復号化する。プロセッサ27の中央処理部は、メモリに格納した既存のアルゴリズムを復号化したあらたなアルゴリズムに変更した後、変更完了をコンピュータ53に通知する(変更完了通知)。プロセッサ27の中央処理部は、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって変更完了通知を暗号化し、暗号化した変更完了通知をコンピュータ53に送信する。このシステム50は、関数変更指令や暗号化アルゴリズムを暗号化してアルゴリズムの変更を行うから、使用するアルゴリズムを第3者に取得されることはない。
【0165】
このシステム50おける磁気カードリーダには、挿入電動型の他に、センサモジュール10A〜10Cを取り付けた手動ハンディカードリーダを使用することもできる。また、磁気カードリーダをPOSシステムに接続することもできる。磁気カードリーダがPOSシステムに接続された場合、カードリーダにコントローラを設置する必要はなく、外部サーバ51との接続はPOSシステムに内蔵されたコンピュータによって行われる。ファームウェアや暗号化アルゴリズムは、外部サーバからPOSシステムのコンピュータのメモリにダウンロードされて一時保管された後、カードリーダの磁気ヘッドのマイクロプロセッサ27に出力される。
【符号の説明】
【0166】
10A センサモジュール
10B センサモジュール
10C センサモジュール
11 ハウジング
12 磁気ヘッド(センサ素子)
13 可撓性基板
14 信号処理装置
17 前端部
19 接続端子設置領域
20 電子部品設置領域
21 A/D変換チップ設置領域
22 マイクロプロセッサ設置領域(デジタルIC設置領域)
24 接続端子
25 抵抗素子(電子部品)
26 A/D変換チップ
27 マイクロプロセッサ(デジタルIC)
28 エポキシ樹脂(固化物質)
29 第1折曲線
30 第2折曲線
31 第3折曲線
32 第4折曲線
【技術分野】
【0001】
本発明は、センサモジュールおよびその製造方法に関する。
【背景技術】
【0002】
ドーム状のレンズ部とその下端から下方に延出する筒状のケース部とを備えたレンズ一体ケースと、ケース部に収容された取付板と、ケース部に収容されて取付板の下方に配置された回路基板と、取付板の上面に固定されたセンサと、ケース部の下端開口を塞ぐ下板とから形成されたセンサモジュールがある(特許文献1参照)。このセンサモジュールでは、センサから下方に延びる複数の端子が取付板と回路基板と下板とを貫通し、下板から下方へ突出している。センサは、その端子の回路基板に対する貫通部において回路基板に接続されている。回路基板は、センサから出力されたアナログ信号を増幅しつつデジタル信号に変換する。このセンサモジュールは、レンズ一体ケース内に取付板に固定されたセンサや回路基板が積層状態で収容されており、ケース部の下端開口が下板に被覆されているから、レンズ一体ケース内にそれらを納めることができ、センサモジュールの小型化を図ることができる。
【先行技術文献】
【特許文献】
【0003】
特開2002−131446号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
前記公報に開示のセンサモジュールは、それに取り付けられた回路基板においてセンサから出力されたアナログ信号を増幅しつつデジタル信号に変換するが、そのデジタル信号を暗号化することはできない。したがって、センサモジュールから出力されたデジタル信号を第三者が盗取し、そのデジタル信号からデータが第三者に取得されてしまう場合がある。また、取付板や回路基板がレンズ一体ケース内に露出しているから、レンズ一体ケースから回路基板を取り出し、それにデータを盗取するための回路を設置することができ、データの安全性を確保することができない。
【0005】
本発明の目的は、センサから出力された各種データが第三者に盗取されることはなく、データの安全性を確保することができるセンサモジュールおよびそのセンサモジュールの製造方法を提供することにある。
【課題を解決するための手段】
【0006】
前記課題を解決するための本発明に係るセンサモジュールは、一方向へ延びる可撓性基板と、可撓性基板の前端部に設置された信号処理装置と、測定対象からの測定量をアナログ信号に変換するセンサ素子とを備え、信号処理装置が、センサ素子に接続されてセンサ素子から出力されたアナログ信号を受信する接続端子と、接続端子に接続されて接続端子がセンサ素子から受信したアナログ信号をデジタル信号に変換するA/D変換チップと、A/D変換チップに接続されてA/D変換チップから出力されたデジタル信号を暗号化するデジタルICとを含み、接続端子とA/D変換チップとデジタルICとを取り付けた可撓性基板の前端部が一方向へ向かって少なくとも2つに折り畳まれた状態で所定容積のハウジングの内部に収容され、接続端子とA/D変換チップとデジタルICとが可撓性基板の前端部とともにハウジングの内部に充填された固化物質によってハウジングに固定されていることにある。
【0007】
本発明に係るセンサモジュールの一例としては、接続端子とA/D変換チップとデジタルICとが一方向へ並んだ状態で可撓性基板の前端部に設置され、可撓性基板の前端部が接続端子とA/D変換チップとの間で折曲されているとともに、A/D変換チップとデジタルICとの間で折曲されている。
【0008】
本発明に係るセンサモジュールの他の一例としては、可撓性基板の前端部のうちの接続端子を設置する部分が一方向へ並ぶ接続端子設置領域と電子部品設置領域とに区分され、接続端子設置領域と電子部品設置領域とに間で一方向へ向かって折曲されている。
【0009】
本発明に係るセンサモジュールの他の一例としては、センサ素子がコイルとコアとを有して所定のデータを記憶した磁気カードからデータを読み取る磁気ヘッドである。
【0010】
本発明に係るセンサモジュールの製造方法は、一方向へ延びる可撓性基板と、可撓性基板の前端部に設置された信号処理装置と、所定容積のハウジングと、測定対象からの測定量をアナログ信号に変換するセンサ素子とから作られるセンサモジュールの製造方法であり、信号処理装置が、センサ素子に接続されてセンサ素子から出力されたアナログ信号を受信する接続端子と、接続端子に接続されて接続端子がセンサ素子から受信したアナログ信号をデジタル信号に変換するA/D変換チップと、A/D変換チップに接続されてA/D変換チップから出力されたデジタル信号を暗号化するデジタルICとを含み、可撓性基板の前端部に接続端子とA/D変換チップとデジタルICとを設置する設置工程と、可撓性基板の前端部を一方向へ向かって少なくとも2つに折り畳む折曲工程と、折り畳んだ可撓性基板の前端部を接続端子とA/D変換チップとデジタルICとともにハウジングの内部に収容する収容工程と、ハウジング内部に固化物質を充填し、固化物質によって接続端子とA/D変換チップとデジタルICとを可撓性基板の前端部とともにハウジングの内部に固定する固定工程とを有する。
【0011】
本発明に係るセンサモジュールの製造方法の一例として、設置工程では、接続端子とA/D変換チップとデジタルICとが一方向へ並んだ状態で可撓性基板の前端部に設置され、折曲工程では、可撓性基板の前端部が接続端子とA/D変換チップとの間で折曲されるとともに、A/D変換チップとデジタルICとの間で折曲される。
【0012】
本発明に係るセンサモジュールの製造方法の他の一例として、折曲工程では、可撓性基板の前端部のうちの接続端子を設置する部分が一方向へ並ぶ接続端子設置領域と電子部品設置領域とに区分され、接続端子設置領域と電子部品設置領域とに間で一方向へ向かって折曲されている。
【0013】
本発明に係るセンサモジュールの製造方法の他の一例としては、センサ素子がコイルとコアとを有して所定のデータを記憶した磁気カードからデータを読み取る磁気ヘッドである。
【発明の効果】
【0014】
本発明に係るセンサモジュールによれば、それを構成する信号処理装置がデジタル信号を暗号化するデジタルICを含み、デジタルICがハウジング内に固定されているから、モジュール自身においてセンサから出力された各種データの暗号化を行うことができる。センサモジュールは、センサから出力された各種データがデジタルICによって暗号化され、暗号化された信号がセンサモジュールから外部に出力されるから、第三者が暗号化されたデータを盗取したとしても、そのデータを復号化しなければデータの内容を把握することができず、データの安全性を確保することができる。センサモジュールは、接続端子とA/D変換チップとデジタルICとを取り付けた可撓性基板の前端部が一方向へ向かって少なくとも2つに折り畳まれた状態でハウジングの内部に収容され、接続端子とA/D変換チップとデジタルICとが可撓性基板の前端部とともにハウジングの内部に充填された固化物質によってハウジングに固定されているから、接続端子とA/D変換チップとデジタルICとをハウジングの内部に一体に固定することができ、暗号化を行うデジタルICを含むモジュールの小型化を実現することができる。このセンサモジュールは、可撓性基板の前端部をハウジングから取り出すときに固化物質を取り除かなければならず、固化物質を取り除く際に、基板のみならず、接続端子やA/D変換チップ、デジタルICが破壊されるから、基板にデータ盗取用回路を設置して再び組み立てることはできず、基板に対するデータ盗取用回路の設置を防ぐことができ、データの安全性を確実に確保することができる。
【0015】
可撓性基板の前端部が接続端子とA/D変換チップとの間で折曲されているとともに、A/D変換チップとデジタルICとの間で折曲されているセンサモジュールは、可撓性基板の前端部が一方向へ向かって3つに折り畳まれた状態でハウジングの内部に収容され、接続端子とA/D変換チップとデジタルICとが可撓性基板の前端部とともにハウジングの内部に充填された固化物質によってハウジングに固定されているから、接続端子とA/D変換チップとデジタルICとをハウジングの内部に一方向に重ね合わせて一体に固定することができ、暗号化を行うデジタルICを含むモジュールの小型化を実現することができる。センサモジュールは、デジタルICをハウジング内に固定することで、モジュール自身においてセンサから出力された各種データの暗号化を行うことができ、センサから出力された各種データの安全性を確保することができる。このセンサモジュールは、接続端子とA/D変換チップとデジタルICとが一方向へ並んだ状態で基板の前端部に設置されるから、前端部の両面に接続端子やA/D変換チップ、デジタルICを設置する場合と比較し、前端部の一方の面にそれらを並べて設置することができ、前端部にそれらを容易に設置することができる。
【0016】
可撓性基板の前端部のうちの接続端子を設置する部分が接続端子設置領域と電子部品設置領域とに区分され、接続端子設置領域と電子部品設置領域とに間で一方向へ向かって折曲されているセンサモジュールは、可撓性基板の前端部が一方向へ向かって4つに折り畳まれた状態でハウジングの内部に収容され、接続端子と電子部品とA/D変換チップとデジタルICとが可撓性基板の前端部とともにハウジングの内部に充填された固化物質によってハウジングに固定されているから、接続端子と電子部品とA/D変換チップとデジタルICとをハウジングの内部に一方向に重ね合わせて一体に固定することができ、暗号化を行うデジタルICを含むモジュールの小型化を実現することができる。センサモジュールは、デジタルICをハウジング内に固定することで、モジュール自身においてセンサから出力された各種データの暗号化を行うことができ、センサから出力された各種データの安全性を確保することができる。このセンサモジュールは、接続端子と電子部品とA/D変換チップとデジタルICとが一方向へ並んだ状態で基板の前端部に設置されるから、前端部の両面に接続端子や電子部品、A/D変換チップ、デジタルICを設置する場合と比較し、前端部の一方の面にそれらを並べて設置することができ、前端部にそれらを容易に設置することができる。
【0017】
センサ素子がコイルとコアとを有して所定のデータを記憶した磁気カードからそのデータを読み取る磁気ヘッドであるセンサモジュールは、磁気カードから読み取った各種データがデジタルICによって暗号化され、暗号化された信号がセンサモジュールから外部に出力されるから、暗号化された磁気カードのデータを盗取した第三者がそのデータを復号化しなければ、磁気カードのデータの内容を把握することができず、データの安全性を確保することができる。このセンサモジュールは、第三者による磁気カードのデータの不正な取得を確実に防ぐことができ、第三者による磁気カードの不正な複製や第三者による「なりすまし」を確実に防ぐことができる。
【0018】
本発明に係るセンサモジュールの製造方法によれば、接続端子とA/D変換チップとデジタルICとを取り付けた可撓性基板の前端部が一方向へ向かって少なくとも2つに折り畳まれた状態でハウジングの内部に収容され、接続端子とA/D変換チップとデジタルICとが可撓性基板の前端部とともにハウジングの内部に充填された固化物質によってハウジングに固定されるから、接続端子とA/D変換チップとデジタルICとをハウジングの内部に一体に固定することができ、暗号化を行うデジタルICを含む小型のセンサモジュールを作ることができる。センサモジュールの製造方法は、デジタルICがハウジング内に固定されるから、自身においてセンサから出力された各種データを暗号化することができ、センサから出力された各種データの安全性を確保可能なセンサモジュールを製造することができる。
【0019】
設置工程において接続端子とA/D変換チップとデジタルICとが一方向へ並んだ状態で可撓性基板の前端部に設置され、折曲工程において可撓性基板の前端部が接続端子とA/D変換チップとの間で折曲され、A/D変換チップとデジタルICとの間で折曲されるセンサモジュールの製造方法は、可撓性基板の前端部が一方向へ向かって3つに折り畳まれた状態でハウジングの内部に収容され、接続端子とA/D変換チップとデジタルICとが可撓性基板の前端部とともにハウジングの内部に充填された固化物質によってハウジングに固定されるから、接続端子とA/D変換チップとデジタルICとをハウジングの内部に一方向に重ね合わせて一体に固定することができ、暗号化を行うデジタルICを含む小型のセンサモジュールを作ることができる。センサモジュールの製造方法は、デジタルICがハウジング内に固定されるから、自身においてセンサから出力された各種データを暗号化することができ、センサから出力された各種データの安全性を確保可能なセンサモジュールを製造することができる。このセンサモジュールの製造方法は、接続端子とA/D変換チップとデジタルICとが一方向へ並んだ状態で基板の前端部に設置されるから、前端部の両面に接続端子やA/D変換チップ、デジタルICを設置する場合と比較し、前端部の一方の面にそれらを並べて設置することができ、前端部にそれらを容易に設置することができる。
【0020】
折曲工程において可撓性基板の前端部のうちの接続端子を設置する部分が一方向へ並ぶ接続端子設置領域と電子部品設置領域とに区分され、接続端子設置領域と電子部品設置領域との間で一方向へ向かって折曲されるセンサモジュールの製造方法は、可撓性基板の前端部が一方向へ向かって4つに折り畳まれた状態でハウジングの内部に収容され、接続端子と電子部品とA/D変換チップとデジタルICとが可撓性基板の前端部とともにハウジングの内部に充填された固化物質によってハウジングに固定されるから、接続端子と電子部品とA/D変換チップとデジタルICとをハウジングの内部に一方向に重ね合わせて一体に固定することができ、暗号化を行うデジタルICを含む小型のセンサモジュールを作ることができる。センサモジュールの製造方法は、デジタルICがハウジング内に固定されるから、自身においてセンサから出力された各種データを暗号化することができ、センサから出力された各種データの安全性を確保可能なセンサモジュールを製造することができる。このセンサモジュールの製造方法は、接続端子と電子部品とA/D変換チップとデジタルICとが一方向へ並んだ状態で基板の前端部に設置されるから、前端部の両面に接続端子や電子部品、A/D変換チップ、デジタルICを設置する場合と比較し、前端部の一方の面にそれらを並べて設置することができ、前端部にそれらを容易に設置することができる。
【0021】
センサ素子がコイルとコアとを有して所定のデータを記憶した磁気カードからそのデータを読み取る磁気ヘッドであるセンサモジュールの製造方法は、接続端子とA/D変換チップとデジタルICとを取り付けた可撓性基板の前端部が一方向へ向かって少なくとも2つに折り畳まれた状態で磁気ヘッドを設置するハウジングに収容され、接続端子とA/D変換チップとデジタルICとが可撓性基板の前端部とともにハウジングの内部に充填された固化物質によってハウジングに固定されるから、自身において磁気ヘッドから出力された各種データを暗号化することができ、磁気カードの各種データの安全性を確実に確保することが可能なセンサモジュールを作ることができる。
【図面の簡単な説明】
【0022】
【図1】一例として示すセンサモジュールの斜視図。
【図2】一例として示す可撓性基板の平面図。
【図3】信号処理装置を設置した可撓性基板の平面図。
【図4】折り曲げた状態で示す可撓性基板の斜視図。
【図5】ハウジングおよび可撓性基板の斜視図。
【図6】ハウジングにエポキシ樹脂を充填中のセンサモジュールの斜視図。
【図7】図1とは異なる態様のセンサモジュールの斜視図。
【図8】可撓性基板の平面図。
【図9】可撓性基板の平面図。
【図10】図1,7とは異なる態様のセンサモジュールの斜視図。
【図11】可撓性基板の平面図。
【図12】可撓性基板の平面図。
【図13】センサモジュールを利用した一例として示す磁気カード読み取りシステムのハードウェア構成図。
【図14】外部サーバと磁気ヘッドとの間で行われる処理の一例を示すブロック図。
【図15】外部認証の一例を示すラダー図。
【図16】内部認証の一例を示すラダー図。
【図17】外部サーバとマイクロプロセッサとの間におけるダウンロード処理の一例を示すラダー図。
【図18】暗号化および復号化に使用する鍵の生成の一例を説明する図。
【図19】暗号化および復号化に使用する鍵の生成の一例を説明する図。
【図20】暗号化および復号化に使用する鍵の生成の一例を説明する図。
【図21】暗号化および復号化に使用する鍵の生成の一例を説明する図。
【図22】暗号化および復号化に使用する鍵の生成の一例を説明する図。
【図23】暗号化および復号化に使用する鍵の生成の一例を説明する図。
【図24】磁気ヘッドとホストコンピュータとの間で行われる処理の一例を示すブロック図。
【図25】外部認証の一例を示すラダー図。
【図26】内部認証の一例を示すラダー図。
【図27】システムにおけるメイン処理の一例を示すラダー図。
【図28】暗号化および復号化に使用する鍵の生成の他の一例を説明する図。
【図29】暗号化および復号化に使用する鍵の生成の他の一例を説明する図。
【図30】暗号化および復号化に使用する鍵の生成の他の一例を説明する図。
【図31】暗号化および復号化に使用する鍵の生成の他の一例を説明する図。
【図32】暗号化および復号化に使用する鍵の生成の他の一例を説明する図。
【図33】暗号化および復号化に使用する鍵の生成の他の一例を説明する図。
【発明を実施するための形態】
【0023】
添付の図面を参照し、本発明に係るセンサモジュールおよびその製造方法の詳細を説明すると、以下のとおりである。図1は、一例として示すセンサモジュール10Aの斜視図であり、図2は、一例として示す可撓性基板13の平面図である。図3は、信号処理装置14を設置した可撓性基板13の平面図であり、図4は、折り曲げた状態で示す可撓性基板13の斜視図である。図5は、ハウジング11および可撓性基板13の斜視図であり、図6は、ハウジング11の内部にエポキシ樹脂28(固化物質)を充填中のセンサモジュール10Aの斜視図である。図1,2では、縦方向を矢印Aで示し、横方向を矢印Bで示す。
【0024】
なお、センサ素子として磁気ヘッド12を例としてセンサモジュール10Aを説明するが、センサ素子に特に限定はなく、他のあらゆるセンサ素子を使用することができる。それらセンサ素子には、ストレインゲージ、加速度センサ、レゾルバ、熱電対、白金線センサ、サーミスタ、半導体温度センサ、サーモグラフィー、セラミックスセンサ、高分子膜センサ、感圧導電性ゴム、感圧半導体、感圧フィルム、力角センサ、CdSセル、フォトダイオード、光電管、焦電センサ、CCDセンサ、PSDセンサ、マイクロホン、超音波センサ、半導体ガスセンサ、イオン電極センサ、ホール素子等がある。
【0025】
センサモジュール10Aは、所定容積のハウジング11および磁気ヘッド12(センサ素子)と、縦方向(一方向)へ延びる可撓性基板13(フレキシブルプリント基板)と、信号処理装置14とから構成されている。ハウジング11は、金属または合成樹脂から作られ、その内部が中空に成形されている。ハウジング11は、上端開口15と下端開口16とを有する。磁気ヘッド12は、磁気カード(測定対象)の磁性層に記憶された各種データ(測定量)を電気信号(アナログ信号)に変換する。磁気ヘッド12は、図1に示すように、その外周面がハウジング11に包被され、その一部分がハウジング11の下端開口16から露出している。磁気ヘッド12は、図示はしていないが、磁気カードに記憶された各種データをアナログ信号(電気信号)に変換するコイルと、そのコイルが取り付けられたコアとを有する。
【0026】
可撓性基板13は、前端部17と、前端部17から縦方向へ延出する後端部18とを有する。可撓性基板13では、前端部17がハウジング11の内部に収容され、後端部18がハウジング11の上端開口15から露出している。可撓性基板13は、図示はしていないが、12μm〜50μmの厚み寸法を有するフィルム状絶縁体と、フィルム状絶縁体の上に形成された接着層と、12μm〜50μmの厚み寸法を有して接着層の上に形成された導体箔とから作られている。可撓性基板13は、優れた柔軟性を有し、折り畳み等自由に変形させることができ、変形後もその電気的特性を維持する。絶縁体には、ポリイミド膜やフォトソルダーレジスロ膜が使用され、導体箔には、銅が使用される。導体箔は、前端部17から後端部18に向かって縦方向へ延び、それら端部17,18に取り付けられている。
【0027】
可撓性基板13の前端部17は、接続端子設置領域19(第1部分)、電子部品設置領域20(第2部分)、A/D変換チップ設置領域21(第3部分)、マイクロプロセッサ設置領域22(デジタルIC設置領域)(第4部分)に区分されている。それら領域19〜22は、前端部17の前端23から後端部18に向かって接続端子設置領域19→電子部品設置領域20→A/D変換チップ設置領域21→マイクロプロセッサ設置領域22の順で縦方向へ並んでいる。
【0028】
信号処理装置14は、可撓性基板13の前端部17に取り付けられている。信号処理装置14は、磁気ヘッド12から出力されたアナログ信号を受信する接続端子24と、アナログ信号のインピーダンスを調節する抵抗素子25(電子部品)と、アナログ信号をデジタル信号に変換するA/D変換チップ26と、A/D変換チップ26から出力されたデジタル信号を暗号化するマイクロプロセッサ27(デジタルIC)とから形成されている。可撓性基板13の前端部17では、その前端23から後端部18に向かって接続端子24→抵抗素子25→A/D変換チップ26→マイクロプロセッサ27の順で縦方向へ並んでいる。
【0029】
接続端子24は、接続端子設置領域19に設置され、磁気ヘッド12に接続されている。抵抗素子25は、電子部品設置領域20に設置され、接続端子24に接続されている。A/D変換チップ26は、A/D変換チップ設置領域21に設置され、抵抗素子25に接続されている。マイクロプロセッサ27は、マイクロプロセッサ設置領域22に設置され、A/D変換チップ26に接続されている。
【0030】
マイクロプロセッサ27は、中央処理部とメモリ(フラッシュメモリやEEROM)とを有する。プロセッサ27の中央処理部は、演算ユニットおよび制御ユニットから形成されている。なお、マイクロプロセッサ27に代えて、ゲートアレイやフィールドプログラマブルゲートアレイ、専用ハードウェアのうちのいずれかのデジタルICを使用することもできる。
【0031】
このセンサモジュール10Aでは、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とを取り付けた可撓性基板13の前端部17が縦一方向へ向かって4つに折り畳まれた状態でハウジング11の内部に収容されている。具体的に可撓性基板13の前端部17は、接続端子設置領域19と電子部品設置領域20との間において縦方向へ向かって折曲され、電子部品設置領域20とA/D変換チップ設置領域21との間において縦方向へ向かって折曲されている。さらに、A/D変換チップ設置領域21とマイクロプロセッサ設置領域22との間において縦方向へ向かって折曲され、マイクロプロセッサ設置領域22と後端部18との間において縦方向へ向かって折曲されている。センサモジュール10Aでは、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが可撓性基板13の前端部17とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されている。
【0032】
センサモジュール10Aは、可撓性基板13の前端部17が縦方向へ向かって4つに折り畳まれた状態でハウジング11の内部に収容され、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが可撓性基板13の前端部17とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されているから、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とをハウジング11の内部に縦方向に重ね合わせて一体に固定することができ、暗号化を行うマイクロプロセッサ27を含むモジュール10Aの小型化を実現することができる。センサモジュール10Aは、マイクロプロセッサ27をハウジング11内に固定することで、モジュール10A自身において磁気ヘッド12から出力された各種データの暗号化を行うことができ、磁気ヘッド12から出力された各種データの安全性を確保することができる。
【0033】
このセンサモジュール10Aの製造方法の一例を説明すると、以下のとおりである。なお、ハウジング11には、既に磁気ヘッド12が設置されているものとする。センサモジュール10Aの製造方法は、設置工程、折曲工程、収容工程、固定工程を有する。それら各工程は、設置工程→折曲工程→収容工程→固定工程の順で実施される。設置工程では、図3に示すように、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とを縦方向へ並べた状態で可撓性基板13の前端部17の一方の面に取り付ける。
【0034】
設置工程では、接続端子24が接続端子設置領域19に設置され、抵抗素子25が電子部品設置領域20に設置され、導体箔を介して接続端子24に接続される。A/D変換チップ26がA/D変換チップ設置領域21に設置され、導体箔を介して抵抗素子25に接続され、マイクロプロセッサ27がマイクロプロセッサ設置領域22に設置され、導体箔を介してA/D変換チップ26に接続される。それらの取り付け順番に特に限定はないが、それらが取り付けられた状態では、既述のようにそれらが前端部17の前端23から後端部18に向かって接続端子24→抵抗素子25→A/D変換チップ26→マイクロプロセッサ27の順で並ぶ。
【0035】
折曲工程では、図4に示すように、可撓性基板13の前端部17が縦方向に向かって4つに折り畳まれる。折曲工程において可撓性基板13の前端部17は、接続端子設置領域19と電子部品設置領域20との間において横方向へ延びる第1折曲線29を介して縦方向へ折曲され、電子部品設置領域20とA/D変換チップ設置領域21との間において横方向へ延びる第2折曲線30を介して縦方向へ折曲される。さらに、A/D変換チップ設置領域21とマイクロプロセッサ設置領域22との間において横方向へ延びる第3折曲線31を介して縦方向へ折曲され、マイクロプロセッサ設置領域22と後端部18の間において横方向へ延びる第4折曲線32を介して縦方向へ折曲される。折り畳まれた前端部13では、接続端子設置領域19と電子部品設置領域20とが対向し、A/D変換チップ設置領域21とマイクロプロセッサ設置領域22とが対向する。
【0036】
収容工程では、図5に示すように、4つに折り畳んだ可撓性基板13の前端部17をハウジング11の上端開口15からハウジング11の内部に収容する。前端部17がハウジング11に収容されると、ハウジング11の内部において接続端子23が磁気ヘッド12に当接し、接続端子23と磁気ヘッド12とが接続される。可撓性基板13の後端部18は、ハウジング11の外側に露出する。固定工程では、図6に示すように、ハウジング11の内部にエポキシ樹脂28を充填し、エポキシ樹脂28によって接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とを可撓性基板13の前端部17とともにハウジング11の内部に固定する。
【0037】
センサモジュール10Aの製造方法は、可撓性基板13の前端部17が縦方向へ向かって4つに折り畳まれた状態でハウジング11の内部に収容され、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが可撓性基板13の前端部17とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されるから、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とをハウジング11の内部に縦方向に重ね合わせて一体に固定することができ、暗号化を行うマイクロプロセッサ27を含む小型のセンサモジュール10Aを作ることができる。
【0038】
製造方法は、マイクロプロセッサ27がハウジング11内に固定されるから、自身において磁気ヘッド12から出力された各種データを暗号化することができ、磁気ヘッド12から出力された各種データの安全性を確保可能なセンサモジュール10Aを製造することができる。この製造方法は、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが縦方向へ並んだ状態で可撓性基板13の前端部17に設置されるから、前端部17の両面に接続端子24や抵抗素子25、A/D変換チップ26、マイクロプロセッサ27を設置する場合と比較し、前端部17の一方の面にそれらを並べて設置することができ、前端部17にそれらを容易に設置することができる。
【0039】
図7は、図1とは異なる態様のセンサモジュール10Bの斜視図であり、図8,9は、可撓性基板13の平面図である。図7では、エポキシ樹脂28の図示を省略している。図8は、可撓性基板13の一方の面を示し、図9は、可撓性基板13の他方の面を示す。このセンサモジュール10Bは、所定容積のハウジング11および磁気ヘッド12と、縦方向(一方向)へ延びる可撓性基板13(フレキシブルプリント基板)と、可撓性基板13の前端部17に設置された信号処理装置14とから構成されている。ハウジング11や磁気ヘッド12、可撓性基板13は図1のそれらと同一である。
【0040】
可撓性基板13の前端部17は、その前端23から後端部18に向かって第1部分〜第3部分33〜35に3等分されている。第1部分33は、接続端子設置領域19と電子部品設置領域20とを兼ねている。第1部分33では、接続端子設置領域19が部分33の他方の面に形成され、電子部品設置領域20が部分33の一方の面に形成されている。第2部分34は、A/D変換チップ設置領域21となる。A/D変換チップ設置領域21は、第2部分34の一方の面に形成されている。第3部分35は、マイクロプロセッサ設置領域22(デジタルIC設置領域)となる。マイクロプロセッサ設置領域22は、第3部分35の一方の面に形成されている。それら領域19〜22は、前端部17の前端23から後端部18に向かって接続端子設置領域19および電子部品設置領域20→A/D変換チップ設置領域21→マイクロプロセッサ設置領域22の順で縦方向へ並んでいる。
【0041】
信号処理装置14は、磁気ヘッド12から出力されたアナログ信号を受信する接続端子24と、アナログ信号のインピーダンスを調節する抵抗素子25(電子部品)と、アナログ信号をデジタル信号に変換するA/D変換チップ26と、A/D変換チップ26から出力されたデジタル信号を暗号化するマイクロプロセッサ27(デジタルIC)とから形成されている。可撓性基板13の前端部17では、その前端23から後端部18に向かって接続端子24および抵抗素子25→A/D変換チップ26→マイクロプロセッサ27の順で縦方向へ並んでいる。接続端子24は、接続端子設置領域19に設置され、磁気ヘッド12に接続されている。抵抗素子25は、電子部品設置領域20に設置され、接続端子24に接続されている。A/D変換チップ26は、A/D変換チップ設置領域21に設置され、抵抗素子25に接続されている。マイクロプロセッサ27は、マイクロプロセッサ設置領域22に設置され、A/D変換チップ26に接続されている。
【0042】
このセンサモジュール10Bでは、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とを取り付けた可撓性基板13の前端部17が縦方向へ向かって3つに折り畳まれた状態でハウジング11の内部に収容されている。具体的に可撓性基板13の前端部17は、第1部分33と第2部分34との間において縦方向へ向かって折曲され、第2部分34と第3部分35との間において縦方向へ向かって折曲され、さらに、第3部分35と後端部18との間において縦方向へ向かって折曲されている。センサモジュール10Bでは、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが可撓性基板13の前端部17とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されている。
【0043】
センサモジュール10Bは、可撓性基板13の前端部17が縦方向へ向かって3つに折り畳まれた状態でハウジング11の内部に収容され、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが可撓性基板13の前端部17とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されているから、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とをハウジング11の内部に縦方向に重ね合わせて一体に固定することができ、暗号化を行うマイクロプロセッサ27を含むモジュール10Bの小型化を実現することができる。センサモジュール10Bは、マイクロプロセッサ27をハウジング11内に固定することで、モジュール10A自身において磁気ヘッド12から出力された各種データの暗号化を行うことができ、磁気ヘッド12から出力された各種データの安全性を確保することができる。
【0044】
このセンサモジュール10Bの製造方法の一例を説明すると、以下のとおりである。なお、ハウジング11には、既に磁気ヘッド12が設置されているものとする。センサモジュール10Bの製造方法は、センサモジュール10Aのそれと同様に、設置工程、折曲工程、収容工程、固定工程を有する。
【0045】
設置工程では、接続端子24が第1部分33の他方の面に形成された接続端子設置領域19に設置され、抵抗素子25が第1部分33の一方の面に形成された電子部品設置領域20に設置され、導体箔を介して接続端子24に接続される。A/D変換チップ26が第2部分34の一方の面に形成されたA/D変換チップ設置領域21に設置され、導体箔を介して抵抗素子25に接続され、マイクロプロセッサ27が第3部分35の一方の面に形成されたマイクロプロセッサ設置領域22に設置され、導体箔を介してA/D変換チップ26に接続される。
【0046】
折曲工程では、可撓性基板13の前端部17が縦方向に向かって3つに折り畳まれる。折曲工程において可撓性基板13の前端部17は、第1部分33と第2部分32との間において横方向へ延びる第1折曲線29を介して縦方向へ折曲され、第2部分34と第3部分35との間において横方向へ延びる第2折曲線30を介して縦方向へ折曲される。さらに、第3部分35と後端部18との間において横方向へ延びる第3折曲線31を介して縦方向へ折曲される。折り畳まれた前端部13では、電子部品設置領域20とA/D変換チップ設置領域21とが対向する。
【0047】
収容工程では、3つに折り畳んだ可撓性基板13の前端部17をハウジング11の上部開口15からハウジング11の内部に収容する。前端部17がハウジング11に収容されると、ハウジング11の内部において接続端子23が磁気ヘッド12に当接し、接続端子23と磁気ヘッド12とが接続される。可撓性基板13の後端部18は、ハウジング11の外側に露出する。固定工程では、ハウジング11の内部にエポキシ樹脂28を充填し、エポキシ樹脂28によって接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とを可撓性基板13の前端部17とともにハウジング11の内部に固定する。
【0048】
センサモジュール10Bの製造方法は、可撓性基板13の前端部17が縦方向へ向かって3つに折り畳まれた状態でハウジング11の内部に収容され、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが可撓性基板13の前端部17とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されるから、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とをハウジング11の内部に縦方向に重ね合わせて一体に固定することができ、暗号化を行うマイクロプロセッサ27を含む小型のセンサモジュール10Bを作ることができる。この製造方法は、マイクロプロセッサ27がハウジング11内に固定されるから、自身において磁気ヘッド12から出力された各種データを暗号化することができ、磁気ヘッド12から出力された各種データの安全性を確保可能なセンサモジュール10Bを製造することができる。
【0049】
このセンサモジュール10Bでは、抵抗素子25を省くこともできる。この場合、第1部分33の一方の面に接続端子設置領域19が形成され、第2部分34の一方の面にA/D変換チップ設置領域21が形成され、第3部分35の一方の面にマイクロプロセッサ設置領域22(デジタルIC設置領域)が形成される。それら領域19,21,22は、前端部17の前端23から後端部18に向かって接続端子設置領域19→A/D変換チップ設置領域21→マイクロプロセッサ設置領域22の順で縦方向へ並ぶ。
【0050】
図10は、図1,7とは異なる態様のセンサモジュール10Cの斜視図であり、図11,12は、可撓性基板13の平面図である。図10では、エポキシ樹脂28の図示を省略している。図11は、可撓性基板13の一方の面を示し、図12は、可撓性基板13の他方の面を示す。このセンサモジュール10Cは、所定容積のハウジング11および磁気ヘッド12と、縦方向(一方向)へ延びる可撓性基板13(フレキシブルプリント基板)と、可撓性基板13の前端部17に設置された信号処理装置14とから構成されている。ハウジング11や磁気ヘッド12、可撓性基板13は図1のそれらと同一である。
【0051】
可撓性基板13の前端部17は、その前端23から後端部18に向かって第1部分33〜第2部分34に2等分されている。第1部分33は、接続端子設置領域19と電子部品設置領域20とを兼ねている。第1部分33では、接続端子設置領域19が部分33の一方の面に形成され、電子部品設置領域20が部分33の他方の面に形成されている。第2部分34は、A/D変換チップ設置領域21とマイクロプロセッサ設置領域22(デジタルIC設置領域)とを兼ねている。第2部分34では、A/D変換チップ設置領域21が部分34の他方の面に形成され、マイクロプロセッサ設置領域22が部分34の一方の面に形成されている。それら領域19〜22は、前端部17の前端23から後端部18に向かって接続端子設置領域19および電子部品設置領域20→A/D変換チップ設置領域21およびマイクロプロセッサ設置領域22の順で縦方向へ並んでいる。
【0052】
信号処理装置14は、磁気ヘッド12から出力されたアナログ信号を受信する接続端子24と、アナログ信号のインピーダンスを調節する抵抗素子25(電子部品)と、アナログ信号をデジタル信号に変換するA/D変換チップ26と、A/D変換チップ26から出力されたデジタル信号を暗号化するマイクロプロセッサ27(デジタルIC)とから形成されている。可撓性基板13の前端部17では、その前端23から後端部18に向かって接続端子24および抵抗素子25→A/D変換チップ26およびマイクロプロセッサ27の順で縦方向へ並んでいる。
【0053】
接続端子24は、接続端子設置領域19に設置され、磁気ヘッド12に接続されている。抵抗素子25は、電子部品設置領域20に設置され、接続端子24に接続されている。A/D変換チップ26は、A/D変換チップ設置領域21に設置され、抵抗素子25に接続されている。マイクロプロセッサ27は、マイクロプロセッサ設置領域22に設置され、A/D変換チップ26に接続されている。
【0054】
このセンサモジュール10Cでは、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とを取り付けた可撓性基板13の前端部17が縦方向へ向かって2つに折り畳まれた状態でハウジング11の内部に収容されている。具体的に可撓性基板13の前端部17は、第1部分33と第2部分34との間において縦方向へ向かって折曲され、第2部分34と後端部18との間において縦方向へ向かって折曲されている。センサモジュール10Cでは、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが可撓性基板13の前端部17とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されている。
【0055】
センサモジュール10Cは、可撓性基板13の前端部17が縦方向へ向かって2つに折り畳まれた状態でハウジング11の内部に収容され、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが可撓性基板13の前端部17とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されているから、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とをハウジング11の内部に縦方向に重ね合わせて一体に固定することができ、暗号化を行うマイクロプロセッサ27を含むモジュール10Cの小型化を実現することができる。センサモジュール10Cは、マイクロプロセッサ27をハウジング11内に固定することで、モジュール10A自身において磁気ヘッド12から出力された各種データの暗号化を行うことができ、磁気ヘッド12から出力された各種データの安全性を確保することができる。
【0056】
このセンサモジュール10Cの製造方法の一例を説明すると、以下のとおりである。なお、ハウジング11には、既に磁気ヘッド12が設置されているものとする。センサモジュール10Cの製造方法は、センサモジュール10Aのそれと同様に、設置工程、折曲工程、収容工程、固定工程を有する。
【0057】
設置工程では、接続端子24が第1部分33の一方の面に形成された接続端子設置領域19に設置され、抵抗素子25が第1部分33の他方の面に形成された電子部品設置領域20に設置され、導体箔を介して接続端子24に接続される。A/D変換チップ26が第2部分34の他方の面に形成されたA/D変換チップ設置領域21に設置され、導体箔を介して抵抗素子25に接続され、マイクロプロセッサ27が第2部分34の一方の面に形成されたマイクロプロセッサ設置領域22に設置され、導体箔を介してA/D変換チップ26に接続される。
【0058】
折曲工程では、可撓性基板13の前端部17が縦方向に向かって2つに折り畳まれる。折曲工程において可撓性基板13の前端部17は、第1部分33と第2部分34との間において横方向へ延びる第1折曲線29を介して縦方向へ折曲され、第2部分34と後端部18との間において横方向へ延びる第2折曲線30を介して縦方向へ折曲される。折り畳まれた前端部13では、電子部品設置領域20とA/D変換チップ設置領域21とが対向する。
【0059】
収容工程では、2つに折り畳んだ可撓性基板13の前端部17をハウジング11の内部に収容する。前端部17がハウジング11に収容されると、ハウジング11の内部において接続端子23が磁気ヘッド12に当接し、接続端子23と磁気ヘッド12とが接続される。可撓性基板13の後端部18は、ハウジング11の外側に露出する。固定工程では、ハウジング11の内部にエポキシ樹脂28を充填し、エポキシ樹脂28によって接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とを可撓性基板13の前端部17とともにハウジング11の内部に固定する。
【0060】
センサモジュール10Cの製造方法は、可撓性基板13の前端部17が縦方向へ向かって2つに折り畳まれた状態でハウジング11の内部に収容され、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とが可撓性基板13の前端部17とともにハウジング11の内部に充填されたエポキシ樹脂28によってハウジング11に固定されるから、接続端子24と抵抗素子25とA/D変換チップ26とマイクロプロセッサ27とをハウジング11の内部に縦方向に重ね合わせて一体に固定することができ、暗号化を行うマイクロプロセッサ27を含む小型のセンサモジュール10Cを作ることができる。この製造方法は、マイクロプロセッサ27がハウジング11内に固定されるから、自身において磁気ヘッド12から出力された各種データを暗号化することができ、磁気ヘッド12から出力された各種データの安全性を確保可能なセンサモジュール10Cを製造することができる。
【0061】
このセンサモジュール10Cでは、抵抗素子25を省くこともできる。この場合、第1部分33の一方の面に接続端子設置領域19が形成され、第2部分34の一方の面にマイクロプロセッサ設置領域22が形成され、第2部分34の一方の面にA/D変換チップ設置領域21が形成される。それら領域19,21,22は、前端部17の前端23から後端部18に向かって接続端子設置領域19→A/D変換チップ設置領域21およびマイクロプロセッサ設置領域22の順で縦方向へ並ぶ。
【0062】
図13は、センサモジュール10A〜10Cのいずれかを利用した一例として示す磁気カード読み取りシステム50のハードウェア構成図である。磁気カード読み取りシステム50は、外部サーバ51と、磁気カードに記憶されたカードデータ(各種データ)を読み取る磁気カードリーダ52と、ホストコンピュータ53とから形成されている。システム50では、サーバ51とカードリーダ52とがインターフェイス(有線または無線)を介して接続され、カードリーダ52とコンピュータ53とがインターフェイス(有線または無線)を介して接続されている。
【0063】
カードデータには、カード番号や暗証番号、ユーザID、パスワード、カード所持者の個人情報(郵便番号、住所または居所、氏名または名称、生年月日、家族構成、年収、勤務会社、電話番号、ファクシミリ番号、メールアドレス、URL等)、カード所持者の法人情報(郵便番号、住所、名称、設立年月日、各種の経営情報、取引先情報、電話番号、ファクシミリ番号、メールアドレス、URL等)、商取引内容等が含まれる。
【0064】
外部サーバ51は、中央処理部(CPUまたはMPU)とメモリ(大容量ハードディスク)とを有するコンピュータであり、DNSサーバ機能を備えている。メモリには、カードリーダ52のURLが格納されている。サーバ51の中央処理部は、演算ユニットおよび制御ユニットから形成されている。サーバ51には、キーボードやマウス等の入力装置54、ディスプレイやプリンタ等の出力装置55がインターフェイスを介して接続されている。サーバ51の中央処理部は、オペレーティングシステムによる制御に基づいて、メモリに格納されたアプリケーションを起動し、起動したアプリケーションに従って以下の各手段を実行する。
【0065】
外部サーバ51の中央処理部は、メモリに格納された鍵を使用して所定のファームウェアを暗号化するファームウェア暗号化手段を実行し、メモリに格納された鍵を使用して所定の暗号化アルゴリズムを暗号化するアルゴリズム暗号化手段を実行する。サーバ51の中央処理部は、インターネットを介してカードリーダ52の後記するコントローラにアクセスするアクセス手段を実行し、センサモジュール10A〜10Cとの間で相互に認証を行う相互認証手段を実行する。
【0066】
外部サーバ51の中央処理部は、暗号化していないファームウェアまたは暗号化した後のファームウェアをセンサモジュール10A〜10Cにダウンロードするファームウェア第1ダウンロード手段を実行し、暗号化していないあらたなファームウェア(バージョンアップファームウェア)または暗号化した後のあらたなファームウェア(バージョンアップファームウェア)をセンサモジュール10A〜10Cにダウンロードするファームウェア第2ダウンロード手段を実行する。サーバ51の中央処理部は、暗号化していない暗号化アルゴリズムまたは暗号化した後の暗号化アルゴリズムをセンサモジュール10A〜10Cにダウンロードするアルゴリズム第1ダウンロード手段を実行し、暗号化していないあらたな暗号化アルゴリズムまたは暗号化した後のあらたな暗号化アルゴリズムをセンサモジュール10A〜10Cにダウンロードするアルゴリズム第2ダウンロード手段を実行する。
【0067】
ファームウェアとは、センサモジュール10A〜10Cのマイクロプロセッサ27の演算・記憶機能を制御するとともにプロセッサ27につながる外部ハードウェアを制御するアプリケーションである。ファームウェアには、磁気カードの各種フォーマットに対応させてセンサモジュール10A〜10Cのプロセッサ27にカードの各種データを読み取らせるデータ読み取り制御が含まれる。さらに、所定の暗号化アルゴリズムに基づいてセンサモジュール10A〜10Cのプロセッサ27にカードデータ(デジタル信号)を暗号化させるデータ暗号化制御が含まれる。ファームウェアは、それを利用することで、センサモジュール10A〜10Cの動作環境に応じたプロセッサ27の演算・記憶機能の最適な制御を行うことができるとともに、プロセッサ27につながる外部ハードウェアの最適な制御を行うことができる。
【0068】
磁気カードリーダ52は、挿入電動型であり、コントローラ(図示せず)が内蔵されている。カードリーダ52は、図示はしていないが、前端に形成されたカード挿入口と、後端に形成されたカード排出口と、カード挿入口からカード排出口につながるカード案内レールとを有する。カードリーダ52の中央には、センサモジュール10A〜10Cが取り付けられている。挿入口や排出口、センサモジュール10A〜10Cの近傍には、案内レールを移動する磁気カードの位置を検出するための光センサが取り付けられている。
【0069】
挿入口から磁気カードを挿入すると、カードが案内レールを自動的に移動して排出口から排出される。案内レールにおけるカードの移動は、カードリーダ52内に取り付けられたベルトによって行われる。ベルトの駆動は、カードリーダ52内に設置されたモータによって行われる。センサモジュール10A〜10Cや各センサ、モータは、カードリーダ52のコントローラに接続されている。
【0070】
カードリーダ52のコントローラは、中央処理部(CPUまたはMPU)とメモリ(大容量ハードディスク)とを有するコンピュータである。メモリには、外部サーバ51のURLが格納されている。コントローラの中央処理部は、演算ユニットおよび制御ユニットから形成されている。コントローラは、DNSサーバ(図示せず)とホストコンピュータ53とに接続されている。コントローラは、インターネットを介して外部サーバ51にアクセス可能である。コントローラは、スイッチのON/OFFによってモータの駆動や停止を行うとともに、カードデータの読み取り開始指令やカードデータの読み取り停止指令をセンサモジュール10A〜10Cに出力する。
【0071】
センサモジュール10A〜10Cは、インターフェイスを介してホストコンピュータ13に接続されている。カードリーダ52内に設置されたセンサモジュール10A〜10Cでは、磁気ヘッド19を構成するコアの先端部が案内レールに対向している。磁気カードは、図示はしていないが、その下面から、カラー印刷層、ベース層、磁性層、遮蔽層、印字層の順で並んでいる。磁性層は強磁性体から作られ、ベース層はポリエチレン・テレフタレートから作られている。
【0072】
マイクロプロセッサ27の中央処理部は、オペレーティングシステムによる制御に基づいて、メモリに格納されたアプリケーションを起動し、起動したアプリケーションに従って以下の各手段を実行する。プロセッサ27の中央処理部は、外部サーバ51またはホストコンピュータ53との間で相互に認証を行う相互認証手段を実行する。プロセッサ27の中央処理部は、暗号化していないファームウェアが外部サーバ11からセンサモジュール10A〜10Cにダウンロードされると、そのファームウェアをメモリに格納するファームウェア記憶手段を実行する。
【0073】
マイクロプロセッサ27の中央処理部は、暗号化されたファームウェアがサーバ51からセンサモジュール10A〜10Cにダウンロードされると、メモリに格納された鍵を使用して暗号化されたファームウェアを復号化するファームウェア復号化手段を実行し、復号化したファームウェアをメモリに格納するファームウェア記憶手段を実行する。プロセッサ27の中央処理部は、バージョンアップされたあらたなファームウェアがサーバ51からセンサモジュール10A〜10Cにダウンロードされると、バージョンアップ前のファームウェアをバージョンアップ後のファームウェアに書き換えるファームウェア更新手段を実行する。
【0074】
ファームウェアをメモリに格納すると、マイクロプロセッサ27の中央処理部は、メモリに格納したファームウェアを起動し、起動したファームウェアに従って以下の各手段を実行する。プロセッサ27の中央処理部は、暗号化前の各種の暗号化アルゴリズムが外部サーバ51からセンサモジュール10A〜10Cにダウンロードされると、その暗号化アルゴリズムをメモリに格納するアルゴリズム記憶手段を実行する。または、暗号化後の各種の暗号化アルゴリズムが外部サーバ51からセンサモジュール10A〜10Cにダウンロードされると、メモリに格納された鍵を使用して暗号化された暗号化アルゴリズムを復号化するアルゴリズム復号化手段を実行し、復号化した暗号化アルゴリズムをメモリに格納するアルゴリズム記憶手段を実行する。
【0075】
マイクロプロセッサ27の中央処理部は、暗号化していないあらたな暗号化アルゴリズムが外部サーバ51からセンサモジュール10A〜10Cにダウンロードされると、すでに記憶した暗号化アルゴリズムをあらたな暗号化アルゴリズムに書き換えるアルゴリズム更新手段を実行する。または、暗号化されたあらたな暗号化アルゴリズムが外部サーバ51からセンサモジュール10A〜10Cにダウンロードされると、メモリに格納された鍵を使用して暗号化されたあらたな暗号化アルゴリズムを復号化するアルゴリズム復号化手段を実行し、すでに記憶した暗号化アルゴリズムを復号化したあらたな暗号化アルゴリズムに書き換えるアルゴリズム更新手段を実行する。プロセッサ27の中央処理部は、磁気カードの各種フォーマットに対応してカードから各種データを読み取るフォーマット対応読み取り手段を実行し、カードデータ(デジタル信号)を所定の暗号化アルゴリズムに基づいて暗号化するデータ暗号化手段を実行する。プロセッサ27の中央処理部は、暗号化したカードデータをホストコンピュータ53に出力する暗号化データ出力手段を実行する。
【0076】
ホストコンピュータ53は、中央処理部(CPUまたはMPU)とメモリ(大容量ハードディスク)とを有する。コンピュータ53の中央処理部は、演算ユニットおよび制御ユニットから形成されている。コンピュータ53には、キーボードやマウス等の入力装置56、ディスプレイやプリンタ等の出力装置57がインターフェイスを介して接続されている。コンピュータ53の中央処理部は、オペレーティングシステムによる制御に基づいて、メモリに格納されたアプリケーションを起動し、起動したアプリケーションに従って以下の各手段を実行する。
【0077】
ホストコンピュータ53の中央処理部は、マイクロプロセッサ27との間で相互に認証を行う相互認証手段を実行する。コンピュータ53の中央処理部は、暗号化されたカードデータがセンサモジュール10A〜10Cから出力されると、そのデータを複合化するデータ復号化手段を実行し、復号化したデータをメモリに格納するデータ記憶手段を実行する。コンピュータ53の中央処理部は、復号化したデータを出力装置57を介して出力するデータ出力手段を実行する。
【0078】
図14は、外部サーバ51とセンサモジュール10A〜10Cとの間で行われる処理の一例を示すブロック図である。外部サーバ51とセンサモジュール10A〜10Cとの間で行われる相互認証の一例を説明すると、以下のとおりである。システム50を起動させると、外部サーバ51や磁気カードリーダ52、ホストコンピュータ53が稼動する。サーバ51がカードリーダ52のURLを利用し、インターネットを介してカードリーダ52にアクセスする(アクセス手段)。または、カードリーダ52がサーバ51のURLを利用し、インターネットを介してサーバ51にアクセスする。
【0079】
外部サーバ51と磁気カードリーダ52のコントローラとがインターネットを介して接続されると、サーバ51の中央処理部とマイクロプロセッサ27の中央処理部とがカードリーダ52のコントローラを介して接続される。サーバ51の中央処理部とプロセッサ27の中央処理部とは、メモリーテスト(S−10)とコードサイニング(S−11)とを行う(初期テスト)。コードサイニング(S−11)は、ファームウェアのオブジェクトコードが書き替えられていないかを判定する。初期テストが終了し、その結果が正しい場合、サーバ51の中央処理部とプロセッサ27の中央処理部とは、それらの正当性を判断する相互認証を行う(相互認証手段)。相互認証は、サーバ51がセンサモジュール10A〜10Cの正当性を認証する外部認証(S−12)を行った後、センサモジュール10A〜10Cがサーバ51の正当性を認証する内部認証(S−13)を行う。
【0080】
外部サーバ51の中央処理部とマイクロプロセッサ27の中央処理部とが相互認証による互いの認証結果を正当であると判断すると、サーバ51からファームウェアや暗号化アルゴリズムのセンサモジュール10A〜10Cへのダウンロードが可能となり、サーバ51とプロセッサ27との間でダウンロード処理が行われる(S−14)。逆に、サーバ51とプロセッサ27との少なくとも一方が認証結果を不可であると判断すると、認証不可メッセージがサーバ51のディスプレイに表示され、ファームウェアや暗号化アルゴリズムのセンサモジュール10A〜10Cへのダウンロードを行うことができない。
【0081】
サーバ51とプロセッサ27との間の相互認証は、システム50を起動させる度毎に行われる場合、システム50を連続して稼働させるときは日時単位や週単位、月単位で行われる場合、あるいは、ファームウェアをセンサモジュール10A〜10Cにダウンロードする度毎に行われる場合、暗号化アルゴリズムをセンサモジュール10A〜10Cにダウンロードする度毎に行われる場合がある。なお、サーバ51とプロセッサ27とが相互認証を行うことなく、サーバ51とプロセッサ27とがインターネットを介して接続され、サーバ15がセンサモジュール10A〜10Cへファームウェアや暗号化アルゴリズムのダウンロードを行うこともできる。
【0082】
図15は、外部認証の一例を示すラダー図であり、図16は、内部認証の一例を示すラダー図である。外部認証における認証手順は、以下のとおりである。外部サーバ51の中央処理部がマイクロプロセッサ27の中央処理部に乱数(認証子)の生成と送信とを要求する(S−20)。プロセッサ27の中央処理部は、サーバ51の指令に従って64bit乱数を生成し、生成した乱数をサーバ51に送信する(S−21)。64bit乱数を取得したサーバ51の中央処理部は、メモリに格納された認証用の鍵を使用し、トリプルDES(Triple Data Encryption Standard)によって乱数を暗号化した後、暗号化した乱数をプロセッサ27に送信する(S−22)。
【0083】
プロセッサ27の中央処理部は、メモリに格納された認証用の鍵を使用し、トリプルDESによって暗号化された乱数を復号化する。プロセッサ27の中央処理部は、それが生成した乱数と復号化した乱数とを比較し、両者が同一であれば認証結果を正当であると判断し、認証結果正当情報をサーバ51に送信する(S−23)。一方、生成した乱数と復号化した乱数とが異なる場合、認証結果を不可であると判断し、認証結果不可情報をサーバ51に送信する(S−23)。サーバ51は、プロセッサ27から外部認証結果を取得する(S−24)。
【0084】
トリプルDESは、シングルDES(Single Data Encryption Standard)を3回繰り返すことにより、鍵の伸長やアルゴリズムの偏りの減少を図り、暗号強度を強化する。トリプルDESには、3つの鍵が全て異なる3−KeyトリプルDESと、1回目と3回目とに同じ鍵を用いる2−KeyトリプルDESとがある。なお、トリプルDESは、3−KeyトリプルDESと2−KeyトリプルDESとのいずれでもよい。また、DESは、トリプルDESではなく、シングルDESであってもよい。
【0085】
内部認証における認証手順は、以下のとおりである。外部サーバ51の中央処理部は、64bit乱数(認証子)を生成し、それをマイクロプロセッサ27に送信する(S−25)。64bit乱数を取得したプロセッサ27の中央処理部は、メモリに格納された認証用の鍵を使用し、トリプルDESによって乱数を暗号化した後、暗号化した乱数をサーバ51に送信する(S−26)。サーバ51の中央処理部は、メモリに格納された認証用の鍵を使用し、トリプルDESによって暗号化された乱数を復号化する(S−27)。サーバ51の中央処理部は、それが生成した乱数と復号化した乱数とを比較し、両者が同一であれば認証結果を正当であると判断する。一方、生成した乱数と復号化した乱数とが異なる場合、認証結果を不可であると判断し、センサモジュール10A〜10Cへのファームウェアや暗号化アルゴリズムのダウンロードを不可とする。
【0086】
図17は、外部サーバ51とマイクロプロセッサ27との間におけるダウンロード処理の一例を示すラダー図である。外部サーバ51のメモリには、ファームウェアおよび暗号化アルゴリズムとそれらを暗号化する暗号化用の鍵とが格納されており、必要に応じてバージョンアップされたあらたなファームウェアまたはあらたな暗号化アルゴリズムが随時格納される。マイクロプロセッサ27のメモリには、ファームウェアおよび暗号化アルゴリズムの復号化用の鍵が格納されている。
【0087】
外部サーバ51の中央処理部は、ファームウェアおよび暗号化アルゴリズムと暗号化用の鍵とをメモリから取り出し、その鍵を使用してトリプルDESによってファームウェアや暗号化アルゴリズムを暗号化する(ファームウェア暗号化手段、アルゴリズム暗号化手段)(S−28)。サーバ51の中央処理部は、暗号化したファームウェアや暗号化アルゴリズムをインターネットを介してセンサモジュール10A〜10Cにダウンロードする(ファームウェア第1ダウンロード手段、アルゴリズム第1ダウンロード手段)(S−29)。なお、ファームウェアや暗号化アルゴリズムを暗号化しない場合、サーバ51の中央処理部は、それらを暗号化せずにそのままセンサモジュール10A〜10Cにダウンロードする(ファームウェア第1ダウンロード手段、アルゴリズム第1ダウンロード手段)(S−29)。
【0088】
外部サーバ51の中央処理部は、バージョンアップされたあらたなファームウェアまたはあらたな暗号化アルゴリズムのセンサモジュール10A〜10Cへのダウンロードが必要になると、あらたなファームウェアやあらたな暗号化アルゴリズムと暗号化用の鍵とをメモリから取り出し、その鍵を使用してトリプルDESによってファームウェアや暗号化アルゴリズムを暗号化する(ファームウェア暗号化手段、アルゴリズム暗号化手段)(S−28)。サーバ51の中央処理部は、暗号化したあらたなファームウェアおよびあらたな暗号化アルゴリズムをインターネットを介してセンサモジュール10A〜10Cにダウンロードする(ファームウェア第2ダウンロード手段、アルゴリズム第2ダウンロード手段)(S−29)。
【0089】
なお、あらたなファームウェアやあらたな暗号化アルゴリズムを暗号化しない場合、サーバ51の中央処理部は、それらを暗号化せずにそのままセンサモジュール10A〜10Cにダウンロードする(ファームウェア第2ダウンロード手段、アルゴリズム第2ダウンロード手段)(S−29)。サーバ51からダウンロードされたファームウェアや暗号化アルゴリズムは、磁気カードリーダ52のコントローラのメモリに一時保管された後、コントローラからセンサモジュール10A〜10Cに出力される。
【0090】
マイクロプロセッサ27の中央処理部は、暗号化されたファームウェアおよび暗号化アルゴリズムを外部サーバ51から受け取ると、メモリから復号化用の鍵を取り出し、その鍵を使用してリプルDESによって暗号化されたファームウェアや暗号化アルゴリズムを復号化する(ファームウェア復号化手段、アルゴリズム復号化手段)(S−30)。プロセッサ27の中央処理部は、複合化したファームウェアおよび暗号化アルゴリズムをメモリに格納する(ファームウェア記憶手段、アルゴリズム記憶手段)。暗号化していないファームウェアおよび暗号化アルゴリズムを外部サーバ51から受け取ると、プロセッサ27の中央処理部は、そのファームウェアや暗号化アルゴリズムをメモリに格納する(ファームウェア記憶手段、アルゴリズム記憶手段)。
【0091】
マイクロプロセッサ27の中央処理部は、暗号化されたあらたなファームウェアおよびあらたな暗号化アルゴリズムを外部サーバ51から受け取ると、復号化用の鍵を使用してリプルDESによって暗号化されたあらたなファームウェアやあらたな暗号化アルゴリズムを復号化する(ファームウェア復号化手段、アルゴリズム復号化手段)(S−30)。プロセッサ27の中央処理部は、バージョンアップ前のファームウェアをバージョンアップ後の複合化したファームウェアに書き換え(ファームウェア更新手段)、バージョンアップ後のファームウェアをメモリに格納する。さらに、すでに記憶した暗号化アルゴリズムを復号化したあらたな暗号化アルゴリズムに書き換え(アルゴリズム更新手段)、あらたな暗号化アルゴリズムをメモリに格納する。
【0092】
暗号化していないあらたなファームウェアやあらたな暗号化アルゴリズムをサーバ51から受け取ると、プロセッサ27の中央処理部は、バージョンアップ前のファームウェアをバージョンアップ後のファームウェアに書き換え(ファームウェア更新手段)、バージョンアップ後のファームウェアをメモリに格納するとともに、すでに記憶した暗号化アルゴリズムをあらたな暗号化アルゴリズムに書き換え(アルゴリズム更新手段)、あらたな暗号化アルゴリズムをメモリに格納する。
【0093】
ファームウェアの書き換えは、それがバージョンアップされた場合、磁気カードの仕様が変更され、カードのフォーマットが変更された場合に行われる。暗号化アルゴリズムの書き換えは、第3者にアルゴリズムが解析されたことで、書き換えの必要が生じた場合、システム50を起動させる度毎に行う場合、日時単位や週単位、月単位で行う場合、同期がずれた後、再び同期する場合に行われる。
【0094】
図18〜図23は、暗号化および復号化に使用する鍵の生成の一例を説明する図である。外部サーバ51の中央処理部とマイクロプロセッサ27の中央処理部とは、暗号化されたファームウェアまたは暗号化アルゴリズムがセンサモジュール10A〜10Cにダウンロードされる度毎に、それらのメモリにあらかじめ格納された同一かつ有限の回帰カウンタ値を使用して互いに同期しつつ、ファームウェアまたは暗号化アルゴリズムの暗号化と復号化とに必要な同一のあらたな第2〜第n鍵を順に生成する(鍵生成手段)。サーバ15の中央処理部とプロセッサ27の中央処理部とが行う鍵生成手順の一例を説明すると、以下のとおりである。なお、回帰カウンタ値は1〜20とする。ただし、回帰カウンタ値に特に限定はなく、カウンタ値を21以上とすることもできる。
【0095】
外部サーバ51が第1番目のファームウェア(新規ファームウェア)または暗号化アルゴリズム(新規アルゴリズム)をセンサモジュール10A〜10Cにダウンロードする場合、サーバ15の中央処理部は、図18に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値1を選択し、ファームウェアや暗号化アルゴリズムにカウンタ値1を添付する。カウンタテーブルには、カウンタ値(1〜20)の格納エリアとそれに対応する3つの鍵の格納エリア(K1,K2,K3)とが作られている。ただし、図18のカウンタデーブルでは、回帰カウンタ値2〜20に対応する第2鍵〜第20鍵は生成されていない。なお、カウンタ値1に対応する第1鍵(Key1)は、初期値としてシステム50の導入時に設定される。
【0096】
外部サーバ51の中央処理部は、カウンタテーブルからカウンタ値1に対応する第1鍵を取り出し、第1鍵を使用し、トリプルDES(3−KeyトリプルDES)によってファームウェアまたは暗号化アルゴリズムとカウンタ値1とを暗号化し(ファームウェア暗号化手段、アルゴリズム暗号化手段)、暗号化したファームウェアや暗号化アルゴリズムをセンサモジュール10A〜10Cにダウンロードする(ファームウェア第1ダウンロード手段、アルゴリズム第1ダウンロード手段)。サーバ51の中央処理部は、暗号化したファームウェアや暗号化アルゴリズムをセンサモジュール10A〜10Cにダウンロードした後、回帰カウンタ値を1から2に変更し、カウンタ値2をメモリに格納する。
【0097】
暗号化されたファームウェア(第1番目のファームウェア)または暗号化アルゴリズム(第1番目の暗号化アルゴリズム)を受け取ったマイクロプロセッサ27の中央処理部は、図19に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値1を選択する。カウンタテーブルには、カウンタ値(1〜20)の格納エリアとそれに対応する3つの鍵の格納エリア(K1,K2,K3)とが作られている。ただし、図19のカウンタデーブルでは、回帰カウンタ値2〜20に対応する第2鍵〜第20鍵は生成されていない。なお、カウンタ値1に対応する第1鍵(Key1)は、外部サーバ51のメモリに格納された第1鍵と同一であり、初期値としてシステム50の導入時に設定される。
【0098】
マイクロプロセッサ27の中央処理部は、カウンタテーブルからカウンタ値1に対応する第1鍵を取り出し、第1鍵を使用し、トリプルDES(3−KeyトリプルDES)によって暗号化されたファームウェアや暗号化アルゴリズムを復号化して平文ファームウェア、平文アルゴリズムを取得する(ファームウェア復号化手段、アルゴリズム復号化手段)。プロセッサ27の中央処理部は、ファームウェアや暗号化アルゴリズムを復号化した後、それらをメモリに格納するとともに(ファームウェア記憶手段、アルゴリズム記憶手段)、回帰カウンタ値を1から2に変更し、カウンタ値2をメモリに格納する。
【0099】
外部サーバ51は、マイクロプロセッサ27が現在使用しているファームウェアや暗号化アルゴリズムの使用を中止させ、メモリに格納されたファームウェアや暗号化アルゴリズムの中からあらたなファームウェアやあらたなアルゴリズムを選択し、そのファームウェアやアルゴリズムを使用させることができる。サーバ51が第2番目のファームウェア(バージョンアップファームウェア)または第2番目の暗号化アルゴリズム(あらたな暗号化アルゴリズム)をセンサモジュール10A〜10Cにダウンロードする場合、外部サーバ51の中央処理部は、図20に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値2を選択し、第2番目のファームウェアや暗号化アルゴリズムにカウンタ値2を添付する。
【0100】
外部サーバ51の中央処理部は、カウンタ値1に対応する第1鍵(初期値)とカウンタ値1とを一方向ハッシュ関数によってハッシュ化したハッシュ出力値を生成し、そのハッシュ出力値をカウンタ値2に対応する第2鍵(Key2)とする(鍵生成手段)。第2鍵(Key2)となるハッシュ出力値は、カウンタテーブルのカウンタ値2に対応する鍵格納エリア(K1,K2,K3)に書き込まれる。なお、図20のカウンタデーブルでは、回帰カウンタ値3〜20に対応する第3鍵〜第20鍵は生成されていない。
【0101】
外部サーバ51の中央処理部は、カウンタテーブルからカウンタ値2に対応する第2鍵を取り出し、第2鍵を使用し、トリプルDES(3−KeyトリプルDES)によってファームウェアや暗号化アルゴリズムを暗号化(カウンタ値2を含む)し(ファームウェア暗号化手段、アルゴリズム暗号化手段)、暗号化したファームウェアや暗号化アルゴリズムをセンサモジュール10A〜10Cにダウンロードする(ファームウェア第2ダウンロード手段、アルゴリズム第2ダウンロード手段)。サーバ51の中央処理部は、暗号化したファームウェアまたは暗号化アルゴリズムをセンサモジュール10A〜10Cにダウンロードした後、回帰カウンタ値を2から3に変更し、カウンタ値3をメモリに格納する。
【0102】
暗号化されたファームウェア(第2番目のファームウェア)または暗号化アルゴリズム(第2番目の暗号化アルゴリズム)を受け取ったマイクロプロセッサ27の中央処理部は、図21に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値2を選択する。プロセッサ27の中央処理部は、カウンタ値1に対応する第1鍵(初期値)とカウンタ値1とを一方向ハッシュ関数によってハッシュ化したハッシュ出力値を生成し、そのハッシュ出力値をカウンタ値2に対応する第2鍵(Key2)とする(鍵生成手段)。プロセッサ27の中央処理部が使用するハッシュ関数はサーバ51の中央処理部が使用するそれと同一であり、生成した第2鍵(Key2)はサーバ51の中央処理部が生成したそれと同一である。第2鍵(Key2)となるハッシュ出力値は、カウンタテーブルのカウンタ値2に対応する鍵格納エリア(K1,K2,K3)に書き込まれる。なお、図21のカウンタデーブルでは、回帰カウンタ値3〜20に対応する第3鍵〜第20鍵は生成されていない。
【0103】
マイクロプロセッサ27の中央処理部は、カウンタテーブルからカウンタ値2に対応する第2鍵を取り出し、第2鍵を使用し、トリプルDES(3−KeyトリプルDES)によって暗号化されたファームウェアや暗号化アルゴリズムを復号化して平文ファームウェア、平文アルゴリズムを取得する(ファームウェア復号化手段、アルゴリズム復号化手段)。プロセッサ27の中央処理部は、ファームウェアや暗号化アルゴリズムを復号化した後、それらをメモリに格納するとともに(ファームウェア記憶手段、アルゴリズム記憶手段)、回帰カウンタ値を2から3に変更し、カウンタ値3をメモリに格納する。
【0104】
外部サーバ51が第3番目のファームウェア(バージョンアップファームウェア)または第3番目の暗号化アルゴリズム(あらたな暗号化アルゴリズム)をセンサモジュール10A〜10Cにダウンロードする場合、サーバ51の中央処理部は、図22に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値3を選択し、第3番目のファームウェアや暗号化アルゴリズムにカウンタ値3を添付する。
【0105】
外部サーバ51の中央処理部は、カウンタ値2に対応する第2鍵(Key2、ハッシュ値)とカウンタ値2とを一方向ハッシュ関数によってハッシュ化したハッシュ出力値を生成し、そのハッシュ出力値をカウンタ値3に対応する第3鍵(Key3)とする(鍵生成手段)。第3鍵(Key3)となるハッシュ出力値は、カウンタテーブルのカウンタ値3に対応する鍵格納エリア(K1,K2,K3)に書き込まれる。なお、図22のカウンタデーブルでは、回帰カウンタ値4〜20に対応する第4鍵〜第20鍵は生成されていない。
【0106】
外部サーバ51の中央処理部は、カウンタテーブルからカウンタ値3に対応する第3鍵を取り出し、第3鍵を使用し、トリプルDES(3−KeyトリプルDES)によってファームウェアや暗号化アルゴリズムを暗号化(カウンタ値3を含む)し(ファームウェア暗号化手段、アルゴリズム暗号化手段)、暗号化したファームウェアや暗号化アルゴリズムをセンサモジュール10A〜10Cにダウンロードする(ファームウェア第2ダウンロード手段、アルゴリズム第2ダウンロード手段)。サーバ51の中央処理部は、暗号化したファームウェアまたは暗号化アルゴリズムをセンサモジュール10A〜10Cにダウンロードした後、回帰カウンタ値を3から4に変更し、カウンタ値4をメモリに格納する。
【0107】
暗号化されたファームウェア(第3番目のファームウェア)または暗号化アルゴリズム(第3番目の暗号化アルゴリズム)を受け取ったマイクロプロセッサ27の中央処理部は、図23に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値3を選択する。プロセッサ27の中央処理部は、カウンタ値2に対応する第2鍵(Key2)とカウンタ値2とを一方向ハッシュ関数によってハッシュ化したハッシュ出力値を生成し、そのハッシュ出力値をカウンタ値3に対応する第3鍵(Key3)とする(鍵生成手段)。プロセッサ27の中央処理部が生成した第3鍵(Key3)は外部サーバ51の中央処理部が生成したそれと同一である。第3鍵(Key3)となるハッシュ出力値は、カウンタテーブルのカウンタ値3に対応する鍵格納エリア(K1,K2,K3)に書き込まれる。なお、図23のカウンタデーブルでは、回帰カウンタ値4〜20に対応する第4鍵〜第20鍵は生成されていない。
【0108】
マイクロプロセッサ27の中央処理部は、カウンタテーブルからカウンタ値3に対応する第3鍵を取り出し、第3鍵を使用し、トリプルDES(3−KeyトリプルDES)によって暗号化されたファームウェアや暗号化アルゴリズムを復号化して平文ファームウェア、平文アルゴリズムを取得する(ファームウェア復号化手段、アルゴリズム復号化手段)。プロセッサ27の中央処理部は、ファームウェアや暗号化アルゴリズムを復号化した後、それらをメモリに格納するとともに(ファームウェア記憶手段、アルゴリズム記憶手段)、回帰カウンタ値を3から4に変更し、カウンタ値4をメモリに格納する。
【0109】
このように、外部サーバ51の中央処理部とマイクロプロセッサ27の中央処理部とは、回帰カウンタ値1〜20を順番に使って互いに同期しつつ、一方向ハッシュ関数を使用して第2〜第n鍵を生成する。回帰カウンタ値が20を超えると、サーバ51の中央処理部とプロセッサ27の中央処理部とは、再びカウンタ値1を使用し、第21鍵〜第40鍵を順に生成する。サーバ51の中央処理部とプロセッサ27の中央処理部とは、第21鍵を生成すると、鍵格納エリアに格納された第1鍵を第21鍵に書き換え、第22鍵を生成すると、鍵格納エリアに格納された第2鍵を第22鍵に書き替える。
【0110】
この磁気カード読み取りシステム50は、相互認証手段を実行することで外部サーバ51の中央処理部とマイクロプロセッサ27の中央処理部とが互いの正当性を判断することができるから、偽サーバがセンサモジュール10A〜10Cに接続された場合や偽センサモジュールが外部サーバ51に接続された場合であっても、それを見破ることができる。このシステム50は、第3者が偽サーバを利用してセンサモジュール10A〜10Cにアクセスすることはできず、ファームウェアの改竄による第3者の磁気カードの不正利用を防ぐことができる。また、このシステム50は、第3者が偽センサモジュールを利用して外部サーバ51にアクセスすることはできず、サーバ51から偽センサモジュールに暗号化アルゴリズムがダウンロードされることはない。
【0111】
システム50は、外部サーバ51の中央処理部とマイクロプロセッサ27の中央処理部とが第2〜第n鍵を個別に生成するから、サーバ51からプロセッサ27へ鍵を送信する必要はなく、鍵の送信過程における鍵の不正な取得を防ぐことができる。システム50は、サーバ51の中央処理部が常に別の鍵を使用してファームウェアや暗号化アルゴリズムの暗号化を行い、プロセッサ27の中央処理部が常に別の鍵を使用してファームウェアや暗号化アルゴリズムの復号化を行うから、鍵を第3者に取得されたとしても、ファームウェアや暗号化アルゴリズムを復号化することはできない。また、第2〜第n鍵にハッシュ値を使用するから、たとえ鍵が第3者に不正に取得されたとしても、鍵の解読をすることはできず、第3者による鍵の使用を確実に防ぐことができる。
【0112】
システム50は、外部サーバ51の中央処理部とマイクロプロセッサ27の中央処理部とが同一かつ有限の回帰カウンタ値を使用して互いに同期しつつ、第2〜第n鍵を順に生成するから、サーバ15が生成する鍵とプロセッサ27が生成する鍵とを一致させることができ、生成した鍵の不一致による暗号データの復号不能を防ぐことができる。また、第2〜第n鍵となるハッシュ出力値に回帰カウンタ値をハッシュ化したハッシュ出力値が含まれるから、第3者がシステム50に不正に進入したとしても、ハッシュ化した回帰カウンタ値を解読することはできず、サーバ51の中央処理部とプロセッサ27の中央処理部とがどのカウンタ値を使用して同期しているかを判別することができない。
【0113】
システム50の稼働中に外部サーバ51の中央処理部とマイクロプロセッサ27の中央処理部との同期がずれると、サーバ51の中央処理部が生成した鍵とプロセッサ27の中央処理部が生成したそれとが異なり、サーバ51の中央処理部からダウンロードされた暗号データをプロセッサ27の中央処理部が復号化することができない。この場合、プロセッサ27の中央処理部は、生成した鍵による復号化が不可能であると判断し、復号化不能をサーバ51に送信するとともに(復号化不能情報送信手段)、サーバ51との再同期を要求する(再同期要求手段)。
【0114】
マイクロプロセッサ27の中央処理部は、カードリーダ52のコントローラに外部サーバ51へのアクセスを要求するとともに、メモリに格納されたデータ送受信用の鍵を使用し、トリプルDESによって復号化不能情報と再同期要求とを暗号化する。サーバ51とカードリーダ52とがインターネットを介して接続されると、プロセッサ27の中央処理部は、暗号化した復号化不能情報と再同期要求とをサーバ51に送信する。プロセッサ27の中央処理部と再同期要求を受け取ったサーバ51の中央処理部とは、それらの正当性を判断する外部認証と内部認証と(図15,16参照)を行う(相互認証手段)。サーバ51の中央処理部とプロセッサ27の中央処理部とは、相互認証による互いの認証結果を正当であると判断すると、回帰カウンタ値を1(初期値)に戻して再び同期を開始する。サーバ51の中央処理部とプロセッサ27の中央処理部とは、カウンタ値を1に戻すと、再び第1鍵を使用して暗号化および復号化を行う。
【0115】
システム50は、外部サーバ51とマイクロプロセッサ27とが生成した鍵に不一致が生じたとしても、サーバ51とプロセッサ27とが回帰カウンタ値を1に戻して再び同期することができるから、サーバ51が生成する鍵とプロセッサ27が生成する鍵とを再度一致させることができ、生成した鍵の不一致によるファームウェアや暗号化アルゴリズムの復号不能を防ぐことができる。なお、システム50が連続して稼働し、相互認証を日時単位や週単位、月単位で行う場合、サーバ51の中央処理部とプロセッサ27の中央処理部とは、相互認証による互いの認証結果を正当であると判断すると、回帰カウンタ値を1に戻して再び同期を開始する。以後の手順は、図18〜図23に基づいて説明したそれと同一である。
【0116】
一方向ハッシュ関数には、SHA−1(Secure Hash Algorithm 1)、MD2,MD4,MD5(Message Digest2,4,5)、RIPEMD−80、RIPEMD−128、RIPEMD−160、N−Hashのいずれかを使用する。それらハッシュ関数は、外部サーバ51のメモリとホストコンピュータ53のメモリとに格納されている。
【0117】
暗号化アルゴリズムとしては、DESの他に、RSA、AES(Advanced Encryption Standard)、IDEA(International Data Encryption Algorithm)、FEAL−N/NX(Fast Encryption Algorithm)、MULTI2(Multimedia Encryption2)、MISTY、SXAL(Substitution Xor
Algorithm)、MBAL(Multi Block Algorithm)、RC2、RC5、ENCRiP、SAFER(Secure And Fast Encryption Routine)、Blowfish、Skipjack、Khufu、Khafre、CAST、GOST28147−89のいずれかを使用することもできる。それらアルゴリズムは、外部サーバ51のメモリとホストコンピュータ53のメモリとに格納されている。
【0118】
このシステム50では、外部サーバ51とマイクロプロセッサ27とが図18〜図23に示す鍵の生成を行うことなく、サーバ51がプロセッサ27にファームウェアや暗号化アルゴリズムをダウンロードすることもできる。その一例を説明すると、以下のとおりである。外部サーバ51がカードリーダ52のURLを利用し、インターネットを介してカードリーダ52にアクセスする(アクセス手段)。または、カードリーダ52が外部サーバ51のURLを利用し、インターネットを介してサーバ51にアクセスする。サーバ51とカードリーダ52とがインターネットを介して接続されると、サーバ51の中央処理部とマイクロプロセッサ27の中央処理部とがコントローラを介して接続される。サーバ51の中央処理部とプロセッサ27の中央処理部とは、それらの正当性を判断する外部認証と内部認証と(図15,16参照)を行う(相互認証手段)。サーバ51の中央処理部とプロセッサ27の中央処理部とが相互認証による互いの認証結果を正当であると判断すると、サーバ51からファームウェアや暗号化アルゴリズムのセンサモジュール10A〜10Cへのダウンロードが可能となり、サーバ51とプロセッサ27との間でダウンロード処理が行われる。
【0119】
外部サーバ51の中央処理部は、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによってあらたなファームウェアや暗号化アルゴリズムを暗号化し(ファームウェア暗号化手段、アルゴリズム暗号化手段)、暗号化したファームウェアやアルゴリズムをセンサモジュール10A〜10Cにダウンロードする(ファームウェア第1ダウンロード手段、アルゴリズム第1ダウンロード手段)。サーバ51からダウンロードされたファームウェアや暗号化アルゴリズムは、カードリーダ52のコントローラのメモリに一時的に保管された後、センサモジュール10A〜10Cに出力される。
【0120】
マイクロプロセッサ27の中央処理部は、暗号化されたファームウェアや暗号化アルゴリズムをサーバ51から受け取ると、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって暗号化されたファームウェアやアルゴリズムを復号化して平文ファームウェア、平文アルゴリズムを取得する(ファームウェア復号化手段、アルゴリズム復号化手段)、復号化したファームウェアやアルゴリズムをメモリに格納する(ファームウェア記憶手段、アルゴリズム記憶手段)。
【0121】
外部サーバ51は、マイクロプロセッサ27が現在使用しているファームウェアや暗号化アルゴリズムの使用を中止させ、メモリに格納されたファームウェアや暗号化アルゴリズムの中からあらたなファームウェアやあらたなアルゴリズムを選択し、そのファームウェアやアルゴリズムを使用させることができる。サーバ51は、あらたなファームウェアやあらたな暗号化アルゴリズムをプロセッサ27に使用させる場合、プロセッサ27に既存のファームウェアや暗号化アルゴリズムの書き換えを指示する(更新指令)。なお、外部認証と内部認証と(図15,16参照)がすでに行われ、サーバ51とプロセッサ27とが相互認証による互いの認証結果を正当であると判断したものとする。
【0122】
外部サーバ51の中央処理部は、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって更新指令とあらたなファームウェアやあらたな暗号化アルゴリズムとを暗号化し(ファームウェア暗号化手段、アルゴリズム暗号化手段)、暗号化した更新指令やファームウェア、アルゴリズムをセンサモジュール10A〜10Cにダウンロードする(ファームウェア第2ダウンロード手段、アルゴリズム第2ダウンロード手段)。サーバ51からダウンロードされた更新指令やファームウェア、暗号化アルゴリズムは、カードリーダ52のコントローラのメモリに一時的に保管された後、センサモジュール10A〜10Cに出力される。
【0123】
マイクロプロセッサ27の中央処理部は、暗号化された更新指令やファームウェア、暗号化アルゴリズムを外部サーバ51から受け取ると、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって暗号化された更新指令とファームウェアやアルゴリズムとを復号化する(ファームウェア復号化手段、アルゴリズム復号化手段)。プロセッサ27の中央処理部は、メモリに格納された既存のファームウェアを復号化したあらたなファームウェアに書き換え(ファームウェア更新手段)、あらたなファームウェアをメモリに格納する。さらに、プロセッサ27の中央処理部は、メモリに格納された既存のアルゴリズムを復号化したあらたなアルゴリズムに書き換え(アルゴリズム更新手段)、あらたなアルゴリズムをメモリに格納する。プロセッサ27の中央処理部は、更新完了をサーバ51に通知する(更新完了通知)。プロセッサ27の中央処理部は、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって更新完了通知を暗号化し、暗号化した更新完了通知をサーバ51に送信する。
【0124】
外部サーバ51は、現在使用しているハッシュ関数の使用を中止し、メモリに格納されたハッシュ関数の中からあらたなハッシュ関数を選択し、そのハッシュ関数を使用することができる。ハッシュ関数の変更は、システム50を起動させる度毎に行う場合、日時単位や週単位、月単位で行う場合、同期がずれた後、再び同期するときに行う場合がある。サーバ51は、あらたなハッシュ関数を使用する場合、マイクロプロセッサ27に既存のハッシュ関数の書き換えを指示する(関数変更指令)。サーバ51の中央処理部は、カードリーダ52にアクセスする。サーバ51とカードリーダ52とがインターネットを介して接続されると、サーバ51の中央処理部とプロセッサ27の中央処理部とは、それらの正当性を判断する外部認証と内部認証と(図15,16参照)を行う(相互認証手段)。サーバ51の中央処理部とプロセッサ27の中央処理部とが相互認証による互いの認証結果を正当であると判断すると、サーバ51の中央処理部は、メモリに格納されたデータ送受信用の鍵を使用し、トリプルDESによって関数変更指令とあらたなハッシュ関数とを暗号化した後、暗号化した関数変更指令とハッシュ関数とをプロセッサ27に送信する。
【0125】
マイクロプロセッサ27の中央処理部は、関数変更指令とハッシュ関数とを受信すると、メモリに格納されたデータ送受信用の鍵を使用し、トリプルDESによって暗号化された関数変更指令とハッシュ関数とを復号化する。プロセッサ27の中央処理部は、メモリに格納した既存のハッシュ関数を復号化したあらたなハッシュ関数に変更した後、変更完了を外部サーバ51に通知する(変更完了通知手段)。プロセッサ27の中央処理部は、メモリに格納されたデータ送受信用の鍵を使用し、トリプルDESによって変更完了通知を暗号化し、暗号化した変更完了通知をサーバ51に送信する。このシステム50は、関数変更指令やハッシュ関数を暗号化してハッシュ関数の変更を行うから、使用するハッシュ関数を第3者に取得されることはなく、第3者によるハッシュ関数の解読を防ぐことができる。
【0126】
この磁気カード読み取りシステム50は、ファームウェアまたは暗号化アルゴリズムが外部サーバ51からセンサモジュール10A〜10Cにダウンロードされると、プロセッサ27がそのファームウェアや暗号化アルゴリズムをメモリに格納するから、センサモジュール10A〜10Cが市場に出荷された後やセンサモジュール10A〜10Cが磁気カードリーダ52に設置された後において、サーバ51からダウンロードされたファームウェアや暗号化アルゴリズムをプロセッサ27に随時格納することができる。
【0127】
システム50は、センサモジュール10A〜10Cの出荷後や設置後でも、各種のファームウェアに対応することができ、それらファームウェアを利用することで、センサモジュール10A〜10Cの動作環境に応じてプロセッサ27の演算・記憶機能や外部ハードウェアの最適な制御を行うことができる。このシステム50は、センサモジュール10A〜10Cの出荷後や設置後において、センサモジュール10A〜10Cを磁気カードの各種フォーマットに対応させることができ、磁気カードの各種仕様に適応しつつ、それらカードに記憶されたデータをセンサモジュール10A〜10Cに確実に読み取らせることができる。
【0128】
システム50は、センサモジュール10A〜10Cの出荷後や設置後でも、各種の暗号化アルゴリズムを利用することができ、それらアルゴリズムを利用してカードデータを暗号化することができる。このシステム50では、プロセッサ27がバージョンアップ前のファームウェアをバージョンアップ後のファームウェアに書き換えるから、センサモジュール10A〜10Cの出荷後や設置後において、ファームウェアのバージョンアップが行われたとしても、バージョンアップ後のファームウェアに即座に対応することができる。
【0129】
図24は、センサモジュール10A〜10Cとホストコンピュータ53との間で行われる処理の一例を示すブロック図である。このシステム50を起動させると、ホストコンピュータ53の中央処理部とマイクロプロセッサ27の中央処理部とは、メモリーテスト(S−50)とコードサイニング(S−51)とを行う(初期テスト)。初期テストが終了し、その結果が正しい場合、コンピュータ53の中央処理部とプロセッサ27の中央処理部とは、それらの正当性を判断する相互認証を行う(相互認証手段)。相互認証は、コンピュータ53がセンサモジュール10A〜10Cの正当性を認証する外部認証(S−52)を行った後、磁気ヘッド19がコンピュータ13の正当性を認証する内部認証(S−53)を行う。
【0130】
コンピュータ53の中央処理部とマイクロプロセッサ27の中央処理部とが相互認証による互いの認証結果を正当であると判断すると、磁気カードリーダ52における磁気カードの読み取りが可能となり、コンピュータ53とプロセッサ27との間でメイン処理(S−54)が行われる。逆に、コンピュータ53とプロセッサ27との少なくとも一方が認証結果を不可であると判断すると、カードリーダ52による磁気カードの読み取りができず、読み取り不能メッセージがコンピュータ53のディスプレイに表示される。相互認証は、システム50を起動させる度毎に行われる他、システム50を連続して稼働させる場合は日時単位や週単位、月単位で行われ、また、後記するように、コンピュータ53の中央処理部とプロセッサ27の中央処理部との同期が不一致になった場合にも行われる。
【0131】
図25は、外部認証の一例を示すラダー図であり、図26は、内部認証の一例を示すラダー図である。外部認証における認証手順は、以下のとおりである。ホストコンピュータ53の中央処理部がマイクロプロセッサ27の中央処理部に乱数(認証子)の生成と送信とを要求する(S−60)。プロセッサ27の中央処理部は、コンピュータ53の指令に従って64bit乱数を生成し、生成した乱数をコンピュータ53に送信する(S−61)。64bit乱数を取得したコンピュータ53の中央処理部は、メモリに格納された認証用の鍵を使用し、トリプルDESによって乱数を暗号化した後、暗号化した乱数をプロセッサ27に送信する(S−62)。
【0132】
マイクロプロセッサ27の中央処理部は、メモリに格納された認証用の鍵を使用し、トリプルDESによって暗号化された乱数を復号化する(S−63)。プロセッサ27の中央処理部は、それが生成した乱数と復号化した乱数とを比較し、両者が同一であれば認証結果を正当であると判断し、認証結果正当情報をコンピュータ53に送信する。一方、生成した乱数と復号化した乱数とが異なる場合、認証結果を不可であると判断し、認証結果不可情報と磁気カードの読み取り不可情報とをコンピュータ53に送信する。コンピュータ53は、マイクロプロセッサ27から外部認証結果を取得する(S−64)。
【0133】
内部認証における認証手順は、以下のとおりである。コンピュータ53の中央処理部は、64bit乱数(認証子)を生成し、それをマイクロプロセッサ27に送信する(S−65)。64bit乱数を取得したプロセッサ27の中央処理部は、メモリに格納された認証用の鍵を使用し、トリプルDESによって乱数を暗号化した後、暗号化した乱数をコンピュータ53に送信する(S−66)。コンピュータ53の中央処理部は、メモリに格納された認証用の鍵を使用し、トリプルDESによって暗号化された乱数を復号化する(S−67)。コンピュータ53の中央処理部は、それが生成した乱数と復号化した乱数とを比較し、両者が同一であれば認証結果を正当であると判断する。一方、生成した乱数と復号化した乱数とが異なる場合、認証結果を不可であると判断し、カードリーダ52における磁気カードの読み取りを不可とする。
【0134】
図27は、このシステム50におけるメイン処理の一例を示すラダー図である。図28〜図33は、暗号化および復号化に使用する鍵の生成の他の一例を説明する図である。相互認証の結果が正当であり、磁気カードの読み取りが可能となった後、カード所持者が磁気カードリーダ52のカード挿入口から磁気カードを挿入すると、モータが駆動してカードが案内レールを移動する。カードが挿入口を通過すると、光センサがそれを検出し、カード挿入信号が光センサから出力されてカードリーダ52のコントローラに入力される。コントローラは、カード挿入信号を受け取ると、センサモジュール10A〜10Cのマイクロプロセッサ27に、カードに記憶されたカードデータの読み取り開始指令を出力する。磁気カードがセンサモジュール10A〜10Cを通過するとともに排出口から排出されると、光センサがそれを検出し、カード通過信号が光センサから出力されてカードリーダ52のコントローラに入力される。カードリーダ52のコントローラは、カード通過信号を受け取ると、センサモジュール10A〜10Cのプロセッサ27にカードデータの読み取り停止指令を出力するとともに、モータの駆動を停止する。
【0135】
磁気カードの磁化された磁性層が磁気ヘッド12のコアの先端部(コアのギャップ)を通過すると、コア内に磁束が発生し、磁束と鎖交する方向へ誘導起電力が生じてコイルに電流が流れる。コイルに流れる電流は、その値が磁束の変化にともなって変わる。磁気カードの磁性層に記憶されたカードデータは、コイルによってアナログ信号として取り出され、アナログ信号が磁気ヘッド12からA/D変換チップ26に入力される。A/D変換チップ26は、磁気ヘッド12から入力されたアナログ信号をデジタル信号に変換する。デジタル信号は、A/D変換チップ26からマイクロプロセッサ27に入力され、プロセッサ27のメモリに格納される。
【0136】
システム50の稼働中、ホストコンピュータ53の中央処理部は、マイクロプロセッサ27のメモリに処理すべきカードデータが存在するかを所定間隔でプロセッサ27に問い合わせる(データ確認指令)。コンピュータ53の中央処理部は、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによってデータ確認指令を暗号化し、暗号化したデータ確認指令をプロセッサ27に送信する(S−68)。なお、所定間隔は、秒単位またはミリ秒単位であることが好ましい。
【0137】
マイクロプロセッサ27の中央処理部は、データ確認指令を受信すると、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって暗号化されたデータ確認指令を復号化する。プロセッサ27の中央処理部は、コンピュータ53からのデータ確認指令に従ってメモリを検索し、磁気カードのカードデータがデジタル信号としてメモリに格納されている場合、データ保有をコンピュータ53に返答し(データ保有情報)、カードデータがメモリにない場合、データ非保有をコンピュータ53に返答する(データ非保有情報)。プロセッサ27は、情報送受信用の鍵を使用し、トリプルDESによってデータ保有情報やデータ非保有情報を暗号化し、暗号化したデータ保有情報やデータ非保有情報をコンピュータ53に送信する(S−69)。
【0138】
ホストコンピュータ53の中央処理部は、データ保有情報やデータ非保有情報を受信すると、情報送受信用の鍵を使用し、トリプルDESによってデータ保有情報やデータ非保有情報を復号化する。コンピュータ53の中央処理部は、データ非保有情報を受信すると、暗号化したデータ確認指令を所定の間隔で再びマイクロプロセッサ27に送信し、メモリに処理すべきカードデータが存在するかをプロセッサ27に問い合わせる(データ確認指令)。コンピュータ53の中央処理部は、データ保有情報を受信すると、プロセッサ27のメモリに格納されたカードデータの送信をプロセッサ27に要求する(データ送信指令)。コンピュータ53の中央処理部は、情報送受信用の鍵を使用し、トリプルDESによってデータ送信指令を暗号化し、暗号化したデータ送信指令をプロセッサ27に送信する(S−70)。プロセッサ27の中央処理部は、データ送信指令を受信すると、情報送受信用の鍵を使用し、トリプルDESによって暗号化されたデータ送信指令を復号化する。
【0139】
マイクロプロセッサ27の中央処理部は、メモリからデジタル信号(カードデータ)と暗号用の鍵とを取り出し、その鍵を使用してデジタル信号を暗号化して暗号データとする(データ暗号化手段)(S−71)。プロセッサ27の中央処理部は、暗号データをホストコンピュータ53に送信する(暗号データ送信手段)。コンピュータ53は、暗号データを増幅する増幅回路(図示せず)を有し、メモリから復号用の鍵を取り出し、その鍵を使用して増幅回路で増幅した暗号データを復号化する(データ復号化手段)(S−72)。
【0140】
コンピュータ53は、復号化したデジタル信号(平文カードデータ)を文字情報としてディスプレイに表示することができ(データ出力手段)、復号化したデジタル信号(平文カードデータ)を印字情報としてプリンタに印字させることができる(データ出力手段)。コンピュータ53は、暗号化されたデジタル信号または復号化されたデジタル信号をメモリに格納する(データ記憶手段)。コンピュータ53は、暗号データを復号化すると、暗号化したデータ確認指令を所定の間隔で再びプロセッサ27に送信し、メモリに処理すべきカードデータが存在するかをプロセッサ27に問い合わせる(データ確認指令)。
【0141】
コンピュータ53の中央処置部とマイクロプロセッサ27の中央処理部とは、暗号化されたデジタル信号がコンピュータ53に入力される度毎に、コンピュータ53のメモリとプロセッサ27のメモリとにあらかじめ格納された同一かつ有限の回帰カウンタ値を使用して互いに同期しつつ、デジタル信号の暗号化と復号化とに必要な同一のあらたな第2〜第n鍵を順に生成する(鍵生成手段)。コンピュータ53の中央処置部とプロセッサ27の中央処理部とが行う鍵生成手順の一例を、図28〜図33に基づいて説明すると、以下のとおりである。なお、回帰カウンタ値は1〜20とする。ただし、回帰カウンタ値に特に限定はなく、カウンタ値を21以上とすることもできる。
【0142】
システム50を起動した後、第1番目のデジタル信号(カードデータ)がA/D変換チップ26からマイクロプロセッサ27に入力され、デジタル信号をメモリに格納した後、データ送信指令を受信すると、プロセッサ27の中央処理部は、図28に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値1を選択し、デジタル信号にカウンタ値1を添付する。カウンタテーブルには、カウンタ値(1〜20)の格納エリアとそれに対応する3つの鍵の格納エリア(K1,K2,K3)とが作られている。ただし、図28のカウンタデーブルでは、回帰カウンタ値2〜20に対応する第2鍵〜第20鍵は生成されていない。なお、カウンタ値1に対応する第1鍵(Key1)は、初期値としてシステム50の導入時に設定される。
【0143】
マイクロプロセッサ27の中央処理部は、カウンタテーブルからカウンタ値1に対応する第1鍵を取り出し、第1鍵を使用し、トリプルDES(3−KeyトリプルDES)によってデジタル信号とカウンタ値1とを暗号化して暗号データとし(データ暗号化手段)、暗号データをコンピュータ53に送信する(データ送信手段)。プロセッサ27の中央処理部は、暗号データをコンピュータ53に送信した後、回帰カウンタ値を1から2に変更し、カウンタ値2をメモリに格納するとともに、第1番目のデジタル信号(カードデータ)をメモリから消去する。
【0144】
第1番目の暗号データを受信したホストコンピュータ53の中央処理部は、図29に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値1を選択する。カウンタテーブルには、カウンタ値(1〜20)の格納エリアとそれに対応する3つの鍵の格納エリア(K1,K2,K3)とが作られている。ただし、図29のカウンタデーブルでは、回帰カウンタ値2〜20に対応する第2鍵〜第20鍵は生成されていない。なお、カウンタ値1に対応する第1鍵(Key1)は、マイクロプロセッサ27のメモリに格納された第1鍵と同一であり、初期値としてシステム50の導入時に設定される。コンピュータ53の中央処理部は、カウンタテーブルからカウンタ値1に対応する第1鍵を取り出し、第1鍵を使用し、トリプルDES(3−KeyトリプルDES)によって暗号データを復号化してデジタル信号(平文カードデータ)を取得する。コンピュータ53の中央処理部は、暗号データを復号化した後、回帰カウンタ値を1から2に変更し、カウンタ値2をメモリに格納する。
【0145】
第2番目のデジタル信号(カードデータ)がA/D変換チップ26からマイクロプロセッサ27に入力され、デジタル信号をメモリに格納した後、データ送信指令を受信すると、プロセッサ27の中央処理部は、図30に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値2を選択し、デジタル信号にカウンタ値2を添付する。プロセッサ27の中央処理部は、カウンタ値1に対応する第1鍵(初期値)とカウンタ値1とを一方向ハッシュ関数によってハッシュ化したハッシュ出力値を生成し、そのハッシュ出力値をカウンタ値2に対応する第2鍵(Key2)とする(鍵生成手段)。第2鍵(Key2)となるハッシュ出力値は、カウンタテーブルのカウンタ値2に対応する鍵格納エリア(K1,K2,K3)に書き込まれる。なお、図30のカウンタデーブルでは、回帰カウンタ値3〜20に対応する第3鍵〜第20鍵は生成されていない。
【0146】
マイクロプロセッサ27の中央処理部は、カウンタテーブルからカウンタ値2に対応する第2鍵を取り出し、第2鍵を使用し、トリプルDES(3−KeyトリプルDES)によってデジタル信号を暗号化(カウンタ値2を含む)して暗号データとし(データ暗号化手段)、暗号データをコンピュータ53に送信する。プロセッサ27の中央処理部は、暗号データをコンピュータ53に送信した後、回帰カウンタ値を2から3に変更し、カウンタ値3をメモリに格納するとともに、第2番目のデジタル信号(カードデータ)をメモリから消去する。
【0147】
第2番目の暗号データを受信したコンピュータ53は、図31に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値2を選択する。コンピュータ53の中央処理部は、カウンタ値1に対応する第1鍵(初期値)とカウンタ値1とを一方向ハッシュ関数によってハッシュ化したハッシュ出力値を生成し、そのハッシュ出力値をカウンタ値2に対応する第2鍵(Key2)とする(鍵生成手段)。コンピュータ53の中央処理部が使用するハッシュ関数はマイクロプロセッサ27の中央処理部が使用するそれと同一であり、生成した第2鍵(Key2)はプロセッサ27の中央処理部が生成したそれと同一である。第2鍵(Key2)となるハッシュ出力値は、カウンタテーブルのカウンタ値2に対応する鍵格納エリア(K1,K2,K3)に書き込まれる。なお、図31のカウンタデーブルでは、回帰カウンタ値3〜20に対応する第3鍵〜第20鍵は生成されていない。
【0148】
コンピュータ53の中央処理部は、カウンタテーブルからカウンタ値2に対応する第2鍵を取り出し、第2鍵を使用し、トリプルDES(3−KeyトリプルDES)によって暗号データを復号化してデジタル信号(平文カードデータ)を取得する。コンピュータ53の中央処理部は、暗号データを復号化した後、回帰カウンタ値を2から3に変更し、カウンタ値3をメモリに格納する。
【0149】
第3番目のデジタル信号(カードデータ)がA/D変換チップ26からマイクロプロセッサ27に入力され、デジタル信号をメモリに格納した後、データ送信指令を受信すると、プロセッサ27の中央処理部は、図32に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値3を選択し、デジタル信号にカウンタ値3を添付する。プロセッサ27の中央処理部は、カウンタ値2に対応する第2鍵(Key2、ハッシュ値)とカウンタ値2とを一方向ハッシュ関数によってハッシュ化したハッシュ出力値を生成し、そのハッシュ出力値をカウンタ値3に対応する第3鍵(Key3)とする(鍵生成手段)。第3鍵(Key3)となるハッシュ出力値は、カウンタテーブルのカウンタ値3に対応する鍵格納エリア(K1,K2,K3)に書き込まれる。なお、図32のカウンタデーブルでは、回帰カウンタ値4〜20に対応する第4鍵〜第20鍵は生成されていない。
【0150】
マイクロプロセッサ27の中央処理部は、カウンタテーブルからカウンタ値3に対応する第3鍵を取り出し、第3鍵を使用し、トリプルDES(3−KeyトリプルDES)によってデジタル信号を暗号化(カウンタ値3を含む)して暗号データとし(暗号化手段)、暗号データをコンピュータ53に送信する。プロセッサ27の中央処理部は、暗号データをコンピュータ53に送信した後、回帰カウンタ値を3から4に変更し、カウンタ値4をメモリに格納するとともに、第3番目のデジタル信号(カードデータ)をメモリから消去する。
【0151】
第3番目の暗号データを受信したホストコンピュータ53の中央処理部は、図33に示すように、メモリに格納されたカウンタテーブルから回帰カウンタ値3を選択する。コンピュータ53の中央処理部は、カウンタ値2に対応する第2鍵(Key2)とカウンタ値2とを一方向ハッシュ関数によってハッシュ化したハッシュ出力値を生成し、そのハッシュ出力値をカウンタ値3に対応する第3鍵(Key3)とする(鍵生成手段)。コンピュータ53の中央処理部が生成した第3鍵(Key3)は、マイクロプロセッサ27の中央処理部が生成したそれと同一である。第3鍵(Key3)となるハッシュ出力値は、カウンタテーブルのカウンタ値3に対応する鍵格納エリア(K1,K2,K3)に書き込まれる。なお、図33のカウンタデーブルでは、回帰カウンタ値4〜20に対応する第4鍵〜第20鍵は生成されていない。
【0152】
コンピュータ53の中央処理部は、カウンタテーブルからカウンタ値3に対応する第3鍵を取り出し、第3鍵を使用し、トリプルDES(3−KeyトリプルDES)によって暗号データを復号化してデジタル信号(平文カードデータ)を取得する。コンピュータ53の中央処理部は、暗号データを復号化した後、回帰カウンタ値を3から4に変更し、カウンタ値4をメモリに格納する。
【0153】
このように、ホストコンピュータ53の中央処理部とマイクロプロセッサ27の中央処理部とは、回帰カウンタ値1〜20を順番に使って互いに同期しつつ、一方向ハッシュ関数を使用して第2〜第n鍵を生成する。回帰カウンタ値が20を超えると、コンピュータ53の中央処理部とプロセッサ27の中央処理部とは、再びカウンタ値1を使用し、第21鍵〜第40鍵を順に生成する。コンピュータ53の中央処理部とプロセッサ27の中央処理部とは、第21鍵を生成すると、鍵格納エリアに格納された第1鍵を第21鍵に書き換え、第22鍵を生成すると、鍵格納エリアに格納された第2鍵を第22鍵に書き替える。
【0154】
この磁気カード読み取りシステム50は、相互認証手段を実行することでホストコンピュータ53の中央処理部とマイクロプロセッサ27の中央処理部とが互いの正当性を判断することができるから、偽コンピュータがセンサモジュール10A〜10Cに接続された場合や偽センサモジュールがコンピュータ53に接続された場合であっても、それを見破ることができる。システム50は、第3者が偽コンピュータや偽センサモジュールを利用してシステム50に進入することはできず、磁気カードのカードデータ、ハッシュ関数、鍵の盗取を防ぐことができる。
【0155】
このシステム50は、コンピュータ53の中央処理部とプロセッサ27の中央処理部とが認証手段による認証結果が正当であると判断した後に、プロセッサ27の中央処理部がデータ暗号化手段とデータ送信手段とを実行し、コンピュータ53の中央処理部が復号化手段を実行するから、認証を行わずにそれら手段を実行する場合と比較し、磁気カードに格納されたカードデータの盗取を確実に防ぐことができ、第3者による磁気カードの不正な複製や第3者による「なりすまし」を確実に防ぐことができる。
【0156】
このシステム50は、ホストコンピュータ53の中央処理部とマイクロプロセッサ27の中央処理部とが第2〜第n鍵を個別に生成するから、コンピュータ53からプロセッサ27へ鍵を送信する必要はなく、鍵の送信過程における鍵の不正な取得を防ぐことができる。システム50は、プロセッサ27の中央処理部が常に別の鍵を使用して暗号化を行い、コンピュータ53の中央処理部が常に別の鍵を使用して復号化を行うから、鍵を第3者に取得されたとしても、磁気カードに格納されたカードデータを復号化することはできない。また、第2〜第n鍵にハッシュ値を使用するから、たとえ鍵が第3者に不正に取得されたとしても、鍵の解読をすることはできず、第3者による鍵の使用を確実に防ぐことができる。
【0157】
このシステム50は、ホストコンピュータ53の中央処理部とマイクロプロセッサ27の中央処理部とが同一かつ有限の回帰カウンタ値を使用して互いに同期しつつ、第2〜第n鍵を順に生成するから、コンピュータ53が生成する鍵とプロセッサ27が生成する鍵とを一致させることができ、生成した鍵の不一致による暗号データの復号不能を防ぐことができる。また、第2〜第n鍵となるハッシュ出力値に回帰カウンタ値をハッシュ化したハッシュ出力値が含まれるから、第3者がシステム50に不正に進入したとしても、ハッシュ化した回帰カウンタ値を解読することはできず、コンピュータ53の中央処理部とプロセッサ27の中央処理部とがどのカウンタ値を使用して同期しているかを判別することができない。
【0158】
システム50の稼働中にホストコンピュータ53の中央処理部とマイクロプロセッサ27の中央処理部との同期がずれると、コンピュータ53の中央処理部が生成した鍵とプロセッサ27の中央処理部が生成したそれとが異なり、プロセッサ27の中央処理部から送信された暗号データをコンピュータ53の中央処理部が復号化することができない。この場合、コンピュータ53の中央処理部は、生成した鍵による復号化が不可能であると判断し、復号化不能を通知するとともに(復号化不能情報)再同期を要求する(再同期要求)。コンピュータ53の中央処理部は、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって復号化不能情報と再同期要求とを暗号化し、暗号化した復号化不能情報と再同期要求とをプロセッサ27に送信する。
【0159】
コンピュータ53の中央処理部と再同期要求を受け取ったプロセッサ27の中央処理部とは、それらの正当性を判断する外部認証と内部認証(図15,16参照)とを行う(相互認証手段)。コンピュータ53の中央処理部とプロセッサ27の中央処理部とは、相互認証による互いの認証結果を正当であると判断すると、回帰カウンタ値を1(初期値)に戻して再び同期を開始する。コンピュータ53の中央処理部とプロセッサ27の中央処理部とは、カウンタ値を1に戻すと、再び第1鍵を使用して暗号化および復号化を行う。
【0160】
システム50は、生成した鍵に不一致が生じたとしても、ホストコンピュータ53とマイクロプロセッサ27とが回帰カウンタ値を1に戻して再び同期することができるから、コンピュータ53が生成する鍵とプロセッサ27が生成する鍵とを再度一致させることができ、生成した鍵の不一致によるカードデータの復号不能を防ぐことができる。なお、システム50が連続して稼働し、相互認証を日単位や週単位、月単位で行う場合、コンピュータ53の中央処理部とプロセッサ27の中央処理部とは、相互認証による互いの認証結果を正当であると判断すると、回帰カウンタ値を1に戻して再び同期を開始する。以後の手順は、図28〜図33に基づいて説明したそれと同一である。
【0161】
ホストコンピュータ53は、現在使用しているハッシュ関数の使用を中止し、メモリに格納されたハッシュ関数の中からあらたなハッシュ関数を選択し、そのハッシュ関数を使用することができる。ハッシュ関数の変更は、システム50を起動させる度毎に行う場合、日単位や週単位、月単位で行う場合、同期がずれた後、再び同期するときに行う場合がある。コンピュータ53は、あらたなハッシュ関数を使用する場合、マイクロプロセッサ27に既存のハッシュ関数の書き換えを指示する(関数変更指令)。コンピュータ53の中央処理部は、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって関数変更指令とあらたなハッシュ関数とを暗号化し、暗号化した関数変更指令とハッシュ関数とをプロセッサ27に送信する。
【0162】
マイクロプロセッサ27の中央処理部は、関数変更指令とハッシュ関数とを受信すると、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって暗号化された関数変更指令とハッシュ関数とを復号化する。プロセッサ27の中央処理部は、メモリに格納した既存のハッシュ関数を復号化したあらたなハッシュ関数に変更した後、変更完了をコンピュータ53に通知する(変更完了通知)。プロセッサ27の中央処理部は、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって変更完了通知を暗号化し、暗号化した変更完了通知をコンピュータ53に送信する。このシステム50は、関数変更指令やハッシュ関数を暗号化してハッシュ関数の変更を行うから、使用するハッシュ関数を第3者に取得されることはなく、第3者によるハッシュ関数の解読を防ぐことができる。
【0163】
ホストコンピュータ53は、現在使用している暗号化アルゴリズムの使用を中止し、メモリに格納された暗号化アルゴリズムの中からあらたなアルゴリズムを選択し、そのアルゴリズムを使用することができる。暗号化アルゴリズムの変更は、システム50を起動させる度毎に行う場合、日単位や週単位、月単位で行う場合、同期がずれた後、再び同期するときに行う場合がある。コンピュータ53は、あらたな暗号化アルゴリズムを使用する場合、マイクロプロセッサ27に既存のアルゴリズムの書き換えを指示する(関数変更指令)。コンピュータ53の中央処理部は、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって関数変更指令とあらたな暗号化アルゴリズムとを暗号化し、暗号化した関数変更指令とアルゴリズムとをプロセッサ27に送信する。
【0164】
マイクロプロセッサ27の中央処理部は、関数変更指令と暗号化アルゴリズムとを受信すると、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって暗号化された関数変更指令とアルゴリズムとを復号化する。プロセッサ27の中央処理部は、メモリに格納した既存のアルゴリズムを復号化したあらたなアルゴリズムに変更した後、変更完了をコンピュータ53に通知する(変更完了通知)。プロセッサ27の中央処理部は、メモリに格納された情報送受信用の鍵を使用し、トリプルDESによって変更完了通知を暗号化し、暗号化した変更完了通知をコンピュータ53に送信する。このシステム50は、関数変更指令や暗号化アルゴリズムを暗号化してアルゴリズムの変更を行うから、使用するアルゴリズムを第3者に取得されることはない。
【0165】
このシステム50おける磁気カードリーダには、挿入電動型の他に、センサモジュール10A〜10Cを取り付けた手動ハンディカードリーダを使用することもできる。また、磁気カードリーダをPOSシステムに接続することもできる。磁気カードリーダがPOSシステムに接続された場合、カードリーダにコントローラを設置する必要はなく、外部サーバ51との接続はPOSシステムに内蔵されたコンピュータによって行われる。ファームウェアや暗号化アルゴリズムは、外部サーバからPOSシステムのコンピュータのメモリにダウンロードされて一時保管された後、カードリーダの磁気ヘッドのマイクロプロセッサ27に出力される。
【符号の説明】
【0166】
10A センサモジュール
10B センサモジュール
10C センサモジュール
11 ハウジング
12 磁気ヘッド(センサ素子)
13 可撓性基板
14 信号処理装置
17 前端部
19 接続端子設置領域
20 電子部品設置領域
21 A/D変換チップ設置領域
22 マイクロプロセッサ設置領域(デジタルIC設置領域)
24 接続端子
25 抵抗素子(電子部品)
26 A/D変換チップ
27 マイクロプロセッサ(デジタルIC)
28 エポキシ樹脂(固化物質)
29 第1折曲線
30 第2折曲線
31 第3折曲線
32 第4折曲線
【特許請求の範囲】
【請求項1】
一方向へ延びる可撓性基板と、前記可撓性基板の前端部に設置された信号処理装置と、測定対象からの測定量をアナログ信号に変換するセンサ素子とを備え、前記信号処理装置が、前記センサ素子に接続されて該センサ素子から出力されたアナログ信号を受信する接続端子と、前記接続端子に接続されて該接続端子が前記センサ素子から受信したアナログ信号をデジタル信号に変換するA/D変換チップと、前記A/D変換チップに接続されて該A/D変換チップから出力されたデジタル信号を暗号化するデジタルICとを含み、
前記接続端子と前記A/D変換チップと前記デジタルICとを取り付けた前記可撓性基板の前端部が、前記一方向へ向かって少なくとも2つに折り畳まれた状態で所定容積のハウジングの内部に収容され、前記接続端子と前記A/D変換チップと前記デジタルICとが、前記可撓性基板の前端部とともに前記ハウジングの内部に充填された固化物質によって該ハウジングに固定されていることを特徴とするセンサモジュール。
【請求項2】
前記接続端子と前記A/D変換チップと前記デジタルICとが、前記一方向へ並んだ状態で前記可撓性基板の前端部に設置され、前記可撓性基板の前端部が、前記接続端子と前記A/D変換チップとの間で折曲されているとともに、前記A/D変換チップと前記デジタルICとの間で折曲されている請求項1記載のセンサモジュール。
【請求項3】
前記可撓性基板の前端部のうちの前記接続端子を設置する部分が、前記一方向へ並ぶ接続端子設置領域と電子部品設置領域とに区分され、前記接続端子設置領域と前記電子部品設置領域とに間で前記一方向へ向かって折曲されている請求項2記載のセンサモジュール。
【請求項4】
前記センサ素子が、コイルとコアとを有して所定のデータを記憶した磁気カードから前記データを読み取る磁気ヘッドである請求項1ないし請求項3いずれかに記載のセンサモジュール。
【請求項5】
一方向へ延びる可撓性基板と、前記可撓性基板の前端部に設置された信号処理装置と、所定容積のハウジングと、測定対象からの測定量をアナログ信号に変換するセンサ素子とから作られるセンサモジュールの製造方法において、
前記信号処理装置が、前記センサ素子に接続されて該センサ素子から出力されたアナログ信号を受信する接続端子と、前記接続端子に接続されて該接続端子が前記センサ素子から受信したアナログ信号をデジタル信号に変換するA/D変換チップと、前記A/D変換チップに接続されて該A/D変換チップから出力されたデジタル信号を暗号化するデジタルICとを含み、
前記可撓性基板の前端部に前記接続端子と前記A/D変換チップと前記デジタルICとを設置する設置工程と、前記可撓性基板の前端部を前記一方向へ向かって少なくとも2つに折り畳む折曲工程と、折り畳んだ前記可撓性基板の前端部を前記接続端子と前記A/D変換チップと前記デジタルICとともに前記ハウジングの内部に収容する収容工程と、前記ハウジング内部に固化物質を充填し、前記固化物質によって前記接続端子と前記A/D変換チップと前記デジタルICとを前記可撓性基板の前端部とともに前記ハウジングの内部に固定する固定工程とを有するセンサモジュールの製造方法。
【請求項6】
前記設置工程では、前記接続端子と前記A/D変換チップと前記デジタルICとが前記一方向へ並んだ状態で前記可撓性基板の前端部に設置され、前記折曲工程では、前記可撓性基板の前端部が前記接続端子と前記A/D変換チップとの間で折曲されるとともに、前記A/D変換チップと前記デジタルICとの間で折曲される請求項5記載のセンサモジュールの製造方法。
【請求項7】
前記折曲工程では、前記可撓性基板の前端部のうちの前記接続端子を設置する部分が前記一方向へ並ぶ接続端子設置領域と電子部品設置領域とに区分され、前記接続端子設置領域と前記電子部品設置領域とに間で前記一方向へ向かって折曲されている請求項6記載のセンサモジュールの製造方法。
【請求項8】
前記センサ素子が、コイルとコアとを有して所定のデータを記憶した磁気カードから前記データを読み取る磁気ヘッドである請求項5ないし請求項7いずれかに記載のセンサモジュールの製造方法。
【請求項1】
一方向へ延びる可撓性基板と、前記可撓性基板の前端部に設置された信号処理装置と、測定対象からの測定量をアナログ信号に変換するセンサ素子とを備え、前記信号処理装置が、前記センサ素子に接続されて該センサ素子から出力されたアナログ信号を受信する接続端子と、前記接続端子に接続されて該接続端子が前記センサ素子から受信したアナログ信号をデジタル信号に変換するA/D変換チップと、前記A/D変換チップに接続されて該A/D変換チップから出力されたデジタル信号を暗号化するデジタルICとを含み、
前記接続端子と前記A/D変換チップと前記デジタルICとを取り付けた前記可撓性基板の前端部が、前記一方向へ向かって少なくとも2つに折り畳まれた状態で所定容積のハウジングの内部に収容され、前記接続端子と前記A/D変換チップと前記デジタルICとが、前記可撓性基板の前端部とともに前記ハウジングの内部に充填された固化物質によって該ハウジングに固定されていることを特徴とするセンサモジュール。
【請求項2】
前記接続端子と前記A/D変換チップと前記デジタルICとが、前記一方向へ並んだ状態で前記可撓性基板の前端部に設置され、前記可撓性基板の前端部が、前記接続端子と前記A/D変換チップとの間で折曲されているとともに、前記A/D変換チップと前記デジタルICとの間で折曲されている請求項1記載のセンサモジュール。
【請求項3】
前記可撓性基板の前端部のうちの前記接続端子を設置する部分が、前記一方向へ並ぶ接続端子設置領域と電子部品設置領域とに区分され、前記接続端子設置領域と前記電子部品設置領域とに間で前記一方向へ向かって折曲されている請求項2記載のセンサモジュール。
【請求項4】
前記センサ素子が、コイルとコアとを有して所定のデータを記憶した磁気カードから前記データを読み取る磁気ヘッドである請求項1ないし請求項3いずれかに記載のセンサモジュール。
【請求項5】
一方向へ延びる可撓性基板と、前記可撓性基板の前端部に設置された信号処理装置と、所定容積のハウジングと、測定対象からの測定量をアナログ信号に変換するセンサ素子とから作られるセンサモジュールの製造方法において、
前記信号処理装置が、前記センサ素子に接続されて該センサ素子から出力されたアナログ信号を受信する接続端子と、前記接続端子に接続されて該接続端子が前記センサ素子から受信したアナログ信号をデジタル信号に変換するA/D変換チップと、前記A/D変換チップに接続されて該A/D変換チップから出力されたデジタル信号を暗号化するデジタルICとを含み、
前記可撓性基板の前端部に前記接続端子と前記A/D変換チップと前記デジタルICとを設置する設置工程と、前記可撓性基板の前端部を前記一方向へ向かって少なくとも2つに折り畳む折曲工程と、折り畳んだ前記可撓性基板の前端部を前記接続端子と前記A/D変換チップと前記デジタルICとともに前記ハウジングの内部に収容する収容工程と、前記ハウジング内部に固化物質を充填し、前記固化物質によって前記接続端子と前記A/D変換チップと前記デジタルICとを前記可撓性基板の前端部とともに前記ハウジングの内部に固定する固定工程とを有するセンサモジュールの製造方法。
【請求項6】
前記設置工程では、前記接続端子と前記A/D変換チップと前記デジタルICとが前記一方向へ並んだ状態で前記可撓性基板の前端部に設置され、前記折曲工程では、前記可撓性基板の前端部が前記接続端子と前記A/D変換チップとの間で折曲されるとともに、前記A/D変換チップと前記デジタルICとの間で折曲される請求項5記載のセンサモジュールの製造方法。
【請求項7】
前記折曲工程では、前記可撓性基板の前端部のうちの前記接続端子を設置する部分が前記一方向へ並ぶ接続端子設置領域と電子部品設置領域とに区分され、前記接続端子設置領域と前記電子部品設置領域とに間で前記一方向へ向かって折曲されている請求項6記載のセンサモジュールの製造方法。
【請求項8】
前記センサ素子が、コイルとコアとを有して所定のデータを記憶した磁気カードから前記データを読み取る磁気ヘッドである請求項5ないし請求項7いずれかに記載のセンサモジュールの製造方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【公開番号】特開2010−192060(P2010−192060A)
【公開日】平成22年9月2日(2010.9.2)
【国際特許分類】
【出願番号】特願2009−37297(P2009−37297)
【出願日】平成21年2月20日(2009.2.20)
【出願人】(502129519)シーイエス エレクトロニカ インダストリア エ コメルスィオ リミタダ (3)
【Fターム(参考)】
【公開日】平成22年9月2日(2010.9.2)
【国際特許分類】
【出願日】平成21年2月20日(2009.2.20)
【出願人】(502129519)シーイエス エレクトロニカ インダストリア エ コメルスィオ リミタダ (3)
【Fターム(参考)】
[ Back to top ]