JP2013046334A - Information security system, host, device, control method thereof, and program thereof - Google Patents
Information security system, host, device, control method thereof, and program thereof Download PDFInfo
- Publication number
- JP2013046334A JP2013046334A JP2011184503A JP2011184503A JP2013046334A JP 2013046334 A JP2013046334 A JP 2013046334A JP 2011184503 A JP2011184503 A JP 2011184503A JP 2011184503 A JP2011184503 A JP 2011184503A JP 2013046334 A JP2013046334 A JP 2013046334A
- Authority
- JP
- Japan
- Prior art keywords
- value
- oscillator
- frequency
- signal path
- related value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 103
- 230000010355 oscillation Effects 0.000 claims abstract description 208
- 238000012937 correction Methods 0.000 claims abstract description 104
- 238000005259 measurement Methods 0.000 claims abstract description 59
- 238000004519 manufacturing process Methods 0.000 claims abstract description 47
- 238000003860 storage Methods 0.000 claims description 72
- 239000004020 conductor Substances 0.000 claims 2
- 230000004044 response Effects 0.000 abstract description 34
- 230000008569 process Effects 0.000 description 75
- 230000008859 change Effects 0.000 description 38
- 238000012545 processing Methods 0.000 description 32
- 230000006870 function Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 12
- 230000004913 activation Effects 0.000 description 8
- 238000009795 derivation Methods 0.000 description 8
- 238000011156 evaluation Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 239000000470 constituent Substances 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
Images
Abstract
Description
本発明は、情報セキュリティシステム,ホスト,デバイス,その制御方法及びそのプログラムに関する。 The present invention relates to an information security system, a host, a device, a control method thereof, and a program thereof.
従来、情報セキュリティシステムにおいて、PUF(physical Unclonable Function,物理的複製不可能関数)と呼ばれる技術が知られている。このPUFは、製造時に制御できない固有の物理的特徴を用いるものであり、この固有の物理的特徴まで第三者が複製することは困難であることを利用して偽造や秘密情報の漏洩を防止するものである。このようなPUFの具体例として、固有の発振周波数を持つ発振器を用い、この発振器の発振周波数の製造時のわずかなばらつきを固有の物理的特徴として利用するものが考えられている。 Conventionally, a technology called PUF (physical unclonable function) is known in information security systems. This PUF uses unique physical features that cannot be controlled at the time of manufacture, and it is difficult for third parties to duplicate these unique physical features to prevent counterfeiting and leakage of confidential information To do. As a specific example of such a PUF, an oscillator having a specific oscillation frequency is used, and a slight variation at the time of manufacturing the oscillation frequency of this oscillator is used as a specific physical characteristic.
例えば特許文献1には、NOT回路及びNAND回路を直列に接続して出力が発振するように構成したリングオシレーターを、PUFとして用いることが記載されている。そして、このリングオシレーターを複数配置したデバイスにおいて、複数のリングオシレーターのうちから選択された2つのリングオシレーターの発振周波数を測定し、測定した発振周波数の大小関係に基づく値を出力ビットとして出力することが記載されている。これにより、選択されたリングオシレーターの発振周波数の大小関係が製造時のばらつきにより変わることを利用して、固有の値を出力ビットとして出力することができる。例えば、このリングオシレーターと同じものを製造したとしても、製造時の発振周波数のばらつきまでは再現できないため、上記大小関係が同じになるとは限らず、出力ビットは同じ値になるとは限らない。そして、このようなリングオシレーターの選択と出力ビットとの正しい対応関係を予めリングオシレーターの製造時に調べて記憶しておき、リングオシレーターの選択と出力ビットとの対応が予め記憶しておいた対応関係と一致するか否かの判定を複数回行うことで、リングオシレーターを備えたデバイスが正規のものであるか否かを判定できるとしている。
For example,
ここで、発振器の発振周波数は、製造時のばらつきにより変化する他に、発振器の配置や配線の違いによっても変化する。例えば、配線が長ければその分だけ信号の遅延が生じるため、発振周波数が小さくなるなどである。このような発振器の配置や配線の違いによる発振周波数の変化が大きいと、相対的に製造時のばらつきが発振周波数に与える影響が小さくなってしまう。そして、発振器の配置や配線に起因して、選択された発振器と出力される固有の値との対応関係に偏りが生じると、製造時のばらつきが再現できていない偽造品であっても固有の値が正規品と同じになる可能性が高まるなど、デバイスのユニーク性(差異性)が低下してしまい、セキュリティの観点から問題となる。 Here, the oscillation frequency of the oscillator changes due to variations in manufacturing, and also changes due to differences in the arrangement and wiring of the oscillator. For example, if the wiring is long, the signal is delayed by that amount, so that the oscillation frequency becomes small. If the change in the oscillation frequency due to the difference in the placement and wiring of the oscillator is large, the influence of variations during manufacturing on the oscillation frequency becomes relatively small. If the correspondence between the selected oscillator and the output unique value is biased due to the placement and wiring of the oscillator, even if it is a counterfeit product that cannot reproduce the manufacturing variations, The uniqueness (difference) of the device is reduced, such as increasing the possibility that the value will be the same as the regular product, which is a problem from the viewpoint of security.
本発明は、上述した課題に鑑みなされたものであり、デバイスのユニーク性をより高めた値を導出することを主目的とする。 The present invention has been made in view of the above-described problems, and has as its main object to derive a value that further enhances the uniqueness of a device.
本発明の情報セキュリティシステムは、
ホストとデバイスとを備えた情報セキュリティシステムであって、
製造ばらつきに起因する固有の発振周波数をもつ複数の発振器を有する発振回路と、
前記複数の発振器のうち少なくとも1つの発振器を選択する選択手段と、
前記選択された発振器を発振させ、該発振の周波数に基づく実測周波数関連値を取得する取得手段と、
前記取得された実測周波数関連値を、複数の前記デバイスにおける前記選択された発振器と同じ配置及び配線の発振器を発振させたときの周波数の平均に基づく値である平均周波数関連値に基づいて補正した補正後周波数関連値を導出する補正手段と、
を備え、
前記発振回路及び前記選択手段は、前記デバイスが有しており、
前記取得手段は、前記デバイス又は前記ホストが有しており、
前記補正手段は、前記デバイス又は前記ホストが有している、
ものである。
The information security system of the present invention
An information security system comprising a host and a device,
An oscillation circuit having a plurality of oscillators with inherent oscillation frequencies due to manufacturing variations;
Selecting means for selecting at least one oscillator of the plurality of oscillators;
An acquisition means for oscillating the selected oscillator and acquiring an actually measured frequency-related value based on the frequency of the oscillation;
The acquired actual measurement frequency related value is corrected based on an average frequency related value that is a value based on an average frequency when an oscillator having the same arrangement and wiring as the selected oscillator in the plurality of devices is oscillated. Correction means for deriving a corrected frequency-related value;
With
The oscillation circuit and the selection unit are included in the device,
The acquisition unit has the device or the host,
The correction means has the device or the host,
Is.
この本発明の情報セキュリティシステムでは、製造ばらつきに起因する固有の発振周波数をもつ複数の発振器を有する発振回路をデバイスが有している。そして、まず、この複数の発振器のうち少なくとも1つの発振器を選択し、選択された発振器を発振させ、その発振の周波数に基づく実測周波数関連値を取得する。続いて、取得された実測周波数関連値を、複数のデバイスにおける選択された発振器と同じ配置及び配線の発振器を発振させたときの周波数の平均に基づく値である平均周波数関連値に基づいて補正した補正後周波数関連値を導出する。このように、実測周波数関連値を平均周波数関連値で補正することで、実測周波数関連値から発振器の配置や配線に起因する発振周波数の変化分を除去することができ、デバイスのユニーク性をより高めた補正後周波数関連値を導出することができる。なお、「選択された発振器と同じ配置及び配線の発振器」とは、選択された発振器と発振器内部の回路や素子の配置及び発振器内部の配線が同じである発振器を含む。 In the information security system of the present invention, the device has an oscillation circuit having a plurality of oscillators having inherent oscillation frequencies caused by manufacturing variations. First, at least one oscillator is selected from the plurality of oscillators, the selected oscillator is oscillated, and a measured frequency-related value based on the frequency of the oscillation is acquired. Subsequently, the obtained measured frequency-related value is corrected based on the average frequency-related value, which is a value based on the average frequency when the oscillator having the same arrangement and wiring as the selected oscillator in the plurality of devices is oscillated. Derived frequency-related values after correction. In this way, by correcting the measured frequency-related value with the average frequency-related value, it is possible to remove the change in the oscillation frequency caused by the placement and wiring of the oscillator from the measured frequency-related value, making the device more unique. An enhanced corrected frequency-related value can be derived. The “oscillator having the same arrangement and wiring as the selected oscillator” includes an oscillator in which the arrangement of circuits and elements inside the oscillator and the wiring in the oscillator are the same as the selected oscillator.
ここで、補正により発振器の配置や配線に起因する発振周波数の変化分を除去することができる理由について説明する。まず、実測周波数関連値は、発振器の製造ばらつきに起因する発振周波数の変化分と、発振器の配置や配線に起因する発振周波数の変化分との両方の影響を受けた値となる。そして、同じ配置及び配線の発振器であれば、発振器の配置や配線に起因する発振周波数の変化分は同程度であるのに対し、発振器の製造ばらつきに起因する発振周波数の変化分は発振器毎に異なる。そのため、平均周波数関連値においては、製造ばらつきに起因する発振周波数の変化分は互いに打ち消しあい、配置や配線に起因する発振周波数の変化分の影響が残る。したがって、この平均周波数関連値で実測周波数関連値を補正することで、実測周波数関連値から配置や配線に起因する発振周波数の変化分を除去することができる。なお、平均周波数関連値は、配置や配線に起因する発振周波数の変化分を除去可能な値であればよいため、実際に選択された発振器と同じ配置及び配線の発振器を発振させたときの周波数の平均に基づく値であればよく、実際に選択された発振器自体を発振させたときの周波数に基づいている必要はない。 Here, the reason why the change in the oscillation frequency due to the placement and wiring of the oscillator can be removed by the correction will be described. First, the measured frequency-related value is a value affected by both the change in the oscillation frequency due to the manufacturing variation of the oscillator and the change in the oscillation frequency due to the placement and wiring of the oscillator. If the oscillator has the same arrangement and wiring, the change in the oscillation frequency due to the arrangement and wiring of the oscillator is about the same, whereas the change in the oscillation frequency due to the manufacturing variation of the oscillator is different for each oscillator. Different. Therefore, in the average frequency-related value, the change in the oscillation frequency due to the manufacturing variation cancels each other, and the influence of the change in the oscillation frequency due to the arrangement and wiring remains. Therefore, by correcting the measured frequency related value with this average frequency related value, it is possible to remove the change in the oscillation frequency caused by the arrangement and wiring from the measured frequency related value. Note that the average frequency-related value may be any value that can eliminate the change in the oscillation frequency due to the arrangement and wiring, so the frequency when the oscillator with the same arrangement and wiring as the actually selected oscillator is oscillated. Any value may be used as long as it is based on the average of the two, and it is not necessary to be based on the frequency when the actually selected oscillator itself is oscillated.
なお、実測周波数関連値は、例えば、所定期間における発振回数としてもよいし、所定回数発振するのに要する時間としてもよい。2つ以上の発振器を選択する場合には、実測周波数関連値は、例えば所定期間における発振回数の差又は比としてもよいし、所定回数発振するのに要する時間の差又は比としてもよい。平均周波数関連値は、例えば、複数のデバイスにおける実測周波数関連値の平均としてもよい。2つ以上の発振器を選択する場合には、平均周波数関連値は、例えば選択された2つの発振器とそれぞれ同じ配置及び配線の発振器について、所定期間における発振回数の差又は比か、所定回数発振するのに要する時間の差又は比を導出し、これを複数のデバイスに渡って導出して平均したものとしてもよい。あるいは、平均周波数関連値は、所定期間における発振回数又は所定回数発振するのに要する時間を選択された2つ以上の発振器のそれぞれについて複数のデバイスに渡って平均し、その平均の差又は比としてもよい。補正後周波数関連値は、例えば実測周波数関連値と平均周波数関連値との差又は比としてもよい。 Note that the measured frequency-related value may be, for example, the number of oscillations in a predetermined period or the time required for oscillation a predetermined number of times. When two or more oscillators are selected, the measured frequency-related value may be, for example, a difference or ratio of the number of oscillations in a predetermined period, or a difference or ratio of the time required to oscillate a predetermined number of times. The average frequency related value may be, for example, an average of actually measured frequency related values in a plurality of devices. When two or more oscillators are selected, the average frequency-related value is, for example, the difference or ratio of the number of oscillations in a predetermined period or the predetermined number of times for oscillators having the same arrangement and wiring as the two selected oscillators. It is also possible to derive the difference or ratio of the time required for the calculation and average it by deriving it over a plurality of devices. Alternatively, the average frequency-related value is obtained by averaging the number of oscillations in a predetermined period or the time required for oscillation over a plurality of devices for each of two or more selected oscillators, and calculating the average difference or ratio Also good. The corrected frequency-related value may be, for example, the difference or ratio between the actually measured frequency-related value and the average frequency-related value.
本発明の情報セキュリティシステムにおいて、前記発振器は、リング状に奇数段の反転回路が直列接続されたリングオシレーターとしてもよい。リングオシレーターは、IC内部の論理素子や配線のみを用いて構成可能であり、デバイスの製造ばらつきが論理素子の遅延に影響することでデバイス間の差異がその発振周波数特性に表れやすいため、本発明に適用する意義が高い。なお、反転回路とは、入力値に対して出力値が反転する回路であり、例えば、NOTゲート,NANDゲート又はNORゲートの少なくともいずれかとしてもよい。また、リングオシレーターの反転回路の段数は、奇数段であればよく、例えば段数を3段以上としてもよく、7段としてもよい。また、リングオシレーターは、奇数段の反転回路と反転回路でない他の遅延回路とがリング状に直列接続されたものとしてもよい。特に反転回路の段数を1段とする場合には、反転回路と遅延回路とをリング状に直列接続することが好ましい。段数や遅延回路の有無は、例えばリングオシレーターからの出力信号を扱う上で適した発振周波数となるように適宜選択することができる。 In the information security system of the present invention, the oscillator may be a ring oscillator in which an odd number of inversion circuits are connected in series in a ring shape. The ring oscillator can be configured using only the logic elements and wirings inside the IC, and the difference between the devices tends to appear in the oscillation frequency characteristics because the manufacturing variation of the devices affects the delay of the logic elements. The significance of applying to is high. Note that the inverting circuit is a circuit that inverts an output value with respect to an input value, and may be, for example, at least one of a NOT gate, a NAND gate, and a NOR gate. Further, the number of stages of the inverting circuit of the ring oscillator may be an odd number, for example, the number of stages may be three or more, or may be seven. Further, the ring oscillator may be configured such that an odd number of inversion circuits and other delay circuits that are not inversion circuits are connected in series in a ring shape. In particular, when the number of inverting circuits is one, it is preferable that the inverting circuit and the delay circuit are connected in series in a ring shape. The number of stages and the presence / absence of a delay circuit can be appropriately selected so that, for example, an oscillation frequency suitable for handling an output signal from a ring oscillator is obtained.
本発明の情報セキュリティシステムにおいて、前記発振器は、リング状に奇数段の反転回路が直列接続されるとともに、少なくとも1つ以上の段において複数の反転回路が並列に接続され、該並列に接続された反転回路のうちいずれを各段の経路とするかによって複数の信号経路が選択可能であり、且つ、該信号経路を構成する各反転回路の製造ばらつきに起因する各信号経路固有の発振周波数をもち、前記選択手段は、前記複数の発振器のうち少なくとも1つの発振器を選択すると共に、該選択された発振器について複数の前記信号経路のうちいずれか1つの信号経路を選択する手段であり、前記取得手段は、前記選択された発振器を前記選択された信号経路で発振させ、該発振の周波数に基づく前記実測周波数関連値を取得する手段であり、前記補正手段は、前記取得された実測周波数関連値を、複数の前記デバイスにおける前記選択された発振器と同じ配置及び配線の発振器を前記選択された信号経路で発振させたときの周波数の平均に基づく値である前記平均周波数関連値に基づいて補正した前記補正後周波数関連値を導出する手段としてもよい。こうすれば、1つの発振器の各段において並列に接続されたいずれの反転回路を選択するかにより、発振器の固有の発振周波数が異なる値となるため、擬似的に発振器の数を増やすことができる。なお、いずれの発振器が選択されるかによって補正後周波数関連値は異なる値となるため、発振器の数が多いほど補正後周波数関連値が第三者に予測されにくくなり、セキュリティを向上させることができる。 In the information security system of the present invention, the oscillator has an odd number of inversion circuits connected in series in a ring shape, and a plurality of inversion circuits are connected in parallel in at least one or more stages. A plurality of signal paths can be selected depending on which of the inverting circuits is used as the path of each stage, and each signal path has an oscillation frequency unique to each signal path resulting from manufacturing variations of the inverting circuits constituting the signal path. The selecting means is means for selecting at least one oscillator among the plurality of oscillators, and selecting any one of the plurality of signal paths for the selected oscillator, and the obtaining means Is means for oscillating the selected oscillator along the selected signal path and obtaining the measured frequency related value based on the frequency of the oscillation. The correction means sets the acquired measured frequency-related value to an average frequency when an oscillator having the same arrangement and wiring as the selected oscillator in the plurality of devices is oscillated in the selected signal path. It is good also as a means to derive | lead-out the said frequency-related value after correction | amendment correct | amended based on the said average frequency relevant value which is a value based on. In this way, the oscillation frequency inherent to the oscillator varies depending on which inverting circuit connected in parallel in each stage of one oscillator, so that the number of oscillators can be increased in a pseudo manner. . Since the corrected frequency-related value varies depending on which oscillator is selected, the corrected frequency-related value is less likely to be predicted by a third party as the number of oscillators increases, which may improve security. it can.
本発明の情報セキュリティシステムにおいて、前記補正手段は、前記選択された発振器の前記選択された信号経路が所定の基準信号経路でなく且つ該基準信号経路と比べて1つの反転回路のみが異なる信号経路であるオフセット信号経路でないときには、複数の前記デバイスについて前記選択された発振器と同じ配置及び配線の発振器を前記基準信号経路で発振させたときの前記平均周波数関連値である基準値と、複数の前記デバイスについて前記選択された発振器と同じ配置及び配線の発振器を前記オフセット信号経路で発振させたときの前記平均周波数関連値と前記基準値との差であるオフセット値と、を用いて、前記選択された信号経路のうち前記基準信号経路と異なる反転回路に対応する前記オフセット値と前記基準値との和を前記選択された信号経路に対応する前記平均周波数関連値として導出し、該導出された平均周波数関連値に基づいて前記取得された実測周波数関連値を補正した前記補正後周波数関連値を導出する手段としてもよい。こうすれば、基準信号経路でなく且つオフセット信号経路でもない信号経路の平均周波数関連値を、基準値とオフセット値との和をとるという簡易な処理で導出できる。なお、前記補正手段は、前記選択された発振器の前記選択された信号経路が前記オフセット信号経路であるときには、前記選択された信号経路のうち前記基準信号経路と異なる反転回路に対応する前記オフセット値と前記基準値との和を前記選択された信号経路に対応する前記平均周波数関連値として導出し、該導出された平均周波数関連値に基づいて前記取得された実測周波数関連値を補正した前記補正後周波数関連値を導出する手段としてもよい。 In the information security system of the present invention, the correction means may be configured such that the selected signal path of the selected oscillator is not a predetermined reference signal path, and only one inverting circuit is different from the reference signal path. When the offset signal path is not an offset signal path, a reference value that is the average frequency related value when an oscillator having the same arrangement and wiring as the selected oscillator is oscillated in the reference signal path for the plurality of devices, An offset value that is a difference between the average frequency-related value and the reference value when an oscillator having the same arrangement and wiring as the selected oscillator is oscillated in the offset signal path for the device. The sum of the offset value and the reference value corresponding to an inverting circuit different from the reference signal path among the signal paths As means for deriving the corrected frequency-related value obtained by deriving the average frequency-related value corresponding to the selected signal path and correcting the acquired actual frequency-related value based on the derived average frequency-related value Also good. In this way, the average frequency related value of the signal path that is not the reference signal path and not the offset signal path can be derived by a simple process of calculating the sum of the reference value and the offset value. When the selected signal path of the selected oscillator is the offset signal path, the correction unit is configured to output the offset value corresponding to an inverting circuit different from the reference signal path among the selected signal paths. And the reference value is derived as the average frequency related value corresponding to the selected signal path, and the obtained actual frequency related value is corrected based on the derived average frequency related value. It may be a means for deriving a post-frequency related value.
本発明の情報セキュリティシステムにおいて、前記補正手段は、前記選択された発振器の前記選択された信号経路が所定の基準信号経路でなく且つ該基準信号経路と比べて1つの反転回路のみが異なる信号経路であるオフセット信号経路でないときには、複数の前記デバイスについて前記選択された発振器と同じ配置及び配線の発振器を前記基準信号経路で発振させたときの前記平均周波数関連値である基準値と、複数の前記デバイスについて前記選択された発振器と同じ配置及び配線の発振器を前記オフセット信号経路で発振させたときの前記平均周波数関連値と前記基準値との比であるオフセット値と、を用いて、前記選択された信号経路のうち前記基準信号経路と異なる反転回路に対応する前記オフセット値と前記基準値との積を前記選択された信号経路に対応する前記平均周波数関連値として導出し、該導出された平均周波数関連値に基づいて前記取得された実測周波数関連値を補正した前記補正後周波数関連値を導出する手段としてもよい。こうすれば、基準信号経路でなく且つオフセット信号経路でもない信号経路の平均周波数関連値を、基準値とオフセット値との積をとるという簡易な処理で導出できる。なお、前記オフセット値は、複数の前記デバイスについて前記選択された発振器と同じ配置及び配線の発振器を前記オフセット信号経路で発振させたときの前記平均周波数関連値を前記基準値で除した値としてもよい。また、前記補正手段は、前記選択された発振器の前記選択された信号経路が前記オフセット信号経路であるときには、前記選択された信号経路のうち前記基準信号経路と異なる反転回路に対応する前記オフセット値と前記基準値との積を前記選択された信号経路に対応する前記平均周波数関連値として導出し、該導出された平均周波数関連値に基づいて前記取得された実測周波数関連値を補正した前記補正後周波数関連値を導出する手段としてもよい。 In the information security system of the present invention, the correction means may be configured such that the selected signal path of the selected oscillator is not a predetermined reference signal path, and only one inverting circuit is different from the reference signal path. When the offset signal path is not an offset signal path, a reference value that is the average frequency related value when an oscillator having the same arrangement and wiring as the selected oscillator is oscillated in the reference signal path for the plurality of devices, An offset value that is a ratio of the average frequency-related value and the reference value when an oscillator having the same arrangement and wiring as the selected oscillator for the device is oscillated in the offset signal path is used. Product of the offset value and the reference value corresponding to an inverting circuit different from the reference signal path among the signal paths As means for deriving the corrected frequency-related value obtained by deriving the average frequency-related value corresponding to the selected signal path and correcting the acquired actual frequency-related value based on the derived average frequency-related value Also good. In this way, the average frequency related value of the signal path that is neither the reference signal path nor the offset signal path can be derived by a simple process of taking the product of the reference value and the offset value. The offset value may be a value obtained by dividing the average frequency related value when an oscillator having the same arrangement and wiring as the selected oscillator for a plurality of the devices is oscillated in the offset signal path by the reference value. Good. Further, the correction means, when the selected signal path of the selected oscillator is the offset signal path, the offset value corresponding to an inverting circuit different from the reference signal path among the selected signal paths. And the reference value is derived as the average frequency-related value corresponding to the selected signal path, and the obtained actual frequency-related value is corrected based on the derived average frequency-related value. It may be a means for deriving a post-frequency related value.
本発明の情報セキュリティシステムにおいて、前記選択手段は、前記複数の発振器のうち2つの発振器を選択する手段であり、前記取得手段は、前記選択された2つの発振器を発振させ、該2つの発振器の周波数の差に基づく値である前記実測周波数関連値を取得する手段であり、前記補正手段は、前記取得された実測周波数関連値を、複数の前記デバイスについての前記選択された2つの発振器と同じ配置及び配線の発振器を発振させたときの該2つの発振器の周波数の平均的な差に基づく値である前記平均周波数関連値に基づいて補正することで、前記補正後周波数関連値を導出する手段としてもよい。こうすれば、1つの発振器のみを選択する場合と比較して、発振器の選択のパターン数が増す。なお発振器の選択のパターンによって補正後周波数関連値は異なる値となるため、発振器の選択のパターン数が多いほど補正後周波数関連値が第三者に予測されにくくなり、セキュリティを向上させることができる。なお、2つの発振器の周波数の差に基づく値とは、例えば所定期間における発振回数の差又は比としてもよいし、所定回数発振するのに要する時間の差又は比としてもよいし、2つの発振器を同時に発振させて一方の発振器が所定回数発振したときの他方の発振回数としてもよい。また、2つの発振器の周波数の平均的な差に基づく値とは、2つの発振器の所定期間における発振回数の差又は比の平均としてもよいし、所定回数発振するのに要する時間の差又は比の平均としてもよいし、所定期間における発振回数又は所定回数発振するのに要する時間を2つの発振器のそれぞれについて複数のデバイスに渡って平均し、その平均の差又は比としてもよい。あるいは、2つの発振器の周波数の平均的な差に基づく値は、2つの発振器を同時に発振させて一方の発振器が所定回数発振したときの他方の発振回数を複数のデバイスについて導出し、その平均としてもよい。 In the information security system of the present invention, the selection means is means for selecting two oscillators of the plurality of oscillators, and the acquisition means oscillates the two selected oscillators, and the two oscillators Means for obtaining the measured frequency-related value, which is a value based on a difference in frequency, and the correction means uses the obtained measured frequency-related value as the two selected oscillators for the plurality of devices. Means for deriving the corrected frequency-related value by correcting based on the average frequency-related value, which is a value based on an average difference between the frequencies of the two oscillators when the oscillators of the arrangement and wiring are oscillated It is good. This increases the number of oscillator selection patterns as compared to selecting only one oscillator. Since the corrected frequency-related value differs depending on the oscillator selection pattern, the greater the number of oscillator selection patterns, the less likely the corrected frequency-related value is predicted by a third party, thereby improving security. . The value based on the difference between the frequencies of the two oscillators may be, for example, the difference or ratio of the number of oscillations in a predetermined period, or the difference or ratio of the time required to oscillate a predetermined number of times. May be simultaneously oscillated and the other oscillation frequency when one oscillator oscillates a predetermined number of times may be used. The value based on the average difference between the frequencies of the two oscillators may be the average of the difference or ratio of the number of oscillations in the predetermined period of the two oscillators, or the difference or ratio of the time required to oscillate the predetermined number of times. Alternatively, the number of oscillations in a predetermined period or the time required to oscillate a predetermined number of times may be averaged over a plurality of devices for each of the two oscillators, and the average difference or ratio may be used. Alternatively, the value based on the average difference between the frequencies of the two oscillators is obtained by simultaneously oscillating the two oscillators and deriving the other number of oscillations for a plurality of devices when one oscillator oscillates a predetermined number of times. Also good.
本発明の情報セキュリティシステムにおいて、前記取得手段及び前記補正手段は、前記ホストが有しているものとしてもよい。一般に、ホストと比べてデバイスは実装できる回路や処理能力に制限があることが多いため、このようにする意義が高い。 In the information security system of the present invention, the acquisition unit and the correction unit may be included in the host. In general, a device is often more limited than a host in terms of circuits and processing capabilities that can be mounted, and thus is highly meaningful.
本発明の情報セキュリティシステムにおいて、前記デバイスの有する発振器と該発振器の前記固有の発振周波数に基づく前記所定の固有値とを対応付けて記憶する固有値記憶手段と、前記固有値記憶手段から前記選択された発振器に対応する前記固有値を読み出し、該読み出した固有値が前記導出された補正後周波数関連値と一致するか否かにより、該デバイスが正規のものであるか否かを判定する判定手段と、を備え、前記固有値記憶手段及び前記判定手段は、前記ホストが有しているものとしてもよい。こうすれば、ユニーク性をより高めた補正後周波数関連値を用いてデバイスが正規のものであるか否かを判定するため、例えば実測周波数関連値をそのまま用いてデバイスが正規のものであるか否かを判定する場合と比べて判定の精度が高まり、セキュリティが向上する。 In the information security system of the present invention, eigenvalue storage means for storing the oscillator included in the device and the predetermined eigenvalue based on the specific oscillation frequency of the oscillator in association with each other, and the oscillator selected from the eigenvalue storage means Determining means for determining whether or not the device is normal based on whether or not the read eigenvalue matches the derived corrected frequency-related value. The eigenvalue storage means and the determination means may be included in the host. In this way, in order to determine whether or not the device is legitimate using the corrected frequency-related value with higher uniqueness, for example, whether the device is legitimate using the measured frequency-related value as it is. Compared with the case of determining whether or not, the accuracy of the determination is increased and the security is improved.
本発明の情報セキュリティシステムにおいて、前記デバイスにおける前記選択された発振器の前記固有の発振周波数に基づく前記所定の固有値に基づいて暗号化された暗号データを前記デバイスに出力する暗号データ出力手段と、前記導出された補正後周波数関連値に基づいて前記出力された暗号データを復号する復号手段と、を備え、前記暗号データ出力手段は、前記ホストが有しており、前記復号手段は、前記デバイスが有しているものとしてもよい。こうすれば、ユニーク性をより高めた補正後周波数関連値が固有値と一致していないと正しく暗号データを復号することができないため、暗号データが正規のデバイス以外のデバイスで復号されることをより防止できる。 In the information security system of the present invention, encrypted data output means for outputting, to the device, encrypted data encrypted based on the predetermined specific value based on the specific oscillation frequency of the selected oscillator in the device; Decryption means for decrypting the output encrypted data based on the derived corrected frequency-related value, and the encrypted data output means is included in the host, and the decryption means is provided by the device. It is good also as what it has. In this way, if the corrected frequency-related value with higher uniqueness does not match the eigenvalue, the encrypted data cannot be correctly decrypted. Can be prevented.
本発明のホストは、製造ばらつきに起因する固有の発振周波数をもつ複数の発振器を有する発振回路を備えるデバイスと情報のやり取りを行うホストであって、
前記複数の発振器のうち選択された少なくとも1つの発振器を発振させたときの該発振の周波数に基づく実測周波数関連値を前記デバイスから取得する取得手段と、
前記取得された実測周波数関連値を、複数の前記デバイスにおける前記選択された発振器と同じ配置及び配線の発振器を発振させたときの周波数の平均に基づく値である平均周波数関連値に基づいて補正した補正後周波数関連値を導出する補正手段と、
を備えたものである。
The host of the present invention is a host for exchanging information with a device including an oscillation circuit having a plurality of oscillators having unique oscillation frequencies caused by manufacturing variations,
An acquisition means for acquiring an actual measurement frequency related value based on a frequency of oscillation when at least one oscillator selected from the plurality of oscillators is oscillated;
The acquired actual measurement frequency related value is corrected based on an average frequency related value that is a value based on an average frequency when an oscillator having the same arrangement and wiring as the selected oscillator in the plurality of devices is oscillated. Correction means for deriving a corrected frequency-related value;
It is equipped with.
この本発明のホストは、製造ばらつきに起因する固有の発振周波数をもつ複数の発振器を有する発振回路を有するデバイスと情報のやり取りを行う。具体的には、まず、この複数の発振器のうち選択された少なくとも1つの発振器を発振させたときの発振の周波数に基づく実測周波数関連値を取得する。続いて、取得された実測周波数関連値を、複数のデバイスにおける選択された発振器と同じ配置及び配線の発振器を発振させたときの周波数の平均に基づく値である平均周波数関連値に基づいて補正した補正後周波数関連値を導出する。このように、実測周波数関連値を平均周波数関連値で補正することで、実測周波数関連値から発振器の配置や配線に起因する発振周波数の変化分を除去することができ、デバイスのユニーク性をより高めた補正後周波数関連値を導出することができる。なお、このホストにおいて、上述した情報セキュリティシステムのホストの種々の態様を採用してもよいし、上述した情報セキュリティシステムのホストの各機能を実現するような構成を追加してもよい。 The host of the present invention exchanges information with a device having an oscillation circuit having a plurality of oscillators having unique oscillation frequencies caused by manufacturing variations. Specifically, first, an actually measured frequency-related value based on the oscillation frequency when at least one selected oscillator among the plurality of oscillators is oscillated is acquired. Subsequently, the obtained measured frequency-related value is corrected based on the average frequency-related value, which is a value based on the average frequency when the oscillator having the same arrangement and wiring as the selected oscillator in the plurality of devices is oscillated. Derived frequency-related values after correction. In this way, by correcting the measured frequency-related value with the average frequency-related value, it is possible to remove the change in the oscillation frequency caused by the placement and wiring of the oscillator from the measured frequency-related value, making the device more unique. An enhanced corrected frequency-related value can be derived. In this host, various aspects of the host of the information security system described above may be adopted, and a configuration that realizes each function of the host of the information security system described above may be added.
本発明のデバイスは、
製造ばらつきに起因する固有の発振周波数をもつ複数の発振器を有する発振回路と、
前記複数の発振器のうち少なくとも1つの発振器を選択する選択手段と、
前記選択された発振器を発振させ、該発振の周波数に基づく実測周波数関連値を取得する取得手段と、
前記取得された実測周波数関連値を、複数の前記デバイスにおける前記選択された発振器と同じ配置及び配線の発振器を発振させたときの周波数の平均に基づく値である平均周波数関連値に基づいて補正することで、補正後周波数関連値を導出する補正手段と、
を備えたものである。
The device of the present invention
An oscillation circuit having a plurality of oscillators with inherent oscillation frequencies due to manufacturing variations;
Selecting means for selecting at least one oscillator of the plurality of oscillators;
An acquisition means for oscillating the selected oscillator and acquiring an actually measured frequency-related value based on the frequency of the oscillation;
The acquired measured frequency-related value is corrected based on an average frequency-related value that is a value based on an average frequency when an oscillator having the same arrangement and wiring as the selected oscillator in the plurality of devices is oscillated. A correction means for deriving a frequency-related value after correction,
It is equipped with.
この本発明のデバイスは、製造ばらつきに起因する固有の発振周波数をもつ複数の発振器を有する発振回路を備えている。そして、この複数の発振器のうち少なくとも1つの発振器を選択し、選択された発振器を発振させ、その発振の周波数に基づく実測周波数関連値を取得する。続いて、取得された実測周波数関連値を、複数のデバイスにおける選択された発振器と同じ配置及び配線の発振器を発振させたときの周波数の平均に基づく値である平均周波数関連値に基づいて補正した補正後周波数関連値を導出する。このように、実測周波数関連値を平均周波数関連値で補正することで、実測周波数関連値から発振器の配置や配線に起因する発振周波数の変化分を除去することができ、デバイスのユニーク性をより高めた補正後周波数関連値を導出することができる。なお、このデバイスにおいて、上述した情報セキュリティシステムのデバイスの種々の態様を採用してもよいし、上述した情報セキュリティシステムのデバイスの各機能を実現するような構成を追加してもよい。 The device of the present invention includes an oscillation circuit having a plurality of oscillators having inherent oscillation frequencies due to manufacturing variations. Then, at least one oscillator is selected from the plurality of oscillators, the selected oscillator is oscillated, and a measured frequency related value based on the frequency of the oscillation is acquired. Subsequently, the obtained measured frequency-related value is corrected based on the average frequency-related value, which is a value based on the average frequency when the oscillator having the same arrangement and wiring as the selected oscillator in the plurality of devices is oscillated. Derived frequency-related values after correction. In this way, by correcting the measured frequency-related value with the average frequency-related value, it is possible to remove the change in the oscillation frequency caused by the placement and wiring of the oscillator from the measured frequency-related value, making the device more unique. An enhanced corrected frequency-related value can be derived. In this device, various aspects of the device of the information security system described above may be adopted, and a configuration that realizes each function of the device of the information security system described above may be added.
本発明のホストの制御方法は、
製造ばらつきに起因する固有の発振周波数をもつ複数の発振器を有する発振回路を備えたデバイスと情報のやりとりを行うホストの制御方法であって、
(a)前記複数の発振器のうち選択された少なくとも1つの発振器を発振させたときの該発振の周波数に基づく実測周波数関連値を前記デバイスから取得するステップと、
(b)前記取得された実測周波数関連値を、複数の前記デバイスにおける前記選択された発振器と同じ配置及び配線の発振器を発振させたときの周波数の平均に基づく値である平均周波数関連値に基づいて補正した補正後周波数関連値を導出するステップと、
を含むものである。
The host control method of the present invention includes:
A host control method for exchanging information with a device having an oscillation circuit having a plurality of oscillators having unique oscillation frequencies caused by manufacturing variations,
(A) obtaining an actually measured frequency-related value from the device based on the frequency of oscillation when at least one oscillator selected from the plurality of oscillators is oscillated;
(B) The obtained actual measurement frequency related value is based on an average frequency related value that is a value based on an average of frequencies when an oscillator having the same arrangement and wiring as the selected oscillator in the plurality of devices is oscillated. Deriving a corrected frequency-related value corrected by
Is included.
この本発明のホストの制御方法では、デバイスが有し製造ばらつきに起因する固有の発振周波数をもつ複数の発振器を有する発振回路における複数の発振器のうち、選択された少なくとも1つの発振器を発振させたときの発振の周波数に基づく実測周波数関連値を取得する。続いて、取得された実測周波数関連値を、複数のデバイスにおける選択された発振器と同じ配置及び配線の発振器を発振させたときの周波数の平均に基づく値である平均周波数関連値に基づいて補正した補正後周波数関連値を導出する。このように、実測周波数関連値を平均周波数関連値で補正することで、実測周波数関連値から発振器の配置や配線に起因する発振周波数の変化分を除去することができ、発振器のユニーク性をより高めた補正後周波数関連値を導出することができる。なお、このホストの制御方法において、上述した情報セキュリティシステムのホストの種々の態様を採用してもよいし、上述した情報セキュリティシステムのホストの各機能を実現するようなステップを追加してもよい。 In this host control method of the present invention, at least one selected oscillator is oscillated among a plurality of oscillators in an oscillation circuit having a plurality of oscillators having inherent oscillation frequencies caused by manufacturing variations of the device. Acquire actual measurement frequency related value based on frequency of oscillation. Subsequently, the obtained measured frequency-related value is corrected based on the average frequency-related value, which is a value based on the average frequency when the oscillator having the same arrangement and wiring as the selected oscillator in the plurality of devices is oscillated. Derived frequency-related values after correction. In this way, by correcting the measured frequency-related value with the average frequency-related value, the change in the oscillation frequency caused by the placement and wiring of the oscillator can be removed from the measured frequency-related value, making the oscillator more unique. An enhanced corrected frequency-related value can be derived. In this host control method, various aspects of the host of the information security system described above may be adopted, and steps for realizing the functions of the host of the information security system described above may be added. .
本発明のデバイスの制御方法は、
製造ばらつきに起因する固有の発振周波数をもつ複数の発振器を有する発振回路を備えたデバイスの制御方法であって、
(a)前記複数の発振器のうち少なくとも1つの発振器を選択するステップと、
(b)前記選択された発振器を発振させ、該発振の周波数に基づく実測周波数関連値を取得するステップと、
(c)前記取得された実測周波数関連値を、複数の前記デバイスにおける前記選択された発振器と同じ配置及び配線の発振器を発振させたときの周波数の平均に基づく値である平均周波数関連値に基づいて補正した補正後周波数関連値を導出するステップと、
を含むものである。
The device control method of the present invention includes:
A method for controlling a device including an oscillation circuit having a plurality of oscillators having inherent oscillation frequencies due to manufacturing variations,
(A) selecting at least one oscillator from the plurality of oscillators;
(B) oscillating the selected oscillator and obtaining a measured frequency related value based on the frequency of the oscillation;
(C) Based on an average frequency related value that is a value based on an average of frequencies when an oscillator having the same arrangement and wiring as the selected oscillator in the plurality of devices is oscillated, the acquired actually measured frequency related value. Deriving a corrected frequency-related value corrected by
Is included.
この本発明のデバイスの制御方法では、デバイスが有し製造ばらつきに起因する固有の発振周波数をもつ複数の発振器を有する発振回路における複数の発振器のうち少なくとも1つの発振器を選択し、選択された発振器を発振させ、その発振の周波数に基づく実測周波数関連値を取得する。続いて、取得された実測周波数関連値を、複数のデバイスにおける選択された発振器と同じ配置及び配線の発振器を発振させたときの周波数の平均に基づく値である平均周波数関連値に基づいて補正した補正後周波数関連値を導出する。このように、実測周波数関連値を平均周波数関連値で補正することで、実測周波数関連値から発振器の配置や配線に起因する発振周波数の変化分を除去することができ、発振器のユニーク性をより高めた補正後周波数関連値を導出することができる。なお、このデバイスの制御方法において、上述した情報セキュリティシステムのデバイスの種々の態様を採用してもよいし、上述した情報セキュリティシステムのデバイスの各機能を実現するようなステップを追加してもよい。 In this device control method of the present invention, at least one oscillator is selected from a plurality of oscillators in an oscillation circuit having a plurality of oscillators having inherent oscillation frequencies due to manufacturing variations of the device, and the selected oscillator is selected. And the measured frequency related value based on the frequency of the oscillation is acquired. Subsequently, the obtained measured frequency-related value is corrected based on the average frequency-related value, which is a value based on the average frequency when the oscillator having the same arrangement and wiring as the selected oscillator in the plurality of devices is oscillated. Derived frequency-related values after correction. In this way, by correcting the measured frequency-related value with the average frequency-related value, the change in the oscillation frequency caused by the placement and wiring of the oscillator can be removed from the measured frequency-related value, making the oscillator more unique. An enhanced corrected frequency-related value can be derived. In this device control method, various aspects of the information security system device described above may be adopted, and steps for realizing each function of the information security system device described above may be added. .
本発明の第1のプログラムは、上述したホストの制御方法の各ステップを1又は複数のコンピューターに実現させるためのものである。この第1のプログラムをコンピューターに実行させれば、上述した本発明のホストの制御方法が実現されるため、本発明のホストの制御方法と同様の作用効果が得られる。また、本発明の第2のプログラムは、上述したデバイスの制御方法の各ステップを1又は複数のコンピューターに実現させるためのものである。この第2のプログラムをコンピューターに実行させれば、上述した本発明のデバイスの制御方法が実現されるため、本発明のデバイスの制御方法と同様の作用効果が得られる。第1のプログラム及び第2のプログラムは、コンピューターが読み取り可能な記録媒体(例えばハードディスク、ROM、FD、CD、DVDなど)に記録されていてもよいし、伝送媒体(インターネットやLANなどの通信網)を介してあるコンピューターから別のコンピューターに配信されてもよいし、その他どのような形で授受されてもよい。 A first program of the present invention is for causing one or a plurality of computers to realize each step of the above-described host control method. If the first program is executed by the computer, the above-described host control method of the present invention is realized, so that the same effects as the host control method of the present invention can be obtained. The second program of the present invention is for causing one or more computers to realize the steps of the device control method described above. If the second program is executed by a computer, the device control method of the present invention described above is realized, and thus the same operational effects as those of the device control method of the present invention can be obtained. The first program and the second program may be recorded on a computer-readable recording medium (for example, hard disk, ROM, FD, CD, DVD, etc.), or a transmission medium (communication network such as the Internet or LAN). ) May be distributed from one computer to another via the Internet, or may be exchanged in any other form.
[第1実施形態]
図1は、第1実施形態である情報セキュリティシステム10の構成の概略を示す構成図である。図示するように、情報セキュリティシステム10は、ICカード20と、カードリーダー30と、サーバー40とを備えている。この情報セキュリティシステム10は、ICカード20に記憶された情報を用いて、ICカード20の所有者であるユーザーに例えば現金の預け入れや払い戻しなどのATM(Automated Teller Machine)サービスや有料コンテンツを購入するコンテンツ購入サービスなどのサービスを提供する装置である。本実施形態では、情報セキュリティシステム10は、ATM(Automated Teller Machine)サービスを提供するものとした。
[First Embodiment]
FIG. 1 is a configuration diagram showing an outline of a configuration of an
ICカード20は、ATMサービスに用いるキャッシュカードであり、CPU,ROM,RAMなどを備えたマイクロプロセッサーとして構成されたICチップ21を備えている。ICチップ21は、ICチップ21全体の制御を司る制御部22と,ICカード20の識別用のIDなど各種データを記憶する記憶部24と,ICカード20の固有の値を出力するためのPUF回路50とを備えている。本実施形態では、ICカード20は接触型であるものとしたが、非接触型であってもよい。このICカード20は、図示は省略するが同様の構成のものが複数存在し、それぞれ別のユーザーが所有している。
The
PUF回路50は、複数の発振器53を備えた発振回路52と、発振器53を選択する選択回路54と、選択された発振器53の発振回数をカウントして発振器53の発振周波数に基づく値を測定する測定回路56とを備えている。図2は、PUF回路50の構成の概略を示す構成図である。
The
発振回路52は、製造ばらつきに起因する固有の発振周波数をもつ第1発振器53a〜第5発振器53eの5個の発振器53をそれぞれ所定位置に配置し所定の配線を行ったものである。この発振回路52では、図2に示すように、選択回路54の主発振器セレクター55a及び副発振器セレクター55bの入力部に各発振器53からの出力部がそれぞれ配線により接続されている。
In the
図3は、発振器53の構成の概略を示す構成図である。なお、第1発振器53a〜第5発振器53eの内部の構成はいずれも同じである。このため、図3では1つの発振器53の構成を示している。発振器53は、6個のインバーター60と3個の経路セレクター66とを備え、リング状に奇数段(本実施形態では3段)のインバーター(NOTゲート)60が直列接続されると共に、各段において複数(本実施形態では2つ)のインバーター60が並列に接続されたリングオシレーターとして構成されている。具体的には、発振器53は、1段目のインバーター60として並列に接続された第1インバーター61a,第2インバーター61bを備え、2段目のインバーター60として並列に接続された第3インバーター62a,第4インバーター62bを備え、3段目のインバーター60として並列に接続された第5インバーター63a,第6インバーター63bを備えている。この第1インバーター61a〜第6インバーター63bは、入力値に対して出力値が反転する反転回路である。また、発振器53は、3個の経路セレクター66として、第1経路セレクター66aと、第2経路セレクター66bと、第3経路セレクター66cとを備えている。第1経路セレクター66aは、1段目のインバーター60のうち選択したいずれか1つの出力を2段目のインバーター60に出力するものである。第1経路セレクター66aの入力部は、1段目のインバーター60すなわち第1インバーター61a及び第2インバーター61bの出力部とそれぞれ配線で接続されており、第1経路セレクター66aの出力部は、2段目のインバーター60すなわち第3インバーター62a及び第4インバーター62bの入力部とそれぞれ配線で接続されている。第2経路セレクター66bは、2段目のインバーター60のうち選択したいずれか1つの出力を3段目のインバーター60に出力するものである。第2経路セレクター66bの入力部は、2段目のインバーター60すなわち第3インバーター62a及び第4インバーター62bの出力部とそれぞれ配線で接続されており、第2経路セレクター66bの出力部は、3段目のインバーター60すなわち第5インバーター63a及び第6インバーター63bの入力部とそれぞれ配線で接続されている。第3経路セレクター66cは、3段目のインバーター60のうち選択したいずれか1つの出力を1段目のインバーター60に出力するものである。第3経路セレクター66cの入力部は、3段目のインバーター60すなわち第5インバーター63a及び第6インバーター63bの出力部とそれぞれ配線で接続されており、第3経路セレクター66cの出力部は、1段目のインバーター60すなわち第1インバーター61a及び第2インバーター61bの入力部とそれぞれ配線で接続されている。なお、第3経路セレクター66cの出力部は、発振器53の出力部とも配線で接続されており、この発振器53の出力部が選択回路54の主発振器セレクター55a,副発振器セレクター55bの入力部にそれぞれに接続されるよう発振回路52内の配線がなされている(図2参照)。第1経路セレクター66a,第2経路セレクター66b,第3経路セレクター66cはそれぞれ経路選択信号p,q,rが制御部22から入力されるようになっており、この経路選択信号p,q,rの値によって各段で選択されるインバーター60が定まるようになっている。具体的には、第1経路セレクター66aは、経路選択信号pが値0のときには第1インバーター61aを選択し、値1のときには第2インバーター61bを選択する。第2経路セレクター66bは、経路選択信号qが値0のときには第3インバーター62aを選択し、値1のときには第4インバーター62bを選択する。第3経路セレクター66cは、経路選択信号rが値0のときには第5インバーター63aを選択し、値1のときには第6インバーター63bを選択する。
FIG. 3 is a configuration diagram showing an outline of the configuration of the
発振器53は、この経路選択信号p,q,rにより、並列に接続された各段のインバーター60のうちいずれを各段の経路として選択するかによって複数の信号経路が選択可能である。経路選択信号p,q,rで定まる発振器53の信号経路を信号経路W(p,q,r)と称する。この経路選択信号p,q,rで選択された信号経路W(p,q,r)は、直列に接続された3段のインバーター60で構成されるため、発振器53の出力は発振周波数で発振する。例えば、信号経路W(0,0,0)、すなわち第1インバーター61a,第3インバーター62a,第5インバーター63aが選択された状態において、第1インバーター61aの入力が値0である場合を考える。この場合、第1インバーター61aの出力及び第3インバーター62aの入力が値1,第3インバーター62aの出力及び第5インバーター63aの入力が値0,第5インバーター63aの出力が値1となって、発振器53からは値1が出力される。また、第5インバーター63aの出力である値1は第1インバーター61aの入力となるため、第1インバーター61aの入力が値0から値1に変化する。すると、第1インバーター61aの出力及び第3インバーター62aの入力が値0,第3インバーター62aの出力及び第5インバーター63aの入力が値1,第5インバーター63aの出力が値0となって、発振器53の出力は値0となる。このようにして、発振器53の出力は値0と値1とを繰り返す、すなわち発振する。そして、この発振器53の発振周波数は、信号経路W(p,q,r)を構成する各インバーター60の製造ばらつきに起因する各信号経路固有の値となる。
The
選択回路54は、図2に示すように、主発振器セレクター55aと副発振器セレクター55bとを備えている。主発振器セレクター55aは、発振回路52から引き出された第1発振器53a〜第5発振器53eの各出力部が自身の入力部と配線で接続されるとともに、自身の出力部が測定回路56の第1カウンター57aの入力部と配線で接続されている。主発振器セレクター55aは、第1発振器53a〜第5発振器53eのうち選択したいずれか1つの発振器53の出力を測定回路56の第1カウンター57aに出力する。
副発振器セレクター55bは、発振回路52から引き出された第1発振器53a〜第5発振器53eの各出力部が自身の入力部と配線で接続されるとともに、自身の出力部が測定回路56の第2カウンター57bの入力部と配線で接続されている。副発振器セレクター55bは、第1発振器53a〜第5発振器53eのうち選択したいずれか1つの発振器53の出力を測定回路56の第2カウンター57bに出力する。なお、第1カウンター57aにより選択されている発振器53を主発振器と表記し、第2カウンター57bにより選択されている発振器53を副発振器と称する。主発振器セレクター55a,副発振器セレクター55bは、それぞれ主発振器選択信号k1,副発振器選択信号k2が制御部22から入力されるようになっており、この主発振器選択信号k1,副発振器選択信号k2の値によって選択される発振器53が定まるようになっている。主発振器選択信号k1,副発振器選択信号k2は値1〜5のいずれかであり、それぞれが第1発振器53a〜第5発振器53eに対応している。なお、主発振器選択信号k1と副発振器選択信号k2とが同時に同じ値となることはなく、主発振器及び副発振器には異なる発振器53が選択される。
As shown in FIG. 2, the
The
測定回路56は、第1カウンター57aと、第2カウンター57bと、出力決定部58とを備えている。第1カウンター57aは、自身の入力部が主発振器セレクター55aの出力部と配線で接続されると共に自身の出力部が出力決定部58の入力部と配線で接続されている。
The
第1カウンター57aは、主発振器セレクター55aを介して入力された主発振器の出力信号の発振回数(例えば信号の立ち上がり数)をカウントして、カウント数を出力決定部58に出力する。第2カウンター57bは、自身の入力部が副発振器セレクター55bの出力部と配線で接続されると共に自身の出力部が出力決定部58の入力部と配線で接続されている。第2カウンター57bは、副発振器セレクター55bを介して入力された副発振器の出力信号の発振回数をカウントして、カウント数を出力決定部58に出力する。
The
出力決定部58は、自身の入力部が第1カウンター57a及び第2カウンター57bの出力部と配線で接続されており、自身の出力部が制御部22に接続されている。出力決定部58は、第1カウンター57aのカウント数が入力されると、このカウント数が変化するタイミングから主発振器の発振周期を導出して、導出した発振周期を実測周期T(k,p,q,r)として出力する。実測周期T(k,p,q,r)は、発振器番号kに対応する発振器53を信号経路W(p,q,r)で発振させたときの発振周期の実測値を意味する。なお、発振器番号kは値1〜5のいずれかの値であり、それぞれ第1発振器53a〜第5発振器53eに対応している。上述したように発振器53の発振周波数は、信号経路W(p,q,r)を構成する各インバーター60の製造ばらつきに起因する各信号経路固有の値となるため、この実測周期T(k,p,q,r)も発振器番号k,経路選択信号p,q,rに対応した固有の値となる。また、出力決定部58は、第1カウンター57a及び第2カウンター57bのカウント数が入力され、入力された第2カウンター57bのカウント数が所定カウント値Cp(例えば16進数×4桁の表記で値8000)になったときの第1カウンター57aのカウント数を実測カウント値Cとして制御部22に出力する。ここで、主発振器選択信号k1で定まる主発振器を主発振器の経路選択信号p,q,r(以下、主経路選択信号p1,q1,r1と称する)で定まる主信号経路W(p1,q1,r1)で発振させたときの発振周波数をf1とし、副発振器選択信号k2で定まる副発振器を副発振器の経路選択信号p,q,r(以下、副経路選択信号p2,q2,r2と称する)で定まる副信号経路W(p2,q2,r2)で発振させたときの発振周波数をf2とすると、実測カウント値Cは以下の式(1)で表される値となる。ここで、発振周波数f1は主発振器選択信号k1、主経路選択信号p1,q1,r1に対応する固有の値となり、発振周波数f2は副発振器選択信号k2、副経路選択信号p2,q2,r2に対応する固有の値となるから、実測カウント値Cは発振周波数f1は主発振器選択信号k1、主経路選択信号p1,q1,r1、副発振器選択信号k2、副経路選択信号p2,q2,r2の組み合わせに対応する固有の値となる。なお、主発振器選択信号k1、主経路選択信号p1,q1,r1、副発振器選択信号k2、副経路選択信号p2,q2,r2の組み合わせをチャレンジCHと称する。第1カウンター57aは、カウント数をグレイコードで出力決定部58に出力するようになっており、出力決定部58はこのグレイコードを通常のバイナリコードに変換したものを実測カウント値Cとして出力する。このようにすることで、第1カウンター57aの出力と第2カウンター57bの出力との同期をとらなくとも、実測カウント値Cの誤差を最大で値1に抑えることができる。
The
C=f1/f2×Cp (1) C = f1 / f2 × Cp (1)
ここで、発振器53毎及び信号経路W(p,q,r)毎に発振周波数が固有の値となる理由について詳細に説明する。発振器53を構成する6つのインバーター60は同じものであり、いずれの信号経路W(p,q,r)を選択した場合でも発振器53の発振周波数の定格値(例えば、170MHzなど)は同じ値である。同様に、第1発振器53a〜第5発振器53e間でも互いに内部の構成が同じであるため発振周波数の定格値は同じである。しかし、インバーター60の製造時のばらつきによってインバーター60の遅延時間にわずかな違いが生じるため、実際には第1発振器53a〜第5発振器53e毎、及び信号経路W(p,q,r)毎に発振周波数に違いが生じる。このばらつきは、例えば発振周波数の定格値の数%程度以下である。また、内部の構成が同じでも発振器53の配置や配線の違いによって遅延時間に違いが生じるため、これによっても発振周波数に違いが生じる。なお、発振器53の配置や配線の違いとは、発振器内部の回路や素子の配置及び発振器内部の配線の違いを含み、例えば発振器53内の信号経路W(p,q,r)毎の発振に用いられるインバーター60の配置や配線の違いなどである。具体的には、例えば、信号経路W(0,0,0)では3段目のインバーター60が第5インバーター63aであるのに対し信号経路W(0,0,1)では3段目のインバーター60が第6インバーター63bであるため、発振に用いられる3段目のインバーター60の配置,第2経路セレクター66bから3段目のインバーター60までの配線,3段目のインバーター60から第3経路セレクター66cまでの配線が異なるなど、同じ発振器53であっても信号経路W(p,q,r)によって発振周波数に違いが生じる。また、例えば第1発振器53aと第2発振器53bとでは同じ信号経路W(0,0,0)であってもその信号経路を構成する配線の長さが異なるなど、異なる発振器53の間では同じ信号経路であっても発振周波数に違いが生じる。このようなインバーター60の製造時のばらつきと発振器53の配置や配線の違いとによって、発振器53は第1発振器53a〜第5発振器53e毎、及び信号経路W(p,q,r)毎に固有の発振周波数で発振する。
Here, the reason why the oscillation frequency becomes a unique value for each
カードリーダー30は、ネットワーク11を介してサーバー40と接続されており、サーバー40の端末として機能する。このカードリーダー30は、カードリーダー30全体の制御を司る制御部32と、各種データを記憶する記憶部34と、ICカード20を挿入可能なカードスロット36とを備えている。カードリーダー30は、ネットワーク11を介してサーバー40とデータのやり取りを行うと共に、カードスロット36に挿入されたICカード20とデータのやり取りを行う。
The
サーバー40は、ICカード20が正規のカードであるか否かの判定を行うものであり、サーバー40全体の制御を司る制御部41と、各種データを記憶する記憶部45とを備えている。制御部41は、取得部42と、補正部43と、判定部44とを備えており、記憶部45は、平均値テーブル46と、固有値テーブル47とを備えている。取得部42は、ICカード20の主発振器及び副発振器を発振させ、その発振周波数の差に基づく値である上述した実測カウント値Cを取得する機能を有する。補正部43は、複数のICカード20についての実測カウント値Cを取得した主発振器及び副発振器と同じ配置及び配線の発振器53を発振させたときの2つの発振器53の周波数の平均的な差に基づく値を平均値テーブル46から導出し、取得部42により取得された実測カウント値Cを平均値テーブル46から導出した値に基づいて補正することで、補正後カウント値Ccを導出する機能を有する。判定部44は、固有値テーブル47からICカード20の主発振器及び副発振器に対応する固有値Iを読み出し、読み出した固有値Iが補正後カウント値Cと一致するか否かにより、ICカード20が正規のものであるか否かを判定する機能を有する。平均値テーブル46は、補正部43が実測カウント値Cを補正するために用いる値を各発振器53と対応付けて記憶しているテーブルである。また、固有値テーブル47は、ICカード20の有する主発振器,主信号経路,副発振器,副信号経路の組み合わせと、主発振器及び副発振器の固有の発振周波数に基づく所定の固有値Iとを対応付けて記憶しているテーブルである。
The
次に、こうして構成された情報セキュリティシステム10の動作について説明する。まず、サーバー40が平均値テーブル46及び固有値テーブル47を作成して記憶部45に記憶する処理について説明し、その後情報セキュリティシステム10全体の動作について説明する。
Next, the operation of the
まず、サーバー40が事前に平均値テーブル46を作成して記憶部45に記憶しておく処理について説明する。図4は、平均値記憶ルーチンの一例を示すフローチャートである。このルーチンは、複数(例えば数百〜数万枚)のICカード20を用意し、用意したICカード20のICチップ21とサーバー40とを接続して、サーバー40の制御部41がネットワーク11を介さず直接に複数のICカード20と情報をやりとりできる状態にした上で、制御部41により実行される。この平均値記憶ルーチンは、ユーザーにICカード20を配布する前に予め実行しておくものである。なお、この平均値記憶ルーチンは、発振器53の配置や配線に起因する発振周波数の変化分を除去可能な値としての平均値を取得して記憶しておくものである。そのため、このルーチンに用いるICカード20は、情報セキュリティシステム10を構成するICカード20と発振器53の配置や配線を含めて同じ構成のICカードであればよく、必ずしも情報セキュリティシステム10を構成するICカード20、すなわち後にユーザーに配布するICカード20である必要はない。したがって、例えば情報セキュリティシステム10を構成するICカード20を製造する前や、サーバー40がネットワーク11に接続される前に平均値記憶ルーチンを実行してもよい。
First, the process in which the
この平均値記憶ルーチンが実行されると、制御部41は、まず、接続された複数のICカード20のうち1つを処理対象のICカードに設定する(ステップS200)。続いて、発振器番号kを値1に設定し(ステップS205)、実測周期T(k,0,0,0),T(k,1,0,0),T(k,0,1,0),T(k,0,0,1)を取得する(ステップS210)。実測周期T(k,p,q,r)は、上述したように発振器番号kに対応する発振器53を信号経路W(p,q,r)で発振させたときの発振周期の実測値である。なお、信号経路W(0,0,0)を基準信号経路、信号経路W(1,0,0),W(0,1,0),W(0,0,1)をオフセット信号経路と称する。オフセット信号経路は、基準信号経路と比べて経路選択信号p,q,rのうちいずれか1つの値のみが異なる信号経路である。換言すると、オフセット信号経路は、基準信号経路と比べて1つのインバーター60のみが異なる信号経路である。本実施形態では、例えば実測周期T(k,0,0,0)は、次のように取得する。主発振器選択信号k1として値kを、主経路選択信号p1,q1,r1として値0,0,0を、それぞれ取得部42が制御部22に送信して、これに対応する実測周期T(k,0,0,0)を送信するよう取得部42が制御部22を制御する。これを受けて、制御部22は、送信された主発振器選択信号k1を主発振器セレクター55aに設定し、主経路選択信号p1,q1,r1を主発振器の経路セレクター66に設定する。そして、出力決定部58から主発振器選択信号k1、経路選択信号p,q,rに対応する実測周期T(k,0,0,0)が出力されると、制御部22はこれを取得部42に送信し、取得部42が実測周期T(k、0,0,0)を取得する。実測周期T(k,1,0,0),T(k,0,1,0),T(k,0,0,1)についても、主経路選択信号p1,q1.r1の値が異なる以外は同様にして取得するものとした。なお、基準信号経路でなく且つオフセット信号経路でもない信号経路W(p,q,r)については、実測周期の測定を行わない。これは、後述する処理において、基準信号経路の実測周期Tの平均値とオフセット信号経路の実測周期Tの平均値とから、このような経路の平均値を計算により求めるよう設定されているためである。
When this average value storage routine is executed, the
続いて、制御部41は、発振器番号kが上限値(本実施形態では値5)であるか否かを判定し(ステップS215)、発振器番号kが上限値でないときには、発振器番号kを値1インクリメントして(ステップS220)、ステップS210以降の処理を行う。これにより、第1発振器53a〜第5発振器53eについて、それぞれ実測周期T(k,0,0,0),T(k,1,0,0),T(k,0,1,0),T(k,0,0,1)が順次取得される。一方、ステップS215で発振器番号kが上限値であるときには、接続された複数のICカード20のうち未処理のICカード20があるか否かを判定する(ステップS225)。そして、未処理のICカード20があるときには、ステップS200以降の処理を行う。これにより、サーバー40に接続された全てのICカード20について実測周期Tが順次取得されることになる。
Subsequently, the
ステップS225で未処理のICカード20がないときには、発振器番号kを値1に設定し(ステップS230)、サーバー40に接続された複数のICカード20について取得した実測周期T(k,0,0,0),T(k,1,0,0),T(k,0,1,0),T(k,0,0,1)をそれぞれ平均した値である平均周期Tave(k,0,0,0),Tave(k,1,0,0),Tave(k,0,1,0),Tave(k,0,0,1)を導出する(ステップS235)。例えば、千枚のICカード20について実測周期Tの測定を行った場合には、千個の実測周期T(k,0,0,0)の平均値を平均周期Tave(k、0,0,0)とする。平均周期Tave(k,1,0,0),Tave(k,0,1,0),Tave(k,0,0,1)についても同様である。
If there is no
そして、制御部41は、導出した平均周期Tave(k,0,0,0)を基準値Tb(k)として発振器番号kと対応付けて平均値テーブル46として記憶部45に記憶する(ステップS240)。続いて、以下の式(2)〜(4)で導出したオフセット値To(k,1,0,0),To(k,0,1,0),To(k,0,0,1)をそれぞれ発振器番号kと対応付けて平均値テーブル46として記憶部45に記憶する(ステップS245)。なお、式(2)〜(4)からわかるように、オフセット値To(k,1,0,0),To(k,0,1,0),To(k,0,0,1)は、それぞれ平均周期Tave(k,1,0,0),Tave(k,0,1,0),Tave(k,0,0,1)と基準値Tb(k)との差である。そして、発振器番号kが上限値(本実施形態では値5)であるか否かを判定し(ステップS250)、発振器番号kが上限値でないときには、発振器番号kを値1インクリメントして(ステップS255)、ステップS235以降の処理を行う。一方、ステップS250で発振器番号kが上限値であるときには、本ルーチンを終了する。
Then, the
To(k,1,0,0)=Tave(k,1,0,0)−Tb(k) (2)
To(k,0,1,0)=Tave(k,0,1,0)−Tb(k) (3)
To(k,0,0,1)=Tave(k,0,0,1)−Tb(k) (4)
To (k, 1, 0, 0) = Tave (k, 1, 0, 0) −Tb (k) (2)
To (k, 0, 1, 0) = Tave (k, 0, 1, 0) −Tb (k) (3)
To (k, 0, 0, 1) = Tave (k, 0, 0, 1) −Tb (k) (4)
このように平均値記憶ルーチンを実行することで、平均値テーブル46が作成されて記憶部45に記憶される。図5は、平均値テーブル46の一例を示す説明図である。この図に示すように、平均値テーブル46では、発振器番号kの値1〜5について、それぞれ基準値Tb(k),オフセット値To(k、1,0,0),To(k、0,1,0),To(k、0,0,1)の値が対応付けられている。ここで、上述したように基準値Tb(k)は、発振器番号kに対応する発振器53を基準信号経路で発振させたときの発振周期T(k,0,0,0)を複数のICカード20について測定して平均した値である。そして、同じ信号経路且つ同じ発振器53であれば、発振器53の配置や配線に起因する発振周波数の変化分はどのICカード20でも同程度であるのに対し、製造ばらつきに起因する発振周波数の変化分はICカード20毎に異なる。そのため、発振周期T(k,0,0,0)の平均値である基準値Tb(k)は、製造ばらつきに起因する発振周波数の変化分は互いに打ち消しあい、発振器53の配置や配線に起因する発振周波数の変化分の影響が残った値となる。このように、発振周期の平均をとった値である平均周期Tave(k,p,q,r)は、発振周波数の定格値と発振器53の配置や配線に起因する発振周波数の変化分とで定まる値となる。また、オフセット値To(k,1,0,0)は平均周期Tave(k,1,0,0)と基準値Tb(k)との差であり、両者は信号経路が信号経路W(1,0,0)であるか信号経路W(0,0,0)であるかが異なるから、この違いに起因する発振周波数の差に相当する値がオフセット値To(k,1,0,0)となる。具体的には、発振器53の1段目のインバーター60として第2インバーター61bを選択したときと第1インバーター61aを選択したときとで信号の経路となる配線が異なり、この配線の長さ等で定まる遅延時間の違いに相当する値がオフセット値To(k,1,0,0)となる。例えば、第3経路セレクター66cの出力から第1インバーター61aの入力までの配線と比べて第3経路セレクター66cの出力から第2インバーター61bの入力までの配線が長いほど、平均周期Tave(k,1,0,0)は基準値Tb(k)よりも大きい値となりオフセット値To(k,1,0,0)も大きい値となる。同様に、信号経路が信号経路W(0,1,0)であるか信号経路W(0,0,0)であるかの違いに起因する発振周波数の差に相当する値がオフセット値To(k,0,1,0)となり、信号経路が信号経路W(0,0,1)であるか信号経路W(0,0,0)であるかの違いに起因する発振周波数の差に相当する値がオフセット値To(k,0,0,1)となる。
By executing the average value storage routine in this way, the average value table 46 is created and stored in the
続いて、サーバー40が事前に固有値テーブル47を記憶しておく処理について説明する。図6は、固有値記憶ルーチンの一例を示すフローチャートである。このルーチンは、情報セキュリティシステム10を構成するICカード20を製造した後、ユーザーにICカード20を配布する前に実行される。また、このルーチンは、ユーザーに配布するICカード20のICチップ21とサーバー40とを接続して、サーバー40の制御部41がネットワーク11を介さず直接に複数のICカード20と情報をやりとりできる状態にした上で、制御部41により実行される。なお、サーバー40がネットワーク11に接続される前に固有値記憶ルーチンを実行してもよい。また、固有値記憶ルーチンを実行する前には平均値テーブル記憶ルーチンを実行しておき、平均値テーブル46を作成しておく。
Next, processing in which the
この固有値記憶ルーチンが実行されると、制御部41は、まず、サーバー40に接続されたICカード20のうち1つを処理対象のICカードに設定し(ステップS300)、処理対象のICカード20のIDを取得する(ステップS305)。具体的には、制御部41が、処理対象のICカード20の記憶部24に記憶されたIDを送信するよう制御部22を制御し、制御部22から送信されたIDを取得する。続いて、処理対象のチャレンジCHの設定、すなわち主発振器選択信号k1,主経路選択信号p1,q1,r1、副発振器選択信号k2,副経路選択信号p2,q2,r2の設定を行う(ステップS310)。ここで、本実施形態では、主発振器選択信号k1と副発振器選択信号k2との組み合わせは20通り存在し、1つの主発振器選択信号k1と副発振器選択信号k2との組み合わせについて主経路選択信号p1,q1,r1の組み合わせが8通り、副経路選択信号p2,q2,r2の組み合わせが8通り存在するため、20×8×8=1280通りのチャレンジCHが存在する。ステップS310では、この1280通りのチャレンジCHのうち未処理のもの1つを処理対象のチャレンジCHに設定する。
When this eigenvalue storage routine is executed, the
続いて、制御部41は、処理対象のチャレンジCHに対応する実測カウント値CをICカード20から取得する(ステップS315)。この処理は具体的には以下のように行う。まず、処理対象のチャレンジCHを処理対象のICカード20の制御部22に送信して、チャレンジCHに対応する実測カウント値Cをサーバー40に送信するよう取得部42が制御部22に指令する。これを受けて、制御部22は、送信されたチャレンジCHに含まれる主発振器選択信号k1を主発振器セレクター55aに設定し、副発振器選択信号k2を副発振器セレクター55bに設定し、主経路選択信号p1,q1,r1、副経路選択信号p2,q2,r2、をそれぞれ主発振器及び副発振器の経路セレクター66に設定する。そして、出力決定部58からチャレンジCHに対応する実測カウント値Cが出力されると、制御部22はこれを取得部42に送信し、取得部42が実測カウント値Cを取得する。
Subsequently, the
次に、制御部41の補正部43は、処理対象のチャレンジCHの主発振器選択信号k1,主経路選択信号p1,q1,r1に対応する平均周期Tave(k1,p1,q1,r1)を導出する主平均周期導出処理を行う(ステップS320)。なお、平均周期Tave(k1,p1,q1,r1)は主平均周期T1aveとも称する。ここで、固有値記憶ルーチンの説明を中断して、主平均周期導出処理について説明する。図7は、主平均周期導出処理の一例を示すフローチャートである。
Next, the
この主平均周期導出処理では、補正部43は、まず、主信号経路W(p1,q1,r1)が基準信号経路であるか否かを判定する(ステップS400)。本実施形態では、基準信号経路は信号経路W(0,0,0)であるため、主経路選択信号p1,q1,r1がいずれも値0であるか否かを判定することになる。そして、主信号経路W(p1,q1,r1)が基準信号経路であるときには、平均値テーブル46に記憶された基準値Tb(k1)の値を主平均周期T1aveとして導出して(ステップS410)、主平均周期導出処理を終了する。平均値記憶ルーチンで説明したように基準値Tb(k1)は平均周期Tave(k1,0,0,0)であるため、主信号経路W(p1,q1,r1)が基準信号経路であるときには基準値Tb(k1)をそのままT1aveとするのである。
In the main average period deriving process, the
一方、ステップS400で主信号経路W(p1,q1,r1)が基準信号経路でないと判定したときには、補正部43は、主信号経路W(p1,q1,r1)がオフセット信号経路であるか否かを判定する(ステップS420)。本実施形態では、オフセット信号経路は信号経路W(1,0,0),W(0,1,0),W(0,0,1)であるため、主経路選択信号p1,q1,r1が値(1,0,0)、値(0,1,0)、値(0,0,1)のいずれかであるか否かを判定することになる。そして、主信号経路W(p1,q1,r1)がオフセット信号経路であるときには、平均値テーブル46に記憶された基準値Tb(k1)とオフセット値To(k1,p1,q1,r1)との和を主平均周期T1aveとして導出して(ステップS430)、主平均周期導出処理を終了する。平均値記憶ルーチンで説明したようにオフセット値To(k1,1,0,0),To(k1,0,1,0),To(k1,0,0,1)は、それぞれ平均周期Tave(k1,1,0,0),Tave(k1,0,1,0),Tave(k1,0,0,1)と基準値Tb(k1)との差であるため、主信号経路W(p1,q1,r1)がオフセット信号経路であるときにはこのようにして主平均周期T1aveを導出するのである。
On the other hand, when it is determined in step S400 that the main signal path W (p1, q1, r1) is not the reference signal path, the
また、ステップS420で主信号経路W(p1,q1,r1)がオフセット信号経路でないときには、補正部43は、主経路選択信号p1が値0であるか否かを判定し(ステップS440)、主経路選択信号p1が値0でないときには平均値テーブル46に記憶されたオフセット値To(k1,p1,0,0)を読み出す(ステップS445)。続いて、主経路選択信号p1が値0であるとき又はオフセット値To(k1,p1,0,0)を読み出した後に、主経路選択信号q1が値0であるか否かを判定し(ステップS450)、主経路選択信号q1が値0でないときには平均値テーブル46に記憶されたオフセット値To(k1,0,q1,0)を読み出す(ステップS455)。次に、主経路選択信号q1が値0であるとき又はオフセット値To(k1,0,q1,0)を読み出した後に、主経路選択信号r1が値0であるか否かを判定し(ステップS460)、主経路選択信号r1が値0でないときには平均値テーブル46に記憶されたオフセット値To(k1,0,0,r1)を読み出す(ステップS465)。そして、主経路選択信号r1が値0であるとき又はオフセット値To(k1,0,0,r1)を読み出した後に、オフセット値To(k1,p1,0,0),To(k1,0,q1,0),To(k1,0,0,r1)のうちステップS445,S455,S465により読み出されたオフセット値と基準値Tb(k1)との和を主平均周期T1aveとして導出して(ステップS470)、主平均周期導出処理を終了する。このように、主信号経路W(p1,q1,r1)が基準信号経路でもオフセット信号経路でもないときには、主経路選択信号p1,q1,r1のうち基準信号経路と異なる値のものすなわち値0でないものを判定し、値0でない主経路選択信号に対応するオフセット値を平均値テーブル46から読み出して、読み出したオフセット値と基準値Tb(k1)との和を主平均周期T1aveとして導出するのである。
When the main signal path W (p1, q1, r1) is not the offset signal path in step S420, the
ここで、このようにして主平均周期T1aveを導出する理由について説明する。例えば平均周期Tave(k1,1,1,0)と平均周期Tave(k1,0,0,0)とを比較すると、両者は発振器53の1段目のインバーター60が第2インバーター61bであるか第1インバーター61aであるかの違いと、2段目のインバーター60が第4インバーター62bであるか第3インバーター62aであるかの違いがある。そこで、1段目のインバーター60が第2インバーター61bであるか第1インバーター61aであるかの違いによる発振周波数の差に相当する値であるオフセット値To(k1,1,0,0)と、2段目のインバーター60が第4インバーター62bであるか第3インバーター62aであるかの違いによる発振周波数の差に相当する値であるオフセット値To(k1,0,1,0)とを基準値Tb(k1)とを合計することで、平均周期Tave(k1,1,1,0)に近似した値が得られると考えられる。このように主信号経路W(p1,q1,r1)が基準信号経路でもオフセット信号経路でもないときに、オフセット値Toと基準値Tb(k1)とを用いて平均周期Tave(k1,p1,q1,r1)を導出することで、予め全ての信号経路p,q,rについて実測周期T(k,p,q,r)の測定及び平均周期Tave(k,p,q,r)の導出を行って平均値テーブル46に記憶しておく場合と比べて、平均値テーブル46の作成に要する時間を短くするとともに平均値テーブル46のデータ量を小さくしているのである。平均値記憶ルーチンにおいて基準信号経路でなく且つオフセット信号経路でもない信号経路W(p,q,r)については実測周期の測定を行わないものとしたのはこのような理由による。
Here, the reason why the main average period T1ave is derived in this way will be described. For example, when the average period Tave (k1, 1, 1, 0) is compared with the average period Tave (k1, 0, 0, 0), both indicate whether the
図6の固有値記憶ルーチンに戻る。ステップS320で主平均周期T1aveを導出すると、制御部41の補正部43は、処理対象のチャレンジCHの副発振器選択信号k2,副経路選択信号p2,q2,r2に対応する平均周期Tave(k2,p2,q2,r2)(副平均周期T2aveとも称する)を導出する副平均周期導出処理を行う(ステップS325)。この処理は、図7で説明した主平均周期導出処理と同様にして行う。すなわち、副信号経路W(p2,q2,r2)が基準信号経路であるときには、基準値Tb(k2)の値を副平均周期T2aveとして導出し、副信号経路W(p2,q2,r2)がオフセット信号経路であるときには、基準値Tb(k2)の値とオフセット値To(k2,p2,q2,r2)との和を副平均周期T2aveとして導出する。また、副信号経路W(p2,q2,r2)が基準信号経路でもオフセット信号経路でもないときには、副経路選択信号p2,q2,r2のうち基準信号経路と異なる値のものすなわち値0でないものを判定し、値0でない副経路選択信号に対応するオフセット値を平均値テーブル46から読み出して、読み出したオフセット値と基準値Tb(k1)との和を副平均周期T1aveとして導出する。
Returning to the eigenvalue storage routine of FIG. When the main average period T1ave is derived in step S320, the
続いて、制御部41の補正部43は、ステップS315で取得した実測カウント値Cを補正するための補正値Caveを以下の式(5)により導出する(ステップS330)。ここで、式(5)におけるT2ave/T1aveは、式(1)におけるf1/f2の平均値に相当する。すなわち、補正値Caveは、複数のICカード20について同じチャレンジCHに対応する実測カウント値Cを取得してこれを平均した値に相当するものである。そして、補正値Caveを導出すると、制御部41の補正部43は、補正値Caveを用いてステップS315で取得した実測カウント値Cを補正した補正後カウント値Ccを式(6)により導出する(ステップS335)。式(6)からわかるように、補正後カウント値Ccは、実測カウント値Cと補正値Caveとの差である。ここで、補正値Caveは、実測カウント値Cの平均に相当する値であり、実測周期T(k、p、q、r)に対する平均周期Tave(k,p,q,r)と同様に、実測カウント値Cから発振器53の製造ばらつきに起因する発振周波数の変化分は互いに打ち消しあって除かれ、発振器53の配置や配線に起因する発振周波数の変化分の影響が残った値となる。そのため、実測カウント値Cとこの補正値Caveとの差である補正後カウント値Ccは、実測カウント値Cから発振器53の配置や配線に起因する発振周波数の変化分が除去され、発振器53の製造ばらつきに起因する発振周波数の変化分を表す値となる。より具体的には、補正後カウント値Ccは、処理対象のICカード20における発振器53のうち処理対象のチャレンジCHで定まる主発振器の主信号経路と副発振器の副信号経路とに関する部分の製造ばらつきに起因する発振周波数の変化分により定まる値となる。そして、この製造ばらつきはICカード20に固有のものであるため、補正後カウント値CcはICカード20の固有の値となり、この値を用いてICカード20が正規のものであるか否かの判定を行うことができる。
Subsequently, the
Cave=T2ave/T1ave×Cp (5)
Cc=C−Cave (6)
Cave = T2ave / T1ave × Cp (5)
Cc = C-Cave (6)
次に、制御部41は、補正後カウント値Ccが値0以上であるか否かを判定する(ステップS340)。そして、補正後カウント値Ccが値0以上であるときには、固有値Iを値1として、この固有値IとステップS305で取得したID及びステップS310で設定したチャレンジCHとを対応付けて固有値テーブルとして記憶する(ステップS345)。一方、補正後カウント値Ccが値0以上でないときには、固有値Iを値0として、この固有値IとステップS305で取得したID及びステップS310で設定したチャレンジCHとを対応付けて固有値テーブル47として記憶する(ステップS350)。この固有値Iは処理対象のICカード20におけるチャレンジCHに対応する固有の値であるため、後でICカード20が正規のものであるか否かを判定する場合において、ここで記憶した固有値Iと同じ値が判定対象のICカード20から導出されるかどうかによってその判定を行うことができる。
Next, the
ここで、補正後カウント値Cc自体ではなく、補正後カウント値Ccが値0以上であるか否かに応じた値を固有値Iとして記憶する理由について説明する。同じICカード20について同じチャレンジCHに対応する実測カウント値CをPUF回路50から取得する場合、理想的には実測カウント値Cは常に同じ値となるが、実際は誤差やノイズ等の影響によりわずかに異なる値が実測カウント値Cとして取得される場合がある。そのため、固有値記憶ルーチンで予め求めておいた補正後カウント値Ccと同じ値が得られるかどうかによりICカード20が正規のものであるか否かを判定すると、正規のカードであっても誤差やノイズの大きさによっては同じ値が得られず正しい判定ができない場合がある。そこで、補正後カウント値Ccが値0以上か否かを表す値を固有値Iとして、換言すると補正後カウント値Ccを2値化したものを固有値Iとして、誤差があったとしても予め記憶しておいた固有値Iと同じ値が得られるようにしているのである。本実施形態で補正後カウント値Ccが値0以上であるか否かに応じた値を固有値Iとして記憶するのはこのような理由による。ここで、補正後カウント値Ccの絶対値が誤差やノイズ分と比較して同等以下に小さい場合には、2値化してもなお誤差やノイズにより固有値Iが同じ値とならないなど、2値化した固有値Iの安定性が低下する場合がある。このようなケースへの対処方法として、例えばステップS335で導出した補正後カウント値Ccの絶対値が所定の閾値以下であるときには処理対象のチャレンジCHは不安定な固有値Iを出力してしまうため認証用途に適さないとみなして、ステップS345又はS350での固有値テーブルへの記憶を行わないこととしてもよい。こうすることで,認証時に不安定な固有値Iを生成するチャレンジCHを用いることを防止して、認証の安定性を高めることができる。なお、補正後カウント値Ccを2値化したものを固有値Iとすると、予め記憶された固有値Iと同じ値が正規のカードでないICカード20から得られた値と偶然一致する可能性が高まるという問題があるが、複数のチャレンジCHを設定して複数個の固有値Iが全て一致するか否かによりICカード20が正規のカードであるか否かを判定することでこの問題は解決できる。
Here, the reason why not the corrected count value Cc itself but a value corresponding to whether or not the corrected count value Cc is equal to or greater than 0 is stored as the eigenvalue I will be described. When the measured count value C corresponding to the same challenge CH for the
そして、ステップS345又はステップS350で固有値Iを記憶すると、未処理のチャレンジCHがあるか否かを判定する(ステップS355)。そして、未処理のチャレンジCHがあるときにはステップS310以降の処理を行う。一方、未処理のチャレンジCHがないときには、接続された複数のICカード20のうち未処理のICカード20があるか否かを判定する(ステップS269)。そして、未処理のICカード20があるときには、ステップS300以降の処理を行う。未処理のICカード20がないときには、本ルーチンを終了する。この固有値記憶ルーチンを実行することで、サーバー40に接続された全てのICカード20についての固有値Iのテーブルである固有値テーブル47が作成されて、記憶部45に記憶される。図8は、固有値テーブル47の一例を示す説明図である。この図に示すように、固有値テーブル47では、ICカード20のID及びチャレンジCHと固有値Iとを対応付けられている。なお、上述したように本実施形態ではチャレンジCHは1280通りの組合せが存在するため、ICカード20の1つのIDについて1280個の固有値Iが存在する。
When the eigenvalue I is stored in step S345 or step S350, it is determined whether there is an unprocessed challenge CH (step S355). Then, when there is an unprocessed challenge CH, the processing from step S310 is performed. On the other hand, when there is no unprocessed challenge CH, it is determined whether there is an
次に、情報セキュリティシステム10の動作、特に、カードリーダー30のカードスロット36に挿入されたICカード20が正規のカードであるか否かの判定をサーバー40が行う際の動作について説明する。図9は、ICカード認証処理の様子を示すシーケンスである。この処理は、カードリーダー30が、カードスロット36にICカード20が挿入されたことを検出したときに開始される。
Next, an operation of the
このICカード認証処理が開始されると、まず、カードリーダー30の制御部32がカードスロット36に挿入されたICカード20に対してIDの送信要求を送信する(ステップS500)。続いて、この送信要求を受信したICカード20の制御部22は記憶部24から自身のIDを読み出し、これをカードリーダー30に送信する(ステップS505)。そして、制御部32は、ICカード20から受信したIDをサーバー40に送信する(ステップS510)。
When the IC card authentication process is started, first, the
IDを受信すると、サーバー40の制御部41は、今回のICカード20が正規のカードであるか否かの判定に用いるチャレンジCHを決定する(ステップS515)。本実施形態では、制御部41は、1280通りのチャレンジCHのうち128個のチャレンジCHをランダムに選出して判定に用いるチャレンジCHとして決定するものとした。続いて、制御部41は、受信したID及び決定したチャレンジCHに対応する固有値Iを固有値テーブル47から読み出す(ステップS520)。決定したチャレンジCHは128個であるため、固有値Iも128個が固有値テーブル47から読み出される。
When receiving the ID, the
続いて、制御部41は、決定したチャレンジCHに対応する補正値Caveを導出する(ステップS525)。この補正値Caveは、上述した図6の固有値記憶ルーチンのステップS330で説明した補正値Caveと同じものである。そのため、128個のチャレンジCHに対応する各補正値Caveは、上述した固有値記憶ルーチンのステップS320〜S330の処理と同様の処理により導出する。
Subsequently, the
そして、制御部41は、ステップS515で決定したチャレンジCHと、ステップS520で読み出した固有値Iと、ステップS525で導出した補正値Caveとを対応付けて記憶部45に記憶し(ステップS530)、決定した128個のチャレンジCHをカードリーダー30に送信する(ステップS535)。カードリーダー30の制御部32は、サーバー40から送信されたチャレンジCHをICカード20に送信する(ステップS540)。
Then, the
カードリーダー30からチャレンジCHが送信されると、ICカード20の制御部22は、送信された128個のチャレンジCHに対応する実測カウント値Cを取得する(ステップS545)。具体的には、まず、制御部22が、送信されたチャレンジCHに含まれる主発振器選択信号k1を主発振器セレクター55aに設定し、副発振器選択信号k2を副発振器セレクター55bに設定し、主経路選択信号p1,q1,r1、副経路選択信号p2,q2,r2をそれぞれ主発振器及び副発振器の経路セレクター66に設定する。そして、制御部22は、出力決定部58からチャレンジCHに対応する実測カウント値Cを取得する。この処理を、128個のチャレンジCHについてそれぞれ行って、128個の実測カウント値Cを取得する。
When the challenge CH is transmitted from the
実測カウント値Cを取得すると、制御部22は、チャレンジCHと実測カウント値Cとを対応付けてカードリーダー30に送信する(ステップS550)。カードリーダー30の制御部32は、ICカード20から送信されたチャレンジCHをサーバー40に送信する(ステップS555)。
When the actual count value C is acquired, the
カードリーダー30からチャレンジCHと実測カウント値Cとが送信されると、サーバー40の制御部41は、送信されたチャレンジCHと実測カウント値Cとを対応付けて記憶部45に記憶する(ステップS560)。この処理と上述したステップS530とにより、記憶部45にはチャレンジCH,固有値I,補正値Cave,実測カウント値Cが対応付けられたテーブル(以下、判定用テーブルと称する)が記憶される。
When the challenge CH and the actual count value C are transmitted from the
続いて、制御部41は、この判定用テーブルを用いてカードスロット36に接続されたICカード20が正規のものであるか否かを判定する判定処理を行う(ステップS565)。ここで、ICカード認証処理の説明を中断して、判定処理について説明する。図10は、判定処理の一例を示すフローチャートである。
Subsequently, the
この判定処理が開始されると、制御部41は、まず、記憶部45の判定用テーブルに含まれる128個のチャレンジCHのうち未処理のもの1つを処理対象のチャレンジCHに設定する(ステップS600)。続いて、制御部41の判定部44は、処理対象のチャレンジCHに対応する固有値I,補正値Cave,実測カウント値Cを判定用テーブルから読み出す(ステップS605)。そして、制御部41の補正部43は、読み出した補正値Caveと実測カウント値Cとから、補正後カウント値Ccを導出する(ステップS610)。なお、補正後カウント値Ccは、上述した図6のステップS335と同様に式(6)により導出する。そして、補正部43は、補正後カウント値Ccが値0以上であるか否かを判定して(ステップS615)、補正後カウント値Ccが値0以上であるときには、レスポンス値Reを値1に設定し(ステップS620)、補正後カウント値Ccが値0以上でないときには、レスポンス値Reを値0に設定する(ステップS625)。
When this determination process is started, the
続いて、制御部41の判定部44は、レスポンス値ReがステップS605で読み出した固有値Iと一致するか否かを判定する(ステップS630)。レスポンス値Reが固有値Iと一致するときには、判定部44は、未処理のチャレンジCHがあるか否かを判定し(ステップS635)、未処理のチャレンジCHがある場合にはステップS600に進む。そして、ステップS635で未処理のチャレンジCHがないときには、判定部44は、カードスロット36に挿入されたICカード20は正規のカードであると判定し(ステップS640)、本処理を終了する。一方、ステップS630でレスポンス値Reが固有値Iと一致しないときには、判定部44は、カードスロット36に挿入されたICカード20は正規のカードでないと判定して(ステップS645)、本処理を終了する。
Subsequently, the
図9のICカード認証処理の説明に戻る。ステップS565の判定処理を行うと、制御部41は、判定結果に応じた処理を行って(ステップS570)、本処理を終了する。例えば、判定処理でICカード20が正規のカードであったときには、制御部41は、ICカード20を挿入したユーザーが希望するATMサービス(現金の払い戻しなど)をカードリーダー30の図示しない操作部を介して入力するよう促す所定の表示画面をカードリーダー30の図示しない表示部に表示するよう、カードリーダー30に指令を送信する。そして、カードリーダー30が表示画面を表示し、その後のユーザーの操作に従ってATMサービスをユーザーに提供する処理を行う。また、例えば、判定処理でICカード20が正規のカードでなかったときには、制御部41は、カードスロット36に挿入されたICカード20が使用不能である旨をカードリーダー30の表示部に表示するよう、カードリーダー30に指令を送信する。
Returning to the description of the IC card authentication process in FIG. If the determination process of step S565 is performed, the
このように、ICカード認証処理では、サーバー40が128個のチャレンジCHに対応する実測カウント値CをICカード20から取得し、実測カウント値Cを補正した補正後カウント値Ccの値から導出したレスポンス値Reが固有値テーブル47に記憶された固有値Iと全て一致するか否かによって、ICカード20が正規のカードであるか否かの判定を行うのである。上述したように補正後カウント値Ccは、実測カウント値Cから発振器53の配置や配線に起因する発振周波数の変化分が除去され、ICカード20における発振器53のうち処理対象のチャレンジCHで定まる主発振器の主信号経路と副発振器の副信号経路とに関する部分の製造ばらつきに起因する発振周波数の変化分により定まる値となる。そして、この製造ばらつきはICカード20を複製したとしても再現できないため、予め図6の固有値記憶ルーチンを行って固有値テーブル47を作成したときに用いたICカード20自身からのレスポンス値Reのみが固有値Iと全て一致する。しかも、補正後カウント値Ccは、実測カウント値Cから発振器53の配置や配線に起因する発振周波数の変化分が除去された値であるから、実測カウント値Cと比べてICカード20のユニーク性をより高めた値となっている。例えば実測カウント値Cそのものを予め固有値テーブル47の固有値Iとして記憶しておき、レスポンス値Reも実測カウント値Cそののもを用いるとすると、発振器53の配置や配線に起因して、チャレンジCHと固有値I,レスポンス値Reとの対応関係に偏りが生じることのより製造時のばらつきが再現できていない偽造品であっても固有値Iとレスポンス値Reとが一致する可能性が高まる場合がある。本実施形態では、実測カウント値Cを補正した補正後カウント値Ccを用いることで、このようなことを防止してICカード20のユニーク性を高めることができる。
As described above, in the IC card authentication process, the
ここで、第1実施形態の構成要素と本発明の構成要素との対応関係を明らかにする。第1実施形態のサーバー40が本発明のホストに相当し、ICカード20がデバイスに相当し、発振回路52が発振回路に相当し、選択回路54が選択手段に相当し、取得部42が取得手段に相当し、補正部43が補正手段に相当し、固有値テーブル47が固有値記憶手段に相当し、判定部44が判定手段に相当する。なお、本実施形態では、サーバー40の動作を説明することにより本発明のホストの制御方法の一例も明らかにしている。
Here, the correspondence between the components of the first embodiment and the components of the present invention will be clarified. The
以上詳述した第1実施形態の情報セキュリティシステム10によれば、製造ばらつきに起因する固有の発振周波数をもつ複数の発振器53を有する発振回路52をICカード20が有している。そして、まず、この複数の発振器53のうち少なくとも1つの発振器53を選択し、選択された発振器53を発振させ、その発振周波数に基づく実測カウント値Cを取得する。続いて、取得された実測カウント値Cを、複数のICカード20における選択された発振器と同じ配置及び配線の発振器53を発振させたときの周波数の平均に基づく値である補正値Caveに基づいて補正した補正後カウント値Cc及びレスポンス値Reを導出する。このように、実測カウント値Cを補正値Caveで補正することで、実測カウント値Cから発振器53の配置や配線に起因する発振周波数の変化分を除去することができ、ICカード20のユニーク性をより高めた補正後カウント値Cc及びレスポンス値Reを導出することができる。
According to the
また、発振器53は、リング状に奇数段のインバーター60が直列接続されたリングオシレーターとしている。リングオシレーターは、IC内部の論理素子や配線のみを用いて構成可能であり、デバイス(ICカード20)の製造ばらつきが論理素子の遅延に影響することでデバイス間の差異がその発振周波数特性に表れやすいため、本発明に適用する意義が高い。
The
さらに、発振器53は、1つの発振器53の各段において並列に接続されたいずれのインバーター60を選択するかにより、複数の選択経路W(p,q,r)が選択可能である。そして、取得部42は、選択された発振器53を選択された信号経路W(p,q,r)で発振させ、発振の周波数に基づく実測カウント値Cを取得し、補正部43は、取得された実測カウント値Cを、補正値Caveに基づいて補正した補正後カウント値Ccを導出する。こうすれば、1つの発振器53の各段において並列に接続されたいずれのインバーター60を選択するかにより、発振器53の固有の発振周波数が異なる値となるため、擬似的に発振器53の数を増やすことができる。なお、いずれの発振器53が選択されるかによって補正後カウント値Ccやレスポンス値Reは異なる値となるため、発振器53の数が多いほど補正後カウント値Ccやレスポンス値Reが第三者に予測されにくくなり、セキュリティを向上させることができる。
Furthermore, the
さらにまた、補正部43は、選択された発振器53の選択された信号経路が基準信号経路でなく且つ基準信号経路と比べて1つの反転回路のみが異なる信号経路であるオフセット信号経路でないときには、複数のICカード20について選択された発振器と同じ配置及び配線の発振器53を基準信号経路で発振させたときの平均周期Tである基準値Tbと、複数のICカード20について選択された発振器と同じ配置及び配線の発振器53をオフセット信号経路で発振させたときの平均周期Tと基準値Tbとの差であるオフセット値Toと、を用いて、選択された信号経路のうち基準信号経路と異なる反転回路に対応するオフセット値Toと基準値Tbとの和を選択された信号経路に対応する平均周期Tとして導出し、導出された平均周期Tに基づいて実測カウント値Cを補正した補正後カウント値Ccを導出する。このため、基準信号経路でなく且つオフセット信号経路でもない信号経路の平均周波数関連値を、基準値Tbとオフセット値Toとの和をとるという簡易な処理で導出できる。
Furthermore, when the selected signal path of the selected
そしてまた、選択回路54は、複数の発振器53のうち2つの発振器を選択し、取得部42は、選択された2つの発振器53を発振させ、2つの発振器の周波数の差に基づく値である実測カウント値Cを取得する手段であり、補正部43は、取得された実測カウント値Cを、複数のICカード20についての選択された2つの発振器53と同じ配置及び配線の発振器53を発振させたときの2つの発振器の周波数の平均的な差に基づく値である補正値Caveに基づいて補正することで、補正後カウント値Ccを導出する。このため、1つの発振器53のみを選択する場合と比較して、発振器53の選択のパターン数すなわちチャレンジCHの総数が増す。
Further, the
そしてまた、ICカード20の有する発振器53と発振器53の固有の発振周波数に基づく固有値Iとを対応付けて記憶する固有値テーブル47と、固有値テーブル47から選択された発振器53に対応する固有値Iを読み出し、読み出した固有値Iが導出されたレスポンス値Reと一致するか否かにより該デバイスが正規のものであるか否かを判定する判定部44と、をサーバー40が備えている。このため、ユニーク性をより高めた補正後カウント値Cc及びレスポンス値Reを用いてICカード20が正規のものであるか否かを判定するため、例えば実測カウント値Cをそのまま用いてICカード20が正規のものであるか否かを判定する場合と比べて判定の精度が高まり、セキュリティが向上する。
Also, the eigenvalue table 47 that stores the
なお、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。 It should be noted that the present invention is not limited to the above-described embodiment, and it goes without saying that the present invention can be implemented in various modes as long as it belongs to the technical scope of the present invention.
上述した第1実施形態では、サーバー40の制御部41が補正部43を有するものとしたが、ICカード20の制御部22が補正部を有するものとしてもよい。この場合、サーバー40からチャレンジCHと併せて補正値CaveをICカード20に送信して、ICカード20が実測カウント値Cを補正値Caveで補正して補正後カウント値Ccやレスポンス値Reを導出し、導出した値をサーバー40に送信するものとすればよい。
In the first embodiment described above, the
[第2実施形態]
図11は、第2実施形態である情報セキュリティシステム110の構成の概略を示す構成図である。なお、第2実施形態の構成要素のうち第1実施形態と同様の構成については、第1実施形態と同じ符号を付してその説明を省略する。
[Second Embodiment]
FIG. 11 is a configuration diagram showing an outline of the configuration of the
図11に示すように、情報セキュリティシステム110は、ユーザーPC130と、ユーザーPC130に接続されたFPGA(Field Programmable Gate Array)120と、サーバー140とを備えている。この情報セキュリティシステム110は、FPGA120の再構成可能回路126に回路を構成するための回路データを暗号化した暗号データをサーバー140が提供し、正規のFPGA120のみがこの暗号データを復号して利用できるようにした装置である。
As shown in FIG. 11, the
FPGA120は、ユーザーPC130の拡張カードとしての機能を有し、サーバー140から提供された回路データに基づいて事後的に回路の構成や再構成が可能な集積回路である。このFPGA120は、全体の制御を司る制御部121と、事後的に回路の構成及び再構成が可能な再構成可能回路126と、FPGA120の電源がオンされたときに所定の処理を行う起動処理部128と、PUF回路50とを備えている。制御部121は、CPU,ROM,RAMなどを備えたマイクロプロセッサーとして構成され、取得部122と、補正部123と、復号部124とを備えている。この制御部121は、PUF回路50から取得した実測カウント値Cに基づいて得られる補正後カウント値Ccに基づきサーバー140から提供された暗号データを復号し、復号して得られた回路データを用いて再構成可能回路126に回路を構成する機能を有する。取得部122は、PUF回路50の主発振器及び副発振器を発振させ、その発振周波数の差に基づく値である実測カウント値Cを取得する機能を有する。補正部123は、取得部122により取得された実測カウント値Cを、複数のICカード20についての実測カウント値Cを取得した主発振器及び副発振器と同じ配置及び配線の発振器53を発振させたときの2つの発振器53の周波数の平均的な差に基づく値に基づいて補正することで、補正後カウント値Ccを導出する機能を有する。復号部124は、補正部123に導出された補正後カウント値Ccに基づいてサーバー140から出力された暗号データを復号する機能を有する。再構成可能回路126は、スイッチの切り替えにより機能を変更可能な論理回路ブロックと、スイッチの切り替えにより接続を変更可能な配線とを多数備えた回路として構成されている。この再構成可能回路126は、FPGA120の電源がオフの状態では回路が構成されていない状態であり、電源がオンされた状態で各スイッチを切り替えることにより回路の構成や変更がなされる。各スイッチの切り替えは、制御部121が回路データに基づいて出力するスイッチの切り替え信号に基づいて行われる。起動処理部128は、CPU,ROM,RAMなどを備えたマイクロプロセッサーとして構成されており、ROMには制御部121及びPUF回路50を構成するためのデータやFPGA120のIDが記憶されている。ここで、FPGA120の制御部121及びPUF回路50は、再構成可能回路126と同様にスイッチの切り替えにより構成された回路であり、電源がオフの状態では構成されていない。起動処理部128は、FPGA120の電源がオンされる毎にROMに記憶されたデータに基づいてスイッチの切り替え信号を出力し、FPGA120内に制御部121及びPUF回路50を構成する機能を有する。なお、図11ではFPGA120の電源がオンされ起動処理部128により制御部121及びPUF回路50が構成された状態を示している。ここで、PUF回路50はFPGA120の電源がオンされる毎に構成されるが、同じFPGA120について起動処理部128が同じデータに基づいてPUF回路50を構成する場合には、常に同じPUF回路50が構成される。そのため、PUF回路50の発振器53の製造ばらつきに起因する発振周波数の変化分や、発振器53の配置や配線に起因する発振周波数の変化分も変わることはなく、同じチャレンジCHに対して出力される実測カウント値CがPUF回路50の構成の都度変わることはない。
The
ユーザーPC130は、ネットワーク11を介してサーバー40と接続された周知の汎用パソコンであり、コントローラー132と、HDD134と、拡張スロット136と、バス137と、表示装置138と、入力装置139とを備えている。コントローラー132は、CPU,ROM,RAMなどを備えたプロセッサーとして構成されている。HDD134は、各種アプリケーションプログラムや各種データファイルを記憶する大容量メモリである。拡張スロット136は、FPGA120などの拡張カードが接続可能であり、接続されたFPGA120とユーザーPC130との間のインターフェースとしての機能を有する。バス137は、例えばPCI(Peripheral Component Interconnect)バスとして構成され、コントローラー132,HDD134,拡張スロット136,表示装置138,及び入力装置139を接続している。表示装置138は、例えば液晶ディスプレイとして構成されており、制御部20から出力された表示データに基づく画像を表示して各種情報をユーザーに表示する機能を有している。入力装置139は、例えばキーボードやマウス等の入力装置として構成されており、ユーザーから入力された操作に基づく操作信号を制御部20に出力する機能を有している。
The
サーバー140は、ユーザーの求めに応じて再構成可能回路126に構成する回路の回路データをFPGA120に提供するものであり、サーバー140全体の制御を司る制御部141と、各種データを記憶する記憶部145とを備えている。制御部141は、取得部142と、補正部143と、暗号データ出力部148とを備えており、記憶部145は、平均値テーブル146と、固有値テーブル147とを備えている。取得部142は、実測カウント値Cを取得する対象がICカード20ではなくFPGA120である点以外は、取得部42と同様の機能を有する。補正部143は、補正後カウント値Ccを導出する対象がICカード20ではなくFPGA120である点以外は、補正部43と同様の機能を有する。暗号データ出力部148は、FPGA120における選択された発振器53の固有の発振周波数に基づく固有値Iに基づいて回路データを暗号化した暗号データをFPGA120に出力する機能を有する。平均値テーブル146は、補正部143が実測カウント値Cを補正するために用いる値を各発振器53と対応付けて記憶しているテーブルであり、ICカード20ではなくFPGA120のPUF回路50についての値を記憶している点以外は平均値テーブル46と同様の構成を有する。固有値テーブル147は、FPGA120のPUF回路50についての固有値Iを記憶している点以外は、固有値テーブル47と同様の構成を有する。また、記憶部145には、FPGA120にの再構成可能回路126に構成可能な複数の回路データと、回路データを識別するための回路識別情報とが対応付けて記憶されている。
The
次に、こうして構成された情報セキュリティシステム110の動作、特に、記憶部145に記憶された回路データを暗号化した暗号データをサーバー140がFPGA120に提供し、FPGA120がその復号を行って回路データを取得する際の動作について説明する。図12は、回路データ提供処理の様子を示すシーケンスである。この処理は、FPGA120の電源がオフからオンに変わったときに開始される。なお、図12の処理のうち、図9と同様の処理については同じステップ番号を付して、詳細な説明を省略する。
Next, the
ここで、サーバー140は、予め図4の平均値記憶ルーチン及び図6の固有値記憶ルーチンと同様の処理を実行済みであり、平均値テーブル146及び固有値テーブル147を作成して記憶部145に記憶しているものとした。より具体的には、まず、複数のFPGA120を用意し、用意したFPGA120とサーバー140とを接続して、サーバー140の制御部141がネットワーク11を介さず直接に複数のFPGA120と情報をやりとりできる状態にした上で、図4の平均値記憶ルーチンと同様の処理を制御部141により実行しておく。これにより、サーバー140に接続された全てのFPGA120についてFPGA120のID及びチャレンジCHと固有値Iとを対応付けた固有値テーブル147が作成されて記憶部145に記憶される。また、ユーザーが入手する前のFPGA120とサーバー40とを接続して、サーバー40の制御部141がネットワーク11を介さず直接に複数のFPGA120と情報をやりとりできる状態にした上で、図6の固有値記憶ルーチンと同様の処理を制御部141により実行しておく。これにより、サーバー40に接続された全てのFPGA120についてFPGA120のID及びチャレンジCHと固有値Iとを対応付けた固有値テーブル147が作成されて記憶部145に記憶される。
Here, the
図12の回路データ提供処理が開始されると、まず、FPGA120の電源がオンされたことにより、起動処理部128が制御部121及びPUF回路50を構成する(ステップS700)。続いて、起動処理部128により構成された制御部121は、起動処理部128のROMに記憶されたFPGA120のIDを読み出してユーザーPC130に送信する(ステップS705)。
When the circuit data providing process of FIG. 12 is started, first, the
そして、ユーザーPC130のコントローラー132は、FPGA120からIDを受信すると、ユーザーがFPGA120への提供を希望する回路データの回路識別情報を入力装置139を介して受け付ける(ステップS710)。この処理は、例えば回路識別情報を入力装置139を介して入力するようユーザーに促す図示しない所定の入力画面を表示するようコントローラー132が表示装置138を制御して、ユーザーが入力装置139に入力した操作に基づいて回路識別情報を入力装置139からコントローラー132が受信することにより行う。なお、ユーザーは、再構成可能回路126に構成したい所定の機能を有する回路データを使用する権利を回路データの提供者から購入することで、この回路データの回路識別情報を予め入手しているものとした。回路識別情報を受け付けると、コントローラー132は、ステップS705で送信されたIDと受け付けた回路識別情報とをネットワーク11を介してサーバー140に送信する(ステップS715)。
Then, when receiving the ID from the
ステップS715で送信されたID及び回路識別情報を受信すると、サーバー140の制御部141は、ステップS515〜S525の処理を行う。これにより、制御部141は128個のチャレンジCHを決定し、受信したID及び決定したチャレンジCHに対応する固有値Iを固有値テーブル147から読み出し、決定したチャレンジCHに対応する補正値Caveを固有値テーブル147から導出する。
When the ID and the circuit identification information transmitted in step S715 are received, the
続いて、制御部141は、ステップS715で送信された回路識別情報に対応する回路データを記憶部145から読み出す(ステップS720)。次に、制御部141は、ステップS520で読み出した固有値Iに基づいてステップS720で読み出した回路データを暗号化した暗号データを生成する(ステップS725)。本実施形態では、チャレンジに対応する128個の固有値Iを128ビットの鍵情報として用いて、暗号方式の1つであるAES(Advanced Encryption Standard)により回路データを暗号化するものとした。なお、128個の固有値Iから所定の演算により求めた値を鍵情報として回路データを暗号化してもよい。
Subsequently, the
暗号データを生成すると、暗号データ出力部148は、ステップS515で決定したチャレンジCHと、ステップS525で導出した補正値Caveと、ステップS725で生成した暗号データとを、ネットワーク11を介してユーザーPC130に送信する(ステップS730)。ユーザーPC130のコントローラー132は、サーバー140から送信されたチャレンジCH,補正値Cave,及び暗号データを拡張スロット136を介してFPGA120に送信する(ステップS735)。FPGA120の制御部121は、コントローラー132から送信されたチャレンジCHと補正値Caveとを対応付けた復号用テーブルを作成し、復号用テーブルとコントローラー132から送信された暗号データとを図示しない制御部121のRAMなどに記憶する(ステップS740)。
When the encrypted data is generated, the encrypted
そして、制御部121は、ステップS740で記憶した暗号データをPUF回路50の固有の値を用いて復号する復号処理を行う(ステップS745)。ここで、回路データ提供処理の説明を中断して、復号処理について説明する。図13は、復号処理の一例を示すフローチャートである。なお、図13の処理のうち、図10の判定処理と同様の処理については同じステップ番号を付して、詳細な説明を省略する。
And the
この復号処理が開始されると、制御部121は、ステップS600の処理を行ってステップS740で記憶した128個のチャレンジのうち未処理のもの1つを処理対象のチャレンジCHに設定する。続いて、制御部121の取得部122は、処理対象のチャレンジCHに対応する実測カウント値Cを取得する(ステップS800)。この処理は、図6の固有値記憶ルーチンのステップS315においてICカード20の制御部22が行う処理を同様にして行う。すなわち、取得部122が処理対象のチャレンジCHに含まれる主発振器選択信号k1,副発振器選択信号k2,主経路選択信号p1,q1,r1,副経路選択信号p2,q2,r2をPUF回路50に送信し、測定回路56の出力決定部58からチャレンジCHに対応する実測カウント値Cを取得する。
When this decryption process is started, the
続いて、復号部124は、処理対象のチャレンジCHに対応する補正値CaveをステップS740で作成された復号用テーブルから読み出す(ステップS810)。そして、補正部123は、ステップS610の処理を行い、ステップS810で読み出した補正値CaveとステップS800で取得した実測カウント値Cとから上述した式(6)により補正後カウント値Ccを導出する。そして、ステップS615〜S625の処理を行う。これにより、復号部124、補正後カウント値Ccが値0以上であるときにはレスポンス値Reを値1に設定し、補正後カウント値Ccが値0未満であるときにはレスポンス値Reを値0に設定する。
Subsequently, the
次に、復号部124は、ステップS635の処理を行って未処理のチャレンジCHがあるか否かを判定し、未処理のチャレンジCHがある場合にはステップS600に進む。これにより、128個のチャレンジCHにそれぞれ対応するレスポンス値Reが設定されるまで上述した処理を繰り返す。そして、ステップS635で未処理のチャレンジCHがないときには、復号部124はステップS740で記憶した暗号データをレスポンス値Reに基づいて復号して(ステップS820)、復号処理を終了する。ステップS820の処理は、本実施形態では、チャレンジに対応する128個のレスポンス値Reを128ビットの鍵情報として用いて、AESを復号する処理により暗号データを復号化するものとした。暗号データがステップS725において回路データをどのような手法で暗号化したものであるかは、予めFPGA120とサーバー140との間で取り決められているものとした。こうすることで、ステップS725とステップS820とで処理に用いる鍵情報が一致していればステップS820の復号を正しく行うことができる。なお、暗号データと共に、暗号化した手法を識別するための情報を付加してサーバー140がFPGA120に暗号データを送信するものとしてもよい。
Next, the
図12の回路データ提供処理の説明に戻る。ステップS745の復号処理を行うと、制御部121は、復号して得られた回路データに基づいて、再構成可能回路126内に回路を構成して(ステップS750)、本処理を終了する。ここで、FPGA120で導出されるレスポンス値Reが、サーバー140で導出された固有値Iと一致していないときには、ステップS725とステップS820とで処理に用いた鍵情報が一致せず、ステップS820における復号が正しく行われない。そのため、ユーザーが提供を希望していた回路データがFPGA120内に構成されることはない。
Returning to the description of the circuit data providing process of FIG. When the decoding process of step S745 is performed, the
このように、回路データ提供処理では、FPGA120のユニーク性をより高めた値であるレスポンス値Reが、サーバー140での回路データの暗号化に用いた固有値Iと一致しているときにのみ正しく暗号データを復号できるようにして、回路データが正規のFPGA120以外のデバイスで利用されることを防止するのである。
As described above, in the circuit data providing process, only when the response value Re, which is a value that further enhances the uniqueness of the
ここで、第2実施形態の構成要素と本発明の構成要素との対応関係を明らかにする。第2実施形態のサーバー140が本発明のホストに相当し、FPGA120がデバイスに相当し、発振回路52が発振回路に相当し、選択回路54が選択手段に相当し、取得部122が取得手段に相当し、補正部123が補正手段に相当し、暗号データ出力部148が暗号データ出力手段に相当し、復号部124が復号手段に相当する。なお、本実施形態では、サーバー40の動作を説明することにより本発明のデバイスの制御方法の一例も明らかにしている。
Here, the correspondence between the constituent elements of the second embodiment and the constituent elements of the present invention will be clarified. The
以上詳述した第2実施形態の情報セキュリティシステム110によれば、FPGA120がチャレンジCHに対応するPUF回路50の実測カウント値Cを取得し、取得された実測カウント値Cを補正値Caveに基づいて補正した補正後カウント値Cc及びレスポンス値Reを導出する。このため、実測カウント値Cから発振器53の配置や配線に起因する発振周波数の変化分を除去してユニーク性をより高めることができ、FPGA120のユニーク性をより高めた補正後カウント値Cc及びレスポンス値Reを導出することができる。
According to the
また、サーバー140がチャレンジCHに対応する固有値Iに基づいて暗号化された暗号データをFPGA120に出力し、FPGA120が導出したレスポンス値Reに基づいて暗号データを復号する。これにより、ユニーク性をより高めたレスポンス値Reが固有値Iと一致していないと正しく暗号データを復号することができないため、暗号データが正規のFPGA120以外のデバイスで復号されることをより防止できる。
Further, the
なお、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。 It should be noted that the present invention is not limited to the above-described embodiment, and it goes without saying that the present invention can be implemented in various modes as long as it belongs to the technical scope of the present invention.
例えば、上述した第2実施形態では、図12のステップS710においてユーザーが入力した回路識別情報をコントローラー132が受け付けるものとしたが、予め回路識別情報がFPGA120やユーザーPC130に記憶されており、ユーザーの操作を介さず自動的にコントローラー132が回路識別情報を取得するものとしてもよい。
For example, in the second embodiment described above, the
上述した第1,第2実施形態では、図4の平均値処理ルーチンにおいて基準値Tb(k)とオフセット値To(k,1,0,0),To(k,0,1,0),To(k,0,0,1)とを導出して記憶部45,記憶部145に記憶するものとしたが、基準値Tb(k)と平均周期Tave(k、1,0,0),Tave(k,0,1,0),Tave(k,0,0,1)とを記憶するものとしてもよい。この場合、図7の主平均周期導出処理や副平均周期導出において、オフセット値Toを基準値Tbと平均周期Taveとから導出すればよい。また、オフセット値Toを用いず、各発振器53の各経路についてそれぞれ平均周期Taveを導出して記憶部45,145に記憶するものとしてもよい。
In the first and second embodiments described above, the reference value Tb (k) and the offset values To (k, 1, 0, 0), To (k, 0, 1, 0), To (k, 0, 0, 1) is derived and stored in the
上述した第1,第2実施形態では、入力された第2カウンター57bのカウント数が所定カウント値Cp(例えば16進数×4桁の表記で値8000)になったときの第1カウンター57aのカウント数を実測カウント値Cとしたが、選択された2つの発振器の周波数の差に基づく値であれば、どのような値を実測カウント値Cとしてもよい。例えば、実測カウント値Cは、選択された発振器がそれぞれ所定回数発振するのに要する時間の差又は比としてもよい。
In the first and second embodiments described above, the count of the
上述した第1,第2実施形態では、基準値Tb及びオフセット値Toは、平均周期Taveすなわち時間を表す値を用いて導出するものとしたが、周波数を表す値を用いて導出してもよい。例えば、平均値記憶ルーチンにおいて実測周期Tの代わりに実測周波数を取得するものとし、実測周波数の平均値として平均周波数を求めて、基準信号経路における平均周波数を基準値Tbとし、オフセット信号経路における平均周波数と基準値Tbとの差をオフセット値Toとしてもよい。この場合、図6の固有値記憶ルーチンのステップS320では、図7の主平均周期導出処理と同様の処理を行って、主信号経路の平均周波数A1を基準値Tbやオフセット値Toを用いて導出する処理を行えばよい。同様に、図7の固有値記憶ルーチンのステップS325では、図7の主平均周期導出処理と同様の処理を行って、副信号経路の平均周波数A2を基準値Tbやオフセット値Toを用いて導出する処理を行えばよい。そして、図6の固有値記憶ルーチンのステップS330では、式(5)に代えてCave=A1/A2×Cpにより補正後カウント値Ccを導出すればよい。このように、基準値Tb及びオフセット値Toを周波数を表す値としても、本実施形態と同様に補正後カウント値Ccを導出することができる。なお、本実施形態のように、基準信号経路でなく且つオフセット信号経路でもない信号経路についてその信号経路のうち基準信号経路と異なる反転回路に対応するオフセット値Toと基準値Tbとの和を用いる態様においては、時間を表す値を用いて基準値Tb及びオフセット値Toを導出しておく場合の方が、周波数を表す値を用いて基準値Tb及びオフセット値Toを導出しておく場合と比べて、オフセット値Toと基準値Tbとの和により導出した値がより精度の高い値となるため好ましい。 In the first and second embodiments described above, the reference value Tb and the offset value To are derived using the average period Tave, that is, a value representing time, but may be derived using a value representing the frequency. . For example, in the average value storage routine, the actual measurement frequency is obtained instead of the actual measurement period T, the average frequency is obtained as the average value of the actual measurement frequencies, the average frequency in the reference signal path is set as the reference value Tb, and the average in the offset signal path The difference between the frequency and the reference value Tb may be used as the offset value To. In this case, in step S320 of the eigenvalue storage routine of FIG. 6, the same process as the main average period derivation process of FIG. 7 is performed to derive the average frequency A1 of the main signal path using the reference value Tb and the offset value To. What is necessary is just to process. Similarly, in step S325 of the eigenvalue storage routine of FIG. 7, the same process as the main average period derivation process of FIG. 7 is performed, and the average frequency A2 of the sub signal path is derived using the reference value Tb and the offset value To. What is necessary is just to process. Then, in step S330 of the eigenvalue storage routine of FIG. 6, the corrected count value Cc may be derived from Cave = A1 / A2 × Cp instead of Equation (5). Thus, even if the reference value Tb and the offset value To are values representing the frequency, the corrected count value Cc can be derived as in the present embodiment. Note that, as in this embodiment, the sum of the offset value To and the reference value Tb corresponding to an inverting circuit different from the reference signal path is used for the signal path that is not the reference signal path and is not the offset signal path. In the aspect, the case where the reference value Tb and the offset value To are derived using the value representing the time is compared with the case where the reference value Tb and the offset value To are derived using the value representing the frequency. Thus, a value derived from the sum of the offset value To and the reference value Tb is preferable because it is a more accurate value.
上述した第1,第2実施形態では、平均周期Tと基準値Tbとの差によりオフセット値Toを導出するものとしたが、平均周期Tと基準値Tbとの比によりオフセット値Toを導出もよい。例えば、平均周期Tを基準値Tbで除したものをオフセット値Toとしてもよい。この場合、基準信号経路でなく且つオフセット信号経路でもない信号経路については、その信号経路のうち基準信号経路と異なる反転回路に対応するオフセット値Toと基準値Tbとの積により平均周期Tを導出するものとすればよい。このようにしても、基準信号経路でなく且つオフセット信号経路でもない信号経路の平均周波数関連値を、基準値Tbとオフセット値Toとの積を求めるという簡易な処理で導出できる。なお、このようにオフセット値Toと基準値Tbとの積を用いる態様においては、上述した時間を表す値を用いて基準値Tb及びオフセット値Toを導出しておく場合と、周波数を表す値を用いて基準値Tb及びオフセット値Toを導出しておく場合とで、オフセット値Toと基準値Tbとの積により導出した値の精度は変わらない。 In the first and second embodiments described above, the offset value To is derived from the difference between the average period T and the reference value Tb. However, the offset value To may be derived from the ratio between the average period T and the reference value Tb. Good. For example, a value obtained by dividing the average period T by the reference value Tb may be used as the offset value To. In this case, for a signal path that is neither a reference signal path nor an offset signal path, the average period T is derived from the product of the offset value To and the reference value Tb corresponding to an inverting circuit different from the reference signal path. What should I do? Even in this case, the average frequency related value of the signal path that is not the reference signal path and not the offset signal path can be derived by a simple process of obtaining the product of the reference value Tb and the offset value To. In the aspect using the product of the offset value To and the reference value Tb as described above, the reference value Tb and the offset value To are derived using the above-described value representing the time, and the value representing the frequency is used. The accuracy of the value derived by the product of the offset value To and the reference value Tb does not change between the case where the reference value Tb and the offset value To are derived.
上述した第1,第2実施形態では、サーバーが128個のチャレンジCHを決定してこれをICカード20やFPGA120に送信するものとしたが、ICカード20やFPGA120が決定してサーバーに送信するものとしてもよい。
In the first and second embodiments described above, the server determines 128 challenge CHs and transmits them to the
上述した第1,第2実施形態では、発振器53はリング状に3段のインバーター60が直列接続されると共に、各段において2つのインバーター60が並列に接続されたリングオシレーターとして構成されているものとしたが、段数は奇数段であればよく、並列数はいくつとしてもよい。また、各段で並列数が異なるものとしてもよい。また、並列に接続されたインバーター60がなくリング状に奇数段の反転回路が直列接続されたリングオシレーターとしてもよい。また、発振器は製造ばらつきに起因する固有の発振周波数をもつものであればよく、リングオシレーターに限られない。
In the first and second embodiments described above, the
上述した第1,第2実施形態では、チャレンジによりPUF回路50の2つの発振器53を選択して選択された発振器53の発振周波数に基づく実測カウント値Cを導出するものとしたが、発振器53を1つだけ選択するものとしてもよい。この場合、例えばPUF回路50からは選択された発振器53の発振周波数を実測カウント値として導出し、この実測カウント値と予め求めた発振器53の発振周波数の平均値との差をとることで補正後カウント値を導出するものとしてもよい。この場合でも、平均値により実測カウント値を補正することで実測カウント値から発振器53の配置や配線に起因する発振周波数の変化分を除去することができ、PUF回路50のユニーク性をより高めた補正後カウント値を導出することができる。また、発振周波数に限らず発振周波数に関連する値であればどのようなものを用いて実測カウント値や補正後カウント値を導出してもよい。例えばPUF回路50からは選択された発振器53の周期を実測カウント値として導出し、この実測カウント値と予め求めた発振器53の周期の平均値との差をとることで補正後カウント値を導出するものとしてもよい。
In the first and second embodiments described above, the measured count value C based on the oscillation frequency of the selected
上述した第1,第2実施形態では、サーバー40,140にICカード20,FPGA120を接続し、予め基準値Tbやオフセット値Toを導出して平均値テーブル46,146を記憶したり固有値Iを導出して固有値テーブル47,147を記憶したりするものとしたが、サーバー40、サーバー140が基準値Tb,オフセット値To,固有値Iを導出せず、予め別に作成された平均値テーブル46,146,固有値テーブル47,147を外部から受け取って記憶部45,145に記憶するものとしてもよい。
In the first and second embodiments described above, the
上述した第1実施形態において、ICカード20の固有の値に基づいてサーバー40とICカード20との間でやり取りする情報を暗号化するものとしてもよい。例えば、サーバー40は、チャレンジCHに対応する固有値Iに基づいて暗号化した暗号データと平文のチャレンジCH及び補正値Caveとを送信するものとし、ICカード20は、受信したチャレンジCHに対応する実測カウント値Cと受信した補正値Caveとから導出したレスポンス値Reに基づいて暗号データを復号するものとしてもよい。同様に、ICカード20のレスポンス値Reに基づいて暗号化した暗号データをサーバー40に送信し、サーバー40は受信した暗号データを固有値Iに基づいて復号するものとしてもよい。こうすれば、ICカード20とサーバー40との間でやり取りする情報のセキュリティを向上させることができる。
In the first embodiment described above, information exchanged between the
以下には、情報セキュリティシステムのPUF回路を実際に作成した例を実施例として説明する。 Hereinafter, an example in which a PUF circuit of an information security system is actually created will be described as an example.
[実験例1]
実験例1のPUF回路として、図2のPUF回路50の発振器53の数を512個としたPUF回路を作成した。具体的には、512個の発振器をそれぞれ所定位置に配置し所定の配線を行った発振回路と、512個の発振器のうちいずれか1つを主発振器として選択する主発振器セレクターと512個の発振器のうちいずれか1つを副発振器として選択する副発振器セレクターとを備えた選択回路と、主発振器及び副発振器の発振周波数に基づく実測カウント値Cを出力する測定回路とを備えたPUF回路を作成した。なお、512個の発振器は、いずれもリング状に7個のインバーターを直列接続したリングオシレーターとして構成した。このため、実験例1のPUF回路を構成する発振器には並列接続されたインバーターが存在せず、信号経路は1つである。
[Experimental Example 1]
As the PUF circuit of Experimental Example 1, a PUF circuit in which the number of
このPUF回路は、具体的には、産業総合研究所製のサイドチャネル攻撃用標準評価ボードSASEBO-GIIを用意し、この基板に実装された評価用FPGA(Xilinx社製,Virtex5シリーズ(65nm),LX30)に回路を構成することにより作成した。 Specifically, this PUF circuit is a side-channel attack standard evaluation board SASEBO-GII manufactured by the National Institute of Advanced Industrial Science and Technology, and an evaluation FPGA (Virtex5 series (65nm), manufactured by Xilinx), mounted on this board. Created by configuring the circuit in LX30).
[実験例2]
512個の発振器を、いずれも28個のインバーターと7段の経路セレクターとを備え、リング状に7段のインバーターが直列接続されると共に、各段において4つのインバーターが並列に接続されたリングオシレーターとした点以外は、実験例1と同様のPUF回路を作成した。なお、実験例2の発振器は、7段の各段において4つのインバーターが並列に接続されているため、信号経路は47=16384通り存在する。
[Experiment 2]
Ring oscillator with 512 oscillators, each with 28 inverters and 7-stage path selector, 7 stages of inverters connected in series in a ring shape, and 4 inverters connected in parallel at each stage Except for the points described above, a PUF circuit similar to Experimental Example 1 was created. In the oscillator of Experimental Example 2, since four inverters are connected in parallel in each of the seven stages, there are 4 7 = 16384 signal paths.
[ユニーク性評価試験]
実験例1及び実験例2のPUF回路をそれぞれ5個作成して、ユニーク性の評価試験を行った。具体的には以下のように行った。まず、実験例1の5個のPUF回路に入力する128個のチャレンジCHを定めた。次に、5個のPUF回路に対して図4の平均値記憶ルーチンを行って実測周期Tから512個の平均周期Taveを導出し、128個のチャレンジCHにそれぞれ対応する補正値Caveを各PUF回路について導出しておいた。続いて、この128個のチャレンジCHに対応する128個の実測カウント値Cを各PUF回路について取得した。そして、図10の判定処理のステップS610〜S625と同様にして実測カウント値Cと補正値Caveとから128個のレスポンス値Reを各PUF回路について導出して128ビットの補正あり固有値とし、5個のPUF回路間で128ビットの補正あり固有値のうち値が異なるビットの割合を差異率Dとして算出した。また、比較のために128個の実測カウント値Cを値0以上か否かで二値化した値を128ビットの補正なし固有値とし、同様に5個のPUF回路間で値が異なるビットの割合を差異率Dとして算出した。実験例2についても同様にして128ビットの補正あり固有値と補正なし固有値とを導出して、それぞれ5個のPUF回路間で値が異なるビットの割合を差異率Dとして算出した。ここで、差異率Dは50%に近いほど導出される固有値に偏りがないことを意味するため好ましく、差異率Dが50%に近いほどその固有値はPUF回路のユニーク性を高めた値であるといえる。
[Uniqueness evaluation test]
Five PUF circuits of Experimental Example 1 and Experimental Example 2 were prepared, respectively, and a uniqueness evaluation test was performed. Specifically, it was performed as follows. First, 128 challenge CHs to be input to the five PUF circuits of Experimental Example 1 were determined. Next, the average value storage routine of FIG. 4 is performed on the five PUF circuits to derive 512 average periods Tave from the actual measurement period T, and the correction values Cave corresponding to the 128 challenge CHs are set to the respective PUFs. The circuit was derived. Subsequently, 128 actually measured count values C corresponding to the 128 challenge CHs were obtained for each PUF circuit. Then, in the same manner as in steps S610 to S625 of the determination process of FIG. 10, 128 response values Re are derived for each PUF circuit from the actually measured count value C and the correction value Cave, and are set to the 128-bit corrected eigenvalue. The ratio of bits having different values among the 128-bit corrected eigenvalues between these PUF circuits was calculated as the difference rate D. For comparison, a value obtained by binarizing 128 actually measured count values C based on whether or not the value is 0 or more is set as a 128-bit uncorrected eigenvalue, and similarly, a ratio of bits having different values among five PUF circuits Was calculated as the difference rate D. Similarly for Experimental Example 2, 128-bit corrected eigenvalues and uncorrected eigenvalues were derived in the same manner, and the ratio of bits having different values among the five PUF circuits was calculated as the difference rate D. Here, the difference rate D is preferably closer to 50% because it means that there is no bias in the derived eigenvalue. The closer the difference rate D is to 50%, the more the eigenvalue is a value that increases the uniqueness of the PUF circuit. It can be said.
(実験結果)
ユニーク性評価試験の結果を図14〜17に示す。図14は、実験例1の5個のPUF回路間で補正あり固有値の差異率Dを示すテーブルである。図15は、実験例1の5個のPUF回路間で補正なし固有値の差異率Dを示すテーブルである。図16は、実験例2の5個のPUF回路間で補正あり固有値の差異率Dを示すテーブルである。図17は、実験例2の5個のPUF回路間で補正なし固有値の差異率Dを示すテーブルである。なお、図14〜図17では、5個のPUF回路を番号1〜5で区別しており、5個のPUF回路のうち2個の固有値を比較したときの差異率Dを、縦軸と横軸との交点の数値で示している。例えば、図14では、実験例1の1番のPUF回路と2番のPUF回路とで補正あり固有値を比較したときに、差異率Dが36.21%であったことを示している。
(Experimental result)
The results of the uniqueness evaluation test are shown in FIGS. FIG. 14 is a table showing the eigenvalue difference rate D with correction among the five PUF circuits of Experimental Example 1. FIG. 15 is a table showing a difference rate D of eigenvalues without correction among the five PUF circuits of Experimental Example 1. FIG. 16 is a table showing the eigenvalue difference rate D with correction among the five PUF circuits of Experimental Example 2. FIG. 17 is a table showing the difference rate D of eigenvalues without correction among the five PUF circuits in Experimental Example 2. 14 to 17, the five PUF circuits are distinguished by
図14〜図17から、差異率Dは、図15及び図17ではいずれも数%程度であり50%から離れた値となっているのに対し、図14及び図16ではそれよりも50%に近い値となっていることがわかった。この結果から、異なるPUF回路間であっても補正なし固有値は互いに数%程度しか異なる値とならず、補正なし固有値は他のPUF回路と値が一致しやすい、すなわちユニーク性の低い値であることがわかった。そして、補正あり固有値を用いることで、異なるPUF回路間で固有値の差異率Dが50%に近づいており、補正あり固有値はユニーク性をより高めた値であることがわかった。 14 to 17, the difference rate D is about several percent in FIGS. 15 and 17 and is a value far from 50%, whereas in FIGS. 14 and 16, the difference rate D is 50%. It was found that the value was close to. From this result, even without different PUF circuits, the uncorrected eigenvalues differ from each other by only a few percent, and the uncorrected eigenvalues tend to match values with other PUF circuits, that is, have low uniqueness. I understood it. Then, by using the corrected eigenvalue, the difference rate D of eigenvalues between different PUF circuits approaches 50%, and it has been found that the corrected eigenvalue is a value with higher uniqueness.
[発振周波数の分布測定]
実験例2の5つのPUF回路について、実測発振周波数と補正後発振周波数とを導出し、その分布を調べた。まず、PUF回路の512個の発振器についてそれぞれ64通りの信号経路をランダムに設定し、1つのPUF回路について512×64=32768個の擬似的な発振器を測定対象に定めた。そして、この測定対象の発振器の実測発振周波数f1〜f32768を測定し、測定した32768個の実測発振周波数の平均値及び標準偏差を算出した。他の4つのPUF回路についても同じ32768個の擬似的な発振器を測定対象として、同様に実測発振周波数f1〜f32768を測定してその平均値及び標準偏差を算出した。また、5つのPUF回路全体で32768×5個の実測発振周波数の平均値及び標準偏差を算出した。次に、この5つのPUF回路を用いて、この32768個の発振器それぞれについて各PUF回路から測定された5つの実測発振周波数の平均値を求めて、平均値f1ave〜f32768aveとした。また、5つのPUF回路の32768個の発振器全ての実測発振周波数の平均値を求めて、平均値faveとした。そして、各PUF回路について補正後発振周波数Fn=fn/fnave×fave(nは1〜32768までの整数)を算出し、各PUF回路について補正後発振周波数F1〜F32768の平均値及び標準偏差を算出した。また、5つのPUF回路全体で32768×5個の補正後発振周波数の平均値及び標準偏差を算出した。
[Oscillation frequency distribution measurement]
With respect to the five PUF circuits of Experimental Example 2, the actually measured oscillation frequency and the corrected oscillation frequency were derived, and their distributions were examined. First, 64 signal paths were set at random for 512 oscillators of the PUF circuit, and 512 × 64 = 32768 pseudo oscillators for one PUF circuit were determined as measurement objects. The measured oscillation frequencies f1 to f32768 of the measurement target oscillator were measured, and the average value and standard deviation of the measured 32768 measured oscillation frequencies were calculated. For the other four PUF circuits, the same 32768 pseudo oscillators were measured, and the measured oscillation frequencies f1 to f32768 were measured in the same manner to calculate the average value and standard deviation. Further, the average value and standard deviation of 32768 × 5 actually measured oscillation frequencies were calculated for the entire five PUF circuits. Next, using these five PUF circuits, the average value of the five actually measured oscillation frequencies measured from each PUF circuit for each of the 32768 oscillators was obtained, and the average values were f1ave to f32768ave. Further, the average value of the actually measured oscillation frequencies of all 32768 oscillators of the five PUF circuits was obtained and set as the average value fave. Then, the corrected oscillation frequency Fn = fn / fnave × fave (n is an integer from 1 to 32768) is calculated for each PUF circuit, and the average value and standard deviation of the corrected oscillation frequencies F1 to F32768 are calculated for each PUF circuit. did. In addition, the average value and standard deviation of 32768 × 5 post-correction oscillation frequencies were calculated for all five PUF circuits.
(測定結果)
図18は、実測発振周波数f1〜f32768の平均値及び標準偏差を示すテーブルである。図19は、補正後発振周波数F1〜F32768の平均値及び標準偏差を示すテーブルである。なお、図18,19では、5個のPUF回路を番号1〜5で区別している。図18からわかるように、実測発振周波数の標準偏差はいずれも25MHz程度の値であるのに対し、補正後発振周波数の標準偏差はいずれも1MHz前後と小さい値となっている。ここで、補正後発振周波数は、実測周波数を平均値で補正したものであるため、実測発振周波数から発振器の配置や配線に起因する発振周波数の変化分を除去した値となっている。これらのことから、実測発振周波数におけるばらつきに与える影響は、PUF回路の製造時のばらつきに起因するものよりも発振器の配置や配線に起因するものが大きかったことが確認できた。このように発振器の配置や配線に起因する影響が大きい場合には、補正せず実測発振周波数を用いてPUF回路の固有値を導出しても製造時のばらつきによる発振周波数の変化分を十分利用できず、固有値がユニーク性の低い値となってしまうと考えられる。一方、補正後発振周波数を用いて固有値を導出すれば、発振器の配置や配線に起因する実測発振周波数のばらつきが大きくともこれを除去することができるため、ユニーク性の高い値を固有値として導出することができる。
(Measurement result)
FIG. 18 is a table showing average values and standard deviations of actually measured oscillation frequencies f1 to f32768. FIG. 19 is a table showing average values and standard deviations of the corrected oscillation frequencies F1 to F32768. 18 and 19, the five PUF circuits are distinguished by
10,110 情報セキュリティシステム、11 ネットワーク、20 ICカード、21 ICチップ、22 制御部、24 記憶部、30 カードリーダー、32 制御部、34 記憶部、36 カードスロット、40,140 サーバー、41 制御部、42 取得部、43 補正部、44 判定部、45 記憶部、46 平均値テーブル、47 固有値テーブル、50 PUF回路、52 発振回路、53 発振器、53a〜53e 第1〜第5発振器、54 選択回路、55a 主発振器セレクター、55b 副発振器セレクター、56 測定回路、57a,57b 第1,第2カウンター、58 出力決定部、60 インバーター、61a,61b 第1,第2インバーター、62a,62b 第3,第4インバーター、63a,63b 第5,第6インバーター、66 経路セレクター、66a〜66c 第1〜第3経路セレクター、120 FPGA、121 制御部、122 取得部、123 補正部、124 復号部、126 再構成可能回路、128 起動処理部、130 ユーザーPC、132 コントローラー、134 HDD、136 拡張スロット、137 バス、138 表示装置、139 入力装置、141 制御部、145 記憶部、148 暗号データ出力部。
10, 110 Information security system, 11 network, 20 IC card, 21 IC chip, 22 control unit, 24 storage unit, 30 card reader, 32 control unit, 34 storage unit, 36 card slot, 40,140 server, 41
Claims (15)
製造ばらつきに起因する固有の発振周波数をもつ複数の発振器を有する発振回路と、
前記複数の発振器のうち少なくとも1つの発振器を選択する選択手段と、
前記選択された発振器を発振させ、該発振の周波数に基づく実測周波数関連値を取得する取得手段と、
前記取得された実測周波数関連値を、複数の前記デバイスにおける前記選択された発振器と同じ配置及び配線の発振器を発振させたときの周波数の平均に基づく値である平均周波数関連値に基づいて補正した補正後周波数関連値を導出する補正手段と、
を備え、
前記発振回路及び前記選択手段は、前記デバイスが有しており、
前記取得手段は、前記デバイス又は前記ホストが有しており、
前記補正手段は、前記デバイス又は前記ホストが有している、
情報セキュリティシステム。 An information security system comprising a host and a device,
An oscillation circuit having a plurality of oscillators with inherent oscillation frequencies due to manufacturing variations;
Selecting means for selecting at least one oscillator of the plurality of oscillators;
An acquisition means for oscillating the selected oscillator and acquiring an actually measured frequency-related value based on the frequency of the oscillation;
The acquired actual measurement frequency related value is corrected based on an average frequency related value that is a value based on an average frequency when an oscillator having the same arrangement and wiring as the selected oscillator in the plurality of devices is oscillated. Correction means for deriving a corrected frequency-related value;
With
The oscillation circuit and the selection unit are included in the device,
The acquisition unit has the device or the host,
The correction means has the device or the host,
Information security system.
請求項1に記載の情報セキュリティシステム。 The oscillator is a ring oscillator in which an odd number of inversion circuits are connected in series in a ring shape.
The information security system according to claim 1.
前記選択手段は、前記複数の発振器のうち少なくとも1つの発振器を選択すると共に、該選択された発振器について複数の前記信号経路のうちいずれか1つの信号経路を選択する手段であり、
前記取得手段は、前記選択された発振器を前記選択された信号経路で発振させ、該発振の周波数に基づく前記実測周波数関連値を取得する手段であり、
前記補正手段は、前記取得された実測周波数関連値を、複数の前記デバイスにおける前記選択された発振器と同じ配置及び配線の発振器を前記選択された信号経路で発振させたときの周波数の平均に基づく値である前記平均周波数関連値に基づいて補正した前記補正後周波数関連値を導出する手段である、
請求項1又は2に記載の情報セキュリティシステム。 In the oscillator, an odd number of inverting circuits are connected in series in a ring shape, and a plurality of inverting circuits are connected in parallel in at least one or more stages, and each of the inverting circuits connected in parallel is connected to each stage. A plurality of signal paths can be selected depending on whether the signal path is selected, and each signal path has an oscillation frequency specific to each signal path due to manufacturing variations of the inverting circuits constituting the signal path.
The selection means is means for selecting at least one oscillator among the plurality of oscillators, and selecting any one signal path among the plurality of signal paths for the selected oscillator,
The acquisition means is means for causing the selected oscillator to oscillate in the selected signal path and acquiring the measured frequency related value based on the frequency of the oscillation.
The correcting means is based on an average of frequencies obtained by causing the oscillator of the same arrangement and wiring as the selected oscillator in the plurality of devices to oscillate in the selected signal path, with respect to the acquired actually measured frequency related value. Means for deriving the corrected frequency-related value corrected based on the average frequency-related value that is a value;
The information security system according to claim 1 or 2.
請求項3に記載の情報セキュリティシステム。 When the selected signal path of the selected oscillator is not a predetermined reference signal path and is not an offset signal path in which only one inverting circuit is different from the reference signal path, A reference value that is an average frequency related value when an oscillator having the same arrangement and wiring as the selected oscillator for the plurality of devices is oscillated in the reference signal path; and the selected oscillator for the plurality of devices; The reference signal among the selected signal paths using an offset value that is a difference between the average frequency related value and the reference value when oscillators having the same arrangement and wiring are oscillated in the offset signal path. The average frequency corresponding to the selected signal path is the sum of the offset value and the reference value corresponding to an inverting circuit different from the path Derived as continuous values, a means for deriving the corrected frequency related value obtained by correcting the obtained actually measured frequency related value based on the average frequency related value issued conductor,
The information security system according to claim 3.
請求項3に記載の情報セキュリティシステム。 When the selected signal path of the selected oscillator is not a predetermined reference signal path and is not an offset signal path in which only one inverting circuit is different from the reference signal path, A reference value that is an average frequency related value when an oscillator having the same arrangement and wiring as the selected oscillator for the plurality of devices is oscillated in the reference signal path; and the selected oscillator for the plurality of devices; The reference signal among the selected signal paths using an offset value that is a ratio of the average frequency related value and the reference value when oscillators having the same arrangement and wiring are oscillated in the offset signal path The average frequency corresponding to the selected signal path is the product of the offset value and the reference value corresponding to an inverting circuit different from the path Derived as continuous values, a means for deriving the corrected frequency related value obtained by correcting the obtained actually measured frequency related value based on the average frequency related value issued conductor,
The information security system according to claim 3.
前記取得手段は、前記選択された2つの発振器を発振させ、該2つの発振器の周波数の差に基づく値である前記実測周波数関連値を取得する手段であり、
前記補正手段は、前記取得された実測周波数関連値を、複数の前記デバイスについての前記選択された2つの発振器と同じ配置及び配線の発振器を発振させたときの該2つの発振器の周波数の平均的な差に基づく値である前記平均周波数関連値に基づいて補正することで、前記補正後周波数関連値を導出する手段である、
請求項1〜5のいずれか1項に記載の情報セキュリティシステム。 The selection means is means for selecting two oscillators of the plurality of oscillators,
The acquisition means is means for causing the selected two oscillators to oscillate and acquiring the measured frequency-related value that is a value based on a difference in frequency between the two oscillators.
The correction means uses the obtained measured frequency-related value as an average of the frequencies of the two oscillators when the oscillators having the same arrangement and wiring as the selected two oscillators for the plurality of devices are oscillated. A means for deriving the corrected frequency-related value by correcting based on the average frequency-related value that is a value based on a difference.
The information security system according to any one of claims 1 to 5.
請求項1〜6のいずれか1項に記載の情報セキュリティシステム。 The acquisition unit and the correction unit are included in the host.
The information security system according to any one of claims 1 to 6.
前記デバイスの有する発振器と該発振器の前記固有の発振周波数に基づく前記所定の固有値とを対応付けて記憶する固有値記憶手段と、
前記固有値記憶手段から前記選択された発振器に対応する前記固有値を読み出し、該読み出した固有値が前記導出された補正後周波数関連値と一致するか否かにより、該デバイスが正規のものであるか否かを判定する判定手段と、
を備え、
前記固有値記憶手段及び前記判定手段は、前記ホストが有している、
情報セキュリティシステム。 The information security system according to any one of claims 1 to 7,
Eigenvalue storage means for storing the oscillator included in the device and the predetermined eigenvalue based on the inherent oscillation frequency of the oscillator in association with each other;
Read the eigenvalue corresponding to the selected oscillator from the eigenvalue storage means, and whether or not the device is normal depending on whether or not the read eigenvalue matches the derived corrected frequency-related value Determination means for determining whether or not
With
The eigenvalue storage means and the determination means have the host.
Information security system.
前記デバイスにおける前記選択された発振器の前記固有の発振周波数に基づく前記所定の固有値に基づいて暗号化された暗号データを前記デバイスに出力する暗号データ出力手段と、
前記導出された補正後周波数関連値に基づいて前記出力された暗号データを復号する復号手段と、
を備え、
前記暗号データ出力手段は、前記ホストが有しており、
前記復号手段は、前記デバイスが有している、
情報セキュリティシステム。 The information security system according to any one of claims 1 to 7,
Encrypted data output means for outputting to the device encrypted data encrypted based on the predetermined unique value based on the unique oscillation frequency of the selected oscillator in the device;
Decryption means for decrypting the output encrypted data based on the derived corrected frequency-related value;
With
The encrypted data output means has the host,
The device has the decoding means,
Information security system.
前記複数の発振器のうち選択された少なくとも1つの発振器を発振させたときの該発振の周波数に基づく実測周波数関連値を前記デバイスから取得する取得手段と、
前記取得された実測周波数関連値を、複数の前記デバイスにおける前記選択された発振器と同じ配置及び配線の発振器を発振させたときの周波数の平均に基づく値である平均周波数関連値に基づいて補正した補正後周波数関連値を導出する補正手段と、
を備えたホスト。 A host for exchanging information with a device including an oscillation circuit having a plurality of oscillators having unique oscillation frequencies caused by manufacturing variations,
An acquisition means for acquiring an actual measurement frequency related value based on a frequency of oscillation when at least one oscillator selected from the plurality of oscillators is oscillated;
The acquired actual measurement frequency related value is corrected based on an average frequency related value that is a value based on an average frequency when an oscillator having the same arrangement and wiring as the selected oscillator in the plurality of devices is oscillated. Correction means for deriving a corrected frequency-related value;
With a host.
前記複数の発振器のうち少なくとも1つの発振器を選択する選択手段と、
前記選択された発振器を発振させ、該発振の周波数に基づく実測周波数関連値を取得する取得手段と、
前記取得された実測周波数関連値を、複数の前記デバイスにおける前記選択された発振器と同じ配置及び配線の発振器を発振させたときの周波数の平均に基づく値である平均周波数関連値に基づいて補正することで、補正後周波数関連値を導出する補正手段と、
を備えたデバイス。 An oscillation circuit having a plurality of oscillators with inherent oscillation frequencies due to manufacturing variations;
Selecting means for selecting at least one oscillator of the plurality of oscillators;
An acquisition means for oscillating the selected oscillator and acquiring an actually measured frequency-related value based on the frequency of the oscillation;
The acquired measured frequency-related value is corrected based on an average frequency-related value that is a value based on an average frequency when an oscillator having the same arrangement and wiring as the selected oscillator in the plurality of devices is oscillated. A correction means for deriving a frequency-related value after correction,
With a device.
(a)前記複数の発振器のうち選択された少なくとも1つの発振器を発振させたときの該発振の周波数に基づく実測周波数関連値を前記デバイスから取得するステップと、
(b)前記取得された実測周波数関連値を、複数の前記デバイスにおける前記選択された発振器と同じ配置及び配線の発振器を発振させたときの周波数の平均に基づく値である平均周波数関連値に基づいて補正した補正後周波数関連値を導出するステップと、
を含むホストの制御方法。 A host control method for exchanging information with a device having an oscillation circuit having a plurality of oscillators having unique oscillation frequencies caused by manufacturing variations,
(A) obtaining an actually measured frequency-related value from the device based on the frequency of oscillation when at least one oscillator selected from the plurality of oscillators is oscillated;
(B) The obtained actual measurement frequency related value is based on an average frequency related value that is a value based on an average of frequencies when an oscillator having the same arrangement and wiring as the selected oscillator in the plurality of devices is oscillated. Deriving a corrected frequency-related value corrected by
Host control method including
(a)前記複数の発振器のうち少なくとも1つの発振器を選択するステップと、
(b)前記選択された発振器を発振させ、該発振の周波数に基づく実測周波数関連値を取得するステップと、
(c)前記取得された実測周波数関連値を、複数の前記デバイスにおける前記選択された発振器と同じ配置及び配線の発振器を発振させたときの周波数の平均に基づく値である平均周波数関連値に基づいて補正した補正後周波数関連値を導出するステップと、
を含むデバイスの制御方法。 A method for controlling a device including an oscillation circuit having a plurality of oscillators having inherent oscillation frequencies due to manufacturing variations,
(A) selecting at least one oscillator from the plurality of oscillators;
(B) oscillating the selected oscillator and obtaining a measured frequency related value based on the frequency of the oscillation;
(C) Based on an average frequency related value that is a value based on an average of frequencies when an oscillator having the same arrangement and wiring as the selected oscillator in the plurality of devices is oscillated, the acquired actually measured frequency related value. Deriving a corrected frequency-related value corrected by
A method for controlling a device including:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011184503A JP5747327B2 (en) | 2011-08-26 | 2011-08-26 | Information security system, host, device, and control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011184503A JP5747327B2 (en) | 2011-08-26 | 2011-08-26 | Information security system, host, device, and control method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013046334A true JP2013046334A (en) | 2013-03-04 |
JP5747327B2 JP5747327B2 (en) | 2015-07-15 |
Family
ID=48009870
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011184503A Active JP5747327B2 (en) | 2011-08-26 | 2011-08-26 | Information security system, host, device, and control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5747327B2 (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015228570A (en) * | 2014-05-30 | 2015-12-17 | 凸版印刷株式会社 | Authentication system and portable communication terminal |
EP3067875A1 (en) | 2015-03-12 | 2016-09-14 | Fujitsu Limited | Multi-frequencies puf based electronic circuit, authentication system, and authentication method |
JP2019121885A (en) * | 2017-12-28 | 2019-07-22 | 三菱重工業株式会社 | Monitoring device, monitor system, information processing device, monitoring method, and program |
JP2019144536A (en) * | 2017-12-22 | 2019-08-29 | ザ・ボーイング・カンパニーThe Boeing Company | Interference detecting ring oscillators |
JP2020096384A (en) * | 2020-03-16 | 2020-06-18 | 三菱重工業株式会社 | Information processing apparatus, information processing method, and program |
CN111670443A (en) * | 2017-11-14 | 2020-09-15 | 耐瑞唯信有限公司 | Integrated circuit personalization |
JP7084160B2 (en) | 2018-03-02 | 2022-06-14 | Necプラットフォームズ株式会社 | Start control device, start control system, start control method, and start control program |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008056612A1 (en) * | 2006-11-06 | 2008-05-15 | Panasonic Corporation | Information security apparatus |
JP2009524998A (en) * | 2006-01-24 | 2009-07-02 | ヴェラヨ インク | Equipment security based on signal generators |
JP2011114386A (en) * | 2009-11-24 | 2011-06-09 | Mitsubishi Electric Corp | Base station device, radio communication system and frequency correction method |
JP2011123909A (en) * | 2002-04-16 | 2011-06-23 | Massachusetts Inst Of Technology <Mit> | Authentication of integrated circuit |
WO2011086051A1 (en) * | 2010-01-18 | 2011-07-21 | Institut Telecom-Telecom Paris Tech | Integrated silicon circuit comprising a physically non-reproducible function, and method and system for testing such a circuit |
-
2011
- 2011-08-26 JP JP2011184503A patent/JP5747327B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011123909A (en) * | 2002-04-16 | 2011-06-23 | Massachusetts Inst Of Technology <Mit> | Authentication of integrated circuit |
JP2009524998A (en) * | 2006-01-24 | 2009-07-02 | ヴェラヨ インク | Equipment security based on signal generators |
WO2008056612A1 (en) * | 2006-11-06 | 2008-05-15 | Panasonic Corporation | Information security apparatus |
JP2011114386A (en) * | 2009-11-24 | 2011-06-09 | Mitsubishi Electric Corp | Base station device, radio communication system and frequency correction method |
WO2011086051A1 (en) * | 2010-01-18 | 2011-07-21 | Institut Telecom-Telecom Paris Tech | Integrated silicon circuit comprising a physically non-reproducible function, and method and system for testing such a circuit |
Non-Patent Citations (1)
Title |
---|
JPN6015001999; 浅井稔也,他: '改良リングオシレータPUFのFPGA実装とその評価' 電子情報通信学会技術研究報告 Vol. 110,No. 439, 20110224, pp. 173-178, 電子情報通信学会 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015228570A (en) * | 2014-05-30 | 2015-12-17 | 凸版印刷株式会社 | Authentication system and portable communication terminal |
EP3067875A1 (en) | 2015-03-12 | 2016-09-14 | Fujitsu Limited | Multi-frequencies puf based electronic circuit, authentication system, and authentication method |
CN111670443A (en) * | 2017-11-14 | 2020-09-15 | 耐瑞唯信有限公司 | Integrated circuit personalization |
JP2021503208A (en) * | 2017-11-14 | 2021-02-04 | ナグラビジョン エス アー | Integrated circuit personalization |
CN111670443B (en) * | 2017-11-14 | 2023-08-22 | 耐瑞唯信有限公司 | Integrated circuit personalization |
JP2019144536A (en) * | 2017-12-22 | 2019-08-29 | ザ・ボーイング・カンパニーThe Boeing Company | Interference detecting ring oscillators |
JP2019121885A (en) * | 2017-12-28 | 2019-07-22 | 三菱重工業株式会社 | Monitoring device, monitor system, information processing device, monitoring method, and program |
US11271757B2 (en) | 2017-12-28 | 2022-03-08 | Mitsubishi Heavy Industries, Ltd. | Monitoring device, monitoring system, information processing device, monitoring method, and program |
JP7084160B2 (en) | 2018-03-02 | 2022-06-14 | Necプラットフォームズ株式会社 | Start control device, start control system, start control method, and start control program |
JP2020096384A (en) * | 2020-03-16 | 2020-06-18 | 三菱重工業株式会社 | Information processing apparatus, information processing method, and program |
JP7084442B2 (en) | 2020-03-16 | 2022-06-14 | 三菱重工業株式会社 | Information processing equipment, information processing methods and programs |
Also Published As
Publication number | Publication date |
---|---|
JP5747327B2 (en) | 2015-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5747327B2 (en) | Information security system, host, device, and control method | |
JP5333669B2 (en) | Individual information generation apparatus and individual information generation method | |
Wang et al. | The request for better measurement: A comparative evaluation of two-factor authentication schemes | |
JP6547079B1 (en) | Registration / authorization method, device and system | |
JP5831202B2 (en) | Individual information generation apparatus and individual information generation method | |
CN108880821B (en) | Authentication method and equipment of digital certificate | |
KR20120127607A (en) | Device and method for obtaining a cryptographic key | |
US20200250655A1 (en) | Efficient, environmental and consumer friendly consensus method for cryptographic transactions | |
CN109766672B (en) | Anonymous authentication method for core copyright | |
CN109034796A (en) | Transaction monitoring and managing method, electronic device and readable storage medium storing program for executing based on alliance's chain | |
US20160267266A1 (en) | Electronic circuit, authentication system, and authentication method | |
CN109359471B (en) | Encryption method, device, system, equipment and medium based on user identity | |
US20090083739A1 (en) | Network resource access control methods and systems using transactional artifacts | |
CN114580029A (en) | Block chain digital asset privacy protection method, device, equipment and storage medium | |
CN101877639A (en) | Messaging device, key updating method and program | |
CN108880807A (en) | Private key signature process method, apparatus, equipment and medium | |
JP5448892B2 (en) | Certificate verification system, path constraint information generation apparatus, certificate verification apparatus, and certificate verification method | |
JP2012527678A (en) | Method and apparatus enabling portable user reputation | |
Aysu et al. | A design method for remote integrity checking of complex PCBs | |
US20210391993A1 (en) | Methods, systems, and apparatuses for cryptographic wireless detection and authentication of fluids | |
CN110266478B (en) | Information processing method and electronic equipment | |
CN110796446B (en) | Key injection method, key injection device, electronic equipment and computer-readable storage medium | |
JP6246516B2 (en) | Information processing system | |
JP5469631B2 (en) | Decryption result verification apparatus, method and program | |
JP2011145591A (en) | Commitment system, master device, transmitter, receiver, commitment method, program and recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140804 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150116 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150127 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150325 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150414 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150421 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5747327 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |