(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-12-06
(54)【発明の名称】マイクロコントローラ
(51)【国際特許分類】
G09C 1/00 20060101AFI20241129BHJP
G06F 7/58 20060101ALI20241129BHJP
【FI】
G09C1/00 650B
G06F7/58 680
【審査請求】有
【予備審査請求】有
(21)【出願番号】P 2024525245
(86)(22)【出願日】2022-10-25
(85)【翻訳文提出日】2024-06-26
(86)【国際出願番号】 EP2022079826
(87)【国際公開番号】W WO2023072956
(87)【国際公開日】2023-05-04
(31)【優先権主張番号】102021128005.2
(32)【優先日】2021-10-27
(33)【優先権主張国・地域又は機関】DE
(31)【優先権主張番号】102021130107.6
(32)【優先日】2021-11-18
(33)【優先権主張国・地域又は機関】DE
(31)【優先権主張番号】102022110713.2
(32)【優先日】2022-05-02
(33)【優先権主張国・地域又は機関】DE
(31)【優先権主張番号】102022125574.3
(32)【優先日】2022-10-04
(33)【優先権主張国・地域又は機関】DE
(31)【優先権主張番号】102022125617.0
(32)【優先日】2022-10-05
(33)【優先権主張国・地域又は機関】DE
(31)【優先権主張番号】102022125768.1
(32)【優先日】2022-10-06
(33)【優先権主張国・地域又は機関】DE
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】399018644
【氏名又は名称】エルモス セミコンダクター エスエー
(74)【代理人】
【識別番号】100159499
【氏名又は名称】池田 義典
(72)【発明者】
【氏名】ラウブロック,ヤン
(72)【発明者】
【氏名】ロッター,トーマス
(72)【発明者】
【氏名】ケルベル,ユーリア
(72)【発明者】
【氏名】ランマース,クリスチャン
(57)【要約】
本発明は、自動車内の装置を制御するための安全マイクロコントローラ(1)であって、半導体基板と、複数の記憶素子と、少なくとも1つの内部バス(2)と、少なくとも1つの8/16/32/64ビットのマイクロコントローラコアと、1又は複数のデータインターフェースと、少なくとも1つの量子プロセスに基づく真性乱数生成器(15)とを備える安全マイクロコントローラ(1)に関する。記憶素子、データインターフェース、量子プロセスに基づく生成器(15)及びマイクロコントローラコア(16)は、内部バス(2)に接続されている。量子プロセスに基づく生成器(15)は、マイクロコントローラコア(16)の要求に応じて、乱数を生成し、供給する。マイクロコントローラコア(16)は、記憶素子の1又は複数からのプログラムと、乱数とを用いて、キーを生成する。マイクロコントローラコア(16)は、記憶素子の1又は複数からのプログラムと、キーとを用いて、データインターフェースを介して安全マイクロコントローラ(1)の外部装置とやり取りするデータを暗号化又は復号化する。半導体基板は、ここに挙げた安全マイクロコントローラ(1)のサブ装置を一体に有する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
自動車内の装置を制御するためのマイクロコントローラであって、
半導体基板と、
複数の記憶素子と、
少なくとも1つの内部バス(2)と、
少なくともマイクロコントローラコア(16)と、
1又は複数のデータインターフェースと、
少なくとも1つの量子プロセスに基づく真性乱数生成器(15)とを備え、
上記記憶素子が、上記内部バス(2)に接続されており、
上記データインターフェースが、上記内部バス(2)に接続されており、
上記量子プロセスに基づく生成器(15)が、上記内部バス(2)に接続されており、
上記マイクロコントローラコア(16)が、上記内部バス(2)に接続されており、
上記量子プロセスに基づく生成器(15)が、特に上記マイクロコントローラコア(16)の要求に応じて、乱数を生成し、
上記量子プロセスに基づく生成器(15)が、上記乱数を供給し、
上記マイクロコントローラコア(16)が、上記記憶素子の1又は複数からのプログラムと、上記乱数とを用いて、キーを生成し、
上記マイクロコントローラコア(16)が、上記記憶素子の1又は複数からのプログラムと、上記キーとを用いて、上記データインターフェースを介して外部装置と、又は内部でやり取りされるデータを暗号化及び復号化し、
上記半導体基板が、ここに挙げた上記安全マイクロコントローラ(1)のサブ装置を一体に有し、
上記量子プロセスに基づく生成器(15)が、光量子信号用の光源として、少なくとも1つの第1のSPADダイオード(44)を有し、
上記量子プロセスに基づく生成器(15)が、上記光量子信号の受信用の光検出器として、少なくとも1つの第2のSPADダイオード(45)を有し、
上記量子プロセスに基づく生成器(15)が、少なくとも1つの処理回路を有し、
上記少なくとも1つの第1のSPADダイオード(44)を、上記少なくとも1つの第2のSPADダイオード(45)に光学的に連結するため、上記量子プロセスに基づく生成器(15)が、少なくとも1つの光ファイバ(50)を有し、
光(44)を発するための電気エネルギーを、上記少なくとも1つの第1のSPADダイオード(44)に供給するため、上記量子に基づく生成器(15)が、動作回路を有し、
上記少なくとも1つの第2のSPADダイオード(45)の信号を検出し、上記少なくとも1つの第2のSPADダイオード(45)の上記信号から乱数を形成し、上記マイクロコントローラコア(16)に上記乱数を供給するため、上記量子に基づく生成器(15)が、処理回路を有するマイクロコントローラ。
【請求項2】
上記少なくとも1つの第2のSPADダイオード(45)のエミッション信号が、第1のスパイク(601)と、この第1のスパイク(601)より大きい第2のスパイク(602)とを有し、上記第1及び第2のスパイク(601,602)が、それぞれ予め設定可能な基準値(404.1,603)より大きく、上記少なくとも1つの第2のSPADダイオード(45)の誘導光子放出が同時に起こることなく、上記少なくとも1つの第2のSPADダイオード(45)の自然光子放出により、上記第1のスパイク(601)が発生し、自然光子放出と、上記少なくとも1つの第1のSPADダイオード(44)の光子を受信することで誘導される上記少なくとも1つの第2のSPADダイオード(45)の光子放出とが同時に生じることにより、上記第2のスパイク(602)が発生し、上記量子プロセスに基づく生成器(15)の上記処理回路が、上記第2のスパイク(602)の時間間隔を閾値と比較することにより、又は上記第2のスパイク(602)の時間間隔同士を比較することにより、上記乱数の生成用のビットとして、第1の論理値又は第2の論理値を生成することを特徴とする請求項1に記載のマイクロコントローラ。
【請求項3】
上記処理回路が、2つのスパイク(602)の時間間隔を閾値と比較することにより、上記第1の論理値又は上記第2の論理値を生成し、上記処理回路が、上記時間間隔が上記閾値より小さい場合に、上記第1の論理値を上記乱数のビットとして出力し、上記時間間隔が上記閾値より大きい場合に、上記第2の論理値を上記乱数のビットとして出力することを特徴とする請求項2に記載のマイクロコントローラ。
【請求項4】
上記処理回路が、異なる対の第2のスパイク(602)の上記第2のスパイク(602)の時間間隔同士を比較することにより、上記第1の論理値又は上記第2の論理値を生成し、上記処理回路が、最後に現れた第2のスパイク(602)の時間間隔が、例えば、最後から2番目の第2のスパイク(602)と最後から3番目の第2のスパイク(602)との間の時間間隔又は別の一対の先行する第2のスパイク(602)間の時間間隔より小さい場合に、上記第1の論理値を上記乱数の生成用のビットとして出力し、上記最後に現れた第2のスパイク(602)の時間間隔が、例えば、上記最後から2番目の第2のスパイク(602)と上記最後から3番目の第2のスパイク(602)との間の時間間隔又は別の一対の先行する第2のスパイク(60)間の時間間隔より大きい場合に、上記第2の論理値を上記乱数の生成用のビットとして出力することを特徴とする請求項2に記載のマイクロコントローラ。
【請求項5】
第1のSPADダイオード(44)と第2のSPADダイオード(45)とからなる対を複数備え、上記第2のSPADダイオード(45)の上記エミッション信号が、上記処理回路に供給可能であり、上記処理回路が、各第2のSPADダイオード(45)の上記エミッション信号を用いて、上記乱数の生成用のビットの別の1つを出力することを特徴とする請求項1から4のいずれか一項に記載のマイクロコントローラ。
【請求項6】
第1のSPADダイオード(44)と第2のSPADダイオード(45)とからなる対を備え、上記処理回路が、上記乱数の生成用のビットの上記論理値を連続的に出力することを特徴とする請求項1から4のいずれか一項に記載のマイクロコントローラ。
【請求項7】
単一の第1のSPADダイオード(44)と、この単一のSPADダイオード(44)に光学的に連結されている複数の第2のSPADダイオード(45)とを備え、上記第2のSPADダイオード(45)の上記エミッション信号が、上記処理回路に供給可能であり、上記処理回路が、各第2のSPADダイオード(45)の上記エミッション信号を用いて、上記乱数の生成用のビットの別の1つを出力することを特徴とする請求項1から4のいずれか一項に記載のマイクロコントローラ。
【請求項8】
エラー検出ユニットと、疑似乱数生成器とを備え、上記エラー検出ユニットが、上記量子プロセスに基づく生成器(15)の光量子プロセスに関わる構成要素の機能におけるエラー又は上記処理回路のエラーを検出した場合に、上記量子に基づく生成器(15)の上記処理回路が、上記少なくとも1つの第2のSPADダイオード(45)の上記エミッション信号を用いた上記乱数の生成用のビットの出力から、上記疑似乱数生成器により生成される疑似乱数の生成用のビットの出力に切り替えることを特徴とする請求項1から7のいずれか一項に記載のマイクロコントローラ。
【請求項9】
上記エラー検出ユニットが、エラーを検出した際に、特にそのエラーの種類及び/又は原因を表すエラー信号を出力することを特徴とする請求項8に記載のマイクロコントローラ。
【請求項10】
上記記憶素子が、1又は複数の読み書きメモリRAM(3)、1又は複数の書き込み可能な不揮発性メモリ(具体的には、EEPROMメモリ(4)、フラッシュメモリ(4)及び/又はワンタイムプログラマブル(OTP)メモリ(4))、1又は複数の純粋な読み取り専用メモリ及び/又は1又は複数の不揮発性メーカーメモリ(具体的には、1又は複数のメーカーROM(6)、1又は複数のメーカーEEPROM及び/又は1又は複数のメーカーフラッシュメモリ)を有することを特徴とする請求項1から9のいずれか一項に記載のマイクロコントローラ。
【請求項11】
上記メーカーROM(6)が、ブートソフトウェアを有することを特徴とする請求項10に記載のマイクロコントローラ。
【請求項12】
上記メーカーメモリ(6)と上記内部バス(2)との間に、メーカーメモリファイアウォール(8)を備えることを特徴とする請求項1から11のいずれか一項に記載のマイクロコントローラ。
【請求項13】
基本クロック生成器(21)(CLK)、
クロック生成回路(12)、
リセット回路(22)、
上記動作電圧を与える電圧調節器付の電流供給又はVcc回路(23)、
接地回路(24)、
入出力回路(25)及び/又は
1又は複数の処理モジュールのうち、1又は複数の構成要素を備え、
上記処理モジュールが、上記内部バス(2)と通信し、
上記処理モジュールが、
CRCモジュール(Cyclic Redundancy Check)(11)、
クロック生成モジュール(12)、
DES加速器及び/又はAES加速器(7)を有するモジュール、
1又は複数のタイマーモジュール(13)、
安全監視制御回路(14)及び
データインターフェース、具体的にはUniversal Asynchronous Receiver Transmitter(UART)(17)のうち、1又は複数のモジュールを有することを特徴とする請求項1から12のいずれか一項に記載のマイクロコントローラ。
【請求項14】
上記半導体基板が、表面(46)を有し、
上記半導体基板が、上記表面(46)の下方に半導体材料を有し、
上記半導体基板の上記表面(46)が、金属化積層を有し、
上記金属化積層が、上記半導体基板の上記表面(46)上に設けられている電気絶縁層(34)であって、典型的には、構造化され光学的に透明な電気絶縁層(34)を有し、
上記透明な電気絶縁層(34)の少なくとも一部が、上記少なくとも1つの光ファイバ(50)を構成し、
上記第1のSPADダイオード(44)が、上記半導体基板の上記半導体材料から、上記光ファイバ(50)に光子(47)を放出し、
上記少なくとも1つの光ファイバ(50)が、そのような光子(48)を上記第2のSPADダイオード(45)に搬送することを特徴とする請求項1から13のいずれか一項に記載のマイクロコントローラ。
【請求項15】
光(49)が上記光ファイバ(50)の内部から上記半導体基板の上記半導体材料に再入射し、そこで上記第2のSPADダイオード(45)の装置部分に達するように、上記光ファイバ(50)が、上記第2のSPADダイオード(45)を照射することを特徴とする請求項14に記載のマイクロコントローラ。
【請求項16】
上記少なくとも1つの動作回路が、上記少なくとも1つの第1のSPADダイオード(44)に、少なくとも一時的に電気エネルギーを供給し、
上記少なくとも1つの第1のSPADダイオード(44)が、十分な電気エネルギーを供給されると、上記少なくとも1つの光ファイバ(50)に光子(47)を与え、
上記少なくとも1つの光ファイバ(50)が、そのような光子(48)を上記第2のSPADダイオード(45)に搬送し、
上記少なくとも1つの光ファイバ(50)が、そのような光子(48)を上記第2のSPADダイオード(45)に放出することを特徴とする請求項1から15のいずれか一項に記載のマイクロコントローラ。
【請求項17】
上記1つのデータバスインターフェースが、有線の自動車用データバスインターフェースである、又は上記複数のデータバスインターフェースのうち、1又は複数のデータバスインターフェースが、有線の自動車用データバスインターフェースであることを特徴とする請求項1から16のいずれか一項に記載のマイクロコントローラ。
【請求項18】
上記1又は複数の有線の自動車用データバスインターフェースが、
CANデータバスインターフェース、
CAN-FDデータバスインターフェース、
FlexRayデータバスインターフェース、
PSI5データバスインターフェース、
DSI3データバスインターフェース、
LINデータバスインターフェース、
イーサネットデータバスインターフェース、
LINデータバスインターフェース及び/又は
MELIBUSデータバスインターフェースとして形成されていることを特徴とする請求項17に記載のマイクロコントローラ。
【請求項19】
上記1つのデータバスインターフェースが、無線のデータバスインターフェースである、又は上記複数のデータインターフェースのうち、1又は複数のデータバスインターフェースが、無線のデータバスインターフェースであることを特徴とする請求項1から18のいずれか一項に記載のマイクロコントローラ。
【請求項20】
上記1又は複数の無線のデータバスインターフェースが、
WLANインターフェース、
移動体通信インターフェース及び/又は
Bluetoothインターフェースとして形成されていることを特徴とする請求項19に記載のマイクロコントローラ。
【請求項21】
上記1つのデータバスインターフェースが、有線のデータバスインターフェースである、又は上記複数のデータインターフェースのうち、1又は複数のデータバスインターフェースが、有線のデータバスインターフェースであることを特徴とする請求項1から20のいずれか一項に記載のマイクロコントローラ。
【請求項22】
上記1又は複数の有線のデータバスインターフェースが、
KNXデータバスインターフェース、
EIBデータバスインターフェース、
DALI(登録商標)データバスインターフェース及び/又は
PROFIBUSデータバスインターフェースとして形成されていることを特徴とする請求項21に記載のマイクロコントローラ。
【発明の詳細な説明】
【技術分野】
【0001】
本PCT出願は、2021年10月27日付の独国特許出願第102021128005.2号、2021年11月18日付の独国特許出願第102021130107.6号、2022年5月2日付の独国特許出願第102022110713.2号、2022年10月4日付の独国特許出願第102022125574.3号、2022年10月5日付の独国特許出願第102022125617.0号及び2022年10月6日付の独国特許出願第102022125768.1号の優先権を主張し、その内容を本願出願の対象を構成するものとして援用する。
【0002】
本発明は、特に、少なくとも1つの量子プロセスに基づく真性乱数生成器(英語:Quantum Random Number Generator:QRNG)を、特に暗号化用の乱数生成器として備えるマイクロコントローラに関する。
【背景技術】
【0003】
自動車産業及びその他の関連産業は、ますます多種多様な海賊行為の脅威にさらされている。偽造者は、該当の工業メーカーの交換部品や製品を複製し、多くの場合、そのブランド名を利用する。さらなるリスクとしては、例えばCar-to-Car若しくはCar-to-X通信の際、又は車両の構成要素内でのデータ通信の際に、製品内又は製品とのデータのやり取りへの影響等のハッカー攻撃が挙げられ、特に自律システムにおいて、また自律システムと外部とのデータ通信において、ハッカー攻撃に対する保護が、特に重要になる。
【0004】
そのようなシステムにおいて、現在採用されているデータ暗号化用の乱数生成器のエントロピーの特性は、多くの場合、不十分である。背景技術において、量子プロセスに基づく真性乱数生成器(英語:Quantum Random Number Generator:QRNG)が公知であるが、一体化が困難であったり、量子収率が低かったりする。
【0005】
マイクロコントローラ及び量子プロセスに基づく乱数生成器を有するデータ信号処理ユニットの詳細については、例えば、下記に記載されている。
【先行技術文献】
【特許文献】
【0006】
【非特許文献】
【0007】
【非特許文献1】“Session key”,ウィキペディア、フリー百科事典,編集状況:2020年10月1日,URL:https://en.wikipedia.org/w/index.php?title=Session_key&oldid=981281879[2022年5月31日にアクセス]
【非特許文献2】“Integrated circuit”,ウィキペディア,フリー百科事典,編集状況:2021年10月12日,URL:https://en.wikipedia.org/w/index.php?title=Integrated_circuit&oldid=1049603915[2022年5月31日にアクセス]
【非特許文献3】“BIOS”,ウィキペディア,フリー百科事典,編集状況:2021年10月24日,URL:https://en.wikipedia.org/w/index.php?title=BIOS&oldid=1051566527[2022年5月31日にアクセス]
【非特許文献4】BURRI,S.ら,“SPADs for Quantum Random Number Generators and beyond”,第19回アジア南太平洋設計自動化会議(ASP-DAC),2014年1月20日から23日,シンガポール,IEEE,p.788-794,DOI:10.1109/ASPDAC.2014.6742986
【非特許文献5】Fabio Acerbi,Nicola Massari,Leonardo Gasparini,Alessandro Tomasi,Nicola Zorzi,Giorgio Fontana,Lorenzo Pavesi,Alberto Gola,“Structures and Methods for fully-integrated Quantum Random Number Generators”,IEEE Journal of selected topics in quantum electronics,Vol.16,No.3,2020年5月/6月
【発明の概要】
【発明が解決しようとする課題】
【0008】
本発明は、光量子プロセスに基づいて真性乱数を生成するための装置及び方法を提供することを課題とする。
【課題を解決するための手段】
【0009】
上記課題を解決するため、本発明により、自動車内の装置を制御するためのマイクロコントローラが提案され、このマイクロコントローラが、
半導体基板と、
複数の記憶素子と、
少なくとも1つの内部バスと、
少なくともマイクロコントローラコアと、
1又は複数のデータインターフェースと、
少なくとも1つの量子プロセスに基づく真性乱数生成器とを備え、
上記記憶素子が、上記内部バスに接続されており、
上記データインターフェースが、上記内部バスに接続されており、
上記量子プロセスに基づく生成器が、上記内部バスに接続されており、
上記マイクロコントローラコアが、上記内部バスに接続されており、
上記量子プロセスに基づく生成器が、特に上記マイクロコントローラコアの要求に応じて乱数を生成し、
上記量子プロセスに基づく生成器が、上記乱数を供給し、
上記マイクロコントローラコアが、上記記憶素子の1又は複数からのプログラムと、上記乱数とを用いて、キーを生成し、
上記マイクロコントローラコアが、上記記憶素子の1又は複数からのプログラムと、上記キーとを用いて、上記データインターフェースを介して外部装置と、又は内部でやり取りされるデータを暗号化及び復号化し、
上記半導体基板が、ここに挙げた上記安全マイクロコントローラのサブ装置を一体に有し、
上記量子プロセスに基づく生成器が、光量子信号用の光源として、少なくとも1つの第1のSPADダイオードを有し、
上記量子プロセスに基づく生成器が、上記光量子信号の受信用の光検出器として、少なくとも1つの第2のSPADダイオードを有し、
上記量子プロセスに基づく生成器が、少なくとも1つの処理回路を有し、
上記少なくとも1つの第1のSPADダイオードを、上記少なくとも1つの第2のSPADダイオードに光学的に連結するため、上記量子プロセスに基づく生成器が、少なくとも1つの光ファイバを有し、
光を発するための電気エネルギーを、上記少なくとも1つの第1のSPADダイオードに供給するため、上記量子に基づく生成器が、動作回路を有し、
上記少なくとも1つの第2のSPADダイオードの信号を検出し、上記少なくとも1つの第2のSPADダイオードの上記信号から乱数を形成し、上記マイクロコントローラコアに上記乱数を供給するため、上記量子に基づく生成器が、処理回路を有する。
【0010】
当該マイクロコントローラの本発明に不可欠な特徴は、真性乱数生成用の量子プロセスに基づく生成器(量子プロセスに基づくエントロピー源)である。この生成器は、光量子プロセスに基づいており、少なくとも1つの第2の又は受信SPADダイオードにおける誘導光子放出と自然光子放出との組み合わせに基づいている。この受信SPADダイオードは、光ファイバを介して、少なくとも1つの第1のSPADダイオード又は送信SPADダイオードに連結されている。両方のSPADダイオードは、ガイガーモードで動作する。
【0011】
革新的特徴は、絶縁層として金属化積層を構成する1又は複数の誘電体層の少なくとも一部又は一部位として、光ファイバを形成することにあり、この金属化積層は、第1及び第2のSPADダイオードが一体化されている半導体材料上に形成されている。あるいは、光ファイバにより、少なくとも1つの第1のSPADダイオードと、少なくとも1つの第2のSPADダイオードとがそれぞれ形成されている2つの半導体基板を、互いに連結してもよい。しかしながら、全てのSPADダイオードが一体化され、その表面に光ファイバが配置されている半導体基板を有するマイクロコントローラの態様が好ましい。
【0012】
第2のSPADダイオードの自然光子放出及び誘導光子放出が生じることにより、そのエミッション信号は、高さの異なる極めて狭いパルス(以下、スパイクという)を有する。よって、エミッション信号は、単一光子放出の結果として生じる第1のスパイクを有する。自然光子放出が誘導光子放出と同時に起こると、第2のSPADダイオードのエミッション信号において、第1のスパイクよりも高い第2のスパイクが発生する。このように光子放出が組み合わさって生じることは、非常にランダムであり、量子プロセスに基づいているため、第2のスパイクの発生の時系列を評価することは、そこから真性乱数を生成させるのに適している。
【0013】
これに関し、本発明の有用な態様において、上記少なくとも1つの第2のSPADダイオードのエミッション信号が、第1のスパイクと、この第1のスパイクより大きい第2のスパイクとを有し、上記第1及び第2のスパイクが、それぞれ予め設定可能な基準値より大きく、上記少なくとも1つの第2のSPADダイオードの誘導光子放出が同時に起こることなく、上記少なくとも1つの第2のSPADダイオードの自然光子放出により、上記第1のスパイクが発生し、自然光子放出と、上記少なくとも1つの第1のSPADダイオードの光子を受信することで誘導される上記少なくとも1つの第2のSPADダイオードの光子放出とが同時に生じることにより、上記第2のスパイクが発生し、上記量子プロセスに基づく生成器の上記処理回路が、上記第2のスパイクの時間間隔を閾値と比較することにより、又は上記第2のスパイクの時間間隔同士を比較することにより、上記乱数の生成用のビットとして、第1の論理値又は第2の論理値を生成する。
【0014】
本発明の変形例によれば、上記処理回路が、2つのスパイクの時間間隔を閾値と比較することにより、上記第1の論理値又は上記第2の論理値を生成し、上記処理回路が、上記時間間隔が上記閾値より小さい場合に、上記第1の論理値を上記乱数のビットとして出力し、上記時間間隔が上記閾値より大きい場合に、上記第2の論理値を上記乱数のビットとして出力するようにして、上記真性乱数が生成される。
【0015】
上記真性乱数の生成の第2の変形例によれば、上記処理回路が、異なる対の第2のスパイクの上記第2のスパイクの時間間隔同士を比較することにより、上記第1の論理値又は上記第2の論理値を生成し、上記処理回路が、最後に現れた第2のスパイクの時間間隔が、例えば、最後から2番目の第2のスパイクと最後から3番目の第2のスパイクとの間の時間間隔又は別の一対の先行する第2のスパイク間の時間間隔より小さい場合に、上記第1の論理値を上記乱数の生成用のビットとして出力し、上記最後に現れた第2のスパイクの時間間隔が、例えば上記最後から2番目の第2のスパイクと上記最後から3番目の第2のスパイクとの間の時間間隔又は別の一対の先行する第2のスパイク間の時間間隔より大きい場合に、上記第2の論理値を上記乱数の生成用のビットとして出力してもよい。
【0016】
上述の真性乱数の生成の変形例の両者について、時間間隔と閾値との比較(変形例1)又は時間間隔同士の比較(態様2)において、等しいものが検出された場合、乱数への利用のため、この結果は破棄することとする。あるいは、比較の結果が等しいものを利用することもできるが、その場合、純粋にランダムに第1の論理値又は第2の論理値として判定しなければならない。
【0017】
なお、完璧を期すため、第2のSPADダイオード又は受信SPADダイオードにおいて、エミッション信号に、第1のスパイクの略3倍の高さを有する第3のスパイクが生じてもよいとする。このような事象は、第1のSPADダイオードの光子の受信により誘導される光子放出が、第2のSPADダイオードの自然光子放出及びそれに誘導される誘導光子放出と同時に起こるときに発生する。この「3倍スパイク」は、使用されないことが有益である。よって、この点に関して、各第2のSPADダイオードのエミッション信号を調べる際、その信号を、真性乱数の生成のため評価できるように、収まるべき所定の基準値範囲と比較する。
【0018】
真性乱数の個々のビットの生成を並列化するためには、第1のSPADダイオードと第2のSPADダイオードとからなる対が複数設けられていると有益であり、この場合、上記第2のSPADダイオードの上記エミッション信号が、上記処理回路に供給可能であり、上記処理回路が、各第2のSPADダイオードのエミッション信号を用いて、上記乱数の生成用のビットの別の1つを出力する。
【0019】
真性乱数の個々のビットを連続的に生成するためには、基本的に1つの第1のSPADダイオードと1つの第2のSPADダイオードからなる対で十分であり、この場合、処理回路が、上記乱数の生成用のビットの論理値を連続的に出力する。
【0020】
第1及び第2のSPADダイオードの光学的連結の別の変形例において、単一の第1のSPADダイオードと、この単一のSPADダイオードに光学的に連結されている複数の第2のSPADダイオードとが設けられており、上記第2のSPADダイオードの上記エミッション信号が、上記処理回路に供給可能であり、上記処理回路が、各第2のSPADダイオードの上記エミッション信号を用いて、上記乱数の生成用のビットの別の1つを出力してもよい。
【0021】
機能エラーを検出できるように、またエラーの場合でも乱数を生成できるように、有利には、エラー検出ユニット及び疑似乱数生成器が設けられていてもよく、エラー検出ユニットが、量子プロセスに基づく生成器の光量子に基づくプロセスに関わる構成要素の機能にエラーを検出した場合、又はその処理回路のエラーを検出した場合に、量子に基づく生成器の処理回路が、少なくとも1つの第2のSPADダイオードのエミッション信号を用いた乱数生成用のビットの出力から、疑似乱数生成器により生成される疑似乱数生成用ビットの出力に切り替える。ここで、エラー検出ユニットが、エラーを検出した際に、特にエラーの種類及び/又は原因を表すエラー信号を出力すると有用となり得る。エラー検出ユニットが、エラーの存在だけでなく、発生したエラーの種類も検出することが有益である。このような結果に対する量子に基づく生成器の反応は、用途によって異なり、例えば、セルフテストが行われることを意味してもよい。しかしながら、量子に基づく生成器にエラーが生じた場合は、疑似乱数生成器に切り替え、例えば、エラーの検出前に量子に基づく生成器が生成した最終ビットに基づいて、疑似乱数を生成することが好ましい。
【0022】
エラー源としては、以下のものが挙げられる。
・マイクロコントローラの個々の構成要素に対する供給電圧の異常
・第1及び/又は第2のSPADダイオードの誤信号の生成
・光ファイバにおける異常、及び/又は第1のSPADダイオード及び/又は第2のSPADダイオードを光ファイバに連結する際の異常
・マイクロコントローラ及び量子乱数生成器のアナログ及び/又はデジタル部品における回路故障
・例えば、David Johnston,“Random Number Generators-Principles and Practices”,第8章及び第9章,2018年,Walter De Gruyter GmbH,ベルリン/ボストン,ISBN 978-1-5015-1530-2に記載されているような、試験により生じ得る供給乱数の誤ったエントロピー
【0023】
上述のエラー検出ユニット及び疑似乱数生成器を有するマイクロコントローラの変形例も、上述のものとは別の量子に基づく生成器を有するマイクロコントローラを用いて実現することができる。これに関し、本態様の対象について独立した保護が請求される。
【0024】
本発明の有用な態様において、上記記憶素子が、1又は複数の読み書きメモリRAM、1又は複数の書き込み可能な不揮発性メモリ(具体的には、EEPROMメモリ、フラッシュメモリ及び/又はワンタイムプログラマブル(OTP)メモリ)、1又は複数の純粋な読み取り専用メモリ及び/又は1又は複数の不揮発性メーカーメモリ(具体的には、1又は複数のメーカーROM、1又は複数のメーカーEEPROM及び/又は1又は複数のメーカーフラッシュメモリ)を有していてもよい。
【0025】
本発明の好適な態様において、上記メーカーROMが、ブートソフトウェアを有していてもよい。
【0026】
本発明の別の好適な態様において、上記メーカーメモリと上記内部バスとの間に、メーカーメモリファイアウォールを備えていてもよい。
【0027】
本発明の好適な態様において、上記マイクロコントローラが、
基本クロック生成器、
クロック生成回路、
リセット回路、
上記動作電圧を与える電圧調節器付の電流供給又はVcc回路、
接地回路、
入出力回路及び/又は
1又は複数の処理モジュールを備えていてもよく、
上記処理モジュールが、上記内部バスと通信し、
上記処理モジュールが、
CRCモジュール(Cyclic Redundancy Check)、
クロック生成モジュール、
DES加速器及び/又はAES加速器を有するモジュール、
1又は複数のタイマーモジュール、
安全監視制御回路及び
データインターフェース、具体的にはUniversal Asynchronous Receiver Transmitterのうち、1又は複数のモジュールを有していてもよい。
【0028】
本発明の別の有用な態様において、
上記半導体基板が、表面を有し、
上記半導体基板が、上記表面の下方に半導体材料を有し、
上記半導体基板の上記表面が、金属化積層を有し、
上記金属化積層が、上記半導体基板の上記表面上に設けられている電気絶縁層であって、典型的には、構造化され光学的に透明な電気絶縁層を有し、
上記透明な電気絶縁層の少なくとも一部が、上記少なくとも1つの光ファイバを構成し、
上記第1のSPADダイオードが、上記半導体基板の上記半導体材料から、上記光ファイバ(50)に光子を放出し、
上記少なくとも1つの光ファイバが、そのような光子を上記第2のSPADダイオードに搬送してもよい。
【0029】
本発明の好適な態様において、光が上記光ファイバの内部から上記半導体基板の上記半導体材料に再入射し、そこで上記第2のSPADダイオードの装置部分に達するように、上記光ファイバが、上記第2のSPADダイオードを照射してもよい。
【0030】
本発明の別の好適な態様において、
上記少なくとも1つの動作回路が、上記少なくとも1つの第1のSPADダイオードに、少なくとも一時的に電気エネルギーを供給し、
上記少なくとも1つの第1のSPADダイオードが、十分な電気エネルギーを供給されると、上記少なくとも1つの光ファイバに光子を与え、
上記少なくとも1つの光ファイバが、そのような光子を上記第2のSPADダイオードに搬送し、
上記少なくとも1つの光ファイバが、そのような光子を上記第2のSPADダイオードに放出してもよい。
【0031】
本発明の有用な態様において、上記1つのデータバスインターフェースが、有線の自動車用データバスインターフェースである、又は上記複数のデータバスインターフェースのうち、1又は複数のデータバスインターフェースが、有線の自動車用データバスインターフェースであってもよい。
【0032】
本発明の別の有用な態様において、上記1又は複数の有線の自動車用データバスインターフェースが、
CANデータバスインターフェース、
CAN-FDデータバスインターフェース、
FlexRayデータバスインターフェース、
PSI5データバスインターフェース、
DSI3データバスインターフェース、
LINデータバスインターフェース、
イーサネットデータバスインターフェース、
LINデータバスインターフェース及び/又は
MELIBUSデータバスインターフェースとして形成されていてもよい。
【0033】
本発明の好適な態様において、上記1つのデータバスインターフェースが、無線のデータバスインターフェースである、又は上記複数のデータインターフェースのうち、1又は複数のデータバスインターフェースが、無線のデータバスインターフェースであってもよい。
【0034】
本発明の別の有用な態様において、上記1又は複数の無線のデータバスインターフェースが、
WLANインターフェース、
移動体通信インターフェース及び/又は
Bluetoothインターフェースとして形成されていてもよい。
【0035】
本発明の好適な態様において、上記1つのデータバスインターフェースが、有線のデータバスインターフェースである、又は上記複数のデータインターフェースのうち、1又は複数のデータバスインターフェースが、有線のデータバスインターフェースであってもよい。
【0036】
本発明の別の好適な態様において、上記1又は複数の有線のデータバスインターフェースが、
KNXデータバスインターフェース、
EIBデータバスインターフェース、
DALI(登録商標)データバスインターフェース及び/又は
PROFIBUSデータバスインターフェースとして形成されていてもよい。
【発明の効果】
【0037】
本発明の重要な利点は、光学的に連結されたSPADダイオードが一体化されている半導体材料を光子の搬送に利用するのではなく、半導体材料表面近傍の1又は複数の誘電体層、すなわち金属化積層の絶縁層を搬送に使用することにある。これにより、受信SPADダイオードに到達する光子の「収率」が大幅に高まる。これは、受信SPADダイオードにおいて、より短時間でより多くの事象を観測できることを意味し、非常に短時間でより長い量子プロセスに基づく乱数を生成するため、又は非常に短時間で多数の量子プロセスに基づく乱数を生成するために、利用することができる。これにより、いわゆるポスト量子暗号(PQC)又は耐量子コンピュータ暗号に対しても安全な量子プロセスに基づく乱数の生成の有効性が向上する。
【0038】
以下、図面を参照しながら、様々な実施の形態を用いて、本発明を詳細に説明する。
【図面の簡単な説明】
【0039】
【
図1】
図1は、安全マイクロコントローラ1の一例を示すブロック図である。
【
図2】
図2は、本発明に係る第1の安全マイクロコントローラ(IC1)と、第2の安全マイクロコントローラ(IC2)とを用いた製品保護のフローの一例を示す図である。この場合、第1の安全マイクロコントローラ(IC1)及び第2の安全マイクロコントローラ(IC2)は、好ましくは1又は複数の量子プロセスに基づく真性乱数生成器15により生成された乱数を用いて暗号化されているデータをやり取りする。
【
図3】
図3は、半導体材料にSPADダイオードが一体化されている様子を示す図である。
【
図4】
図4は、第1のSPADダイオードを第2のSPADダイオードと組み合わせる様子を示す図であって、この第1のSPADダイオード及び第2のSPADダイオードが、ともに半導体材料に一体化されており、金属化積層の一部として、すなわち金属化積層の絶縁層の一部又は一部位として半導体材料上に設けられた光ファイバにより、光学的に連結されている様子を示す図である。
【
図5】
図5は、第1のSPADダイオードを第2のSPADダイオードと組み合わせる様子を示す図であって、この第1のSPADダイオード及び第2のSPADダイオードが、ともに半導体材料に一体化されており、金属化積層の一部として、すなわち金属化積層の絶縁層の一部又は一部位として半導体材料上に設けられた光ファイバにより、光学的に連結されている様子を示す図である。
【
図6】
図6は、少なくとも1つの送信SPADダイオード及び少なくとも1つの受信SPADダイオードからなる量子に基づくエントロピー源を、これらを光学的に連結し評価動作回路を有する光ファイバと組み合わせる様子を示す図である。
【
図7】
図7は、
図6と同様の構成に監視回路を加えた図である。
【
図8】
図8は、本発明の一実施の形態に係るエントロピー抽出方法を示すフロー図である。
【
図9】
図9は、受信SPADダイオードの典型的な出力信号を示す図である。
【
図10】
図10は、本発明に係る光量子に基づくプロセスを使用して量子乱数を生成するための方法の各工程を模式的に示す図である。
【発明を実施するための形態】
【0040】
図面は、提案された装置及び方法の主要部分を、簡略的に例示している。ここでは、解説のため、本発明の教義に従って構成された特定の例を、添付の図面を参照しながら説明する。
【0041】
以下の明細書及び図面における本発明の実施の形態は、一例にすぎず、記載された特定の例又は要素に限定されるものではない。一部の要素の変形、組み合わせ又は変更により、様々な例を導き出すことができる。さらに、当業者であれば、明細書又は図面から、文言上記載されていない例又は要素を導き出すことができる。
【0042】
本発明に係る集積回路は、安全マイクロコントローラ1、すなわちデータを安全に暗号化するマイクロコントローラを備えることが好ましい。
図1は、安全マイクロコントローラ1の一例を示すブロック回路図である。安全マイクロコントローラ1は、例えば、内部バス2に接続されている複数の記憶素子を有する。記憶素子は、例えば、1又は複数の読み書きメモリRAM3、及び/又はEEPROMメモリ4及び/又はフラッシュメモリ4及び/又はOTPメモリ4等の1又は複数の書き込み可能な不揮発性メモリを有することができる。また、安全マイクロコントローラ1は、ROM等の1又は複数の純粋な読み取り専用不揮発性メモリ5を備えることが好ましい。さらに、安全マイクロコントローラ1は、1又は複数の書き込み可能及び/又は非書き込み可能な不揮発性メーカーメモリ6を備えることが好ましく、このメーカーメモリ6は、一般に、後で行われうるマイクロコントローラ又は他の電子機器の検査において重要となる参照データを含んでいる。非書き込みな可能メーカーメモリ6の場合、メーカーメモリ6は、メーカーROMとすることができる。メーカーROM6は、ブートソフトウェアを有することが好ましい。安全マイクロコントローラ1は、例えば、暗号計算を加速し内部バス2に接続されているDES加速器及び/又はAES加速器7等の1又は複数の暗号アクセラレータ7を備える。例えば、少なくとも1つのメーカーメモリファイアウォール8が、メーカーメモリ6と内部バス2との間に設けられていることが好ましい。マイクロコントローラコア16が、データバス2を介して、これらのメモリにアクセスする。安全マイクロコントローラ1は、例えば、内部バス2を介してマイクロコントローラコア16と通信する処理モジュールを備える。マイクロコントローラ1の処理モジュールは、CRCモジュール(Cyclic Redundancy Check)11、クロック生成モジュール12、1又は複数のタイマーモジュール13、安全監視制御回路14、1又は複数の量子プロセスに基づく真性乱数生成器15(英語:Quantum Random Number Generator:QRNG)、8/16/32/64ビットのマイクロコントローラコア16、及び1又は複数のデータインターフェース17、具体的には高速連続データをサポートするための1又は複数のUniversal Asynchronous Receiver Transmitter(UART)のうち、少なくとも1つのモジュールを備えることが好ましい。安全マイクロコントローラ1のその他の回路部品としては、例えば、1又は複数の基本クロック生成回路21(CLK)及び/又は1又は複数のクロック生成モジュール12、リセット回路22、動作電圧を与える電圧調節器付の電流供給又はVcc回路23、接地回路24、及び入出力回路25が挙げられる。
【0043】
安全マイクロコントローラ1は、安全な認証を実行できるように構成されていることが好ましい。そのため、安全マイクロコントローラ1は、認証コードに加えて、例えば1又は複数の寿命及び使用期限データ、及び/又は例えばロジスティックデータ、及び/又は例えば商用データ、及び/又はウェブサイト及びEメールアドレス、及び/又は画像データ等のさらなるデータや、マイクロコントローラコア16がデータインターフェースを介して通信する自動車制御機器用の命令セットを格納する。また、安全マイクロコントローラ1は、さらにアプリケーションデータを格納することができる。
【0044】
第1の集積回路は、例えば、製品の安全な認証を容易にするように構成されている安全マイクロコントローラ1を備えることが好ましい。
【0045】
図2は、本発明に係る安全マイクロコントローラ1を有する製品用の回路の作製方法の一例を示している。この方法は、例えば、製品の第2の集積回路に製品IDを書き込む工程(ブロック250)を有する。本出願によれば、第2の集積回路は、第2の安全マイクロコントローラ1を備えることが好ましい。上記方法は、例えば、製品IDに対応する認証コードを、第1の安全マイクロコントローラ1の第1の集積回路のメモリに書き込む工程(ブロック211)を有する。本出願によれば、製品の第1の集積回路も同様に、安全マイクロコントローラ1を備えることが好ましい。上記方法は、例えば、異なる製品ID及び異なる対応する認証コードを、それぞれの安全マイクロコントローラ1のそれぞれの集積回路のメモリに書き込む工程を有する。製品ごとに、異なる製品ID及び異なる対応する認証コードを、それぞれの安全マイクロコントローラ1のそれぞれの集積回路のメモリに書き込む(ブロック221)こともできるため、各製品が、固有の製品ID及び固有の認証コードを有することになる。最後に述べた工程により、例えば、製品ごとに、1つの安全かつ固有の認証コードが与えられる。
【0046】
本明細書に記載の何点かの特徴により、例えば、回路又は製品の安全な認証が可能になると同時に、これらの特徴により、この回路又は製品をコスト効率よく一貫生産することができる。例えば、第2の集積回路は、安全な認証を実行できるように構成されていることが好ましい。様々な例において、自動車、スマートフォン、ウェブサーバ、任意のデータ処理装置等の様々なホスト機器が、回路又は製品を認証することができる。一例としては、自動車の制御コンピュータを介して、ホスト機器と回路との間にインターフェースが構築される。別の一例では、回路の第1の集積回路が、製品関連コードや製品設定情報等の追加データを格納するように構成されている。ホスト機器は、例えば、第1の集積回路を介して安全な認証が行われて初めて、そのような追加データにアクセスする、又は追加データを変更又は処理することができる。第1の集積回路は、例えば、認証後に初めて、上記追加データを提供する又は上記追加データへのアクセスを可能にするように構成されている。例えば、異なる自動車シリーズに使用する際に、製品をほとんど又は全く調整する必要がない。
【0047】
内部データバス2(
図1参照)は、複数のマイクロコントローラコア16用の複数のデータバス2を有することができるため、互いに独立して、時間的にずれて及び/又は重畳して又は同時に、安全マイクロコントローラ1の様々なサブ装置にアクセスできる。しかしながら、通常、安全マイクロコントローラ1は、内部データバス2及びマイクロコントローラコア16を、1つずつのみ備える。マイクロコントローラコア16は、Advanced Risk Maschine(AMR)プロセッサ等であることが好ましい。好ましくは、8ビット又は16ビット又は32ビット又は64ビットのマイクロコントローラ・コンピュータコアである。
【0048】
安全マイクロコントローラ1は、1又は複数の読み書きメモリRAM3を備えることが好ましい。ここでは、例えば、スタティックRAM及び/又は磁気抵抗メモリ及び/又は強誘電体メモリ等とすることができる。また、リフレッシュサイクルにおいて、定期的な読み出し及び再書き込みが必要なDRAM等の動的読み書きメモリであってもよい。本発明に係る安全マイクロコントローラ1は、そのメモリにアクセスするため、定期的にリフレッシュ動作を実行するアクセスロジックを有していてもよい。しかしながら、DRAMは、一般的に攻撃の機会を広げ、潜在的な脆弱性を有することが多い。この読み書きメモリRAM3に、マイクロコントローラコア16は、内部データバス2を用いてアクセスできることが好ましい。
【0049】
安全マイクロコントローラ1は、1又は複数の書き込み可能な不揮発性メモリ4を備えることが好ましい。この書き込み可能な不揮発性メモリ4に、マイクロコントローラコア16は、内部データバス2を用いてアクセスできることが好ましい。この不揮発性メモリは、例えば、EEPROMメモリ4又はフラッシュメモリ4又はOTPメモリ4を含むことができる。ここで、OTPとは、英語で「One Time Programmable」を意味する。
【0050】
攻撃の可能性としては、例えば、X線及び/又は電離放射線及び/又はメモリセルの発熱等の放射による不揮発性メモリ4の消去が挙げられる。これに対し、安全マイクロコントローラ1は、消去可能なメモリ4のメモリセルのデータ完全性を監視する1又は複数の安全監視制御回路14を備えることが好ましい。好ましくは長さ8ビットのデータワード、つまり1バイトのデータワードに対し、少なくとも2つのチェックビットが設けられており、常に少なくとも1つのチェックビットが内容1を、別のチェックビットが内容0を必ず有するように、メモリセルが冗長性を有することが好ましい。例えば、第1のチェックビットを、1バイトのパリティビットとし、第2のチェックビットを、パリティビットの反転ビットとすることができる。ここで、電離放射線等による攻撃が発生すると、攻撃により、両方のチェックビットが同じ値にリセットされる。1又は複数の安全監視制御回路14は、このずれを検知し、安全マイクロコントローラ1からのさらなるアクセスを遮断する。
【0051】
安全マイクロコントローラ1のメモリの各ビットが、2倍に設計されていることが好ましく、これにより、各論理データビットが、第1の内部論理値を有する第1の物理データビットと、第2の内部論理値を有する第2の物理データビットとからなるペアとして実現される。この場合、一般的に、第2の内部論理値は、第1の内部論理値を論理的に反転したものである。1又は複数の安全監視制御回路14は、これが常に成り立つことを監視することが好ましい。1又は複数の安全監視制御回路14は、ずれを検知し、好ましくは、例えば、マイクロコントローラコア16によるさらなるプログラム又は特定のプログラム部分の実行を遮断し、及び/又はずれが生じている場合のデータへのアクセスを遮断する。
【0052】
安全マイクロコントローラ1は、1又は複数のリセット回路22(
図1参照)を備えることが好ましい。リセット回路22は、それぞれ、所定の若しくは設定可能なリセット条件、及び/又は組み合わせ、及び/又はそのようなリセット条件の時系列が揃った場合に、安全マイクロコントローラ1及び/又は安全マイクロコントローラ1のサブ装置を、所定の状態にリセットする。例えば、これらの条件は、1又は複数の安全監視制御回路14の信号伝達としてもよい。また、これらの条件は、安全マイクロコントローラの動作電圧の電位の変化及び/又は値としてもよい。また、そのような条件は、安全マイクロコントローラ1の筐体の完全性に関わるものでもよい。
【0053】
安全マイクロコントローラ1は、安全マイクロコントローラ1の筐体の開放を検出する検出器を備えることが好ましい。ここでは、例えば、繊維網又は織布として、安全マイクロコントローラ1を囲む若しくは覆う、又は安全マイクロコントローラ1の少なくとも一部を覆う1本の配線とすることができる。また、攻撃の検知に特化して、安全マイクロコントローラ1を覆う配線ネットワークとすることもできる。例えば、安全マイクロコントローラ1は、第1の入出力を備えていてもよく、これにより、そのような配線に電流を供給し、再び第2の入出力に取り出すことができる。電流の流れが停止すると、攻撃があったことが示唆され、1又は複数の安全監視制御回路14がこれを検知し、この攻撃について、例えば、本発明に係る安全マイクロコントローラ1のマイクロコントローラコア16に伝達する。このように筐体の完全性の損傷が予測される場合、例えば、1又は複数の安全監視制御回路14の1又は複数は、安全マイクロコントローラ1のメモリのメモリ内容への書き込み及び/又は読み取りアクセスを遮断する、又はそのような内容を消去する、又はこの内容を所定の値に設定する、又は無意味なデータで上書きする、又はその他の方法で処理してもよい。安全マイクロコントローラ1のメモリは、ROM等の1又は複数の純粋な読み取り専用不揮発性メモリ5を含むことが好ましい。安全マイクロコントローラ1のROM6には、設計側で設定されたデータ及び/又はプログラム命令が含まれることが好ましい。
【0054】
安全マイクロコントローラ1(例えば
図1参照)は、半導体メーカー又は他の供給元が、シリアルナンバー等の製造データ及びセキュリティデータを格納できる1又は複数の書き込み可能及び/又は非書き込み可能な不揮発性メーカーメモリ6を備えることが好ましい。半導体メーカーは、最終製造試験後に、この書き込み可能及び/又は非書き込み可能な不揮発性メーカーメモリ6へのアクセスを遮断することが好ましい。書き込み可能及び/又は非書き込み可能なメーカーメモリ6へは、メーカーパスワードを用いてアクセス可能であることが好ましい。多くの場合、二重鍵法が有効である。そのような場合、(半導体メーカーの下流の)顧客が、同様にパスワードを用いたアクセスを遮断可能な顧客遮断レジスタに、顧客パスワードを格納する。半導体メーカーは、顧客パスワード及びメーカーパスワードのみを用いて、安全マイクロコントローラ1の全てのメモリ領域にアクセスできることが好ましい。半導体メーカーは、解析パスワードを提供することが好ましく、これにより、1又は複数の安全監視制御回路14の1又は複数に、典型的には、リセット回路22を用いて顧客内容を消去させ、エラー解析のため、安全マイクロコントローラ1の全てのメモリ領域にアクセス可能にすることができる。非書き込み可能なメーカーメモリの場合、メーカーメモリ6は、例えばメーカーROMとすることができ、その内容は、例えば安全マイクロコントローラの半導体回路の製造時に設定される。
【0055】
安全マイクロコントローラは、典型的には、そのメモリに格納されマイクロコントローラコア16が実行する暗号法により、暗号化されたデータ及び/又はプログラムコード部分及び/又は命令を受信及び/又は送信するように構成されている。これらの方法には、膨大な計算能力を必要とするものがある。そのため、マイクロコントローラコア16が、これらの暗号法の特定のプログラム部分を、暗号法のサブ工程として実行するのではなく、1又は複数の特別なハードウェア加速器が、好ましくは1又は複数の暗号アクセラレータ7として、マイクロコントローラコア16に代わって、特別に合成されたハードウェアロジックにより加速して、このプログラム部分を実行することが有用であるとわかった。このため、安全マイクロコントローラ1は、例えば、Data Encryption Standard(DES)アルゴリズム用のDES加速器及び/又はAdvanced Encryption Standard(AES)アルゴリズムの実行用のAES加速器7を備えることが好ましい。マイクロコントローラコア16は、典型的には、内部データバス2を介して、このハードウェア加速器7に対応する。マイクロコントローラコア16は、冗長クロックシステムを備えることで、クロックシステムへのアクセスを検知できることが好ましい。1又は複数の安全監視制御回路14の1又は複数は、この複数の好ましい冗長クロックシステムの論理内容の一貫性を監視し、攻撃及びエラーを検知することができる。マイクロコントローラコア16及び安全マイクロコントローラ1のテストロジックによるメーカーメモリへのアクセスは、1又は複数のメーカーメモリファイアウォール8により防ぐことが好ましい。これは、上述したように、メーカーパスワードにより解除できることが好ましい。攻撃成功率を最小にするため、誤入力の回数は、非常に限られていることが好ましい。
【0056】
安全マイクロコントローラは、1又は複数のCRCモジュール(Cyclic Redundancy Check)11を備えることで、送信動作の場合には、誤ったデータ伝送を検出するため、ほとんどのデータプロトコルに採用されている連続データ通信用のCRCデータを生成し、受信時にはデータメッセージの正常な受信を確認できることが好ましい。安全マイクロコントローラ1は、安全マイクロコントローラの回路を動作させるための1又は複数のクロックを生成する1又は複数のクロック生成モジュール12(英語:Clock Driver、CLK)を備えることが好ましい。1又は複数のクロック生成モジュール(英語:Clock Driver、CLK)12は、クロックシステムへの攻撃を検知させる冗長クロックを生成することが好ましい。安全マイクロコントローラ1は、典型的には、例えばタイムアウトを検知するために必要な1又は複数のタイマーモジュール13を備える。安全マイクロコントローラ1は、様々なプログラム部分の実行を監視する1又は複数のウォッチドッグタイマーを備えることが好ましい。このウォッチドッグタイマーは、1又は複数の安全監視制御回路14の一部とすることができる。
【0057】
本発明(例えば、
図1参照)によれば、安全マイクロコントローラ1は、少なくとも1つの量子プロセスに基づく生成器15を備える。量子に基づくプロセスは、真の偶然性に基づいているという利点がある。1970年代、物理学者ベルが、「隠れたパラメータ」の理論が間違いであることを証明した。すなわち、例えば光子の放出のような量子力学的な事象のランダム性に、隠れた原因など存在しないということである。マイクロコントローラコア16は、例えば、8ビットのマイクロコントローラコア又は16ビットのマイクロコントローラコア又は32ビットのマイクロコントローラコア又は64ビットのマイクロコントローラコア又は128ビットのマイクロコントローラコア等とすることができる。安全マイクロコントローラ1は、好ましくは1又は複数の内部データバス2を介して他のサブ装置にアクセス可能な1又は複数の8/16/32/64/128ビットのマイクロコントローラコア16を備えることができる。安全マイクロコントローラ1は、1又は複数のデータインターフェース17を備えることが好ましい。そのようなデータインターフェースとしては、例えば、連続高速データをサポートするための1又は複数のUniversal Asynchronous Receiver Transmitter(UART)が挙げられる。安全マイクロコントローラ1は、1又は複数の基本クロック生成器21(CLK)を備えることが好ましく、この基本クロック生成器21は、1又は複数のクロック生成モジュール(英語:Clock Driver、CLK)に、それぞれ基本クロック12を供給することが好ましい。基本クロック生成器21(CLK)としては、発振器が好ましい。また、安全マイクロコントローラ1は、安全マイクロコントローラ1用の動作電圧を与える電圧調節器付の1又は複数の電流供給又はVcc回路23を備えることが好ましい。また、安全マイクロコントローラ1は、例えば、半導体基板の電位の操作に対する逆極性保護及び保護回路を有する1又は複数の接地回路24(すなわち、接地線に挿入された回路又は「接地された」回路であって、最も単純な場合は配線である)を備えることが好ましい。例えば、接地回路24のうち、1又は複数が、逆極性保護を有していると有用である。例えば、安全マイクロコントローラの消費電力及び/又は内部抵抗及び/又は供給電圧端子間での電圧降下の変調が、安全マイクロコントローラの動作及び/又は状態に少なくとも一時的に影響を与えないように、接地回路24の1又は複数及び/又は電流供給又はVcc回路23の1又は複数が相互に作用すると有用である。
【0058】
他の装置の制御のため、及び/又は他の装置との通信のため、及び/又は他の装置の監視のため、安全マイクロコントローラが、好ましくはトライステート状態も取りうる、通常デジタル入力及び/又はデジタル出力として構成されている1又は複数の入出力回路25を備えていると、一般に有用である。安全マイクロコントローラ1は、アナログデジタル変換器を備えることができ、これにより、安全マイクロコントローラ1は、動作電圧等の内部アナログ値及び外部アナログ値を監視できる。場合によっては、例えば、アクチュエータを駆動できるように、安全マイクロコントローラ1にドライバステージを設けることができる。このアクチュエータは、モータ及び/又は他の抵抗負荷及び/又は誘導負荷及び/又は容量負荷等とすることができる。そのようなドライバステージとしては、例えば、ハーフブリッジ及び/又はHブリッジ等が挙げられる。また、例えば、LEDのような照明用の電源とすることも考えられる。
【0059】
したがって、本発明(例えば、
図1参照)により、自動車内の装置を制御するための安全マイクロコントローラ1であって、半導体基板を備える安全マイクロコントローラ1が提案される。安全マイクロコントローラ1は、CMOS回路技術又はバイポーラ回路技術又はBiCMOS回路技術で作製されていることが好ましい。安全マイクロコントローラは、複数の記憶素子と、1又は複数の内部データバス2と、1又は複数の8/16/32/64ビットのマイクロコントローラコア16と、1又は複数のデータインターフェースと、1又は複数の量子プロセスに基づく生成器15とを備えていることが好ましい。この1又は複数の量子プロセスに基づく生成器15により、ここで提案される安全マイクロコントローラ1が、生成された乱数のフォン・ノイマンエントロピーが劣るが故に「ランダム性の低い」いわゆる真性乱数生成器に基づく背景技術と差別化される。
【0060】
内部データバス2は、複数のデータバスを有することができる。安全マイクロコントローラ1の記憶素子は、通常、内部データバス2に接続されている。データインターフェースも同様に、通常、内部データバス2に接続されている。1又は複数の量子プロセスに基づく生成器15も同様に、内部データバス2に接続されていることが好ましい。1又は複数のマイクロコントローラコア16も同様に、内部データバス2に接続されていることが好ましい。1又は複数の量子プロセスに基づく生成器15は、典型的には、マイクロコントローラコア16の要求に応じて、1又は複数の乱数を生成することが好ましい。この乱数は、背景技術の真性乱数生成器の乱数に対し、特に良好なエントロピーに優れている。好ましくは、マイクロコントローラコア16の1又は複数が、その記憶素子の1又は複数からのプログラムと、生成された乱数の1又は複数とを用いて、1又は複数のキーを生成する。典型的には、1又は複数のマイクロコントローラコア16が、その記憶素子の1又は複数に由来するそれぞれのプログラムを用いて、これらのマイクロコントローラコア16が、通常、1又は複数のデータインターフェースを介して安全マイクロコントローラの外部の装置とやり取りするデータを、複数のキーのうち各々のキーにより暗号化及び/又は復号化する。典型的には、半導体基板が、安全マイクロコントローラ1の実質的に全てのサブ装置を一体に有する。
【0061】
安全マイクロコントローラ1(
図1参照)の第1の発展形態において、安全マイクロコントローラ1の記憶素子が、1又は複数の読み書きメモリRAM3、1又は複数の書き込み可能な不揮発性メモリ4(具体的には、EEPROMメモリ4、フラッシュメモリ4及び/又はOTPメモリ4)、1又は複数の純粋な読み取り専用メモリ及び/又は1又は複数の不揮発性メーカーメモリを有する。1又は複数のメーカーメモリは、例えば、1又は複数のメーカーROM6、1又は複数のメーカーEEPROM及び/又は1又は複数のメーカーフラッシュメモリを有することができる。
【0062】
第2の発展形態において、安全マイクロコントローラを安全に起動するために、メーカーメモリ、具体的にはメーカーROM6が、ブートソフトウェアを有する。
【0063】
第3の発展形態(
図1参照)において、安全マイクロコントローラ1は、メーカーメモリ6と内部バス2との間に、認証なくメーカーメモリにアクセスすることを防止するメーカーメモリファイアウォール8を備えている。
【0064】
第4の発展形態(
図1参照)において、安全マイクロコントローラ1は、基本クロック生成器21(CLK)、クロック生成回路12、リセット回路22、異なる動作電圧を与える電圧調節器付の電流供給又はVcc回路23、接地回路24、入出力回路25、及び1又は複数の処理モジュールのうち、1又は複数の構成要素を備える。ここで、処理モジュールは、内部データバス2、さらには、典型的にはマイクロコントローラコア16と通信する。処理モジュールは、CRCモジュール(Cyclic Redundancy Check)11、クロック生成モジュール12、暗号アクセラレータ、具体的にはDES加速器及び/又はAES加速器7、1又は複数のタイマーモジュール13、1又は複数の安全監視制御回路14、1又は複数のデータインターフェース、具体的には1又は複数のUniversal Asynchronous Receiver Transmitter(UART)17のうち、1又は複数の構成要素を有することが好ましい(
図1参照)。
【0065】
安全マイクロコントローラ1の第4の発展形態(
図4及び
図5参照)において、安全マイクロコントローラ1は、少なくとも1つの第1のSPADダイオード44及び少なくとも1つの第2のSPADダイオード45と、少なくとも1つの光ファイバ50と、少なくとも1つの処理回路と、少なくとも1つの動作回路とを備える。SPADダイオード(例えば、SPADダイオード44又は45)の回路技術的な集積について、
図3に再掲する。
図4に係る第4の発展形態において、量子プロセスに基づく生成器15(
図1参照)は、少なくとも、光量子信号源として第1のSPADダイオード44と、光量子信号用の光検出器として第2のSPADダイオード45とを有する。また、この第4の発展形態において、量子プロセスに基づく生成器15は、少なくとも、処理回路と、光ファイバ50とを有する。この第4の発展形態において、少なくとも1つの光ファイバ50は、少なくとも1つの第1のSPADダイオード44を、少なくとも1つの第2のSPADダイオード45に光学的に連結する。動作回路は、第1のSPADダイオード44が光子を放出するように、第1のSPADダイオード44に電気エネルギーを供給する。光子の放出は、第1のSPADダイオード44のバイアス電圧が十分になったとき行われる。この第4の発展形態において、処理回路は、第2のSPADダイオード45の(出力)信号を検出し、そこから乱数を生成する。
【0066】
図4の実施の形態において、光ファイバ50が、半導体基板の表面46に設けられた1層の電気絶縁層により構成されるのに対し、
図5では、例えば、2層の光学的に透明な電気絶縁性の絶縁層34’,34”が光ファイバ50を構成する実施の形態を示す。
【0067】
そして、処理回路は、このようにして生成された乱数を、内部データバス2を介して、1又は複数のマイクロコントローラコア16の1又は複数に供給することが好ましい(
図1)。この処理回路の態様については、
図6から
図9と関連して後述する。
【0068】
本発明の第6の発展形態(
図4及び
図5参照)において、半導体基板は、表面46を有する。通常、半導体基板は、その表面46の下方に、半導体材料を有する。特に、CMOSプロセスやバイポーラプロセス、BiCMOSプロセスのような従来の半導体回路の製造プロセスを使用する場合は、半導体基板の表面46上には、通例、構造化された金属層からなる金属化積層と、これらを電気的に絶縁する絶縁層とが設けられており、これらの絶縁層34の少なくとも1層が、少なくとも部分的又は区分的に、光ファイバ50を構成する。ここで、構造化された金属層は、通常、絶縁層により互いに電気的に分離されている伝導路を構成する。したがって、金属化積層は、例えば酸化シリコンからなる典型的には構造化され光学的に透明な電気絶縁性の絶縁層34を有し、この絶縁層34は、半導体基板の表面46上に設けられている。半導体基板の表面46上のこの絶縁層34の少なくとも一部(すなわち、水平及び/又は垂直方向の延伸における絶縁層の一部)が、光ファイバ50を構成することが好ましい。この絶縁層34の上方に設けられている金属化積層の一部を、
図4及び
図5に模式的に示す。第1のSPADダイオード44は、通常、半導体基板の半導体材料から、上記光ファイバ50に光47を発する。すなわち、背景技術とは対照的に、通常、第1のSPADダイオード44は、減衰の大きい半導体基板に対して横方向ではなく、表面46に垂直に上方に放射する。これにより、装置が、第1のSPADダイオード44の光子をより多く、第2のSPADダイオード45に直接結合させることができる。光ファイバ50は、この第1のSPADダイオード44の光子48を、背景技術と比較してほぼ損失を生じることなく、光ファイバ50中を、第2のSPADダイオード45まで搬送する。このとき、金属化積層43の最下面が、光(光子)を反射する。光ファイバ50の内部からの光49が、表面46から半導体基板の半導体材料に再入射し、そこで第2のSPADダイオード44の装置部分に達するように、光ファイバ50は、第1のSPADダイオード44の光子48を、第2のSPADダイオード45に照射する。そして、第2のSPADダイオード45が、(光49の)光子48の照射に応じて出力信号を生成し、この出力信号から、後述する量子プロセスに基づく乱数が生成される。
【0069】
典型的には、少なくとも1つの動作回路が、少なくとも1つの第1のSPADダイオード44に、少なくとも一時的に電気エネルギーを供給する。そして、少なくとも1つの第1のSPADダイオード44は、十分な電気エネルギーを供給されると、少なくとも1つの光ファイバ50に光子47を与える。そして、光ファイバ50は、さらにこの光子48を搬送する。その後、少なくとも1つの光ファイバ50は、光子48を光子49として、第2のSPADダイオード45に略「上方から」照射する。この第1のSPADダイオード44から第2のSPADダイオード45への光子の搬送は、光ファイバ50における減衰が小さいことに起因して、吸収性の高い半導体基板を用いた背景技術の構成よりも、失われる光子が非常に少ないため、量子効率が非常に高い。したがって、ここに示す構成においては、1つの第1のSPADダイオード44と1つの第2のSPADダイオード45とからなる対があれば十分である(もちろん、本発明によれば、複数対のSPADダイオードを用いることもできる)。背景技術では、送信側と受信側の両方で、常に複数のSPADダイオードが使用されている。
【0070】
図5に、2層以上の誘電体層、すなわち光学的に透明な絶縁層34’,34”が、少なくとも一部の領域において直接接しており、この領域において金属化層により分離されておらず、光ファイバ50’を構成している様子を示す。本実施の形態において、SPADダイオード44及び45のコンタクト51及び52が、対になって光ファイバ50’の中央領域の両側に配置されるように位置しているため、光ファイバは、平面53上で互いに接する絶縁層34’,34”の上記部分において、48で示すように、SPADダイオード44の光子47を、必ずしも2層の絶縁層34’,34”の上層のみではなく両層を介して、49でSPADダイオード45に達するまで搬送する。このとき、コンタクト51,52は、反射材としても機能し、光子をSPADダイオード45に「導入する」ことが有益である。これに関し、SPADダイオード44のコンタクト51,52も、反射材として機能し、SPADダイオード44から発生する光子47を、SPADダイオード45の方向に「転換する」。
【0071】
本発明に係る安全マイクロコントローラ1の別の発展形態において、1又は複数のデータインターフェースのうち、少なくとも1つのデータインターフェースが、有線の自動車用データバスインターフェースである。この場合、有線の自動車用データバスインターフェースは、例えば、CANデータバスインターフェース、CAN-FDデータバスインターフェース、FlexRayデータバスインターフェース、PSI5データバスインターフェース、DSI3データバスインターフェース、LINデータバスインターフェース、イーサネットデータバスインターフェース、LINデータバスインターフェース又はMELIBUSデータバスインターフェースとすることができる。
【0072】
本発明に係る安全マイクロコントローラ1の別の発展形態において、少なくとも1つのデータインターフェースが、無線のデータバスインターフェースである。無線のデータバスインターフェースは、例えば、WLANインターフェース又はBluetoothインターフェースとすることができる。
【0073】
本発明に係る安全マイクロコントローラ1の別の発展形態において、少なくとも1つのデータインターフェースが、有線のデータバスインターフェースである。無線のデータバスインターフェースは、例えば、KNXデータバスインターフェース、EIBデータバスインターフェース、DALI(登録商標)データバスインターフェース又はPROFIBUSデータバスインターフェースとすることができる。
【0074】
図6は、本発明の一実施の形態に係る量子に基づく乱数生成器QRNG400の簡略ブロック図を模式的に示している。
図6に例示する装置のデジタル回路は、好ましくは共通クロックによりクロックされることが好ましい。この構成は、量子プロセスに基づくエントロピー源401と、好ましくはブロードバンドの高周波増幅器402と、例えば14ビットの解像度及び例えば125MS/sのサンプリングレートを有するアナログデジタル変換器403と、フィールド・プログラマブル・ゲート・アレイ(FPGA)404とを含む。
【0075】
エントロピー源401は、単一光子アバランシェダイオード(SPAD)401.1及び401.3からなる2Dアレイを有する。これらのSPADダイオードは、降伏電圧を超える供給電圧により、ガイガーモードで動作する。また、各SPADダイオードに、クエンチング抵抗401.4が直列接続されている。クエンチング抵抗401.4は、電荷アバランシェが生じた際のダイオードの熱破壊を防止する。SPADダイオードの電流信号は、シャント抵抗を介して測定されるが、このシャント抵抗は、上記クエンチング抵抗又は追加で設けられた抵抗とすることができる。SPADダイオードからなるアレイは、
図6の例において、例えば4個の(アクティブ又は送信)SPADダイオード401.1と、12個の(パッシブ又は受信)SPADダイオード401.3とから構成されており、SPADダイオード401.3は、
図4及び
図5を用いて光ファイバ50について先に説明したとおり、光ファイバ401.2を介してSPADダイオード401.1に連結されている。アクティブSPADダイオード401.1は発光する。SPADダイオード401.1は、
図4及び
図5の第1のSPADダイオード44に相当する。アクティブSPAD401.1は、SPADダイオードのアレイ内に設けられていることが好ましい。提案される装置は、アクティブSPADダイオード401.1に高い供給電圧を供給することで、降伏電圧を大きく上回った状態で、アクティブSPADダイオード401.1を動作させる。これにより、暗計数率が上昇し、自然放出される光子47の数が増加する。光ファイバ401.2により、これらの光子の一部が、光子48としてパッシブSPADダイオード401.3に運ばれる。光ファイバ401.2は、例えば、
図4及び
図5の光ファイバ50に相当する。各パッシブSPADダイオード401.3は、例えば、
図4及び
図5の第2のSPADダイオード45に相当する。提案される装置は、パッシブSPADダイオード401.3に高い供給電圧を供給し、降伏電圧をわずかに上回る状態で、パッシブSPADダイオード401.3を動作させる。パッシブSPADダイオード401.3は、アクティブSPADダイオード401.2の周りにリング状に配置されていることが好ましい。パッシブSPADダイオード401.3は、光ファイバ401.2を介して届く光子を検出する。パッシブSPADダイオード401.3は、届いた光子に応じて、例えばシャント抵抗を通る電流の流れを生じさせることで、電圧信号を生成する。
【0076】
エントロピー源401の電圧信号405は、例えば40dBのブロードバンドの高周波増幅器402に与えられることが好ましい。高周波増幅器402は、30から4000MHzの帯域幅を有することが好ましく、20dBmの1dB圧縮点を有することが好ましい。エントロピー源401の電圧信号405の電圧振幅は、通常、サブミリボルトの範囲で変化する。高周波増幅器402は、エントロピー源401の電圧信号405の電圧振幅を、例えば50から150mVに増幅する。
【0077】
高周波増幅器402の増幅器出力信号406は、ADC403でアナログからデジタルに変換後、例えばFPGA404に伝えられる。当然のことながら、その他の離散的な手法やASICに基づいた手法も可能である。これに関し、FPGAは、本実施の形態において提示される技術教義を実現する多くの異なる手法の1つにすぎない。FPGA404は、マイクロコントローラを有することが好ましい。FPGA404としては、例えば、ザイリンクス社のDual-Core Arm Cortex-A9 MPCore搭載のZynq7010が挙げられる。これは、本実施の形態のSPAD評価回路の一部であり、SPAD評価回路は、
図4及び
図5の例において、例えば125メガサンプル/秒のサンプリングレート及び例えば50MHzの帯域幅を有する例えば14ビットのADC403をさらに有する。増幅された電圧信号は、増幅器出力信号406として、高周波増幅器402の入力に供給される。ADC403は、高周波増幅器402の増幅器出力信号406をサンプリングする。ADC403は、例えば、高周波増幅器402の増幅器出力信号406の算出サンプル値を、例えばビット幅14ビットのデジタル値で、計測基板の内蔵FPGA404に伝える。
【0078】
ブロック回路図として簡略化して
図6に示す装置は、コンパレータ404.2と、時間デジタル変換器(TDC=time to digital converter)404.3と、エントロピー抽出装置404.4と、有限オートマトン404.8とを含む。
【0079】
コンパレータ404.2は、例えば、ADC403のデジタルの14ビット値407を、閾値である基準値404.1と比較し、ADC403の出力の値が基準値404.1より大きい場合に、コンパレータ404.2の出力信号409として、長さ2クロックの1ビット出力パルスが得られる。コンパレータ404.2の出力信号409は、時間デジタル変換器404.3に供給される。時間デジタル変換器404.3は、例えば、SPAD評価回路に合わせて増加する32ビットのカウンタを有することが好ましい。カウンタのビット幅は、用途に応じて異ならせればよい。このクロックは、例えば、125MHzの周波数を有することができる。コンパレータ404.2の1ビット出力信号は、このカウンタの測定値をリセットすることが好ましい。時間デジタル変換器404.3は、このときの測定値、すなわちリセット直前の測定値を、その出力410に伝える。カウント結果は、例えば125MHzのクロックにおいて、1/125MHz=8ナノ秒の解像度を有する。時間デジタル変換器(TDC)404.3の出力410は、時間デジタル変換器404.3の例えば32ビットのカウント結果(生データRDともいう)を、エントロピー抽出装置404.4に伝える。エントロピー抽出装置404.4は、時間デジタル変換器(TDC)404.3の出力410の信号の生データRDであって、その構成及び順序についてランダムなTDC404.3の生データRDを、エントロピー抽出装置404.4の出力において、1ビット乱数RN411に変換する。エントロピー抽出装置404.4の出力411は、有限オートマトン(FSM)404.8の入力に接続されている。
【0080】
FSM404.8は、エントロピー抽出装置404.4からのデータを受信し、そこからQRNG乱数を生成する役割があり、FSM404.8は、このQRNG乱数をFPGA404のメモリRAM404.9に格納する。書き込み動作が成功すると、FSM404.8は、フィニッシュフラグ404.10を立てる。フィニッシュフラグ404.10は、システム起動時には立てられない。マイクロコントローラ404.11は、例えばDual-Core Arm Cortex-A9 MPCoreであり、RAM404.9のブロックにアクセスし、RAM404.9から乱数を読み出す。よって、マイクロコントローラ404.11は、例えば、本発明に係るマイクロコントローラコアである。
【0081】
図7は、エントロピー抽出装置404.4の出力411において、乱数RNに使用される信号を監視する機能と、QRNGに基づく乱数の生成中に、潜在的なエラーが発生した場合のための追加のバックアップシステムとを有する拡張FPGA設計の例を示している。
【0082】
図7に係る装置は、追加のウォッチドッグ404.5、PRN生成器の一例である線形帰還シフトレジスタ404.6、信号マルチプレクサ404.7及び電圧モータ413に関して拡張されている。マイクロコントローラ404.11は、これらの構成要素とともに、外部に設けることもできる。
【0083】
ここで、エントロピー抽出装置404.4の出力411は、ウォッチドッグ404.5及び信号マルチプレクサ404.7に接続されている。ウォッチドッグ404.5は、エントロピー抽出装置404.4の出力411における1ビット乱数RNの有効性について監視する。ウォッチドッグ404.5は、少なくとも3つの規定のエラーケースを検出する。そのため、ウォッチドッグ404.5は、例えば、最後の有効乱数をシードS出力信号412として、線形帰還シフトレジスタ404.6に与える。エラーが発生すると、ウォッチドッグは、マイクロコントローラ404.11のエラーレジスタER(図示せず)にエラービットを設定する。ウォッチドッグ404.5が、いずれのエラービットをマイクロコントローラ404.11のエラーレジスタに設定するかは、エラーケースの種類に従うことが好ましい。また、ウォッチドッグ404.5は、好ましくはデジタルの1又は複数の入出力信号線414を介して、電圧モニタ413に接続されている。
【0084】
電圧モニタ413は、例えば、エントロピー源401の動作電圧を監視する。SPADダイオード401.1及び401.3の回路の1つの動作電圧が低すぎるために、下側のSPAD動作電圧閾値を下回ると、又は高すぎるために、上側のSPAD動作電圧閾値を上回ると、電圧モニタ413が、この電圧のずれを検知する。そのような電圧のずれが生じた場合、電圧モニタ413は、これをウォッチドッグ404.5に伝達する、又は直接マイクロコントローラ404.11に伝達する。ウォッチドッグ404.5に伝達する場合、ウォッチドッグ404.5は、例えば、マイクロコントローラ404.11用の割り込み信号を生成することができる。例えば、エントロピー源401、高周波増幅器402又は量子乱数生成器QRNG400の別の装置部分の供給電圧に、エラーが含まれる場合に、ウォッチドッグ404.5は、マイクロコントローラ404.11又は応用システムの別のサブ装置に、そのような割り込みを発生させることができる。
【0085】
ウォッチドッグ404.5がエラーを検出すると、量子乱数生成器400が、フェイルセーフ状態に切り替わる。このため、ウォッチドッグ404.5が、信号マルチプレクサ404.7の選択信号416を設定することで、エントロピー抽出装置404.4の出力411に代わって、信号マルチプレクサ404.7が、線形帰還シフトレジスタ404.6により生成された疑似乱数PRNを、疑似乱数ビットのストリームの形で、エントロピー抽出装置404.4の出力411における潜在的にエラーを含む1ビット乱数RNの代替として、疑似乱数信号線417を介してFSM404.8の入力に与える。
【0086】
線形帰還シフトレジスタ404.6は、ウォッチドッグ404.5の出力412に接続されており、ウォッチドッグ404.5からシードS出力信号412を得る。ウォッチドッグ404.5は、エラーケースにおいて、線形帰還シフトレジスタ404.6(接続418を参照)を作動させる。そして、線形帰還シフトレジスタ404.6は、疑似乱数PRNを生成する。ウォッチドッグ出力信号412のシードSは、直前の(例えば、それぞれ1ビットの)例えば16個の有効乱数を含むことが好ましい。ウォッチドッグ404.5は、これらの直前の有効乱数を、線形帰還シフトレジスタ404.6の入力に与えることが好ましい。これにより、疑似乱数信号線417用の疑似乱数PRNを生成するため、シードSは、線形帰還シフトレジスタ404.6の帰還の生成多項式用のランダムかつ安全なPQC開始値として機能する。このとき、生成多項式及び生成多項式の次数は、自由に選択できることが好ましい。
【0087】
エントロピー抽出装置404.4の1ビット乱数RNを有するエントロピー抽出装置404.4の出力411の信号と、線形帰還シフトレジスタ404.6の疑似乱数PRNを有する疑似乱数信号線417の信号とは、それぞれ、信号マルチプレクサ404.7の入力に接続されている。信号マルチプレクサ404.7は、選択信号416の値SELに応じて、その2つの入力信号の一方をFSM404.8に転送する。用途によっては、2個以上の入力を有し、より複雑な制御信号を用いたマルチプレクサを使用することが考えられる。したがって、信号マルチプレクサ404.7の入力の数は、通常、2個以上である。
【0088】
また、FSM404.8は、信号マルチプレクサ404.7の出力からランダムデータRN又は疑似乱数PRNを受信し、FPGA404のメモリRAM404.9に書き込む役割をもつ。書き込み動作が成功すると、FSM404.8は、再びフィニッシュフラグ404.10を立てる。その後、マイクロコントローラ404.11が、メモリ404.9RAMにアクセスして、乱数を読み出し、例えば、暗号化、認証、署名等のために利用することができる。
【0089】
図8は、例えば、
図6及び
図7のQRNG400のエントロピー抽出装置404.4により実行されるエントロピー抽出方法のフロー
図500を示す。この方法では、まず第1の工程501において、時間デジタル変換器404.3の出力410の2つの値を求め、エントロピー抽出装置404.4のシフトレジスタに格納する。2つの値が、エントロピー抽出装置404.4のシフトレジスタに格納されると、第2の工程502において、エントロピー抽出装置404.4が、この2つの値を比較する。よって、エントロピー抽出装置404.4のシフトレジスタ内の2つの値は、基準値404.1を超える2つの信号パルス間のそれぞれの時間について2つの異なる測定結果を用いて、ともに時間デジタル変換器404により求められた第1の値及び第2の値を有する。第3の工程503において、エントロピー抽出装置404.4は、上記2つの値を判定する。第1の値が第2の値より小さく、値1と値2との差が最小差εより大きい場合、エントロピー抽出装置404.4は、その出力411の値を第1の論理値に設定する。第1の値が第2の値より大きく、第1の値と第2の値との差が最小差εより大きい場合、エントロピー抽出装置404.4は、その出力を、第1の論理値とは異なる第2の論理値に設定する。
【0090】
第1の値と第2の値との差が最小差εより小さい場合、エントロピー抽出では、第1の値及び第2の値を破棄する。そのような場合、このエントロピー抽出方法では、(
図7の装置における)ウォッチドッグに、エラーカウンタを第1のエラーカウンタインクリメントだけ増加させることが好ましい。第1のエラーカウンタインクリメントは、負とすることができる。逆に、第1の値と第2の値との差が最小差εより大きい場合、エントロピー抽出装置404.4は、ウォッチドッグのエラーカウンタを、第2のエラーカウンタインクリメントだけ減少させることができる。第2のエラーカウンタインクリメントは、第1のエラーカウンタインクリメントと等しくすることができる。典型的には、第1のエラーカウンタインクリメント及び第2のエラーカウンタインクリメントの符号は同じである。マイクロコントローラ404.11は、エラーカウンタインクリメント、エラーカウンタの開始値及びエラーカウンタ閾値を設定できることが好ましい。エラーカウンタのカウント値がエラーカウンタ閾値を超えると、ウォッチドッグ404.5は、好ましくは割り込み又は別の信号伝達により、重大なエラー状態の存在を、マイクロコントローラに伝達する。その後、マイクロコントローラ404.11は、通常、セルフテストプログラムを起動し、
図7に係る量子乱数生成器400の様々な部分を検査する。そのため、マイクロコントローラは、例えば、アナログデジタル変換器403を、マイクロコントローラ404.11がアナログデジタル変換器の出力レジスタに検査値を書き込める状態にでき、続くシグナルチェーンが、この検査値を真のサンプル値のように処理することが好ましい。検査値が既知であるため、残りのシステムの正常な反応、例えば、ウォッチドッグ404.5におけるエラーカウンタのインクリメントを、マイクロコントローラ404.11により監視し、判定することができる。したがって、マイクロコントローラ404.11は、FPGA404の可能な限り全てのメモリノードを監視し、その論理状態を読み取れることが好ましい。
【0091】
ある値が最小値より小さいとき、それは、SPADダイオードのデッドタイム内にある値ということになる。そのような値は破棄し、エラーカウンタを第1のエラーインクリメントだけ増加させることが好ましい。その場合、エントロピー抽出装置404.4は、時間デジタル変換器404.3により次の値が算出されるまで待機する。
【0092】
ランダムビットがこのように抽出されると、方法が最初から開始される。
【0093】
エラーカウンタがエラーカウンタ閾値を超える、又はエラーカウンタ閾値に達した場合、例えば、時間デジタル変換器が定数を供給しているというエラーが生じている可能性がある。
【0094】
そのため、この装置は、エントロピー源又は装置の他の部分の電圧供給の不具合を検出できる。マイクロコントローラ404.11は、検査目的でもADC403を観察し、量子乱数生成器400における電圧及び電流を記録し、このようにして求められた値を、これらの値が収まるべき期待値範囲と比較することができる。また、マイクロコントローラ404.11は、量子乱数生成器400内のデジタル値を記録することもできる。例えば、マイクロコントローラ404.11は、検査のため、時間デジタル変換器404.3が実質的にその入力における信号ノイズにより制御されるほど低く、基準値404.1を設定できる。そして、時間デジタル変換器404.3の値は、公差帯における期待される統計値を満たすはずである。そうでない場合、エラーが存在する。
【0095】
ウォッチドッグ404.5は、供給される乱数のエントロピーを監視することができる。ビットの平均エントロピーが、エントロピー測定時間にわたって、例えば50%の許容エントロピー偏差値よりもずれている場合、ウォッチドッグは、エラーと判断し、エラーカウンタをインクリメントする。そして、プレーンテキストの送信を防ぐため、ウォッチドッグは、エントロピー抽出装置404.4の出力411でのランダムビットの使用を停止させることが好ましい。「プレーンテキスト」とは、情報の暗号化が不十分であるために、第三者が統計的手法により又は直接理解できる情報を指す。つまり、作動中のサブ装置においても、論理的「永遠の1」又は論理的「永遠の0」が偶然生成されることが考えられる。そのため、エントロピー抽出装置の出力におけるビット列の最大長さを、マイクロコントローラ404.11によりプログラム可能な値に限定すると有用である。
【0096】
このようにして、実質的には、上述の量子乱数生成器400は、以下のエラーを検出し、線形帰還シフトレジスタ404.6又は別のPRN生成器を用いたフェイルセーフにより、より低い安全レベルで捕らえることができる。
・供給電圧の異常
・SPADダイオード401.1及び401.3の誤信号の生成
・光ファイバ401.2の異常、及び/又はSPADダイオード401.1及び401.3の光ファイバ401.2への連結の異常
・FPGA404、すなわち量子乱数生成器400のデジタル部品における回路故障
・例えば、David Johnston,“Random Number Generators-Principles and Practices”,第8章及び第9章,2018年,Walter De Gruyter GmbH,ベルリン/ボストン,ISBN 978-1-5015-1530-2に記載されているような、1ビット乱数RNの試験により生じ得る供給乱数の誤ったエントロピー
【0097】
線形帰還シフトレジスタ404.6に代えて、第2の完全な量子乱数生成器400を採用し、そのエントロピー抽出装置404.4の出力における信号を、疑似乱数信号線417の信号の代わりに、フェイルセーフに使用することが考えられる。
【0098】
図9は、エントロピー源401の出力における電圧信号405のオシログラムの一例を示す。図から読み取れるように、第1の高さクラス601を有する第1のスパイクと、第2の高さクラス602を有する第2のスパイクとが発生する。第1のスパイクの第1の高さクラス601の分散及び第2のスパイクの第2の高さクラスの分散は、それぞれ小さいため、2つの高さクラス601,602を、切断レベル603により明確に分離することが可能である。切断レベル603は、マイクロコントローラ404.11が基準値404.1として設定する値に相当する。第2のSPADダイオード又は複数の第2のSPADダイオードの1つの自然光子放出と誘導光子放出とが同時に起こること起因するスパイク(第2のスパイク)及び第2のSPADダイオード又は複数の第2のSPADダイオードの1つの自然光子放出のみに起因するスパイク(第1のスパイク)の発生については、上述の検査の説明を参照されたい。
【0099】
図10は、提案される量子乱数生成方法3700の模式図である。方法3700は、1又は複数の第1のSPADダイオード(401.1,44)を用いて、ランダムな単一光子電流(47,48,49,401.2)を生成する工程3710から始まる。方法3700は、半導体基板(49,48)とは異なる光ファイバ(44,401.2)を用いて、ランダムな単一光子電流(47,48,49,401.2)を、1又は複数の第2のSPADダイオード(401.3,45)に送る工程3720に続く。次に、ランダムな単一光子電流(47,48,49,401.2)を、好ましくは第1のSPADダイオード401.1、光ファイバ401.2及び第2のSPADダイオード401.3を有するエントロピー源401の電圧信号405の形で、検出信号に変換する工程3730が行われる。そして、検出信号を、調整済み検出信号、具体的には、アナログデジタル変換器403の14ビットのデジタル値407に調整する、具体的には、増幅、フィルタリング及び/又はアナログデジタル変換する工程3740が行われる。その後、特にコンパレータ(
図6及び
図7の404.2を参照)において、調整済み検出信号を閾値と比較し、特にコンパレータ404.2の対応する出力信号409を生成することにより、第1のSPADダイオード401.1及び第2のSPADダイオード401.3の放出の結合により発生する調整済み検出信号パルスを、自然放出のみにより発生する調整済み検出信号パルスから分離する工程3750が行われる。そして、特に時間デジタル変換器404.3の出力410の第1の値と、時間デジタル変換器404.3の出力410の第2の値とを算出するため、第1のSPADダイオード401.1の自然光子放出が、この光子放出に誘導される第2のSPADダイオード401.3の光子放出と結合することにより発生する連続する2つの光子からなる第1のペアの第1のパルスと第2のパルスとの間の第1の時間間隔を算出し、第1のSPADダイオード401.1及び第2のSPADダイオード401.3の同種の放出の結合により発生する連続する2つの調整済み検出信号のパルスからなる第2のペアの第3のパルスと第4のパルスとの間の第2の時間間隔を算出する工程3760が続く。その後、これに基づいて、第1の時間間隔の値と第2の時間間隔の値とを比較することより、ランダムビットのビット値を算出する工程3670が行われる。最後の工程3680では、算出されたランダムビットの数nが、所望の量子乱数のランダムビットの数mより小さいかどうかが検証される。そうではない場合、上述の工程が繰り返される。それ以外の場合は、量子乱数の生成プロセスが完了する。
【0100】
<利点>
ここに示す安全マイクロコントローラは、その少なくとも1つの乱数生成器のエントロピーが改善されている。これにより、マイクロコントローラを用いて得られる暗号化は、背景技術と比較して効率が向上し、さらに耐量子性も有する。しかしながら、本発明の利点はこれに限定されない。
【0101】
上述の説明は、完璧を求めるものではなく、示した例に限定されない。本明細書に記載の例を様々に変更することは、その分野における通常の知識を有する者であれば、図面、明細書及び請求項を用いて理解し、実施することができる。単数の不定冠詞「ein」又は「eine」並びにその語尾変化は、複数を除外せず、特定の数の要素の記載は、より多い又はより少ない要素が存在する可能性を除外しない。単一のユニットが、本明細書に記載の複数の要素の機能を満たすこともあり、逆に、複数の要素が、1つのユニットの機能を満たすこともある。本願の適用範囲を逸脱することなく、多くの代替物、均等物、変形及び組み合わせが可能である。
【0102】
特に記載がない限り、本発明の全ての特徴は、自由に組み合わせることができる。これは、本願の全体に通じることである。図面に記載の特徴についても、特に記載がない限り、本発明の特徴として、他の特徴と自由に組み合わせることができる。その際、実施の形態の個々の特徴を、実施の形態の他の特徴との組み合わせに限定することは、明示的に意図されない。また、装置の物質的特徴を方法的特徴として読み替えて使用することもでき、方法的特徴を装置の物質的特徴として読み替えることもできる。したがって、そのような読み替えは、自動的に開示されているものとする。
【0103】
上述の詳細な説明において、添付の図面が参照される。明細書及び図面における例は、一例にすぎず、記載された特定の例又は要素に限定されるものではない。一部の要素の変更、組み合わせ又は変形により、上述の明細書、図面及び/又は請求項から、様々な例を導き出すことができる。さらに、当業者であれば、明細書及び/又は図面から、文言上記載されていない例又は要素を導き出すことができる。
【0104】
上記では、自動車用のマイクロコントローラを用いて、本発明を説明した。しかしながら、本開示に基づき、その用途が、優先権を生じさせる特許出願においても、本国際出願においても限定されないことは、当業者にとって自明である。むしろ、本発明に係るマイクロコントローラは、データのPQC安全暗号化及び/又はPQR署名並びに安全性に関するデータの編集加工に関わる全ての装置に採用できる。PQR暗号化は、好ましくは、以下のいずれかの方法により実現できる。
【0105】
BIKE1-L1-CPA、BIKE1-L3-CPA、BIKE1-L1-FO、BIKE1-L3-FO、Kyber512、Kyber768、Kyber1024、Kyber512-90s、Kyber768-90s、Kyber1024-90s、LEDAcryptKEM-LT12、LEDAcrypt-KEM-LT32、LEDAcryptKEM-LT52、NewHope-512-CCA、NewHope-1024-CCA、NTRU-HPS-2048-509、NTRU-HPS-2048-677、NTRU-HPS-4096-821、NTRU-HRSS-701、LightSaber-KEM、Saber-KEM、FireSaber-KEM、BabyBear、BabyBearEphem、MamaBear、MamaBearEphem、PapaBear、PapaBearEphem、FrodoKEM-640-AES、FrodoKEM-640-SHAKE、FrodoKEM-976-AES、FrodoKEM-976-SHAKE、FrodoKEM-1344-AES、FrodoKEM-1344-SHAKE、SIDH-p434、SIDH-p503、SIDH-p610、SIDH-p751、SIDH-p434-compressed、SIDH-p503-compressed、SIDH-p610-compressed、SIDH-p751-compressed、SIKE-p434、SIKE-p503、SIKE-p610’、SIKE-p751、SIKE-p434-compressed、SIKE-p503-compressed、SIKE-p610-compressed、SIKE-p751-compressed。
【0106】
PQR署名は、好ましくは、以下のいずれかの方法により実現できる。
【0107】
DILITHIUM_2、DILITHIUM_3、DILITHIUM_4、MQDSS-31-48、MQDSS-31-64、SPHINCS+-Haraka-128f-robust、SPHINCS+-Haraka-128f-simple、SPHINCS+-Haraka-128s-robust、SPHINCS+-Haraka-128s-simple、SPHINCS+-Haraka-192f-robust、SPHINCS+-Haraka-192f-simple、SPHINCS+-Haraka-192s-robust、SPHINCS+-Haraka-192s-simple、SPHINCS+-Haraka-256f-robust、SPHINCS+-Haraka-256f-simple、SPHINCS+-Haraka-256s-robust、SPHINCS+-Haraka-256s-simple、SPHINCS+-SHA256-128f-robust、SPHINCS+-SHA256-128f-simple、SPHINCS+-SHA256-128s-robust、SPHINCS+-SHA256-128s-simple、SPHINCS+-SHA256-192f-robust、SPHINCS+-SHA256-192f-simple、SPHINCS+-SHA256-192s-robust、SPHINCS+-SHA256-192s-simple、SPHINCS+-SHA256-256f-robust、SPHINCS+-SHA256-256f-simple、SPHINCS+-SHA256-256s-robust、SPHINCS+-SHA256-256s-simple、SPHINCS+-SHAKE256-128f-robust、SPHINCS+-SHAKE256-128f-simple、SPHINCS+-SHAKE256-128s-robust、SPHINCS+-SHAKE256-128s-simple、SPHINCS+-SHAKE256-192f-robust、SPHINCS+-SHAKE256-192f-simple、SPHINCS+-SHAKE256-192s-robust、SPHINCS+-SHAKE256-192s-simple、SPHINCS+-SHAKE256-256f-robust、SPHINCS+-SHAKE256-256f-simple、SPHINCS+-SHAKE256-256s-robust、SPHINCS+-SHAKE256-256s-simple、picnic_L1_FS、picnic_L1_UR、picnic_L3_FS、picnic_L3_UR、picnic_L5_FS、picnic_L5_UR、picnic2_L1_FS、picnic2_L3_FS、picnic2_L5_FS、qTesla-p-I、qTesla-p-III。
【0108】
例えば、本発明の概念は、バスマスター内又はアドレス指定される各装置内で、バスマスターにより、装置を自動的にアドレス指定する通信バスシステムにおいて、アドレスを生成するために用いることができる。よって、本発明は、PQC安全コードを生成するための暗号化技術以外にも用いることができる。PQCは、「ポスト量子暗号」を表しており、暗号化技術の副分野、詳細には耐量子コンピュータ暗号化技術の副分野を指し、現在使われている多くの非対称の暗号システムと異なり、量子コンピュータを使用してもほぼ復号化できない暗号プリミティブを扱う(ウィキペディアの定義を参照)。また、基本的に任意に設計されたシステムから送信された信号をより良く区別し、これらの信号同士を分離し、これらの信号を信号技術的に干渉し得る隣接システムから分離するために、異なるコードを使用することもできる。例えば、自動車分野における超音波測定装置を考案した場合、個々の受信信号を、その信号の起源、すなわちその信号を発信する発信元について、区別できるようにすることは有益となり得る。
【0109】
<発明の特徴>
以下の発明のリストに、本発明の特徴及びその発展形態を再度まとめる。技術教義の応用において、組み合わせにより事実の矛盾が生じない限り、特徴同士を組み合わせることができる。この点に関し、ここに示す従属関係及び参照番号は、特に好ましい実施形態を例示しているに過ぎない。
【0110】
1)自動車内の装置を制御するための安全マイクロコントローラ1であって、
半導体基板と、
複数の記憶素子と
少なくとも1つの内部バス2と、
少なくとも1つの8/16/32/64ビットのマイクロコントローラコア16と、
1又は複数のデータインターフェースと、
少なくとも1つの量子プロセスに基づく生成器15とを備え、
上記記憶素子が、上記内部バス2に接続されており、
上記データインターフェースが、上記内部バス2に接続されており、
上記量子プロセスに基づく生成器15が、上記内部バス2に接続されており、
上記マイクロコントローラコア16が、上記内部バス2に接続されており、
上記量子プロセスに基づく生成器15が、上記マイクロコントローラコア16の要求に応じて、乱数を生成し、
上記マイクロコントローラコア16が、上記記憶素子の1又は複数からのプログラムと、上記乱数とを用いて、キーを生成し、
上記マイクロコントローラコア16が、上記記憶素子の1又は複数からのプログラムと、上記キーとを用いて、上記データインターフェースを介して上記安全マイクロコントローラの外部装置とやり取りするデータを暗号化及び復号化し、
上記半導体基板が、上記安全マイクロコントローラ1の上記サブ装置を一体に有し、
上記安全マイクロコントローラ1の上記サブ装置が、上記記憶素子と、上記内部バス2と、上記少なくとも1つの8/16/32/64ビットのマイクロコントローラコア16と、上記データインターフェースと、上記量子プロセスに基づく生成器15とを含む安全マイクロコントローラ。
【0111】
2)上記記憶素子が、1又は複数の読み書きメモリRAM3、1又は複数の書き込み可能な不揮発性メモリ(具体的には、EEPROMメモリ4、フラッシュメモリ4及び/又はOTPメモリ4)、1又は複数の純粋な読み取り専用メモリ及び/又は1又は複数の不揮発性メーカーメモリ(具体的には、1又は複数のメーカーROM6、1又は複数のメーカーEEPROM及び/又は1又は複数のメーカーフラッシュメモリ)を有する項目1)に記載の安全マイクロコントローラ1。
【0112】
3)上記メーカーROM6が、ブートソフトウェアを有する項目2)に記載の安全マイクロコントローラ1。
【0113】
4)上記メーカーメモリ6と上記内部バス2との間に、メーカーメモリファイアウォール8を備える項目2)又は3)に記載の安全マイクロコントローラ1。
【0114】
5)基本クロック生成器21(CLK)、
クロック生成回路12、
リセット回路22、
動作電圧を与える電圧調節器付の電流供給又はVcc回路、
接地回路24、
入出力回路25及び/又は
1又は複数の処理モジュールのうち、1又は複数の構成要素を備え、
上記処理モジュールが、上記内部バス2と通信し、
上記処理モジュールが、
CRCモジュール(Cyclic Redundancy Check)11、
クロック生成モジュール12、
DES加速器及び/又はAES加速器7を有するモジュール、
1又は複数のタイマーモジュール13、
安全監視制御回路14、
データインターフェース、具体的にはUniversal Asynchronous Receiver Transmitter(UART)17のうち、1又は複数のモジュールを有する項目1)から4)の1又は複数に記載の安全マイクロコントローラ1。
【0115】
6)少なくとも1つの第1のSPADダイオード44と、
少なくとも1つの第2のSPADダイオード45と、
少なくとも1つの光ファイバ50と、
少なくとも1つの処理回路と、
少なくとも1つの動作回路とを備え、
上記量子プロセスに基づく生成器15が、光量子信号用の光源として、少なくとも上記第1のSPADダイオード44を有し、
上記量子プロセスに基づく生成器15が、光量子信号用の光検出器として、少なくとも上記第2のSPADダイオード45を有し、
上記量子プロセスに基づく生成器15が、少なくとも上記処理回路を有し、
上記量子プロセスに基づく生成器15が、少なくとも上記光ファイバを有し、
上記少なくとも1つの光ファイバ50が、上記少なくとも1つの第1のSPADダイオード44を、上記少なくとも1つの第2のSPADダイオード45に光学的に連結し、
上記動作回路が、上記第1のSPADダイオードが光44を発するように、上記第1のSPADダイオード44に電気エネルギーを供給し、
上記処理回路が、上記第2のSPADダイオード45の信号を検出し、そこから乱数を形成し、上記マイクロコントローラコア16に供給する項目1)から5)の1又は複数に記載の安全マイクロコントローラ1。
【0116】
7)上記半導体基板が、表面46を有し、
上記半導体基板が、上記表面46の下方に半導体材料を有し、
上記半導体基板の上記表面46が、金属化積層を有し、
上記金属化積層が、典型的には構造化され光学的に透明な電気絶縁層34を有し、
上記表面46の典型的には構造化され透明な上記電気絶縁層の少なくとも一部が、上記光ファイバ50を構成し、
上記第1のSPADダイオード44が、上記半導体基板の上記半導体材料から、上記光ファイバ50に放射し、
上記光ファイバ50の内部からの光が、上記表面から上記半導体基板の上記半導体材料に再入射し、そこで上記第2のSPADダイオード44の装置部分に達するように、上記光ファイバが、第2のSPADダイオード44を照射する項目6)に記載の安全マイクロコントローラ1。
【0117】
8)上記少なくとも1つの動作回路が、上記少なくとも1つの第1のSPADダイオード44に、少なくとも一時的に電気エネルギーを供給し、
上記少なくとも1つの第1のSPADダイオード44が、十分な電気エネルギーを供給されると、上記少なくとも1つの光ファイバ50に光子を与え、
上記少なくとも1つの光ファイバ50が、そのような光子を上記第2のSPADダイオード45に放出する項目6)及び/又は7)に記載の安全マイクロコントローラ1。
【0118】
9)上記1又は複数のデータインターフェースのうち、1つのデータインターフェースが、有線の自動車用データバスインターフェースであり、
上記有線の自動車用データバスインターフェースが、特に、
CANデータバスインターフェース、
CAN-FDデータバスインターフェース、
FlexRayデータバスインターフェース、
PSI5データバスインターフェース、
DSI3データバスインターフェース、
LINデータバスインターフェース、
イーサネットデータバスインターフェース、
LINデータバスインターフェース及び/又は
MELIBUSデータバスインターフェースを有する上記項目の1又は複数に記載の安全マイクロコントローラ1。
【0119】
10)上記1又は複数のデータインターフェースのうち、1つのデータインターフェースが、無線のデータバスインターフェースであり、
上記無線のデータバスインターフェースが、特に、
WLANインターフェース及び/又は
Bluetoothインターフェースを有する上記項目の1又は複数に記載の安全マイクロコントローラ1。
【0120】
11)上記1又は複数のデータインターフェースのうち、1つのデータインターフェースが、有線のデータバスインターフェースであり、
上記無線のデータバスインターフェースが、特に、
KNXデータバスインターフェース、
EIBデータバスインターフェース、
DALI(登録商標)データバスインターフェース及び/又は
PROFIBUSデータバスインターフェースである上記項目の1又は複数に記載の安全マイクロコントローラ1。
【0121】
12)装置であって、
上記装置が、第1のプロセッサ10-1及び不揮発性メモリ16を有する集積回路4を備え、
上記装置が、第1のメモリを備え、
上記不揮発性メモリが、少なくとも1つのセキュリティコードを格納し、
上記第1のメモリが、データを格納し、
上記第1のメモリの上記データが、第1のフォーマットで、暗号保護されており、
上記集積回路が、上記第1のメモリからのデータの転送中、上記第1のメモリから読み出されたデータを認証するように構成されており、
上記装置が、量子乱数生成器28を備え、
上記集積回路及び上記量子乱数生成器28が、半導体結晶内に作製されており、
上記半導体結晶が、表面46を有し、
上記半導体結晶が、上記表面46の下方に、半導体材料を有し、
上記半導体結晶の上記表面46が、金属化積層を有し、
上記金属化積層が、典型的には構造化され光学的に透明な電気絶縁層34を有し、
上記表面46の典型的には構造化され透明な上記電気絶縁層34の少なくとも一部が、上記光ファイバ50を構成し、
上記第1のSPADダイオード44が、上記半導体基板の上記半導体材料から、上記光ファイバ50に光子47を放出し、
上記少なくとも1つの光ファイバ50が、そのような光子48を上記第2のSPADダイオード45に搬送し、
上記光ファイバ50の内部からの上記光49が、上記表面46から上記半導体基板の上記半導体材料に再入射し、そこで上記第2のSPADダイオード45の装置部分に達するように、上記光ファイバ50が、上記第2のSPADダイオード45を照射し、
上記第1のSPADダイオード44、上記第2のSPADダイオード45及び上記光ファイバ50が、上記量子乱数生成器28の一部である装置。
【0122】
13)上記装置が、少なくとも1つの動作回路を備え、
上記少なくとも1つの動作回路が、上記少なくとも1つの第1のSPADダイオード44に、少なくとも一時的に電気エネルギーを供給し、
上記少なくとも1つの第1のSPADダイオード44が、十分な電気エネルギーを供給されると、上記少なくとも1つの光ファイバ50に光子47を与え、
上記少なくとも1つの光ファイバ50が、そのような光子48を上記第2のSPADダイオード45に搬送し、
上記少なくとも1つの光ファイバ50が、そのような光子49を第2のSPADダイオード45に放出する項目12)に記載の装置。
【0123】
14)上記量子乱数生成器28が、光量子信号用の光源として、少なくとも上記第1のSPADダイオード44を有し、
上記量子乱数生成器28が、光量子信号用の光検出器として、少なくとも上記第2のSPADダイオード45を有し、
上記量子乱数生成器28が、少なくとも1つの処理回路を有し、
上記量子乱数生成器28が、少なくとも上記光ファイバ50を有し、
上記少なくとも1つの光ファイバ50が、上記少なくとも1つの第1のSPADダイオード44を、上記少なくとも1つの第2のSPADダイオード45に光学的に連結し、
上記動作回路が、上記第1のSPADダイオードが光44を発するように、上記第1のSPADダイオード44に電気エネルギーを供給し、
上記処理回路が、上記第2のSPADダイオード45の信号を検出し、そこから乱数を形成し、上記データプロセッサ10又は別の装置部分に供給する項目13)に記載の装置。
【0124】
15)上記第1のメモリが、上記集積回路の外部に設けられており、
上記装置が、データを格納するための第2のメモリを備え、
上記第2のメモリが、上記集積回路の外部に設けられており、
上記第1のメモリから上記集積回路を介して上記第2のメモリにデータを転送することで、上記データプロセッサが、上記第2のメモリから上記データにアクセスできるように、上記装置が構成されており、
上記集積回路が、
上記第1のメモリから上記第2のメモリへのデータの転送中、上記不揮発性メモリに格納されたセキュリティコードを用いて、上記第1のメモリから読み出された上記データを認証し、
上記データが認証された場合、第2のフォーマットでの暗号保護を、上記不揮発性メモリに格納されたセキュリティコードを用いて、認証された上記データに適用し、
上記第2のフォーマットで保護された上記データを、上記第2のメモリに格納するように構成されている項目12)から14)のいずれか一項に記載の装置。
【0125】
16)上記第1のメモリが、読み取り専用メモリを有する項目12)から15)のいずれか一項に記載の装置。
【0126】
17)上記第2のメモリが、ランダムアクセスメモリを有する項目15)及び16)のいずれか一項に記載の装置。
【0127】
18)上記第1のメモリの上記データに適用される上記暗号保護が、上記第2のメモリのデータに適用される上記暗号保護とは異なる項目15)から17)のいずれか一項に記載の装置。
【0128】
19)上記集積回路が、上記データプロセッサにより処理されるべきデータを格納するためのメモリを有し、
上記装置が、認証されたデータセットのうち、一部のデータを上記メモリに格納し、残りを上記第2のメモリに格納するように構成されている項目12)から18)のいずれか一項に記載の装置。
【0129】
20)上記第1のメモリが、第1のデータフォーマットでデータを格納し、上記第2のメモリが、別の第2のデータフォーマットでデータを格納するように構成されている項目15)から19)のいずれか一項に記載の装置。
【0130】
21)上記第1のメモリに格納された上記データが、第1の認証技術により保護されており、
上記装置が、上記第2のメモリの上記データを、別の第2の認証技術により保護するように構成されている項目20)に記載の装置。
【0131】
22)上記第1のメモリの上記データが、少なくとも1つのデータセットに格納されており、上記又は各データセットが、セットとして暗号保護されており、
上記装置が、上記第2のメモリに、認証されたデータセットの語又は語群を格納するように構成されており、各語又は各語群が、別々に暗号保護されている項目15)から21)のいずれか一項に記載の装置。
【0132】
23)上記装置が、
上記語又は上記語群を上記第2のメモリから読み出し、
読み出された上記語又は上記語群を、上記不揮発性メモリに格納されたセキュリティコードを用いて認証し、
読み出され、認証された上記語又は上記語群を、上記データプロセッサにおいて処理するように構成されている項目22)に記載の装置。
【0133】
24)上記集積回路が、ハッシュコンピュータを有し、
上記データプロセッサ及び上記ハッシュコンピュータが、
a)各語又は各語群について、上記不揮発性メモリに格納されたセキュリティコードに応じて、ハッシュ関数を計算し、上記ハッシュを上記語又は上記語群に結び付けて上記第2のメモリに格納し、
b)上記第2のメモリから格納された語又は群を読み出し、読み出された上記語又は読み出された上記語群について、上記セキュリティコードを用いてハッシュ関数を再計算し、再計算された上記ハッシュを格納された上記ハッシュと比較し、
c)再計算された上記ハッシュと格納された上記ハッシュとが、特定の関係にある場合のみ、読み出された上記語又は読み出された上記語群を、上記データ処理設備に処理させるように配置されている項目23)に記載の装置。
【0134】
25)上記ハッシュコンピュータが、上記集積回路における回路である項目24)に記載の装置。
【0135】
26)上記集積回路の上記不揮発性メモリが、ワンタイム・プログラマブル・メモリである項目12)から25)のいずれか一項に記載の装置。
【0136】
27)上記第1のメモリに格納された上記又は各データセットが、対応するデジタル署名によって、暗号保護されている項目12)から26)のいずれか一項に記載の装置。
【0137】
28)上記第1のメモリに格納された上記又は各データセットが、対応するデジタル署名によって、上記量子乱数生成器の少なくとも1つの乱数を用いて、暗号保護されている項目12)から28)のいずれか一項に記載の装置。
【0138】
29)上記量子乱数生成器(28)の少なくとも1つの乱数を少なくとも部分的に用いて上記装置が生成したセキュリティコードが、上記集積回路の上記不揮発性メモリに格納されている項目27)又は28)に記載の装置。
【0139】
30)上記装置が、上記集積回路の上記不揮発性メモリに格納されたセキュリティコードを参照して、上記データセットのデジタル署名を認証するように構成されている項目27)から29)のいずれか一項に記載の装置。
【0140】
31)データ処理装置であって、
上記データ処理装置が、集積回路を備え、
上記集積回路が、データプロセッサを有し、
上記集積回路が、不揮発性メモリを有し、
上記不揮発性メモリが、少なくとも1つのセキュリティコードを格納し、
上記集積回路が、ハッシュコンピュータを有し、
上記集積回路が、上記集積回路の境界において、インターフェースを有し、
上記集積回路が、量子乱数生成器を有し、
上記集積回路及び上記量子乱数生成器が、半導体結晶内に作製されており、
上記半導体結晶が、表面46を有し、
上記半導体結晶が、上記表面46の下方に半導体材料を有し、
上記半導体結晶の上記表面46が、金属化積層を有し、
上記金属化積層が、典型的には構造化され光学的に透明な電気絶縁層34を有し、
上記表面36の典型的には構造化され透明な電気絶縁層34の少なくとも一部が、上記光ファイバ50を構成し、
上記第1のSPADダイオード44が、上記半導体基板の上記半導体材料から、上記光ファイバ50に光子47を放出し、
上記少なくとも1つの光ファイバ50が、そのような光子48を上記第2のSPADダイオード45に搬送し、
上記ファイバー50の内部からの上記光49が、上記表面46から上記半導体基板の上記半導体材料に再入射し、そこで上記第2のSPADダイオード45の装置部分に達するように、上記光ファイバ50が、上記第2のSPADダイオード45を照射し、
上記第1のSPADダイオード44、上記第2のSPADダイオード45及び上記光ファイバ50が、上記量子乱数生成器28の一部であるデータ処理装置。
【0141】
32)上記データプロセッサ及び/又は上記データ処理装置の別の装置部分が、上記量子乱数生成器の少なくとも1つの乱数を用いて、データを暗号化または復号化する項目31)に記載のデータ処理装置。
【0142】
33)上記データ処理装置が、メモリを備え、
上記メモリが、上記プロセッサに使用される際のデータを格納し、
上記メモリが、上記データプロセッサに連結されていることで、上記データプロセッサから語を受信し、上記データプロセッサに語を供給する項目31)又は32)に記載のデータ処理装置。
【0143】
34)上記メモリが、上記集積回路の外部にあり、
上記メモリが、上記集積回路の境界において、上記インターフェースを介して上記データプロセッサに連結されていることで、上記データプロセッサから語を受信し、上記データプロセッサに語を供給する項目31)から33)のいずれか一項に記載のデータ処理装置。
【0144】
35)上記データプロセッサ及び上記ハッシュコンピュータが、
a)各語について、上記不揮発性メモリに格納されたセキュリティコードに応じて、ハッシュ関数を計算し、上記ハッシュを上記語に結び付けて格納し、
b)上記メモリから格納された語を読み出し、読み出された各語について、上記セキュリティコードを用いてハッシュ関数を再計算し、再計算された上記ハッシュ値を格納された上記ハッシュ値と比較し、
c)再計算された上記ハッシュと格納された上記ハッシュとが、予め設定された関係を有する場合のみ、読み出された上記語を、上記データ処理設備に処理させるように構成されている項目31)から34)のいずれか一項に記載のデータ処理装置。
【0145】
36)データ処理手段と、少なくとも1つのセキュリティコードを格納する不揮発性メモリ手段とを有する集積回路と、
データを格納する第1の手段と、
上記集積回路の一部である量子乱数生成器28とを備える装置であって、
上記データが、少なくとも1つの認証コードにより、第1のフォーマットで暗号保護されており、
上記量子乱数生成器が、第1のSPADダイオード44と第2のSPADダイオード45とを有し、上記第1のSPADダイオード44と上記第2のSPADダイオード45とが、上記集積回路の上記半導体基板の外部で上記集積回路の上記表面上に作製されている光ファイバ50を介して、互いに連結されている、又は連結可能であり、
上記装置が、日付又は上記認証コードの暗号化又は復号化のため、上記量子乱数生成器28の少なくとも1つの乱数を、少なくとも一時的に利用する装置。
【0146】
37)上記装置が、特に上記集積回路の外部に、データを格納するための第2の機器を備え、
上記装置が、上記第1のメモリから上記集積回路を介して上記第2のメモリにデータを転送する手段を備えることで、上記データプロセッサが、上記第2のメモリから上記データにアクセスでき、
上記装置が、上記不揮発性メモリに格納されたセキュリティコードを用いた転送中に、上記第1のメモリから読み出された上記データを認証する手段を備え、
上記装置が、上記データが認証されたときに、少なくとも1つの認証コードを有する暗号保護を、上記不揮発性メモリに格納されたセキュリティコードを用いて、認証された上記データに第2のフォーマットで適用する手段を備え、
上記装置が、保護された上記データを、上記第2のフォーマットで上記第2のメモリに格納する手段を備える項目36)に記載の装置。
【0147】
38)上記装置が、量子乱数生成器400を備え、
上記量子乱数生成器が、装置部分として、
第1のSPADダイオード404.1と、
第2のSPADダイオード404.3と、
上記第1のSPADダイオード404.1と上記第2のSPADダイオード404.3とを光学的に連結する光ファイバ404.2と、
増幅器403及び/又はフィルタと、
アナログデジタル変換器403と、
コンパレータ404.2と、
時間デジタル変換器404.3と、
上記時間デジタル変換器403の出力値を第1及び第2の値に変換し、そこからランダムビットを生成するエントロピー抽出装置404.4とを有する特に項目12)から37)のいずれか一項に記載の装置。
【0148】
39)上記装置が、上記量子乱数生成器400の装置部分を監視するウォッチドッグ404.5を備える項目27)に記載の装置。
【0149】
40)上記装置が、アナログ信号のアナログ値を検出及び監視する電圧モニタ413を備える項目38)及び39)のいずれか一項に記載の装置。
【0150】
41)上記装置が、特に線形帰還シフトレジスタ404.6の形で、疑似乱数生成器404.6を備える項目38)から40)のいずれか一項に記載の装置。
【0151】
42)上記装置が、信号マルチプレクサを備え、この信号マルチプレクサが、エラーケースにおいて、上記エントロピー抽出装置の上記出力411の信号から、予備乱数生成器又は予備疑似乱数生成器404.6の信号に切り替える項目38)から41)のいずれか一項に記載の装置。
【0152】
43)エラーケースにおいて、上記疑似乱数生成器404.6の開始値が、過去に正しく生成された上記量子乱数生成器400のランダムビットに依存する項目38)から42)のいずれか一項に記載の装置。
【0153】
44)少なくとも2つのSPADダイオードを用いて、第1の高さクラス601のパルスと、第2の高さクラス602のパルスとを有するパルスシーケンスを、ランダムな間隔で生成する工程と、
切断レベル603,404.1により、上記第1の高さクラス601のパルスを、上記第2の高さクラス602のパルスから分離する工程と、
上記第2の高さクラス602の第1のパルスと、この第1のパルスと異なる上記第2の高さクラス602の第2のパルスとの間の時間間隔の第1の値を検出する工程501と、
上記第1のパルスと異なる上記第2の高さクラス602の第3のパルスと、上記第1のパルス、上記第2のパルス及び上記第3のパルスと異なる上記第2の高さクラス602の第4のパルスとの間の時間間隔の第2の値を検出する工程501と、
上記第1の値を上記第2の値と比較する工程502と、
上記第1の値が上記第2の値より大きい場合に、ランダムビットとして、第1の論理値を出力する工程503と、
上記第1の値が上記第2の値より小さい場合に、上記ランダムビットとして、上記第1の論理値と異なる第2の論理値を出力する工程503とを備えるランダムビットの生成方法。
【0154】
45)m個のランダムビットを有する量子乱数QZの生成方法3700であって、
1又は複数の第1のSPADダイオード401.1,44を用いて、単一光子から、ランダムな単一光子電流47,48,49,401.2を生成する工程3710と、
上記半導体基板39,38と異なる光ファイバ50,401.2を用いて、上記ランダムな単一光子電流47,48,49,401.2を、1又は複数の第2のSPADダイオード401.3,45に伝達する工程3720と、
上記1又は複数の第2のSPADダイオード401.3,45を用いて、上記ランダムな単一光子電流47,48,49,401.2を、検出信号に変換する工程3730と、
上記検出信号を、調整済み検出信号に調整する工程3740と、
上記調整済み検出信号を閾値404.1と比較することにより、上記1又は複数の第1のSPADダイオード401.1,44のうち、1つの第1のSPADダイオード401.1の放出と、上記1又は複数の第2のSPADダイオード401.3,45のうち、1つの第2のSPADダイオード401.3,45の放出との結合により発生する上記調整済み検出信号のパルスを、上記第2のSPADダイオード401.3,45の自然放出により発生する上記調整済み検出信号のパルスから分離する工程3750と、
第1のSPADダイオード401.1,44及び第2のSPADダイオード401.3,45の放出の結合により発生する上記調整済み検出信号の連続する2つのパルスからなる第1の対の第1のパルスと第2のパルスとの間の第1の時間間隔を算出し、第1のSPADダイオード401.1,44及び第2のSPADダイオード401.3,45の放出の結合により発生する上記調整済み検出信号の連続する2つのパルスからなる第2の対の第3のパルスと第4のパルスとの間の第2の時間間隔を算出する工程3760と、
上記第1の時間間隔の値と上記第2の時間間隔の値とを比較することにより、ランダムビットのビット値を算出する工程3670と、
算出された上記ランダムビットの数3680nが、生成される量子乱数QZのランダムビットの所望の数mより小さい場合に、上記工程3710から3770を繰り返し、算出された上記ランダムビットの数3680nが、生成される上記量子乱数QZのランダムビットの所望の数m以上である場合に、量子乱数の生成プロセスを終了する工程とを備える方法3700。
【0155】
46)データ処理手段と、少なくとも1つのセキュリティコードを格納する不揮発性メモリ手段とを有する集積回路と、
データを格納する第1の手段と、
上記集積回路の一部である量子乱数生成器28とを備える装置であって、
上記データが、少なくとも1つの認証コードにより、第1のフォーマットで暗号保護されており、
上記量子乱数生成器が、第1のSPADダイオード44と第2のSPADダイオード45とを有し、上記第1のSPADダイオード44と上記第2のSPADダイオード45とが、上記集積回路の上記半導体基板の外部で上記集積回路の上記表面に作製されている光ファイバ50を介して、互いに連結されている、又は連結可能であり、
上記装置が、日付又は上記認証コードの暗号化又は復号化のため、上記量子乱数生成器28の少なくとも1つの乱数を、少なくとも一時的に利用する装置。
【0156】
47)上記装置が、特に上記集積回路の外部に、データを格納するための第2の機器を備え、
上記装置が、上記第1のメモリから上記集積回路を介して上記第2のメモリにデータを転送する手段を備えることで、上記データプロセッサが、上記第2のメモリから上記データにアクセスでき、
上記装置が、上記不揮発性メモリに格納されたセキュリティコードを用いた転送中に、上記第1のメモリから読み出された上記データを認証する手段を備え、
上記装置が、上記データが認証されたときに、少なくとも1つの認証コードを有する暗号保護を、上記不揮発性メモリに格納されたセキュリティコードを用いて、認証された上記データに第2のフォーマットで適用する手段を備え、
上記装置が、保護された上記データを、上記第2のフォーマットで上記第2のメモリに格納する手段を備える項目46)に記載の装置。
【0157】
48)上記装置が、量子乱数生成器400を備え、
上記量子乱数生成器が、装置部分として、
第1のSPADダイオード404.1と、
第2のSPADダイオード404.3と、
上記第1のSPADダイオード404.1と上記第2のSPADダイオード404.3とを光学的に連結する光ファイバ404.2と、
増幅器403及び/又はフィルタと、
アナログデジタル変換器403と、
コンパレータ404.2と、
時間デジタル変換器404.3と、
上記時間デジタル変換器403の出力値を第1及び第2の値に変換し、そこから上記乱数用のランダムビットを生成するエントロピー抽出装置404.4とを有する項目46)又は47)に記載の装置。
【0158】
49)上記装置が、上記量子乱数生成器400の装置部分を監視するウォッチドッグ404.5を備える項目48)に記載の装置。
【0159】
50)上記装置が、アナログ信号のアナログ値を検出及び監視する電圧モニタ413を備える項目48)及び49)に記載の装置。
【0160】
51)上記装置が、特に線形帰還シフトレジスタ404.6の形で、乱数生成器又は疑似乱数生成器404.6を備える項目48)から50)のいずれか一項に記載の装置。
【0161】
52)上記装置が、信号マルチプレクサを備え、この信号マルチプレクサが、エラーケースにおいて、上記エントロピー抽出装置の上記出力411の信号から、予備乱数生成器又は予備疑似乱数生成器404.6の信号に切り替える項目48)から51)のいずれか一項に記載の装置。
【0162】
53)エラーケースにおいて、上記疑似乱数生成器404.6の開始値が、過去に正しく生成された上記量子乱数生成器400のランダムビットに依存する項目48)から52)のいずれか一項に記載の装置。
【0163】
54)少なくとも2つのSPADダイオードを用いて、第1の高さクラス601のパルスと、第2の高さクラス602のパルスとを有するパルスシーケンスを、ランダムな間隔で生成する工程と、
切断レベル603,404.1により、上記第1の高さクラス601のパルスを、上記第2の高さクラス602のパルスから分離する工程と、
上記第2の高さクラス602の第1のパルスと、この第1のパルスと異なる上記第2の高さクラス602の第2のパルスとの間の時間間隔の第1の値を検出する工程501と、
上記第1のパルスと異なる上記第2の高さクラス602の第3のパルスと、上記第1のパルス、上記第2のパルス及び上記第3のパルスと異なる上記第2の高さクラス602の第4のパルスとの間の時間間隔の第2の値を検出する工程501と、
上記第1の値を上記第2の値と比較する工程502と、
上記第1の値が上記第2の値より大きい場合に、ランダムビットとして、第1の論理値を出力する工程503と、
上記第1の値が上記第2の値より小さい場合に、上記ランダムビットとして、上記第1の論理値と異なる第2の論理値を出力する工程503とを備えるランダムビットの生成方法。
【0164】
55)m個のランダムビットを有する量子乱数QZの生成方法3700であって、
1又は複数の第1のSPADダイオード401.1,54を用いて、単一光子から、ランダムな単一光子電流47,48,49,401.2を生成する工程3710と、
光ファイバ50,401.2を用いて、上記ランダムな単一光子電流47,48,49,401.2を、1又は複数の第2のSPADダイオード401.3,45に伝達する工程3720と、
上記1又は複数の第2のSPADダイオード401.3,45を用いて、上記ランダムな単一光子電流47,48,49,401.2を、検出信号に変換する工程3730と、
上記検出信号を、調整済み検出信号に調整する工程3740と、
上記調整済み検出信号を閾値404.1と比較することにより、上記1又は複数の第1のSPADダイオード401.1,44のうち、1つの第1のSPADダイオード401.1の放出と、上記1又は複数の第2のSPADダイオード401.3,45のうち、1つの第2のSPADダイオード401.3,45の放出との結合により発生する上記調整済み検出信号のパルスを、上記第2のSPADダイオード401.3,45の自然放出により発生する上記調整済み検出信号のパルスから分離する工程3750と、
第1のSPADダイオード401.1,44及び第2のSPADダイオード401.3,45の放出の結合により発生する上記調整済み検出信号の連続する2つのパルスからなる第1の対の第1のパルスと第2のパルスとの間の第1の時間間隔を算出し、第1のSPADダイオード401.1,44及び第2のSPADダイオード401.3,45の放出の結合により発生する上記調整済み検出信号の連続する2つのパルスからなる第2の対の第3のパルスと第4のパルスとの間の第2の時間間隔を算出する工程3760と、
上記第1の時間間隔の値と上記第2の時間間隔の値とを比較することにより、ランダムビットのビット値を算出する工程3670と、
算出された上記ランダムビットの数3680nが、生成される量子乱数QZのランダムビットの所望の数mより小さい場合に、上記工程3710から3770を繰り返し、算出された上記ランダムビットの数3680nが、生成される上記量子乱数QZのランダムビットの所望の数m以上である場合に、量子乱数の生成プロセスを終了する工程とを備える方法3700。
【0165】
56)量子乱数QZの生成装置であって
単一光子から光量子プロセスに基づくランダムな単一光子電流47,48,49,401.2を生成(3710)する1又は複数の第1のSPADダイオード401.1,44と、
1又は複数の第2のSPADダイオード401.3,45と、
上記半導体基板39,38と異なる光ファイバ50,401.2であって、上記ランダムな単一光子電流47,48,49,401.2を、上記1又は複数の第2のSPADダイオード401.3,45に伝達(3720)する光ファイバ50,401.2とを備え、
上記1又は複数の第2のSPADダイオード401.3,45が、上記ランダムな単一光子電流47,48,49,401.2を、検出信号に変換(3730)し、
信号処理装置、具体的には増幅器402が、上記検出信号を、調整済み検出信号に調整(3740)し、
コンパレータ404.02又は同機能の装置が、上記調整済み検出信号を閾値404.1と比較することにより、上記1又は複数の第1のSPADダイオード401.1,44のうち、1つの第1のSPADダイオード401.1の放出と、上記1又は複数の第2のSPADダイオード401.3,45のうち、1つの第2のSPADダイオード401.3,45の放出の結合により発生する上記調整済み検出信号のパルスを、上記第2のSPADダイオード401.3,45の自然放出により発生する上記調整済み検出信号のパルスから分離(3750)し、
時間デジタル変換器404.3が、第1のSPADダイオード401.1,44及び第2のSPADダイオード401.3,45の放出の結合により発生する上記調整済み検出信号の連続する2つのパルスからなる第1の対の第1のパルスと第2のパルスとの間の第1の時間間隔を算出(3760)し、第1のSPADダイオード401.1,44及び第2のSPADダイオード401.3,45の放出の結合により発生する上記調整済み検出信号の連続する2つのパルスからなる第2の対の第3のパルスと第4のパルスとの間の第2の時間間隔を算出し、
エントロピー抽出装置404.4が、上記第1の時間間隔の値と第2の時間間隔の値とを比較することにより、ランダムビットのビット値を算出(3670)し、
有限オートマトン404.8が、上記ランダムビット411のビットデータストリームから、量子乱数QZ417を生成する装置。
【符号の説明】
【0166】
1 安全マイクロコントローラ
2 1又は複数の内部データバス
3 1又は複数の読み書きメモリRAM
4 1又は複数の書き込み可能な不揮発性メモリ。この不揮発性メモリは、例えば、EEPROMメモリ、フラッシュメモリ又はOTPメモリを有することができる
5 ROM等の1又は複数の純粋な読み取り専用不揮発性メモリ
6 1又は複数の書き込み可能及び/又は非書き込み可能な不揮発性メーカーメモリ。非書き込み可能なメーカーメモリの場合、このメーカーメモリは、例えばメーカーROMとすることができる
7 DES加速器及び/又はAES加速器等の1又は複数の暗号アクセラレータ
8 1又は複数のメーカーメモリファイアウォール
11 1又は複数のCRCモジュール(Cyclic Redundancy Check)
12 1又は複数のクロック生成モジュール(英語:Clock Driver、CLK)
13 タイマーモジュール
14 1又は複数の安全監視制御回路
15 量子プロセスに基づく生成器
16 マイクロコントローラコア
17 データインターフェース、具体的には、連続高速データをサポートするための1又は複数のUniversal Asynchronous Receiver Transmitter(UART)
21 1又は複数の基本クロック生成器(CLK)
22 1又は複数のリセット回路
23 安全マイクロコントローラ用の動作電圧を与える電圧調節器付の1又は複数の電流供給又はVcc回路
24 1又は複数の接地回路
25 1又は複数の入出力回路
30 単一光子検出器のセンサ素子に使用される典型的なSPADダイオード
31 典型的なSPADダイオードのシャロートレンチアイソレーションSTI
32 典型的なSPADダイオードのアノードコンタクト
33 典型的なSPADダイオードのカソードコンタクト。典型的なSPADダイオードのカソードコンタクトは、酸化インジウムスズ(ITO)又は別の透明導電材料から作製されていることが好ましい
34 絶縁層
34’ 絶縁層
34” 絶縁層
35 第1の導電型の高ドープの第1の接合領域。pドープウェハ材料を用いたCMOS技術においては、例えば、SPADダイオードの半導体基板材料におけるn
+ドープ領域とすることができる
36 第2の導電型の第1のドープウェル。pドープウェハ材料を用いたCMOS技術においては、例えば、SPADダイオード1820の半導体基板材料における低ドープ領域、つまりp
--ドープ領域とすることができる
37 第2の導電型の第2のドープウェル。pドープウェハ材料を用いたCMOS技術においては、例えば、SPADダイオードの半導体基板材料における低ドープ領域、つまりp
-ドープ領域とすることができる
38 第2の導電型のエピタキシャル層。pドープウェハ材料を用いたCMOS技術においては、例えば、SPADダイオードの半導体基板材料におけるpドープのエピタキシャル層とすることができる
39 第2の導電型を有する単結晶半導体ウェハの基材。pドープウェハ材料を用いたCMOS技術においては、例えば、pドープの単結晶半導体ウェハとすることができる
40 アノードコンタクトの下方の第2の導電型の第2のドープウェル。pドープウェハ材料を用いたCMOS技術においては、例えば、SPADダイオードの半導体基板材料におけるp
-ドープ領域とすることができる
41 第2の導電型の高ドープの第2の接合領域。pドープウェハ材料を用いたCMOS技術においては、例えば、SPADダイオード1820の半導体基板材料におけるp
+ドープ領域とすることができる
42 例えば酸化物等の絶縁体
43 光ファイバの金属カバー
44 第1のSPADダイオード。第1のSPADダイオードは、少なくとも一時的に、第2のSPADダイオードに第1のSPADダイオードの光子を照射するための光源として機能する
45 第2のSPADダイオード。第2のSPADダイオードは、例えば、少なくとも一時的に、第1のSPADダイオードの光の光検出器として機能する
46 本出願におけるウェハの表面
47 表面に対して鉛直方向に、垂直かつ上方に発せられる第1のSPADダイオードの光
48 第1のSPADダイオードから光ファイバに垂直に射出される光の一部であって、光ファイバ内を水平に搬送される光
49 第1のSPADダイオードから垂直光として光ファイバに発せられた後、光ファイバから第2のSPADダイオードに水平に搬送される光であって、光ファイバから第2のSPADダイオードに、表面に対して鉛直方向に、垂直かつ下方に射出される第1のSPADダイオードの光
50 第1のSPADダイオードの光子を、第2のSPADダイオードに搬送するための光ファイバ。この光ファイバは、典型的なSPADダイオードの回路上に、被覆酸化物又は他の光学的に透明な絶縁層から構成されている
50’ 第1のSPADダイオードの光子を第2のSPADダイオードに搬送するための光ファイバ。この光ファイバは、典型的なSPADダイオードの回路上に、被覆酸化物又は他の光学的に透明な絶縁層から構成されている。あるいは、積層され光学的に透明な2層の絶縁層(例えば、金属化積層)から構成されている
51 コンタクト
52 コンタクト
53 光ファイバの2層の電気絶縁性の絶縁層の間の平面
400 量子乱数生成器QRNG
401 エントロピー源
401.1 1又は複数の第1のSPADダイオード
401.2 光ファイバ
401.3 1又は複数の第2のSPADダイオード
402 高周波増幅器
403 アナログデジタル変換器(ADC)
404 FPGAを有する計測基板
404.1 定数
404.2 コンパレータ
404.3 時間デジタル変換器
404.4 エントロピー抽出装置404.4
404.5 ウォッチドッグ
404.6 線形帰還シフトレジスタ。疑似乱数ビットシーケンスを生成するため、帰還は、単純な原始多項式であることが好ましい
404.7 信号マルチプレクサ
404.8 有限オートマトン
404.9 RAM
404.10 フィニッシュフラグ
404.11 マイクロコントローラ
405 エントロピー源401の電圧信号
406 高周波増幅器402の増幅器出力信号406
407 アナログデジタル変換器403のデジタルの14ビット値407。他のビット幅も考えられる
408 定数404.1の信号
409 コンパレータ404.2の出力信号409
410 時間デジタル変換器404.3の出力410
411 エントロピー抽出404.4の出力
412 シードS
413 電圧モニタ
414 信号線
416 選択信号
417 疑似乱数信号線
418 ランダムデータ語
419 量子乱数生成器400の内部データバス。制御装置4の内部データバスであることが好ましい
420 量子乱数生成器400のウォッチドッグ404.5及びヒューズ1の制御装置4の割り込み信号
500 エントロピー抽出方法のフロー
図500
501 時間デジタル変換器404.3の出力410の第1の値と、時間デジタル変換器404.3の出力410の第2の値とを算出し、エントロピー抽出404.4のシフトレジスタに格納する第1の工程501
502 第1の値を第2の値と比較する第2の工程
503 第1の値及び第2の値を判定し、ランダムビットを生成する第3の工程
601 第1のスパイク
602 第2のスパイク
603 切断レベル
3700 m個のランダムビットを有する量子乱数QZの生成方法
3710 1又は複数の第1のSPADダイオード(401.1,54)を用いて、ランダムな単一光子電流(57,58,59,401.2)を生成する工程
3720 半導体基板(49,48)と異なる光ファイバ(44,401.2)を用いて、ランダムな単一光子電流(57,58,59,401.2)を、1又は複数の第2のSPADダイオード(401.3,55)に伝達する工程
3730 ランダムな単一光子電流(57,58,59,401.2)から、エントロピー源401の電圧信号405の形で、検出信号に変換する工程。エントロピー源401は、第1のSPADダイオード401.1、光ファイバ401.2及び第2のSPADダイオード401.3を有することが好ましい
3740 検出信号を、調整済み検出信号、具体的には、アナログデジタル変換器403のデジタルの14ビット値407に調整する、具体的には、増幅、フィルタリング及び/又はアナログデジタル変換する工程
3750 特にコンパレータ404.2において、調整済み検出信号を閾値と比較することにより、第1のSPADダイオード401.1及び第2のSPADダイオード401.3の放出の結合により発生する調整済み検出信号のパルスを、自然放出により発生する調整済み検出信号のパルスから分離し、特にコンパレータ404.2の対応する出力信号409を生成する工程
3760 特に時間デジタル変換器404.3の出力410の第1の値と、時間デジタル変換器404.3の出力410の第2の値とを算出するため、第1のSPADダイオード401.1及び第2のSPADダイオード401.3の放出の結合により発生する調整済み検出信号の連続する2つのパルスからなる第1の対の第1のパルスと第2のパルスとの間の第1の時間間隔を算出し、第1のSPADダイオード401.1及び第2のSPADダイオード401.3の放出の結合により発生する調整済み検出信号の連続する2つのパルスからなる第2の対の第3のパルスと第4のパルスとの間の第2の時間間隔の算出する工程
3670 第1の時間間隔の値と第2の時間間隔の値とを比較することにより、ランダムビットのビット値を算出する工程
3680 本工程までに算出されたランダムビットの数nが、所望の量子乱数のランダムビットの所望の数mより小さい場合に、上述の工程を繰り返す。それ以外の場合は、m個のランダムビットを有する量子乱数の生成プロセスを終了する
【手続補正書】
【提出日】2024-07-17
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
自動車内の装置を制御するためのマイクロコントローラであって、
半導体基板と、
複数の記憶素子と、
少なくとも1つの内部バス(2)と、
少なくともマイクロコントローラコア(16)と、
1又は複数のデータインターフェースと、
少なくとも1つの量子プロセスに基づく真性乱数生成器(15)とを備え、
上記記憶素子が、上記内部バス(2)に接続されており、
上記データインターフェースが、上記内部バス(2)に接続されており、
上記量子プロセスに基づく生成器(15)が、上記内部バス(2)に接続されており、
上記マイクロコントローラコア(16)が、上記内部バス(2)に接続されており、
上記量子プロセスに基づく生成器(15)が、特に上記マイクロコントローラコア(16)の要求に応じて、乱数を生成し、
上記量子プロセスに基づく生成器(15)が、上記乱数を供給し、
上記マイクロコントローラコア(16)が、上記記憶素子の1又は複数からのプログラムと、上記乱数とを用いて、キーを生成し、
上記マイクロコントローラコア(16)が、上記記憶素子の1又は複数からのプログラムと、上記キーとを用いて、上記データインターフェースを介して外部装置と、又は内部でやり取りされるデータを暗号化及び復号化し、
上記半導体基板が、ここに挙げた上記安全マイクロコントローラ(1)のサブ装置を一体に有し、
上記量子プロセスに基づく生成器(15)が、光量子信号用の光源として、少なくとも1つの第1のSPADダイオード(44)を有し、
上記量子プロセスに基づく生成器(15)が、上記光量子信号の受信用の光検出器として、少なくとも1つの第2のSPADダイオード(45)を有し、
上記量子プロセスに基づく生成器(15)が、少なくとも1つの処理回路を有し、
上記少なくとも1つの第1のSPADダイオード(44)を、上記少なくとも1つの第2のSPADダイオード(45)に光学的に連結するため、上記量子プロセスに基づく生成器(15)が、少なくとも1つの光ファイバ(50)を有し、
光(44)を発するための電気エネルギーを、上記少なくとも1つの第1のSPADダイオード(44)に供給するため、上記量子に基づく生成器(15)が、動作回路を有し、
上記少なくとも1つの第2のSPADダイオード(45)の信号を検出し、上記少なくとも1つの第2のSPADダイオード(45)の上記信号から乱数を形成し、上記マイクロコントローラコア(16)に上記乱数を供給するため、上記量子に基づく生成器(15)が、処理回路を有
し、
上記半導体基板が、表面(46)を有し、
上記半導体基板が、上記表面(46)の下方に半導体材料を有し、
上記半導体基板の上記表面(46)が、金属化積層を有し、
上記金属化積層が、上記半導体基板の上記表面(46)上に設けられている電気絶縁層(34)であって、典型的には、構造化され光学的に透明な電気絶縁層(34)を有し、
上記透明な電気絶縁層(34)の少なくとも一部が、上記少なくとも1つの光ファイバ(50)を構成し、
上記第1のSPADダイオード(44)が、上記半導体基板の上記半導体材料から、上記光ファイバ(50)に光子(47)を放出し、
上記少なくとも1つの光ファイバ(50)が、そのような光子(48)を上記第2のSPADダイオード(45)に搬送することを特徴とするマイクロコントローラ。
【請求項2】
上記少なくとも1つの第2のSPADダイオード(45)のエミッション信号が、第1のスパイク(601)と、この第1のスパイク(601)より大きい第2のスパイク(602)とを有し、上記第1及び第2のスパイク(601,602)が、それぞれ予め設定可能な基準値(404.1,603)より大きく、上記少なくとも1つの第2のSPADダイオード(45)の誘導光子放出が同時に起こることなく、上記少なくとも1つの第2のSPADダイオード(45)の自然光子放出により、上記第1のスパイク(601)が発生し、自然光子放出と、上記少なくとも1つの第1のSPADダイオード(44)の光子を受信することで誘導される上記少なくとも1つの第2のSPADダイオード(45)の光子放出とが同時に生じることにより、上記第2のスパイク(602)が発生し、上記量子プロセスに基づく生成器(15)の上記処理回路が、上記第2のスパイク(602)の時間間隔を閾値と比較することにより、又は上記第2のスパイク(602)の時間間隔同士を比較することにより、上記乱数の生成用のビットとして、第1の論理値又は第2の論理値を生成することを特徴とする請求項1に記載のマイクロコントローラ。
【請求項3】
上記処理回路が、2つのスパイク(602)の時間間隔を閾値と比較することにより、上記第1の論理値又は上記第2の論理値を生成し、上記処理回路が、上記時間間隔が上記閾値より小さい場合に、上記第1の論理値を上記乱数のビットとして出力し、上記時間間隔が上記閾値より大きい場合に、上記第2の論理値を上記乱数のビットとして出力することを特徴とする請求項2に記載のマイクロコントローラ。
【請求項4】
上記処理回路が、異なる対の第2のスパイク(602)の上記第2のスパイク(602)の時間間隔同士を比較することにより、上記第1の論理値又は上記第2の論理値を生成し、上記処理回路が、最後に現れた第2のスパイク(602)の時間間隔が、例えば、最後から2番目の第2のスパイク(602)と最後から3番目の第2のスパイク(602)との間の時間間隔又は別の一対の先行する第2のスパイク(602)間の時間間隔より小さい場合に、上記第1の論理値を上記乱数の生成用のビットとして出力し、上記最後に現れた第2のスパイク(602)の時間間隔が、例えば、上記最後から2番目の第2のスパイク(602)と上記最後から3番目の第2のスパイク(602)との間の時間間隔又は別の一対の先行する第2のスパイク(60)間の時間間隔より大きい場合に、上記第2の論理値を上記乱数の生成用のビットとして出力することを特徴とする請求項2に記載のマイクロコントローラ。
【請求項5】
第1のSPADダイオード(44)と第2のSPADダイオード(45)とからなる対を複数備え、上記第2のSPADダイオード(45)の上記エミッション信号が、上記処理回路に供給可能であり、上記処理回路が、各第2のSPADダイオード(45)の上記エミッション信号を用いて、上記乱数の生成用のビットの別の1つを出力することを特徴とする請求項1から4のいずれか一項に記載のマイクロコントローラ。
【請求項6】
第1のSPADダイオード(44)と第2のSPADダイオード(45)とからなる対を備え、上記処理回路が、上記乱数の生成用のビットの上記論理値を連続的に出力することを特徴とする請求項1から4のいずれか一項に記載のマイクロコントローラ。
【請求項7】
単一の第1のSPADダイオード(44)と、この単一のSPADダイオード(44)に光学的に連結されている複数の第2のSPADダイオード(45)とを備え、上記第2のSPADダイオード(45)の上記エミッション信号が、上記処理回路に供給可能であり、上記処理回路が、各第2のSPADダイオード(45)の上記エミッション信号を用いて、上記乱数の生成用のビットの別の1つを出力することを特徴とする請求項1から4のいずれか一項に記載のマイクロコントローラ。
【請求項8】
エラー検出ユニットと、疑似乱数生成器とを備え、上記エラー検出ユニットが、上記量子プロセスに基づく生成器(15)の光量子プロセスに関わる構成要素の機能におけるエラー又は上記処理回路のエラーを検出した場合に、上記量子に基づく生成器(15)の上記処理回路が、上記少なくとも1つの第2のSPADダイオード(45)の上記エミッション信号を用いた上記乱数の生成用のビットの出力から、上記疑似乱数生成器により生成される疑似乱数の生成用のビットの出力に切り替えることを特徴とする請求項1から7のいずれか一項に記載のマイクロコントローラ。
【請求項9】
上記エラー検出ユニットが、エラーを検出した際に、特にそのエラーの種類及び/又は原因を表すエラー信号を出力することを特徴とする請求項8に記載のマイクロコントローラ。
【請求項10】
上記記憶素子が、1又は複数の読み書きメモリRAM(3)、1又は複数の書き込み可能な不揮発性メモリ(具体的には、EEPROMメモリ(4)、フラッシュメモリ(4)及び/又はワンタイムプログラマブル(OTP)メモリ(4))、1又は複数の純粋な読み取り専用メモリ及び/又は1又は複数の不揮発性メーカーメモリ(具体的には、1又は複数のメーカーROM(6)、1又は複数のメーカーEEPROM及び/又は1又は複数のメーカーフラッシュメモリ)を有することを特徴とする請求項1から9のいずれか一項に記載のマイクロコントローラ。
【請求項11】
上記メーカーROM(6)が、ブートソフトウェアを有することを特徴とする請求項10に記載のマイクロコントローラ。
【請求項12】
上記メーカーメモリ(6)と上記内部バス(2)との間に、メーカーメモリファイアウォール(8)を備えることを特徴とする請求項1から11のいずれか一項に記載のマイクロコントローラ。
【請求項13】
基本クロック生成器(21)(CLK)、
クロック生成回路(12)、
リセット回路(22)、
上記動作電圧を与える電圧調節器付の電流供給又はVcc回路(23)、
接地回路(24)、
入出力回路(25)及び/又は
1又は複数の処理モジュールのうち、1又は複数の構成要素を備え、
上記処理モジュールが、上記内部バス(2)と通信し、
上記処理モジュールが、
CRCモジュール(Cyclic Redundancy Check)(11)、
クロック生成モジュール(12)、
DES加速器及び/又はAES加速器(7)を有するモジュール、
1又は複数のタイマーモジュール(13)、
安全監視制御回路(14)及び
データインターフェース、具体的にはUniversal Asynchronous Receiver Transmitter(UART)(17)のうち、1又は複数のモジュールを有することを特徴とする請求項1から12のいずれか一項に記載のマイクロコントローラ。
【請求項14】
光(49)が上記光ファイバ(50)の内部から上記半導体基板の上記半導体材料に再入射し、そこで上記第2のSPADダイオード(45)の装置部分に達するように、上記光ファイバ(50)が、上記第2のSPADダイオード(45)を照射することを特徴とする請求項
13に記載のマイクロコントローラ。
【請求項15】
上記少なくとも1つの動作回路が、上記少なくとも1つの第1のSPADダイオード(44)に、少なくとも一時的に電気エネルギーを供給し、
上記少なくとも1つの第1のSPADダイオード(44)が、十分な電気エネルギーを供給されると、上記少なくとも1つの光ファイバ(50)に光子(47)を与え、
上記少なくとも1つの光ファイバ(50)が、そのような光子(48)を上記第2のSPADダイオード(45)に搬送し、
上記少なくとも1つの光ファイバ(50)が、そのような光子(48)を上記第2のSPADダイオード(45)に放出することを特徴とする請求項1から
14のいずれか一項に記載のマイクロコントローラ。
【請求項16】
上記1つのデータバスインターフェースが、有線の自動車用データバスインターフェースである、又は上記複数のデータバスインターフェースのうち、1又は複数のデータバスインターフェースが、有線の自動車用データバスインターフェースであることを特徴とする請求項1から
15のいずれか一項に記載のマイクロコントローラ。
【請求項17】
上記1又は複数の有線の自動車用データバスインターフェースが、
CANデータバスインターフェース、
CAN-FDデータバスインターフェース、
FlexRayデータバスインターフェース、
PSI5データバスインターフェース、
DSI3データバスインターフェース、
LINデータバスインターフェース、
イーサネットデータバスインターフェース、
LINデータバスインターフェース及び/又は
MELIBUSデータバスインターフェースとして形成されていることを特徴とする請求項
16に記載のマイクロコントローラ。
【請求項18】
上記1つのデータバスインターフェースが、無線のデータバスインターフェースである、又は上記複数のデータインターフェースのうち、1又は複数のデータバスインターフェースが、無線のデータバスインターフェースであることを特徴とする請求項1から
17のいずれか一項に記載のマイクロコントローラ。
【請求項19】
上記1又は複数の無線のデータバスインターフェースが、
WLANインターフェース、
移動体通信インターフェース及び/又は
Bluetoothインターフェースとして形成されていることを特徴とする請求項
18に記載のマイクロコントローラ。
【請求項20】
上記1つのデータバスインターフェースが、有線のデータバスインターフェースである、又は上記複数のデータインターフェースのうち、1又は複数のデータバスインターフェースが、有線のデータバスインターフェースであることを特徴とする請求項1から
19のいずれか一項に記載のマイクロコントローラ。
【請求項21】
上記1又は複数の有線のデータバスインターフェースが、
KNXデータバスインターフェース、
EIBデータバスインターフェース、
DALI(登録商標)データバスインターフェース及び/又は
PROFIBUSデータバスインターフェースとして形成されていることを特徴とする請求項
20に記載のマイクロコントローラ。
【手続補正2】
【補正対象書類名】図面
【補正方法】変更
【補正の内容】
【国際調査報告】