不正侵入操作阻止機能を持つ情報処理手段
【課題】データ又は情報(例:メール)に潜む不正コマンド(命令)や不正プログラムによる不正侵入操作(サイバー・テロ、ネット犯罪)を、その手口の変化やそのコンピュータ・ウイルス等の変異・強力化やセキュリティ・ホール等に関係無く阻止する手段を提供する。
【解決手段】外部「データ又は情報」と外部「プログラム又はコマンド」を別々の入口から入力。後者が通過できないフィルタを前者の入口に設置。その為に多値技術等を用いて例えば情報処理手段1は「1つ又は複数の『2値表現と区別できる様に[v0〜v2の各電位と1対1ずつ対応する3値]で表現された命令』から成るプログラム」等を実行し、「『v0〜v1の各電位と1対1ずつ対応する2値』で表現されたデータ又は情報」を処理する。その外部データ等の入力の際クランプ・ダイオード2は入出力線3の電位を電位v1にクランプし、その外部データ等の2値以外の部分を除去し、無害化する。
【解決手段】外部「データ又は情報」と外部「プログラム又はコマンド」を別々の入口から入力。後者が通過できないフィルタを前者の入口に設置。その為に多値技術等を用いて例えば情報処理手段1は「1つ又は複数の『2値表現と区別できる様に[v0〜v2の各電位と1対1ずつ対応する3値]で表現された命令』から成るプログラム」等を実行し、「『v0〜v1の各電位と1対1ずつ対応する2値』で表現されたデータ又は情報」を処理する。その外部データ等の入力の際クランプ・ダイオード2は入出力線3の電位を電位v1にクランプし、その外部データ等の2値以外の部分を除去し、無害化する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、多値技術または多進法技術を用いて(又は疑似的にその技術を用いて)『例えば外部からインターネット等の有線通信手段や無線通信手段、光ファイバー、記録媒体などを通じて不正(有害)命令{=不正(有害)コマンド}や不正(有害)プログラムを情報処理手段に不正に侵入させ、その情報処理手段を不正に操作すること』を阻止できる『不正侵入操作阻止機能を持つ情報処理手段』に関する。
なお、情報処理手段としては例えばコンピューター、サーバー、ルーター、スイッチ、ATM(現金自動預け払い機)、POS(販売時点情報管理)端末、携帯電話やPHS等の無線通信手段、パソコン、「インターネット等に(直接)接続した、プログラムを内蔵するレコーダー」、ネット家電、「OSが組み込まれた機器」、情報処理システム、プログラムで情報処理(計算、演算処理も含む。)する手段等が有る。
また、不正プログラムとしては例えばコンピューター・ウイルス(ウイルス・プログラム)、ワーム・プログラム、バクテリア・プログラム、ロジック・ボム(論理爆弾)、トロイの木馬、スパイウェア等が有る。
さらに、記録媒体としては例えばフロッピー(★注:登録商標)・ディスク、各種CD、各種DVDまたはMOディスク等が有る。
【0002】
従って、本発明は不正命令(=不正コマンド)や不正プログラムを直接的または間接的(例:踏み台攻撃。)に使った「サイバー・テロ」、「不正侵入操作によるネット犯罪」、「システム・ダウン」、「システムの蓄積データの改ざん、勝手な消去、勝手な読出し」、「Webページ、ブログ、ホーム・ページもしくは掲示板の不当、違法な書換え、消去」、「侵入したシステムからの違法、勝手な情報発信」、「他の情報処理手段への感染、転移、増殖」、「不正侵入操作によるID・パスワードの不正、違法入手」、「バック・ドアーの不当、違法な構築、通信記録の不当、違法な消去」及び「スパイウェアによる不当、違法な情報収集」等を完璧(かんぺき)に阻止できる。
ただし、内部不正協力者などに「本発明の機能を打ち消す命令もしくはプログラム」を本発明の情報処理手段で実行させないことが必要である。
{ 参照:最後の補足説明の●m)項[段落番号0038]。 }
【0003】
そして、後述[段落番号0011]する『不正侵入操作阻止機能を持つ情報処理手段』では多値や多進法の情報処理手段などを使わずに、従来の2値または2進法の情報処理手段などを改良して疑似的に多値の情報処理動作を行い、実質的に2値または2進法の情報処理動作を行う為、現在、過去、将来の2値または2進法のソフトウェア資産を流用、活用し易いので、早期の実用化の面で極めて有利である。
【背景技術】
【0004】
情報処理手段への不正侵入、不正操作を防止する方法としてファイアー・ウォール、ワクチン・プログラム、ウイルス識別用定義ファイルの更新、セキュリティー・ホールの穴埋め等のソフト・ウェア的な対策・手法が取られているが、「その対策等を上回る、あるいは、その対策等の盲点を突く新手(あらて)の不正(有害)命令や不正(有害)プログラム等の不正侵入操作手段」が次から次へと出現し、さらに、それらに対する対策・手法などの開発、という具合に最近は「いたちごっこ」の様な状況である。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平04−205695号
【発明の概要】
【発明が解決しようとする課題】
【0006】
このため『外部から情報処理手段に送り込まれる不正命令(=不正コマンド)や不正プログラムが、たとえ、どんなに強化されたり、進化・変異したりしても、あるいは、その手口がどの様に変わっても、あるいは、セキュリティー・ホールが在っても、その不正命令や不正プログラムが実行されるのを阻止できることが望まれる』という課題が有る。
( 課 題 )
そこで、本発明は『外部から情報処理手段に送り込まれる不正命令(=不正コマンド)や不正プログラムが、たとえ、どんなに強化されたり、進化・変異したりしても、あるいは、その手口がどの様に変わっても、あるいは、セキュリティー・ホールが在っても、その不正命令や不正プログラムが実行されるのを完璧(かんぺき)に阻止することができる、不正侵入操作阻止機能を持つ情報処理手段』を提供することを目的としている。
( 発明の目的 )
【課題を解決するための手段】
【0007】
先ず第1に、本発明は、
所定の複数をNで表わしたとき、
「1つ又は複数の『(N+1)値または(N+1)値以上の値で表現された命令』から成る1つ又は複数のプログラム手段」と、
「『前記1つ又は複数のプログラム手段』だけを実行して情報処理を行い、N値またはN値以下で表現された入力情報を外部から取り入れる情報処理手段」と、
「前記情報処理手段の外部情報入口部分または入力途中部分に設けられ、前記入力情報のN値以外の無用な情報部分を除去する無用情報除去手段」、
を有することを特徴とする不正侵入操作阻止機能を持つ情報処理手段である。
又は、本発明は、
所定の複数をNで表わしたとき、
「下記プログラム手段だけを実行して情報処理を行い、N値またはN値以下で表現された入力情報を外部から取り入れる情報処理手段」と、
「前記情報処理手段の外部情報入口部分または入力途中部分に設けられ、前記入力情報のN値以外の無用な情報部分を除去する無用情報除去手段」と、
「1つ又は複数の『前記情報処理手段に所定の情報処理を実行させる、(N+1)値または(N+1)値以上の値で表現された命令』から成り、前記情報処理手段に与えられるプログラム手段」、
を有することを特徴とする不正侵入操作阻止機能を持つ情報処理手段である。
【0008】
このことによって、所定の複数をNで表わしたとき、その情報処理手段は「(N+1)値または(N+1)値以上の値で表現(又は表記)された命令だけ」を実行し、「N値またはそれ以下の値で表現(又は表記)された、いかなる命令も」実行しない。なぜなら、その情報処理手段が実行する命令に「N値またはそれ以下の値で表現(又は表記)された命令」は存在しないからである。
しかも、その情報処理手段が外部から取り入れる入力情報{例:無害な通常データ、不正命令・不正プログラムが潜(ひそ)むデータ等。}が、たとえ(N+1)値または(N+1)値以上の値で表現(又は表記)されていても、その無用情報除去手段が「そのN値以外の、(N+1)値または(N+1)値以上の値で表現(又は表記)された無用または有害な入力情報部分」を除去する。
その結果、もはや、「その入力情報に潜む不正命令や不正プログラム」はその情報処理手段の命令やプログラムとして機能しなくなり、無害化するので、その情報処理手段が「その入力情報に潜む不正命令や不正プログラム」を実行することは完全に無くなる。
【発明の効果】
【0009】
その結果、『外部からその情報処理手段に送り込まれる不正命令(=不正コマンド)や不正プログラムが、たとえ、どんなに強化されたり、進化・変異したりしても、あるいは、その手口がどの様に変わっても、あるいは、セキュリティー・ホールが在っても、その不正命令や不正プログラムが実行されるのを完璧(かんぺき)に阻止することができる』という効果が本発明に有る。
従って、その情報処理手段は「不正命令や不正プログラムを使う悪意のある外部侵入者等」によって支配、操作されることは無い。乗っ取られることは無い。ただし、内部不正協力者などに「本発明の機能を打ち消す命令またはプログラム」を本発明の情報処理手段で実行させないことが必要である。参照:最後の補足説明の●m)項[段落番号0038]。
【0010】
また第2に、本発明が下記の「不正侵入操作阻止機能を持つ情報処理手段」に対応する場合、(N+1)値が数値『0』から数値『N』までの(N+1)個の数値を意味し、数値『N』が(N+1)値における最大数値に相当する。数値『N+1』が(N+1)値における最大数値に相当するのではない。数値『N+1』と(N+1)値を混同しない様に注意する必要がある。これらの事は(N+1)値以上でも同様である。
◆◆(N+1)値が数値0から数値Nまでの(N+1)個の数値を意味し、
数値0からNまたはN以上までの各数値が「低電位から高電位まで」又は「高電位から低電位まで」の所定の各電位と順々に1対1ずつ対応し、
前記無用情報除去手段が、「前記入力情報を入力する1つ又は複数の入力線の各電位を、数値(N−1)に対応する電位にクランプして、数値Nまたは数値N以上の数値に対応する各電位になるのを阻止する電位クランプ手段」であることを特徴とする前述[段落番号0007]した不正侵入操作阻止機能を持つ情報処理手段。◆◆
【0011】
さらに第3に、本発明が下記の「不正侵入操作阻止機能を持つ情報処理手段」に対応する場合、その情報処理手段は疑似的に3値回路であるが、実質的に2値回路2つを数値的に分離独立させて組み合わせ、その『内部命令や内部プログラム』とその『内部データや外部データ』を完全に分離、独立させた手段である。この手段では数値『1』と数値『2』が情報処理(計算、演算処理も含む。)の面で互いに完全に独立しており、情報処理によって数値『1』から数値『2』になることも無いし、逆に数値『2』から数値『1』になることも無い。ただ数値『0』が共通なだけである。
但し、内部プログラム中に数値データが在る場合、その数字コード中の数値『2』を数値『1』に変換することはある。つまり、データ・バスは共通であるが、数値『0』と数値『1』が第1の2値回路の専用『数値』である一方、数値『2』は実質的には第2の2値回路の数値『1』に相当し、数値『2』は第2の2値回路内では数値『1』として扱われ、数値『0』と数値『2』が第2の2値回路の専用『数値』である。もちろんデータ・バス上で両2値回路の数値信号が互いに干渉しない様に同時に行き交(か)うことは無い。
◆◆N=2で、数値0が対応する所定の電位をv0で表わし、数値1が対応する所定の電位をv1で表わし、数値2が対応する所定の電位をv2で表わしたとき、
前記プログラム手段が数値1を除いた数値0と数値2で表現され、
前記情報処理手段が「前記プログラム手段を電位v0と電位v2で出力する専用の2値メモリー手段」を有し、
前記情報処理手段が数値0と数値1の2値または2進法で情報処理することを特徴とする前述[段落番号0010]した不正侵入操作阻止機能を持つ情報処理手段。◆◆
【0012】
第1の2値回路は主に『CPU(中央演算処理装置)内の、プログラム・カウンターや命令レジスタ等の命令解読手段などを除く制御手段と、通常のレジスタ群を含む演算手段(1つ又は複数)』、通常のデータ専用のメモリー手段(1つ又は複数)、入出力制御手段(1つ又は複数)、それから、必要に応じて周辺回路手段(1つ又は複数)等から成る。
周辺回路手段としては例えばDMA(ダイレクト・メモリー・アクセス)、MMU(メモリー管理ユニット)、システム・タイマー、データ用「CD、DVD、ハード・ディスク装置」、キー・ボード、表示装置、音声発生装置、プリンター等が有る。第1の2値回路は数値『0』と数値『1』を通常の2値データ用に使用し、その2値データを情報処理したり、入出力したり、データ専用のメモリー手段や周辺LSIや周辺回路から読み込んだり、そのメモリー手段等に書き込んだりする。
【0013】
一方、第2の2値回路は、主に『CPU内のプログラム・カウンターや命令レジスタ等の命令解読手段などの制御手段(1つ又は複数)』と内部プログラム専用のメモリー手段(1つ又は複数)、あとは必要に応じてプログラム専用「CD、DVD、ハード・ディスク装置(1つ又は複数)」、「信頼できる内部プログラム専用の入出力制御手段(1つ又は複数)」等から成る。数値『0』と数値『2』を内部命令・内部プログラム用に使用して、そのプログラム専用メモリー手段からその内部命令・内部プログラムを読み取る。当然、その内部命令・内部プログラムの内容、手順に基づき第1の2値回路はその2値データの情報処理(計算、演算処理も含む。)等を行う。
このため、プログラム専用2値メモリー手段は「数値『0』に対応する電位v0」と「数値『2』に対応する電位v2」を出力するのであるが、本来の「数値『1』に対応する電位v1」を「数値『2』に対応する電位v2」に変換して出力することになる。もしくは、始めからプログラム専用の2値メモリー手段が電位v2対応型で、「数値『1』に対応する電位v2」を出力できるタイプのメモリー手段である。
【0014】
また、第2の2値回路の制御手段は「電位v2入力をそのまま電位v2として」又は「(電位v1入力を電位v0と見なし、)電位v2入力だけを電位v1に戻して」どちらにしても数値『2』を数値『1』として扱って制御信号処理を行う。
その結果、たとえ外部から読み込む入力情報に不正命令や不正プログラムが潜んでいたとしても、それらは数値『0』と『1』で書かれており、一方、前述[段落番号0011]した情報処理手段は数値『0』と『2』で書かれた命令しか実行しないから、それら不正命令や不正プログラムが実行されることは無い。
以上の通り本発明が前述[段落番号0011]の「不正侵入操作阻止機能を持つ情報処理手段」に対応する場合、従来の2値もしくは2進法の情報処理手段などを応用、利用できる上に、2値もしくは2進法のプログラム中の数値『1』をただ数値『2』に置き換えることによって現在、過去、将来の2値もしくは2進法のソフトウェア資産を流用、活用ることができる。
( 前述[段落番号0011]した発明の追加効果 )
【0015】
なお、第2の2値回路の制御手段は、アドレス信号をアドレス・バスに出力するときデータ専用メモリー手段に対してなのか、プログラム専用メモリー手段に対してなのかを区別するためにメモリー指定信号をシステム制御線を通じて出力し、この指定信号を受けた方のメモリー手段がそのメモリー内容をデータ・バスに出力する。従って、データ専用メモリー空間もプログラム専用メモリー空間も、全アドレスをフルに活用できるから、全メモリー空間は2倍になる。もちろん、どちらのメモリー空間も一部をIO(入出力)アドレス空間や周辺回路アドレス空間に割り当てても構わない。
あるいは、両方の専用メモリー手段が同一のメモリー空間を分け合っても構わない。このアドレスやメモリー空間に関する事はデータ用ハード・ディスク装置とプログラム用ハード・ディスク装置の両方が有る場合でも同様である。
それから、3値のメモリー手段を使用できる場合、プログラム専用メモリー手段とデータ専用メモリー手段を共通化して1つにまとめることができる。同様に、3値記録のハード・ディスク装置を使用できる場合も両専用ハード・ディスク装置を共通化して1つにまとめることができる。
【0016】
それから第4に、本発明が下記の「不正侵入操作阻止機能を持つ情報処理手段」に対応する場合、電位v2と電位v1が電位v0を挟んで電位v0の上下に在るので、「数値『2』と数値『1』がノイズ等で入(い)り交(ま)じり難くなったり、両数値の判別が間違い難くなったりする」という効果が有る。
( 下記発明の追加効果 )
◆◆電位v0〜v2の高さの順序を電位v2、v0、v1の順序で順々に「高くなって行く順序」又は「低くなって行く順序」に変更し、
前記電位クランプ手段がクランプする電位を電位v0に変更したことを特徴とする前述[段落番号0011]した不正侵入操作阻止機能を持つ情報処理手段。◆◆
【0017】
■■ 関連出願 ■■
なお、本発明は多値技術もしくは多進法技術を応用するので、ダイオード手段のほかに参考までに多値(又は多進法)論理回路、多値メモリー(多値記憶手段)、多値変調通信手段、多値記録手段、多出力電源手段等の関連出願・関連資料などを以下に示す。
【特許文献2】特開平9−270687(順電圧の小さいダイオード手段)
【特許文献3】特表2002−517937(多値論理回路)
【特許文献4】特開2004−32702(多値論理回路、本発明者の出願)
【特許文献5】特願2004−34260(同上)
【特許文献6】特願2005−33620(同上){★特許文献4〜6で、2値のブール代数(2値論理)に代わる多値の新しい代数(多値論理)を本発明者は提案・開示★}
【特許文献7】米国特許第3,663,837号(3値記憶手段)
【特許文献8】米国特許第4,990,796号(同上)
【特許文献9】特許第2,853,041号(多値記憶手段、本発明者の出願)
【特許文献10】特開2000−83369(同上)
【特許文献11】特開2001−257570(同上)
【特許文献12】WO 03/028214 A1(同上)(国内手続済み)
【特許文献13】特開2003−188696(同上)
【特許文献14】特開2004−88763(同上)
【特許文献15】特願2004−303564(同上)
【特許文献16】特開平2−32760(多出力電源手段、定電圧手段の節約)
【特許文献17】特開平5−199738(多出力電源手段、特許登録済み)
【特許文献18】特開平9−98567(多出力電源手段、本発明者の出願)
【特許文献19】特開2004−152369(多値情報記録手段)
【特許文献20】特開2004−215037(自動車内の多値変調通信手段)
【特許文献21】特開2004−215295(無線の多値変調通信手段)
【非特許文献1】『日経エレクトロニクス2004/5/10』のp.61〜68。『多値PAM(パルス波振幅変調)』。日経BP社発行。(有線の多値変調通信手段)
【0018】
また、下記共振型電源手段などは最後の補足説明の●r)項[段落番号0040]の通り容易に多出力電源化できる。
【特許文献22】特許第3,187,470号(共振型DC−DC電源手段)
【特許文献23】特許第3,187,411号(同上)(駆動電力の節約)
【特許文献24】特許第3,333,504号(同上)(簡単な駆動手段)
【特許文献25】特許第3,477,136号(同上)(定電圧制御)
【特許文献26】特許第3,494,303号(同上)(少ない巻線数)
【特許文献27】特許第3,521,055号(同上)(制御手段の削減)
【特許文献28】特許第3,645,274号(同上)(発振起動のアシスト)
【特許文献29】特開平11−332234(共振型AC−DC電源手段)
【特許文献30】特願2000−404396(同上)
【図面の簡単な説明】
【0019】
【図1】本発明の実施例1の構成の概略を示す概略図である。
【図2】3値の命令解読手段に使う多値論理回路の1例を示す回路図である。
【図3】3値の命令解読手段に使う多値論理回路の1例を示す回路図である。
【図4】3値の命令解読手段に使う多値論理回路の1例を示す回路図である。
【図5】3値で表現された命令を解読する回路などの1例を示す回路図である。
【図6】m値の多値メモリー手段の1例を示す回路図である。
【図7】本発明の実施例3の構成の概略を示す概略図である。
【図8】本発明の実施例4の構成の概略を示す概略図である。
【図9】本発明の構成手段(電位クランプ手段)の2例を示す回路図である。
【図10】本発明の構成手段(電位クランプ手段)の2例を示す回路図である。
【図11】第2発明の1実施例の構成の概略を示す概略図である。
【発明を実施するための最良の形態】
【0020】
本発明をより詳細に説明する為に、以下、添付図面に従ってこれを説明する。なお、電源線V0の電位を電位v0、電源線V1の電位を電位v1、電源線V2の電位を電位v2で表している。電位v0からv1、v2へと順々に電位は高くなる。
【実施例1】
【0021】
図1に前述した所定の複数Nが2である実施例を示す。場合によっては必要な「同期信号線などの通信制御線」、モデム、TA(ターミナル・アダプター)、ダイヤル・アップ・ルーター、または、DSU(ディジタル・サービス・ユニット)等は図示されていない。情報処理手段1は「3値で表現または表記された1つ又は複数の命令から或るプログラム」に基づいて数値『0』と『1』の2値で2進法の情報処理(演算処理等も含む。)を行い、「普通2値で表現または表記された入力情報」を通信線4からシリアルに取り入れる。
その情報の取入れの時、たとえ、その入力情報が有害な3値で表現または表記された情報(例:不正命令、不正プログラム。)であったり、その有害な情報を含んでいたりしたとしても、クランプ・ダイオード2が強制的にその3値部分を除去して2値にするので、その入力情報は無害化する。つまり、たとえ、その入力情報に「3値で表現(又は表記)された不正命令や不正プログラム」などが潜む等したとしても、その「不正命令や不正プログラム」などは強制的に2値化されるので、もはや情報処理手段1の命令やプログラムとして機能することができなくなる。その結果、情報処理手段1は「悪意のある外部侵入者」等によって支配、操作されることは無い。乗っ取られることは無い。
但し、内部不正協力者などが「その2値の入力情報を3値に書き直す3値の不正命令または不正プログラム」を情報処理手段1に注入して実行させることが無い様に監視、管理する必要が有る。 { 参照:最後の補足説明の●m)項[段落番号0038]。 }
【0022】
なお、図1の実施例は前述[段落番号0010]した「不正侵入操作阻止機能を持つ情報処理手段」に対応し、前記3値は例えば数値『0』、『1』、『2』の3値で、数値『0』が電位v0に、数値『1』が電位v1に、数値『2』が電位v2にそれぞれ1対1ずつ対応する。電位v0から電位v1、電位v2へと順々に電位は高くなる。
また、入力情報はふつう数値『0』と『1』の2値で表現(又は表記)されているが、たとえ数値『0』、『1』、『2』の3値で表現(又は表記)されていたとしても、クランプ・ダイオード2(前述[段落番号0010]した電位クランプ手段に相当。)が強制的に数値『2』を数値『1』に変換し、つまり、入出力線3の電位を電位v1にクランプする。
さらに、情報処理手段1が実行する各命令は、その命令コード(オペコード及びオペランド)の桁(けた)が何桁であっても必ず「その命令コードの少なくとも1つの桁が数値『2』である命令」すなわち「3値で表現(又は表記)された命令」である。普通オペコードだけを3値表現すれば十分であるが、オペランドも3値表現しても構わないし、オペランドだけ3値表現しても構わない。いずれにしても、オペコード、オペランドどちらかの少なくとも1つの桁は数値『2』である。
それから、その3値の命令信号等がデータ・バスに乗るとき、その命令信号等のやり取りをクランプ・ダイオード2が妨げない様にIO(入出力)制御手段(図示せず。)などが入出力線3とデータ・バスの間を切り離す。
そして、フロッピー(注:登録商標)・ディスク装置、各種CD装置、各種DVD装置、MOディスク装置などの外部データ、外部情報を読み込む記録装置の場合、システム制御線を除いてデータ入出力線は通信線4の様に別のクランプ・ダイオード(無用情報除去手段)と別の入出力ポート(図示せず。)を介して情報処理手段1に接続される。その一方、信頼できる3値の内部プログラム専用のIO(入出力)制御手段や各種ディスク装置などの場合、当然、その様なクランプ・ダイオード(無用情報除去手段)は必要が無い。
【0023】
実施例1の「3値表現された命令」の解読手段の仕組みを図5に、多値メモリー手段の1例を図6に、3値の多値(または多進法)論理回路の3例を図2〜4に、それぞれ示す。図5では例えば『201021』の3値で表現された命令を解読する回路の1例が示されているが、その具体的な命令内容は「本発明技術を採用する回路設計、開発者など」が決める。先ず、3値6桁(けた)の命令レジスタは図6の多値メモリー手段においてm=3にした3値メモリー手段の6個から成り、電源線V0の電位v0が数値『0』に、電源線V1の電位v1が数値『1』に、電源線V2の電位v2が数値『2』に、それぞれ対応する。その3値メモリー手段の構成を簡単に言えば、図6の回路において電源線V0・電源線V2間の構成と入出力端子Tioだけを残してほかの構成を取り除き、ダイオードDu2の両端を短絡してダイオードDu2を取り除いた構成である。
【0024】
ここで、図6の多値メモリー手段(特願2004−303564)のm値メモリー動作について説明する。ただし、電源線V4〜電源線V(m−1)の各電位も電位v4〜電位v(m−1)で表わす。電源線V0・電源線V(m−1)間に接続された(m−1)個の2値C・MOSメモリーが連携してm値メモリー動作を行う際に電源短絡が起きない様にダイオードDu1〜Du(m−2)及びDl2〜Dl(m−1)が接続されている。
例えば電位v0を数値『0』に、電位v1を数値『1』に、同様に電位v(m−1)まで電位v(m−1)を数値『m−1』に、それぞれ対応させるのが一般的であるが、勿論それ以外の使い方も可能である。
具体的な動作について言えば、入出力端子Tioが電位v0を出力する時トランジスタQ1〜Q(m−1)はオンであるが、ダイオードDl2〜Dl(m−1)がトランジスタQ2〜Q(m−1)とトランジスタQ1の電源短絡を阻止する。また、入出力端子Tioが電位v(m−1)を出力する時トランジスタP1〜P(m−1)はオンであるが、ダイオードDu1〜Du(m−2)がトランジスタP(m−1)とトランジスタP1〜P(m−2)の電源短絡を阻止する。さらに、入出力端子Tioが電位v1を出力する時トランジスタP1及びQ2〜Q(m−1)はオンであるが、ダイオードDl3〜Dl(m−1)がトランジスタQ3〜Q(m−1)とトランジスタQ2の電源短絡を阻止する。しかも、このとき、「トランジスタP1とダイオードDu1の直列回路」と「ダイオードDl2とトランジスタQ2の直列回路」の並列回路が実質的に双方向性プル手段つまり「プル・アップまたはプル・ダウンする手段」を構成する。あと同様に、入出力端子Tioが電位v2〜電位v(m−2)それぞれの電位を出力する時、各トランジスタは同様にオンもしくはオフ状態を維持し、各ダイオードは同様に電源短絡を阻止し、同様な各並列回路が実質的に双方向性プル手段を構成する。この多値メモリー手段の書き込みは入出力端子Tioをプル・アップ又はプル・ダウンして所定の電位に保持して行い、その読み出しは入出力端子Tioの電位もしくは電圧を検出して行う。それから、図6の多値メモリー手段をメモリー・セルとして使う時ワード選択方式を利用することができる。
【0025】
つぎに、図2〜図4に示す「3値の多値(または多進法)論理回路(特開2004−32702、特願2004−34260)」3つについて説明する。本発明者はこれらをAND多値回路(もしくは多値特定値AND回路。本当は多値AND回路の方が呼び易いが。)と名付けたが、2値のブール代数(2値論理)に代わる多値の新しい代数(多値論理)を考え出した。本発明者は多値(または多進法)の数値のうち、特定の数値を特定値として決め、入力数値がその特定値に対して大きいか小さいか(又は上か下か)、あるいは、等しいかどうかで出力数値を決める多値論理または多進法論理を考えた。
図4のAND多値回路は数値『0』を特定値とする数値『0』用のAND多値回路で、入力端子0In1〜0In3の数値がすべて『0』のとき数値『0』を出力し、そうでないとき出力を開放する。図2のAND多値回路は数値『1』を特定値とする数値『1』用のAND多値回路で、入力端子1In1〜1In3の数値がすべて『1』のとき数値『1』を出力し、そうでないとき出力を開放する。図3のAND多値回路は数値『2』を特定値とする数値『2』用のAND多値回路で、入力端子2In1〜2In3の数値がすべて『2』のとき数値『2』を出力し、そうでないとき出力を開放する。
なお、図2のAND多値回路ではプラス側入力しきい値電位は「電位v2と電位v1の中間電位」・電位v1間に在り、マイナス側入力しきい値電位は電位v1・「電位v1と電位v0の中間電位」間に在る。そして、図3のAND多値回路の入力しきい値電位は電位v2・「電位v2と電位v1の中間電位」間に在り、図4のAND多値回路の入力しきい値電位は「電位v1と電位v0の中間電位」・電位v0間に在る。
【0026】
従って、図5の「3値表現された命令」の解読手段の仕組み図では、命令レジスタの2桁目と6桁目の数値が『2』のとき出力端子Out2は数値『2』つまり電位v2を出力し、命令レジスタの1桁目と4桁目の数値が『1』のとき出力端子Out1は数値『1』つまり電位v1を出力し、命令レジスタの3桁目と5桁目の数値が『0』のとき出力端子Out0は数値『0』つまり電位v0を出力する。2値NOT回路は電位v0を電位v1に変換して2値AND回路へ出力する。2値AND回路は電位v2を電位v1と見なして論理処理するので、命令レジスタが『201021』の時だけ2値AND回路は数値『1』つまり電位v1を出力する。後は2値AND回路が数値『1』を出力した時だけ、『201021』で表現された命令を実行させれば良い。ここからは従来の2値2進法の情報処理なので、従来の2値の論理・演算回路などを使用できる。
【実施例2】
【0027】
段落番号[0011〜0016]に記載通りの実施例2(図示せず。)である。CPUは命令解読手段等で実質的に数値『2』を数値『1』として扱いながら「数値『0』と数値『2』の2値で表現または表記された命令」の内容と手順に基づいて演算手段などで数値『0』と『1』の2値で2値論理や2進法の情報処理を行う。その内部プログラムの入力部に「数値『1』を数値『0』と見なす回路」を設けて、通常の2値表現命令を受け付けない様にすれば、より安全性が高まる。例えば図3の数値『2』のAND多値回路において出力端子Out2を抵抗で電位v0にプル・ダウンした回路が有る。
【実施例3】
【0028】
図7に示す実施例3では情報処理手段が3重の城壁構造になっており、情報処理手段1aは主に「ダウン・ロードした、2値で表現(又は表記)された外部プログラム」に基づき2進法で情報処理を行い、情報処理手段1bは「3値で表現(又は表記)された通常の内部プログラム」に基づき2進法または3進法で情報処理を行い、情報処理手段1cは「4値または4値以上で表現(又は表記)された重要な内部プログラム(例:システム管理プログラム、OS等。)」に基づき2進法、3進法、4進法あるいは4進法以上で情報処理を行う。
数値『0』が電位v0に、数値『1』が電位v1に、数値『2』が電位v2に、数値『3』が電位v3、数値『4』が電位v4に、それぞれ1対1ずつ対応する。後は必要に応じて数値『5』が電位v5に対応する等するが、電位v0から電位v1、電位v2、電位v3、電位v4、電位v5……へと順々に電位は高くなる。
SA1〜SA4〜……は第1CPU、第1メモリー手段(1つ又は複数)、1つ又は複数の第1周辺回路手段であり、SB1〜SB2〜……は第2CPU、第2メモリー手段(1つ又は複数)、そして必要に応じて1つ又は複数の第2周辺回路手段であり、SC1〜……は第3CPU、第3メモリー手段(1つ又は複数)、そして必要に応じて1つ又は複数の第3周辺回路手段である。
さらに、6a〜6cは第1〜第3入出力制御手段である。第2CPUは第1CPUを監督し、第1CPUの情報処理動作の開始、続行、停止を制御する。第3CPUは第2CPUと第1CPUを監督し、両CPUの情報処理動作の開始、続行、停止を制御する。その為に、これら3CPUの各間にはシステム制御線(図示せず。)が接続されている。
なお、本発明者はアドレス・バスや他のシステム制御線は図示せず、省略している。また、説明を分かり易くする為にデータ・バスは1本に、入出力制御手段6a〜6cは1個ずつにしているが、データ・バスが複数本有る場合、各入出力制御手段6a〜6cは少なくともSIO(シリアル入出力制御手段)とPIO(パラレル入出力制御手段)の2種類が有る場合も有ることになる。さらに、情報処理手段1b、1cそれぞれが本発明の「不正侵入操作阻止機能を持つ情報処理手段」に相当する。それから、図1の実施例1では実行できなかった無害な通常の2値の外部プログラムは情報処理手段1aで実行する。
【実施例4】
【0029】
図8に示す実施例4は図7の実施例3の構成を一部変更しており、情報処理手段1bとクランプ・ダイオード2aの組合せ、情報処理手段1cとクランプ・ダイオード2bの組合せの各組が本発明の「不正侵入操作阻止機能を持つ情報処理手段」に相当する。
【実施例5】
【0030】
実施例2を使って図7の実施例3の様に3重の城壁構造にした実施例5(図示せず。)が可能である。この場合、第1〜第3CPUは実質的に2値2進法のCPUで、いずれも実質的に数値『0』と数値『1』の2値2進法で情報処理を行う。ただし、命令、プログラムに関して第1CPUは「数値『0』と数値『1』の2値で表現された命令」に基づいて情報処理を行い、第2CPUは第2CPUの命令解読手段などで実質的に数値『2』を数値『1』として扱いながら「数値『0』と数値『2』の2値で表現された命令」に基づいて情報処理を行い、第3CPUは第3CPUの命令解読手段などで実質的に数値『3』を数値『1』として扱いながら「数値『0』と数値『3』の2値で表現された命令」に基づいて情報処理を行う。
すなわち、情報処理手段1aでは第1CPUが『外部からダウン・ロードした2値の外部プログラム』に基づいて数値『0』と数値『1』の2値で2値2進法の情報処理を行い、情報処理手段1bでは第2CPUが「疑似的に3値で(実質的には数値『0』と数値『2』の2値で)表現された通常の内部プログラム」に基づいて数値『0』と数値『1』の2値で2値2進法の情報処理を行い、情報処理手段1cでは第3CPUは「疑似的に4値で(実質的に数値『0』と数値『3』の2値で)表現された重要な内部プログラム(例:システム管理プログラム、OS等。)」に基づいて数値『0』と数値『1』の2値で2値2進法の情報処理を行う。第2CPUは第1CPUのリセット端子などのCPU制御端子を用いたり、第1CPUへのクロック信号を遮断(しゃだん)・遮断解除したり等して第1CPUの動作の開始、続行、停止を制御する。必要なら、第1CPUの停止中に第2CPUが情報処理手段1aを初期化しても良い。第3CPUも同様にして第1、第2CPUそれぞれを制御する。
【実施例6】
【0031】
図9〜図10に本発明の構成手段である無用情報除去手段(電位クランプ手段)として利用できる『順電圧の小さいトランジスタ式ダイオード手段』を4例示す。(参考:特開平9−270687号。)図9(a)と図10(a)の両ダイオード手段は互いに電圧極性もしくは電圧方向に関して対称的な関係に有る。図9(b)と図10(b)の両ダイオード手段も互いに同様の関係に有る。
図1、図7〜図8の各実施例においてクランプ・ダイオード2、2a〜2cそれぞれの代わりに図10のどちらかのトランジスタ式ダイオード手段を1つずつ使用した実施例も可能である。この場合、例えば電位v0・電位v1間電源(図示せず。)又は電位v1・電位v2間電源(図示せず。)又は電位v2・電位v3間電源(図示せず。)が直流電源7に相当する。順電圧の小さい電位クランプ手段を使うと、「クランプし損ねにより数値『2』が数値『1』に成り損ねて数値『2』のまま通過してしまう恐れ」が極めて少なくなる。これは数値『3』や数値『4』の場合でも同様である。
図9(a)のダイオード手段の動作を説明をする。トランジスタ12の内蔵ダイオードによりそのままでもダイオード作用が有るが、「直流電源7、トランジスタ13、ダイオード10及び抵抗8」が、トランジスタ12のドレイン・ソース間電圧を検出し、そのドレイン・ソース間電圧に基づき抵抗9と共にトランジスタ12をオン・オフ駆動する。
そのドレイン電位がそのソース電位より高いとき、抵抗8の電流はトランジスタ13のベース電流になるので、トランジスタ13はオンで、トランジスタ12をオフに保つ。一方、そのドレイン電位がそのソース電位より低いとき、抵抗8の電流はダイオード10と「端子11・端子14間に接続される外部回路等」に流れるので、トランジスタ13はオフで、抵抗9がトランジスタ12をオンに保つ。ダイオード10はレベル・シフト・ダイオードを兼ねている。
図9(b)のダイオード手段はトランジスタ12のオン駆動を強化したもので、トランジスタ18、13の両エミッタ接合が直列接続されているので、それに合わせてレベル・シフト用にダイオード10が2つ直列接続されている。トランジスタ13のベース・エミッタ間にオフ駆動用の抵抗を接続しても構わない。
【0032】
■■ 最後に、以下の事を補足する。 ■■
●a)本発明の「不正侵入操作阻止機能を持つ情報処理手段」は例えば11値以上の10進法の情報処理手段でも構わない。要するにN=2に限定されない。
●b)図1の実施例において入出力線3の数はもちろん複数、パラレルでも構わない。ただし、各入出力線3にクランプ・ダイオード2を1つずつ接続する必要が有る。
●c)例えば図1の実施例において入力情報の電位がv2になったとき、その入力情報にウイルス・プログラム等が潜(ひそ)んでいると認定し、その入力情報を本発明手段の外のウイルス・プログラム専用の隔離したメモリー手段に保管しておく等の対策をすることが考えられる。
●d)前記3値の電位の高低が正反対に、例えば図1の実施例において『0』が電位v2に、『1』が電位v1に、『2』が電位v0にそれぞれ1対1ずつ対応しても良いが、クランプ・ダイオード2の向きは正反対である必要が有る。
●e)各電位の大本(おおもと)の基準電位は例えば電子機器のボディ(筺体)・アース電位、大地アース電位あるいは電位v0等である。
●f)3値は数値『0』、『1』、『2』ではなく、数値『−1』、『0』、『1』でも良く、(N+1)値の(N+1)番目の数値を数値『−1』にしても良い。あるいは、符号『a』、『b』、『c』でも良いし、符号『α』、『β』、『γ』でも良いが、実質的な意味は数値と同じである。
【0033】
●g)数値『0』〜『N−1』等の各数値と「高低の各周波数の信号」が1対1ずつ対応する場合、例えば、本発明の情報処理手段がモデム等を内蔵し、そのモデム等の外部情報入口部分に前述の無用情報除去手段を設ける場合、その無用情報除去手段は特定の周波数信号を通過させるパス・フィルター又はバンド・パス・フィルターになる。また、多値PAM(パルス波振幅変調)の場合は例えば特定の振幅値以上を通さないよう振幅制限するリミッター手段が前述の無用情報除去手段に相当する。
{参考:前述(段落番号0017)の特許文献20、21と非特許文献1。}
さらに、位相変調や周波数変調の場合に、位相弁別や周波数弁別の後に例えば特定の振幅値以上を通さないよう振幅制限するリミッター手段(前述の無用情報除去手段)を設けても良い。この様に外部情報の入力途中に無用情報除去手段を設けても良い。
●h)次の様に第2の不正侵入操作阻止方法が考えられる。内部プログラム、内部データ、外部プログラム、外部データを区別する標識{ひょうしき、mark(マーク)。}をそれぞれの先頭部分、途中箇所あるいは一番後ろに付ける。ここで、一番安全な方法は内部プログラムかどうかをチェックして、できるだけ内部プログラムしか実行しないことである。
また、外部プログラム、外部データを内部データ領域のメモリー手段などに絶対に書き込まないことである。仕方無く、外部プログラムを実行する時は、監視用の内部プログラムを実行して、その外部プログラムの処理作業を常に監視する。しかも、その外部プログラムが使用できる命令を限定する。
外部データや外部プログラムが不正プログラムであるかどうかの判別方法について。前述の通り前記の標識で外部プログラムと内部プログラムの区別が付くから、外部プログラムが内部データや内部プログラムに対して何か不正操作しないかどうか監視する。外部データが命令やプログラムとして機能しないかどうかを監視する。そして、「実行しているプログラム」が終了前にサブルーチンでもないのに唐突に内部プログラムから外部プログラムに跳(と)ばないかどうかを前記標識を通じて監視する。一定期間の間に前記標識のいずれかを読み込んでいるかどうかを監視する。不正プロ、グラムの場合、そのプログラム中には前記標識はいずれも存在しない筈。
【0034】
●i)上記の標識(ひょうしき)の例としては、例えば14値の10進法コンピューターの場合なら数値『0』〜『13』の14値のうち、数値『0』〜『9』を10進法の表示に用いる。また、数値『10』が外部データを、数値『11』が外部プログラムを、数値『12』が内部データを、数値『13』が内部プログラムを、それぞれ示す標識にする。この場合、数値『10』又は数値『10』以上の数値を通させない様に無用情報除去手段は、通信の入力電位を「数値『9』に対応する電位」にクランプしたり、あるいは、通信の入力信号周波数を「数値『9』に対応する周波数」までしか通さないパス・フィルター又はバンド・パス・フィルターだったり等する。
さらに、内部、外部データと内部、外部プログラムの各標識が互いに混同され難くする為に、数値『−2』〜『11』の14値のうち、数値『0』〜『9』を10進法表示に用い、数値『−2』が外部プログラムを、数値『−1』が外部データを、数値『10』が内部データを、数値『11』が内部プログラムを、それぞれ示す標識にしても良い。要するに、10進法表示用の数値『0』〜『9』の両側または上下に「外部データ、外部プログラム」の標識と「内部データ、内部プログラム」の標識を別々に配置する。この場合、数値『0』〜『9』だけを通す様に無用情報除去手段は、通信入力電位の最高電位を「数値『9』に対応する電位」にクランプし、通信入力電位の最低電位を「数値『0』に対応する電位」にクランプしたり、又は、通信の入力信号周波数を「数値『0』〜数値『9』に対応する各周波数」しか通さないパス・フィルター又はバンド・パス・フィルターだったりなどする。
それから、内部、外部データと内部、外部プログラムの各開始点(各先頭)、各継続中(各途中)、各終了点(各最後尾)を表示するのに、例えば同じ標識を2回続けるとその開始点を意味し、標識1回表示の時その継続中を意味し、同じ標識を3回続けるとその終了点を意味する様にすることが考えられる。ただ桁数が多ければ11値でも多数の組合せ、多数の標識を作れるので、11値でも充分だが。具体例を言えば、数値『10』を数値『A』で表記したとき、4桁で『A,001』、『A,011』、『A,111』それぞれが外部プログラムの開始点、継続中、終了点の各標識を表わし、『A,002』、『A,022』、『A,222』それぞれが外部データの開始点、継続中、終了点の各標識を表わし、『A,003』、『A,033』、『A,333』それぞれが内部プログラムの開始点、継続中、終了点の各標識を表わし、そして、『A,004』、『A,044』、『A,444』それぞれが内部データの開始点、継続中、終了点の各標識を表わす様にするのである。
ところで、各プログラム・ユニットごとに、各サブルーチン・プログラムごとに同様な開始点、継続中、終了点の各標識を付けることが考えられる。「あるプログラムの実行中に」すなわち「終了点の標識が出ないうちに」サブルーチンでもないのに別のプログラムの標識に切り換われば、不正プログラムの実行または異常事態を検出することができる。
【0035】
●j)少なくとも「ファイアー・ウォールやIDS(不正侵入検知システム)など、絶対に不正侵入操作されてはいけない実行プログラムやOS」だけでも、本発明の様に「その命令コード等が3値または3値以上で表現された命令」で構成し、更に無用情報除去手段を設ければ、「これらの実行プログラムやOS」への攻撃を完璧(ぺき)に防御できるので、そのファイアー・ウォールやIDSは完全に機能する。一般的に、ファイアー・ウォールやIDS等は汎用基本ソフトウェア(OS)上で動いている為、そのOSそのものが攻撃されると機能しない恐れがある。そこで、最近、ウィルス対策を施した専用OSを組み込んだハードウェア機器の内部でソフトウェアを動かす方向にシフトしつつあるが。
【0036】
●k)ネットワーク等のコンピューター通信技術やCD等の記録媒体技術は自動車技術等ほど歴史が無いので、又は、人命に直接影響を与える場合を想定する必要が無かったので、仕方無いのかもしれないが、コンピューター通信技術等には自動車技術等の『フェイル・セーフ』の様な設計思想が無いから不正侵入操作を許してしまっている様に思える。万一、故障しても、欠陥が有っても、『安全な方向へ故障するとか、無害な状態で機能停止するとか』という設計思想、または、始めから『少しくらい欠陥(例:セキュリティ・ホール。)が有っても、平気で安全にきちんと機能する』という設計思想が無い様に思える。
結局、現在のコンピューターはソフトウェアに対しては全くの『丸裸、無防備』だから、即ち、いかなる命令、プログラム、ソフトウェアも忠実に実行してしまうから、不正有害命令や不正有害プログラムを実行したり、又は、それらからコンピューターを守るファイアー・ウォールやワクチン・プログラムやIDSなどを実行したり等する。あとはソフトウェア同士の攻防(こうぼう)次第(しだい)で不正侵入操作されるかどうかが決まる。
このためソフトウェアのみに依存した『フェイル・セーフ』は根本的に存在しないと本発明者は考える。それらの事を踏まえて、例えば図7の実施例の様に『ハードウェア』で各ソフトウェア、各プログラム、各命令をランク付けして区別し、各特定領域(例:情報処理手段1a、1b、1c内の各領域など。)別に実行できる命令、プログラム、ソフトウェアをがっちり限定すれば、『フェイル・セーフ』の設計思想へ1歩でも近付くことができる。
つまり、『より信頼できる、より重要なソフトウェア、プログラム、命令に対して強力なパワー、特権をハードウェア的に与える』のである。この様にハードウェアとの連携が極めて重要である。特に将来、自動車の車内通信と車内外通信が入(い)り交(ま)じり易くなりつつあり、万が一でも、車載コンピューターに不正侵入、不正操作されると、人命の安全面から非常に危険である。
【0037】
●l)そもそも、インターネット通信や記録などにおいてダウン・ロード用の通常データと外部プログラムをハードウェア的に分離して通信あるいは記録・再生しないから、通常データを通じてウイルス・プログラム等が侵入し、実行されることを許している。メールなど、通常データのやり取りだけで不正侵入操作を許している。その具体的な防止方法は例えば「ダウン・ロード用の通常データは2値表示、ダウン・ロード用の外部プログラムは3値表示で通信する様に改め、その通常データの出入口部に『2値情報だけを通し、3値もしくは3値以上の情報を通過さない無用情報除去手段』を設けることによってその通常データに潜むウイルス・プログラム等を無害化し、その通常データを命令やプログラムとして扱うことができない仕組みを作る」ことである。そして、情報処理手段は外部プログラム専用の出入口部で『3値表示された外部プログラム』を『その外部プログラム』として取り込み、外部プログラム専用メモリー空間に書き込み、3値表現の命令、プログラムだけを実行する。できれば、外部ソフトウェア専用の出入口部には3値の情報だけを通し、4値もしくは4値以上の情報を通過さない無用情報除去手段を設け、重要なシステム命令やシステム・プログラム等は4値もしくは4値以上で表現、表記する様にし、本発明の様に情報処理する。
【0038】
●m)なお、本発明技術に関して特に注意する事は『N値もしくはN値以下で表現された外部データや外部プログラムを(N+1)値もしくは(N+1)値以上の表現に書き換える内部プログラムを設ける』という愚かな事はしないことである。その様な書き換えを可能にすることはわざわざ自ら本発明の機能を打ち消して、セキュリティー・ホールをつくる様なものであり、セキュリティー面で大きな問題が有り、危険である。ということは『内部不正協力者などがその様な書換え内部プログラムをシステムに注入しない様に監視、管理する必要が有る』ということである。
ただし、次の方法は有る。例えば図7の実施例において通常の内部プログラムも4値で表現し、OS等の重要な内部プログラムと一緒に情報処理手段1cで情報処理を行い、2値の外部プログラムのうち、不正命令や不正プログラム等が潜(ひそ)んでないと確実にチェックできたものだけを3値で表現し直す様にする。つまり、それを2値表現から3値表現に書き換えて、情報処理手段1bで情報処理を行うのである。
あるいは、情報処理手段の全体を同様な情報処理手段1a〜1dの4重の(城壁)構造にし、情報処理手段1aでは信頼性チェックをしていない外部プログラムを実行し、情報処理手段1bでは信頼性チェックをパスした外部プログラムを実行し、情報処理手段1cでは通常の内部プログラムを実行し、情報処理手段1dでは重要な内部プログラムを実行する様にする。これらの事は上記のk)項とl)項の場合についても言える。結局『本発明の大本(おおもと)の狙いは堅持する』ということである。
また、内部不正協力者などが『外部データの記載内容に隷属(れいぞく)的に従う内部不正プログラム』を情報処理手段に注入しない様に監視、管理する必要が有る。この意味は『不正命令や不正プログラムを言葉で表現し直したもの、記号化し直したもの、暗号化し直したもの』を外部データが含む場合に、その書き直した不正命令や不正プログラムに隷属(れいぞく)的に従う内部不正プログラム』を情報処理手段に注入させてはいけない、という意味である。この事は本発明に限らず、すべての情報処理手段について言える。(新しい不正侵入操作方法?)
【0039】
●n)電子政府手続の政府側の情報処理手段などの場合、インターネット等を通じて外部プログラム、ソフトウェアをダウン・ロードする必要は無いから、実施例1(図1)または実施例2(段落番号0027)の様な構成で間に合う。また、その方が安全性はより高くなる。
●o)『インターネット通信や記録媒体などからダウン・ロードした外部ソフトウェアに不正有害命令や不正有害プログラムが潜(ひそ)んでいないかどうか』のチェックを容易にする方法について。外部ソフトウェアにアルゴリズムを添付させ、先ず、そのアルゴリズムをチェックする。そのアルゴリズムに問題が無ければ、そのアルゴリズムとその外部ソフトウェアとの間で対比チェックし、その外部ソフトウェアが忠実にそのアルゴリズムを反映、具体化しているかどうかをチェックする。不必要、余計なプログラム又は命令が挿入、潜入されていないかどうかをチェックする。できるなら、上記l)項に記載の方法で、外部ソフトウェアとアルゴリズム(=通常データ)をハードウェア的に分離して通信もしくは記録・再生する。
●p)『本発明技術を使う情報処理手段』を『ハッキングの踏み台』に用いることは全くできないから、もし世の中の情報処理手段がすべて本発明技術を使えば、ハッキングは不可能になるので、『ハッキングの踏み台による大量のメール送信』という踏み台攻撃はできなくなり、この手のサイバー・テロやシステム・ダウンは無くなる。
●q)『本発明技術を使うサーバー』では不正侵入操作によって『不正アクセスに対するログ・ファイル等の記録』を消去することも、書き換えることもできないし、バック・ドアーを作成することもできない。
【0040】
●r)段落番号[0018]に列挙した特許文献22〜28の各共振型DC−DCコンバータ回路の多出力電源化について。電力を出力する各出力用変圧器にさらに1つ又は複数の出力巻線を磁気結合させ、各出力電圧を整流、平滑した後、3端子レギュレーター等で定電圧制御すれば、容易に多出力電源化することができる。既に元々の出力巻線の電圧は各制御回路で定電圧制御されていたり、あるいは、帰還用もしくは回生用の巻線とダイオードでほぼ一定化されていたりするので、追加の各出力巻線の直流電圧は大まかに定電圧化されている。あとは各3端子レギュレーター等できっちり定電圧制御すれば良い。そして、各直流出力電圧を各・2電源線間の直流電圧に使う。
同様に、特許文献29〜30の各共振型AC−DCコンバータ回路でも同様な方法で多出力電源化することができる。
●s)従来の2進法コンピューターにおいて、データ・バスをプログラム用データ・バスと通常データ用データ・バスの2つに分離し、メモリー手段なども別々にプロクラム用とデータ用の2つに分離しても、実施例2(段落番号0027)と同じ様な機能を果たすことができる。ただし、ダウン・ロードした外部プログラムを実行できない。
●t)電位クランプ手段としては他にも例えば『電源線V1・電源線V0間にP・MOS(上位側)とN・MOS(下位側)を直列接続したNOT回路(インバータ回路)を2段接続して非反転型にした回路』や『電源線V1・電源線V0間にN・MOS(上位側)とP・MOS(下位側)を直列接続した非反転型バッファー回路』が有る。
●u)電位クランプ手段に使うダイオード手段としては他にも例えば、「そのコレクタとベースを直結したバイポーラ・トランジスタ」、「そのドレインとソースを直結した接合型FET」、「そのドレインとゲートを直結したバイポーラ・モードのSIT又はGTBT」、「そのゲート、バック・ゲート及びソースを接続したノーマリィ・オフ型MOS・FET」、「そのゲートとバック・ゲート、ソースとドレインをそれぞれ接続したノーマリィ・オフ型MOS・FET」、「そのドレイン・バックゲート間、そのソース・バックゲート間それぞれが導通しない様にそのバックゲート電位を保ち、そのドレインとゲートを接続したノーマリィ・オフ型MOS・FET」が有る。
【0041】
●v)説明の便宜上、入力端子、出力端子、入出力端子と呼んだが、実際には端子として存在せず、単なる導線や電極などである場合が多い。これは例えばトランジスタのベース端子、ベース電極、ベース・リード線あるいは単にベースという呼び方がされるのと同様である。
●w)図5の3値表現命令の桁数を増やしたければ、各数値のAND多値回路の入力端子0In3、1In3、2In3を前述と同様に使えば良い。あるいは、各AND多値回路の入力部のトランジスタを増やして各入力数を増やし、同様に使えば良い。
●x)図5の1解読例では3値の表現命令だったが、4値の表現命令の場合は以下の様にする。図3の回路を数値『3』用に変更する為に、図3中の電源線V1の所を電源線V2に接続し直し、同じく電源線V2の所を電源線V3に接続し直せば、図3の回路は数値『3』のAND多値回路になる。それから図2の回路を2つ用意し、一方をそのまま数値『1』のAND多値回路とする。他方を数値『2』用に変更する為に、図2中の電源線V0の所を電源線V1に接続し直し、電源線V1の所を電源線V2に接続し直し、電源線V2の所を電源線V3に接続し直せば、他方の図2の回路は数値『2』のAND多値回路になる。そして、図4の回路はそのまま数値『0』のAND多値回路とする。結局、図3と図4の両回路の間に図2の回路を1つ追加し、図3の回路と「追加した図2の回路」それぞれが接続する電源線の電位を1つずつ上げれば良い。5値の表現命令の場合も同様にさらに図2の回路を1つ追加して、同様に電源電位を1つずつ上げて行けば良い。あとは、図5の回路において、追加した回路の各出力端子と電源線V0の間にプル・ダウン用の抵抗を1つずつ接続し、その出力を「入力端子を追加した2値AND回路」に入力すれば良い。
●y)実施例5(段落番号0030)において第2CPUが第1CPUを制御する方法について。情報処理手段1aにウイルス・プログラム等が侵入したと情報処理手段1bが判断した時、第2CPUは第1CPUと情報処理手段1a内の通常メモリー手段にリセット信号を出力し、同時にその通常メモリー手段から対策用メモリー手段に強制的に切り換えた後そのリセット信号の出力を止めて、第1CPUに対策プログラムを実行させることが考えられる。第1CPUはその対策プログラムに従い所定の必要な対策処理をする。同様に、情報処理手段1bの処理動作に不手際などが発生した時、第3CPUが強制的に情報処理手段1b内のメモリー手段を切り換えて第2CPUを制御することが考えられる。
【産業上の利用可能性】
【0042】
最近、頻繁(ひんぱん)に起こる不正侵入操作事件を考えれば、一日も早く実用化する必要性、利用可能性が有る。特に実施例1、2、5の早い利用可能性が大いに有る。
【技術分野】
【0001】
本発明は、多値技術または多進法技術を用いて(又は疑似的にその技術を用いて)『例えば外部からインターネット等の有線通信手段や無線通信手段、光ファイバー、記録媒体などを通じて不正(有害)命令{=不正(有害)コマンド}や不正(有害)プログラムを情報処理手段に不正に侵入させ、その情報処理手段を不正に操作すること』を阻止できる『不正侵入操作阻止機能を持つ情報処理手段』に関する。
なお、情報処理手段としては例えばコンピューター、サーバー、ルーター、スイッチ、ATM(現金自動預け払い機)、POS(販売時点情報管理)端末、携帯電話やPHS等の無線通信手段、パソコン、「インターネット等に(直接)接続した、プログラムを内蔵するレコーダー」、ネット家電、「OSが組み込まれた機器」、情報処理システム、プログラムで情報処理(計算、演算処理も含む。)する手段等が有る。
また、不正プログラムとしては例えばコンピューター・ウイルス(ウイルス・プログラム)、ワーム・プログラム、バクテリア・プログラム、ロジック・ボム(論理爆弾)、トロイの木馬、スパイウェア等が有る。
さらに、記録媒体としては例えばフロッピー(★注:登録商標)・ディスク、各種CD、各種DVDまたはMOディスク等が有る。
【0002】
従って、本発明は不正命令(=不正コマンド)や不正プログラムを直接的または間接的(例:踏み台攻撃。)に使った「サイバー・テロ」、「不正侵入操作によるネット犯罪」、「システム・ダウン」、「システムの蓄積データの改ざん、勝手な消去、勝手な読出し」、「Webページ、ブログ、ホーム・ページもしくは掲示板の不当、違法な書換え、消去」、「侵入したシステムからの違法、勝手な情報発信」、「他の情報処理手段への感染、転移、増殖」、「不正侵入操作によるID・パスワードの不正、違法入手」、「バック・ドアーの不当、違法な構築、通信記録の不当、違法な消去」及び「スパイウェアによる不当、違法な情報収集」等を完璧(かんぺき)に阻止できる。
ただし、内部不正協力者などに「本発明の機能を打ち消す命令もしくはプログラム」を本発明の情報処理手段で実行させないことが必要である。
{ 参照:最後の補足説明の●m)項[段落番号0038]。 }
【0003】
そして、後述[段落番号0011]する『不正侵入操作阻止機能を持つ情報処理手段』では多値や多進法の情報処理手段などを使わずに、従来の2値または2進法の情報処理手段などを改良して疑似的に多値の情報処理動作を行い、実質的に2値または2進法の情報処理動作を行う為、現在、過去、将来の2値または2進法のソフトウェア資産を流用、活用し易いので、早期の実用化の面で極めて有利である。
【背景技術】
【0004】
情報処理手段への不正侵入、不正操作を防止する方法としてファイアー・ウォール、ワクチン・プログラム、ウイルス識別用定義ファイルの更新、セキュリティー・ホールの穴埋め等のソフト・ウェア的な対策・手法が取られているが、「その対策等を上回る、あるいは、その対策等の盲点を突く新手(あらて)の不正(有害)命令や不正(有害)プログラム等の不正侵入操作手段」が次から次へと出現し、さらに、それらに対する対策・手法などの開発、という具合に最近は「いたちごっこ」の様な状況である。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平04−205695号
【発明の概要】
【発明が解決しようとする課題】
【0006】
このため『外部から情報処理手段に送り込まれる不正命令(=不正コマンド)や不正プログラムが、たとえ、どんなに強化されたり、進化・変異したりしても、あるいは、その手口がどの様に変わっても、あるいは、セキュリティー・ホールが在っても、その不正命令や不正プログラムが実行されるのを阻止できることが望まれる』という課題が有る。
( 課 題 )
そこで、本発明は『外部から情報処理手段に送り込まれる不正命令(=不正コマンド)や不正プログラムが、たとえ、どんなに強化されたり、進化・変異したりしても、あるいは、その手口がどの様に変わっても、あるいは、セキュリティー・ホールが在っても、その不正命令や不正プログラムが実行されるのを完璧(かんぺき)に阻止することができる、不正侵入操作阻止機能を持つ情報処理手段』を提供することを目的としている。
( 発明の目的 )
【課題を解決するための手段】
【0007】
先ず第1に、本発明は、
所定の複数をNで表わしたとき、
「1つ又は複数の『(N+1)値または(N+1)値以上の値で表現された命令』から成る1つ又は複数のプログラム手段」と、
「『前記1つ又は複数のプログラム手段』だけを実行して情報処理を行い、N値またはN値以下で表現された入力情報を外部から取り入れる情報処理手段」と、
「前記情報処理手段の外部情報入口部分または入力途中部分に設けられ、前記入力情報のN値以外の無用な情報部分を除去する無用情報除去手段」、
を有することを特徴とする不正侵入操作阻止機能を持つ情報処理手段である。
又は、本発明は、
所定の複数をNで表わしたとき、
「下記プログラム手段だけを実行して情報処理を行い、N値またはN値以下で表現された入力情報を外部から取り入れる情報処理手段」と、
「前記情報処理手段の外部情報入口部分または入力途中部分に設けられ、前記入力情報のN値以外の無用な情報部分を除去する無用情報除去手段」と、
「1つ又は複数の『前記情報処理手段に所定の情報処理を実行させる、(N+1)値または(N+1)値以上の値で表現された命令』から成り、前記情報処理手段に与えられるプログラム手段」、
を有することを特徴とする不正侵入操作阻止機能を持つ情報処理手段である。
【0008】
このことによって、所定の複数をNで表わしたとき、その情報処理手段は「(N+1)値または(N+1)値以上の値で表現(又は表記)された命令だけ」を実行し、「N値またはそれ以下の値で表現(又は表記)された、いかなる命令も」実行しない。なぜなら、その情報処理手段が実行する命令に「N値またはそれ以下の値で表現(又は表記)された命令」は存在しないからである。
しかも、その情報処理手段が外部から取り入れる入力情報{例:無害な通常データ、不正命令・不正プログラムが潜(ひそ)むデータ等。}が、たとえ(N+1)値または(N+1)値以上の値で表現(又は表記)されていても、その無用情報除去手段が「そのN値以外の、(N+1)値または(N+1)値以上の値で表現(又は表記)された無用または有害な入力情報部分」を除去する。
その結果、もはや、「その入力情報に潜む不正命令や不正プログラム」はその情報処理手段の命令やプログラムとして機能しなくなり、無害化するので、その情報処理手段が「その入力情報に潜む不正命令や不正プログラム」を実行することは完全に無くなる。
【発明の効果】
【0009】
その結果、『外部からその情報処理手段に送り込まれる不正命令(=不正コマンド)や不正プログラムが、たとえ、どんなに強化されたり、進化・変異したりしても、あるいは、その手口がどの様に変わっても、あるいは、セキュリティー・ホールが在っても、その不正命令や不正プログラムが実行されるのを完璧(かんぺき)に阻止することができる』という効果が本発明に有る。
従って、その情報処理手段は「不正命令や不正プログラムを使う悪意のある外部侵入者等」によって支配、操作されることは無い。乗っ取られることは無い。ただし、内部不正協力者などに「本発明の機能を打ち消す命令またはプログラム」を本発明の情報処理手段で実行させないことが必要である。参照:最後の補足説明の●m)項[段落番号0038]。
【0010】
また第2に、本発明が下記の「不正侵入操作阻止機能を持つ情報処理手段」に対応する場合、(N+1)値が数値『0』から数値『N』までの(N+1)個の数値を意味し、数値『N』が(N+1)値における最大数値に相当する。数値『N+1』が(N+1)値における最大数値に相当するのではない。数値『N+1』と(N+1)値を混同しない様に注意する必要がある。これらの事は(N+1)値以上でも同様である。
◆◆(N+1)値が数値0から数値Nまでの(N+1)個の数値を意味し、
数値0からNまたはN以上までの各数値が「低電位から高電位まで」又は「高電位から低電位まで」の所定の各電位と順々に1対1ずつ対応し、
前記無用情報除去手段が、「前記入力情報を入力する1つ又は複数の入力線の各電位を、数値(N−1)に対応する電位にクランプして、数値Nまたは数値N以上の数値に対応する各電位になるのを阻止する電位クランプ手段」であることを特徴とする前述[段落番号0007]した不正侵入操作阻止機能を持つ情報処理手段。◆◆
【0011】
さらに第3に、本発明が下記の「不正侵入操作阻止機能を持つ情報処理手段」に対応する場合、その情報処理手段は疑似的に3値回路であるが、実質的に2値回路2つを数値的に分離独立させて組み合わせ、その『内部命令や内部プログラム』とその『内部データや外部データ』を完全に分離、独立させた手段である。この手段では数値『1』と数値『2』が情報処理(計算、演算処理も含む。)の面で互いに完全に独立しており、情報処理によって数値『1』から数値『2』になることも無いし、逆に数値『2』から数値『1』になることも無い。ただ数値『0』が共通なだけである。
但し、内部プログラム中に数値データが在る場合、その数字コード中の数値『2』を数値『1』に変換することはある。つまり、データ・バスは共通であるが、数値『0』と数値『1』が第1の2値回路の専用『数値』である一方、数値『2』は実質的には第2の2値回路の数値『1』に相当し、数値『2』は第2の2値回路内では数値『1』として扱われ、数値『0』と数値『2』が第2の2値回路の専用『数値』である。もちろんデータ・バス上で両2値回路の数値信号が互いに干渉しない様に同時に行き交(か)うことは無い。
◆◆N=2で、数値0が対応する所定の電位をv0で表わし、数値1が対応する所定の電位をv1で表わし、数値2が対応する所定の電位をv2で表わしたとき、
前記プログラム手段が数値1を除いた数値0と数値2で表現され、
前記情報処理手段が「前記プログラム手段を電位v0と電位v2で出力する専用の2値メモリー手段」を有し、
前記情報処理手段が数値0と数値1の2値または2進法で情報処理することを特徴とする前述[段落番号0010]した不正侵入操作阻止機能を持つ情報処理手段。◆◆
【0012】
第1の2値回路は主に『CPU(中央演算処理装置)内の、プログラム・カウンターや命令レジスタ等の命令解読手段などを除く制御手段と、通常のレジスタ群を含む演算手段(1つ又は複数)』、通常のデータ専用のメモリー手段(1つ又は複数)、入出力制御手段(1つ又は複数)、それから、必要に応じて周辺回路手段(1つ又は複数)等から成る。
周辺回路手段としては例えばDMA(ダイレクト・メモリー・アクセス)、MMU(メモリー管理ユニット)、システム・タイマー、データ用「CD、DVD、ハード・ディスク装置」、キー・ボード、表示装置、音声発生装置、プリンター等が有る。第1の2値回路は数値『0』と数値『1』を通常の2値データ用に使用し、その2値データを情報処理したり、入出力したり、データ専用のメモリー手段や周辺LSIや周辺回路から読み込んだり、そのメモリー手段等に書き込んだりする。
【0013】
一方、第2の2値回路は、主に『CPU内のプログラム・カウンターや命令レジスタ等の命令解読手段などの制御手段(1つ又は複数)』と内部プログラム専用のメモリー手段(1つ又は複数)、あとは必要に応じてプログラム専用「CD、DVD、ハード・ディスク装置(1つ又は複数)」、「信頼できる内部プログラム専用の入出力制御手段(1つ又は複数)」等から成る。数値『0』と数値『2』を内部命令・内部プログラム用に使用して、そのプログラム専用メモリー手段からその内部命令・内部プログラムを読み取る。当然、その内部命令・内部プログラムの内容、手順に基づき第1の2値回路はその2値データの情報処理(計算、演算処理も含む。)等を行う。
このため、プログラム専用2値メモリー手段は「数値『0』に対応する電位v0」と「数値『2』に対応する電位v2」を出力するのであるが、本来の「数値『1』に対応する電位v1」を「数値『2』に対応する電位v2」に変換して出力することになる。もしくは、始めからプログラム専用の2値メモリー手段が電位v2対応型で、「数値『1』に対応する電位v2」を出力できるタイプのメモリー手段である。
【0014】
また、第2の2値回路の制御手段は「電位v2入力をそのまま電位v2として」又は「(電位v1入力を電位v0と見なし、)電位v2入力だけを電位v1に戻して」どちらにしても数値『2』を数値『1』として扱って制御信号処理を行う。
その結果、たとえ外部から読み込む入力情報に不正命令や不正プログラムが潜んでいたとしても、それらは数値『0』と『1』で書かれており、一方、前述[段落番号0011]した情報処理手段は数値『0』と『2』で書かれた命令しか実行しないから、それら不正命令や不正プログラムが実行されることは無い。
以上の通り本発明が前述[段落番号0011]の「不正侵入操作阻止機能を持つ情報処理手段」に対応する場合、従来の2値もしくは2進法の情報処理手段などを応用、利用できる上に、2値もしくは2進法のプログラム中の数値『1』をただ数値『2』に置き換えることによって現在、過去、将来の2値もしくは2進法のソフトウェア資産を流用、活用ることができる。
( 前述[段落番号0011]した発明の追加効果 )
【0015】
なお、第2の2値回路の制御手段は、アドレス信号をアドレス・バスに出力するときデータ専用メモリー手段に対してなのか、プログラム専用メモリー手段に対してなのかを区別するためにメモリー指定信号をシステム制御線を通じて出力し、この指定信号を受けた方のメモリー手段がそのメモリー内容をデータ・バスに出力する。従って、データ専用メモリー空間もプログラム専用メモリー空間も、全アドレスをフルに活用できるから、全メモリー空間は2倍になる。もちろん、どちらのメモリー空間も一部をIO(入出力)アドレス空間や周辺回路アドレス空間に割り当てても構わない。
あるいは、両方の専用メモリー手段が同一のメモリー空間を分け合っても構わない。このアドレスやメモリー空間に関する事はデータ用ハード・ディスク装置とプログラム用ハード・ディスク装置の両方が有る場合でも同様である。
それから、3値のメモリー手段を使用できる場合、プログラム専用メモリー手段とデータ専用メモリー手段を共通化して1つにまとめることができる。同様に、3値記録のハード・ディスク装置を使用できる場合も両専用ハード・ディスク装置を共通化して1つにまとめることができる。
【0016】
それから第4に、本発明が下記の「不正侵入操作阻止機能を持つ情報処理手段」に対応する場合、電位v2と電位v1が電位v0を挟んで電位v0の上下に在るので、「数値『2』と数値『1』がノイズ等で入(い)り交(ま)じり難くなったり、両数値の判別が間違い難くなったりする」という効果が有る。
( 下記発明の追加効果 )
◆◆電位v0〜v2の高さの順序を電位v2、v0、v1の順序で順々に「高くなって行く順序」又は「低くなって行く順序」に変更し、
前記電位クランプ手段がクランプする電位を電位v0に変更したことを特徴とする前述[段落番号0011]した不正侵入操作阻止機能を持つ情報処理手段。◆◆
【0017】
■■ 関連出願 ■■
なお、本発明は多値技術もしくは多進法技術を応用するので、ダイオード手段のほかに参考までに多値(又は多進法)論理回路、多値メモリー(多値記憶手段)、多値変調通信手段、多値記録手段、多出力電源手段等の関連出願・関連資料などを以下に示す。
【特許文献2】特開平9−270687(順電圧の小さいダイオード手段)
【特許文献3】特表2002−517937(多値論理回路)
【特許文献4】特開2004−32702(多値論理回路、本発明者の出願)
【特許文献5】特願2004−34260(同上)
【特許文献6】特願2005−33620(同上){★特許文献4〜6で、2値のブール代数(2値論理)に代わる多値の新しい代数(多値論理)を本発明者は提案・開示★}
【特許文献7】米国特許第3,663,837号(3値記憶手段)
【特許文献8】米国特許第4,990,796号(同上)
【特許文献9】特許第2,853,041号(多値記憶手段、本発明者の出願)
【特許文献10】特開2000−83369(同上)
【特許文献11】特開2001−257570(同上)
【特許文献12】WO 03/028214 A1(同上)(国内手続済み)
【特許文献13】特開2003−188696(同上)
【特許文献14】特開2004−88763(同上)
【特許文献15】特願2004−303564(同上)
【特許文献16】特開平2−32760(多出力電源手段、定電圧手段の節約)
【特許文献17】特開平5−199738(多出力電源手段、特許登録済み)
【特許文献18】特開平9−98567(多出力電源手段、本発明者の出願)
【特許文献19】特開2004−152369(多値情報記録手段)
【特許文献20】特開2004−215037(自動車内の多値変調通信手段)
【特許文献21】特開2004−215295(無線の多値変調通信手段)
【非特許文献1】『日経エレクトロニクス2004/5/10』のp.61〜68。『多値PAM(パルス波振幅変調)』。日経BP社発行。(有線の多値変調通信手段)
【0018】
また、下記共振型電源手段などは最後の補足説明の●r)項[段落番号0040]の通り容易に多出力電源化できる。
【特許文献22】特許第3,187,470号(共振型DC−DC電源手段)
【特許文献23】特許第3,187,411号(同上)(駆動電力の節約)
【特許文献24】特許第3,333,504号(同上)(簡単な駆動手段)
【特許文献25】特許第3,477,136号(同上)(定電圧制御)
【特許文献26】特許第3,494,303号(同上)(少ない巻線数)
【特許文献27】特許第3,521,055号(同上)(制御手段の削減)
【特許文献28】特許第3,645,274号(同上)(発振起動のアシスト)
【特許文献29】特開平11−332234(共振型AC−DC電源手段)
【特許文献30】特願2000−404396(同上)
【図面の簡単な説明】
【0019】
【図1】本発明の実施例1の構成の概略を示す概略図である。
【図2】3値の命令解読手段に使う多値論理回路の1例を示す回路図である。
【図3】3値の命令解読手段に使う多値論理回路の1例を示す回路図である。
【図4】3値の命令解読手段に使う多値論理回路の1例を示す回路図である。
【図5】3値で表現された命令を解読する回路などの1例を示す回路図である。
【図6】m値の多値メモリー手段の1例を示す回路図である。
【図7】本発明の実施例3の構成の概略を示す概略図である。
【図8】本発明の実施例4の構成の概略を示す概略図である。
【図9】本発明の構成手段(電位クランプ手段)の2例を示す回路図である。
【図10】本発明の構成手段(電位クランプ手段)の2例を示す回路図である。
【図11】第2発明の1実施例の構成の概略を示す概略図である。
【発明を実施するための最良の形態】
【0020】
本発明をより詳細に説明する為に、以下、添付図面に従ってこれを説明する。なお、電源線V0の電位を電位v0、電源線V1の電位を電位v1、電源線V2の電位を電位v2で表している。電位v0からv1、v2へと順々に電位は高くなる。
【実施例1】
【0021】
図1に前述した所定の複数Nが2である実施例を示す。場合によっては必要な「同期信号線などの通信制御線」、モデム、TA(ターミナル・アダプター)、ダイヤル・アップ・ルーター、または、DSU(ディジタル・サービス・ユニット)等は図示されていない。情報処理手段1は「3値で表現または表記された1つ又は複数の命令から或るプログラム」に基づいて数値『0』と『1』の2値で2進法の情報処理(演算処理等も含む。)を行い、「普通2値で表現または表記された入力情報」を通信線4からシリアルに取り入れる。
その情報の取入れの時、たとえ、その入力情報が有害な3値で表現または表記された情報(例:不正命令、不正プログラム。)であったり、その有害な情報を含んでいたりしたとしても、クランプ・ダイオード2が強制的にその3値部分を除去して2値にするので、その入力情報は無害化する。つまり、たとえ、その入力情報に「3値で表現(又は表記)された不正命令や不正プログラム」などが潜む等したとしても、その「不正命令や不正プログラム」などは強制的に2値化されるので、もはや情報処理手段1の命令やプログラムとして機能することができなくなる。その結果、情報処理手段1は「悪意のある外部侵入者」等によって支配、操作されることは無い。乗っ取られることは無い。
但し、内部不正協力者などが「その2値の入力情報を3値に書き直す3値の不正命令または不正プログラム」を情報処理手段1に注入して実行させることが無い様に監視、管理する必要が有る。 { 参照:最後の補足説明の●m)項[段落番号0038]。 }
【0022】
なお、図1の実施例は前述[段落番号0010]した「不正侵入操作阻止機能を持つ情報処理手段」に対応し、前記3値は例えば数値『0』、『1』、『2』の3値で、数値『0』が電位v0に、数値『1』が電位v1に、数値『2』が電位v2にそれぞれ1対1ずつ対応する。電位v0から電位v1、電位v2へと順々に電位は高くなる。
また、入力情報はふつう数値『0』と『1』の2値で表現(又は表記)されているが、たとえ数値『0』、『1』、『2』の3値で表現(又は表記)されていたとしても、クランプ・ダイオード2(前述[段落番号0010]した電位クランプ手段に相当。)が強制的に数値『2』を数値『1』に変換し、つまり、入出力線3の電位を電位v1にクランプする。
さらに、情報処理手段1が実行する各命令は、その命令コード(オペコード及びオペランド)の桁(けた)が何桁であっても必ず「その命令コードの少なくとも1つの桁が数値『2』である命令」すなわち「3値で表現(又は表記)された命令」である。普通オペコードだけを3値表現すれば十分であるが、オペランドも3値表現しても構わないし、オペランドだけ3値表現しても構わない。いずれにしても、オペコード、オペランドどちらかの少なくとも1つの桁は数値『2』である。
それから、その3値の命令信号等がデータ・バスに乗るとき、その命令信号等のやり取りをクランプ・ダイオード2が妨げない様にIO(入出力)制御手段(図示せず。)などが入出力線3とデータ・バスの間を切り離す。
そして、フロッピー(注:登録商標)・ディスク装置、各種CD装置、各種DVD装置、MOディスク装置などの外部データ、外部情報を読み込む記録装置の場合、システム制御線を除いてデータ入出力線は通信線4の様に別のクランプ・ダイオード(無用情報除去手段)と別の入出力ポート(図示せず。)を介して情報処理手段1に接続される。その一方、信頼できる3値の内部プログラム専用のIO(入出力)制御手段や各種ディスク装置などの場合、当然、その様なクランプ・ダイオード(無用情報除去手段)は必要が無い。
【0023】
実施例1の「3値表現された命令」の解読手段の仕組みを図5に、多値メモリー手段の1例を図6に、3値の多値(または多進法)論理回路の3例を図2〜4に、それぞれ示す。図5では例えば『201021』の3値で表現された命令を解読する回路の1例が示されているが、その具体的な命令内容は「本発明技術を採用する回路設計、開発者など」が決める。先ず、3値6桁(けた)の命令レジスタは図6の多値メモリー手段においてm=3にした3値メモリー手段の6個から成り、電源線V0の電位v0が数値『0』に、電源線V1の電位v1が数値『1』に、電源線V2の電位v2が数値『2』に、それぞれ対応する。その3値メモリー手段の構成を簡単に言えば、図6の回路において電源線V0・電源線V2間の構成と入出力端子Tioだけを残してほかの構成を取り除き、ダイオードDu2の両端を短絡してダイオードDu2を取り除いた構成である。
【0024】
ここで、図6の多値メモリー手段(特願2004−303564)のm値メモリー動作について説明する。ただし、電源線V4〜電源線V(m−1)の各電位も電位v4〜電位v(m−1)で表わす。電源線V0・電源線V(m−1)間に接続された(m−1)個の2値C・MOSメモリーが連携してm値メモリー動作を行う際に電源短絡が起きない様にダイオードDu1〜Du(m−2)及びDl2〜Dl(m−1)が接続されている。
例えば電位v0を数値『0』に、電位v1を数値『1』に、同様に電位v(m−1)まで電位v(m−1)を数値『m−1』に、それぞれ対応させるのが一般的であるが、勿論それ以外の使い方も可能である。
具体的な動作について言えば、入出力端子Tioが電位v0を出力する時トランジスタQ1〜Q(m−1)はオンであるが、ダイオードDl2〜Dl(m−1)がトランジスタQ2〜Q(m−1)とトランジスタQ1の電源短絡を阻止する。また、入出力端子Tioが電位v(m−1)を出力する時トランジスタP1〜P(m−1)はオンであるが、ダイオードDu1〜Du(m−2)がトランジスタP(m−1)とトランジスタP1〜P(m−2)の電源短絡を阻止する。さらに、入出力端子Tioが電位v1を出力する時トランジスタP1及びQ2〜Q(m−1)はオンであるが、ダイオードDl3〜Dl(m−1)がトランジスタQ3〜Q(m−1)とトランジスタQ2の電源短絡を阻止する。しかも、このとき、「トランジスタP1とダイオードDu1の直列回路」と「ダイオードDl2とトランジスタQ2の直列回路」の並列回路が実質的に双方向性プル手段つまり「プル・アップまたはプル・ダウンする手段」を構成する。あと同様に、入出力端子Tioが電位v2〜電位v(m−2)それぞれの電位を出力する時、各トランジスタは同様にオンもしくはオフ状態を維持し、各ダイオードは同様に電源短絡を阻止し、同様な各並列回路が実質的に双方向性プル手段を構成する。この多値メモリー手段の書き込みは入出力端子Tioをプル・アップ又はプル・ダウンして所定の電位に保持して行い、その読み出しは入出力端子Tioの電位もしくは電圧を検出して行う。それから、図6の多値メモリー手段をメモリー・セルとして使う時ワード選択方式を利用することができる。
【0025】
つぎに、図2〜図4に示す「3値の多値(または多進法)論理回路(特開2004−32702、特願2004−34260)」3つについて説明する。本発明者はこれらをAND多値回路(もしくは多値特定値AND回路。本当は多値AND回路の方が呼び易いが。)と名付けたが、2値のブール代数(2値論理)に代わる多値の新しい代数(多値論理)を考え出した。本発明者は多値(または多進法)の数値のうち、特定の数値を特定値として決め、入力数値がその特定値に対して大きいか小さいか(又は上か下か)、あるいは、等しいかどうかで出力数値を決める多値論理または多進法論理を考えた。
図4のAND多値回路は数値『0』を特定値とする数値『0』用のAND多値回路で、入力端子0In1〜0In3の数値がすべて『0』のとき数値『0』を出力し、そうでないとき出力を開放する。図2のAND多値回路は数値『1』を特定値とする数値『1』用のAND多値回路で、入力端子1In1〜1In3の数値がすべて『1』のとき数値『1』を出力し、そうでないとき出力を開放する。図3のAND多値回路は数値『2』を特定値とする数値『2』用のAND多値回路で、入力端子2In1〜2In3の数値がすべて『2』のとき数値『2』を出力し、そうでないとき出力を開放する。
なお、図2のAND多値回路ではプラス側入力しきい値電位は「電位v2と電位v1の中間電位」・電位v1間に在り、マイナス側入力しきい値電位は電位v1・「電位v1と電位v0の中間電位」間に在る。そして、図3のAND多値回路の入力しきい値電位は電位v2・「電位v2と電位v1の中間電位」間に在り、図4のAND多値回路の入力しきい値電位は「電位v1と電位v0の中間電位」・電位v0間に在る。
【0026】
従って、図5の「3値表現された命令」の解読手段の仕組み図では、命令レジスタの2桁目と6桁目の数値が『2』のとき出力端子Out2は数値『2』つまり電位v2を出力し、命令レジスタの1桁目と4桁目の数値が『1』のとき出力端子Out1は数値『1』つまり電位v1を出力し、命令レジスタの3桁目と5桁目の数値が『0』のとき出力端子Out0は数値『0』つまり電位v0を出力する。2値NOT回路は電位v0を電位v1に変換して2値AND回路へ出力する。2値AND回路は電位v2を電位v1と見なして論理処理するので、命令レジスタが『201021』の時だけ2値AND回路は数値『1』つまり電位v1を出力する。後は2値AND回路が数値『1』を出力した時だけ、『201021』で表現された命令を実行させれば良い。ここからは従来の2値2進法の情報処理なので、従来の2値の論理・演算回路などを使用できる。
【実施例2】
【0027】
段落番号[0011〜0016]に記載通りの実施例2(図示せず。)である。CPUは命令解読手段等で実質的に数値『2』を数値『1』として扱いながら「数値『0』と数値『2』の2値で表現または表記された命令」の内容と手順に基づいて演算手段などで数値『0』と『1』の2値で2値論理や2進法の情報処理を行う。その内部プログラムの入力部に「数値『1』を数値『0』と見なす回路」を設けて、通常の2値表現命令を受け付けない様にすれば、より安全性が高まる。例えば図3の数値『2』のAND多値回路において出力端子Out2を抵抗で電位v0にプル・ダウンした回路が有る。
【実施例3】
【0028】
図7に示す実施例3では情報処理手段が3重の城壁構造になっており、情報処理手段1aは主に「ダウン・ロードした、2値で表現(又は表記)された外部プログラム」に基づき2進法で情報処理を行い、情報処理手段1bは「3値で表現(又は表記)された通常の内部プログラム」に基づき2進法または3進法で情報処理を行い、情報処理手段1cは「4値または4値以上で表現(又は表記)された重要な内部プログラム(例:システム管理プログラム、OS等。)」に基づき2進法、3進法、4進法あるいは4進法以上で情報処理を行う。
数値『0』が電位v0に、数値『1』が電位v1に、数値『2』が電位v2に、数値『3』が電位v3、数値『4』が電位v4に、それぞれ1対1ずつ対応する。後は必要に応じて数値『5』が電位v5に対応する等するが、電位v0から電位v1、電位v2、電位v3、電位v4、電位v5……へと順々に電位は高くなる。
SA1〜SA4〜……は第1CPU、第1メモリー手段(1つ又は複数)、1つ又は複数の第1周辺回路手段であり、SB1〜SB2〜……は第2CPU、第2メモリー手段(1つ又は複数)、そして必要に応じて1つ又は複数の第2周辺回路手段であり、SC1〜……は第3CPU、第3メモリー手段(1つ又は複数)、そして必要に応じて1つ又は複数の第3周辺回路手段である。
さらに、6a〜6cは第1〜第3入出力制御手段である。第2CPUは第1CPUを監督し、第1CPUの情報処理動作の開始、続行、停止を制御する。第3CPUは第2CPUと第1CPUを監督し、両CPUの情報処理動作の開始、続行、停止を制御する。その為に、これら3CPUの各間にはシステム制御線(図示せず。)が接続されている。
なお、本発明者はアドレス・バスや他のシステム制御線は図示せず、省略している。また、説明を分かり易くする為にデータ・バスは1本に、入出力制御手段6a〜6cは1個ずつにしているが、データ・バスが複数本有る場合、各入出力制御手段6a〜6cは少なくともSIO(シリアル入出力制御手段)とPIO(パラレル入出力制御手段)の2種類が有る場合も有ることになる。さらに、情報処理手段1b、1cそれぞれが本発明の「不正侵入操作阻止機能を持つ情報処理手段」に相当する。それから、図1の実施例1では実行できなかった無害な通常の2値の外部プログラムは情報処理手段1aで実行する。
【実施例4】
【0029】
図8に示す実施例4は図7の実施例3の構成を一部変更しており、情報処理手段1bとクランプ・ダイオード2aの組合せ、情報処理手段1cとクランプ・ダイオード2bの組合せの各組が本発明の「不正侵入操作阻止機能を持つ情報処理手段」に相当する。
【実施例5】
【0030】
実施例2を使って図7の実施例3の様に3重の城壁構造にした実施例5(図示せず。)が可能である。この場合、第1〜第3CPUは実質的に2値2進法のCPUで、いずれも実質的に数値『0』と数値『1』の2値2進法で情報処理を行う。ただし、命令、プログラムに関して第1CPUは「数値『0』と数値『1』の2値で表現された命令」に基づいて情報処理を行い、第2CPUは第2CPUの命令解読手段などで実質的に数値『2』を数値『1』として扱いながら「数値『0』と数値『2』の2値で表現された命令」に基づいて情報処理を行い、第3CPUは第3CPUの命令解読手段などで実質的に数値『3』を数値『1』として扱いながら「数値『0』と数値『3』の2値で表現された命令」に基づいて情報処理を行う。
すなわち、情報処理手段1aでは第1CPUが『外部からダウン・ロードした2値の外部プログラム』に基づいて数値『0』と数値『1』の2値で2値2進法の情報処理を行い、情報処理手段1bでは第2CPUが「疑似的に3値で(実質的には数値『0』と数値『2』の2値で)表現された通常の内部プログラム」に基づいて数値『0』と数値『1』の2値で2値2進法の情報処理を行い、情報処理手段1cでは第3CPUは「疑似的に4値で(実質的に数値『0』と数値『3』の2値で)表現された重要な内部プログラム(例:システム管理プログラム、OS等。)」に基づいて数値『0』と数値『1』の2値で2値2進法の情報処理を行う。第2CPUは第1CPUのリセット端子などのCPU制御端子を用いたり、第1CPUへのクロック信号を遮断(しゃだん)・遮断解除したり等して第1CPUの動作の開始、続行、停止を制御する。必要なら、第1CPUの停止中に第2CPUが情報処理手段1aを初期化しても良い。第3CPUも同様にして第1、第2CPUそれぞれを制御する。
【実施例6】
【0031】
図9〜図10に本発明の構成手段である無用情報除去手段(電位クランプ手段)として利用できる『順電圧の小さいトランジスタ式ダイオード手段』を4例示す。(参考:特開平9−270687号。)図9(a)と図10(a)の両ダイオード手段は互いに電圧極性もしくは電圧方向に関して対称的な関係に有る。図9(b)と図10(b)の両ダイオード手段も互いに同様の関係に有る。
図1、図7〜図8の各実施例においてクランプ・ダイオード2、2a〜2cそれぞれの代わりに図10のどちらかのトランジスタ式ダイオード手段を1つずつ使用した実施例も可能である。この場合、例えば電位v0・電位v1間電源(図示せず。)又は電位v1・電位v2間電源(図示せず。)又は電位v2・電位v3間電源(図示せず。)が直流電源7に相当する。順電圧の小さい電位クランプ手段を使うと、「クランプし損ねにより数値『2』が数値『1』に成り損ねて数値『2』のまま通過してしまう恐れ」が極めて少なくなる。これは数値『3』や数値『4』の場合でも同様である。
図9(a)のダイオード手段の動作を説明をする。トランジスタ12の内蔵ダイオードによりそのままでもダイオード作用が有るが、「直流電源7、トランジスタ13、ダイオード10及び抵抗8」が、トランジスタ12のドレイン・ソース間電圧を検出し、そのドレイン・ソース間電圧に基づき抵抗9と共にトランジスタ12をオン・オフ駆動する。
そのドレイン電位がそのソース電位より高いとき、抵抗8の電流はトランジスタ13のベース電流になるので、トランジスタ13はオンで、トランジスタ12をオフに保つ。一方、そのドレイン電位がそのソース電位より低いとき、抵抗8の電流はダイオード10と「端子11・端子14間に接続される外部回路等」に流れるので、トランジスタ13はオフで、抵抗9がトランジスタ12をオンに保つ。ダイオード10はレベル・シフト・ダイオードを兼ねている。
図9(b)のダイオード手段はトランジスタ12のオン駆動を強化したもので、トランジスタ18、13の両エミッタ接合が直列接続されているので、それに合わせてレベル・シフト用にダイオード10が2つ直列接続されている。トランジスタ13のベース・エミッタ間にオフ駆動用の抵抗を接続しても構わない。
【0032】
■■ 最後に、以下の事を補足する。 ■■
●a)本発明の「不正侵入操作阻止機能を持つ情報処理手段」は例えば11値以上の10進法の情報処理手段でも構わない。要するにN=2に限定されない。
●b)図1の実施例において入出力線3の数はもちろん複数、パラレルでも構わない。ただし、各入出力線3にクランプ・ダイオード2を1つずつ接続する必要が有る。
●c)例えば図1の実施例において入力情報の電位がv2になったとき、その入力情報にウイルス・プログラム等が潜(ひそ)んでいると認定し、その入力情報を本発明手段の外のウイルス・プログラム専用の隔離したメモリー手段に保管しておく等の対策をすることが考えられる。
●d)前記3値の電位の高低が正反対に、例えば図1の実施例において『0』が電位v2に、『1』が電位v1に、『2』が電位v0にそれぞれ1対1ずつ対応しても良いが、クランプ・ダイオード2の向きは正反対である必要が有る。
●e)各電位の大本(おおもと)の基準電位は例えば電子機器のボディ(筺体)・アース電位、大地アース電位あるいは電位v0等である。
●f)3値は数値『0』、『1』、『2』ではなく、数値『−1』、『0』、『1』でも良く、(N+1)値の(N+1)番目の数値を数値『−1』にしても良い。あるいは、符号『a』、『b』、『c』でも良いし、符号『α』、『β』、『γ』でも良いが、実質的な意味は数値と同じである。
【0033】
●g)数値『0』〜『N−1』等の各数値と「高低の各周波数の信号」が1対1ずつ対応する場合、例えば、本発明の情報処理手段がモデム等を内蔵し、そのモデム等の外部情報入口部分に前述の無用情報除去手段を設ける場合、その無用情報除去手段は特定の周波数信号を通過させるパス・フィルター又はバンド・パス・フィルターになる。また、多値PAM(パルス波振幅変調)の場合は例えば特定の振幅値以上を通さないよう振幅制限するリミッター手段が前述の無用情報除去手段に相当する。
{参考:前述(段落番号0017)の特許文献20、21と非特許文献1。}
さらに、位相変調や周波数変調の場合に、位相弁別や周波数弁別の後に例えば特定の振幅値以上を通さないよう振幅制限するリミッター手段(前述の無用情報除去手段)を設けても良い。この様に外部情報の入力途中に無用情報除去手段を設けても良い。
●h)次の様に第2の不正侵入操作阻止方法が考えられる。内部プログラム、内部データ、外部プログラム、外部データを区別する標識{ひょうしき、mark(マーク)。}をそれぞれの先頭部分、途中箇所あるいは一番後ろに付ける。ここで、一番安全な方法は内部プログラムかどうかをチェックして、できるだけ内部プログラムしか実行しないことである。
また、外部プログラム、外部データを内部データ領域のメモリー手段などに絶対に書き込まないことである。仕方無く、外部プログラムを実行する時は、監視用の内部プログラムを実行して、その外部プログラムの処理作業を常に監視する。しかも、その外部プログラムが使用できる命令を限定する。
外部データや外部プログラムが不正プログラムであるかどうかの判別方法について。前述の通り前記の標識で外部プログラムと内部プログラムの区別が付くから、外部プログラムが内部データや内部プログラムに対して何か不正操作しないかどうか監視する。外部データが命令やプログラムとして機能しないかどうかを監視する。そして、「実行しているプログラム」が終了前にサブルーチンでもないのに唐突に内部プログラムから外部プログラムに跳(と)ばないかどうかを前記標識を通じて監視する。一定期間の間に前記標識のいずれかを読み込んでいるかどうかを監視する。不正プロ、グラムの場合、そのプログラム中には前記標識はいずれも存在しない筈。
【0034】
●i)上記の標識(ひょうしき)の例としては、例えば14値の10進法コンピューターの場合なら数値『0』〜『13』の14値のうち、数値『0』〜『9』を10進法の表示に用いる。また、数値『10』が外部データを、数値『11』が外部プログラムを、数値『12』が内部データを、数値『13』が内部プログラムを、それぞれ示す標識にする。この場合、数値『10』又は数値『10』以上の数値を通させない様に無用情報除去手段は、通信の入力電位を「数値『9』に対応する電位」にクランプしたり、あるいは、通信の入力信号周波数を「数値『9』に対応する周波数」までしか通さないパス・フィルター又はバンド・パス・フィルターだったり等する。
さらに、内部、外部データと内部、外部プログラムの各標識が互いに混同され難くする為に、数値『−2』〜『11』の14値のうち、数値『0』〜『9』を10進法表示に用い、数値『−2』が外部プログラムを、数値『−1』が外部データを、数値『10』が内部データを、数値『11』が内部プログラムを、それぞれ示す標識にしても良い。要するに、10進法表示用の数値『0』〜『9』の両側または上下に「外部データ、外部プログラム」の標識と「内部データ、内部プログラム」の標識を別々に配置する。この場合、数値『0』〜『9』だけを通す様に無用情報除去手段は、通信入力電位の最高電位を「数値『9』に対応する電位」にクランプし、通信入力電位の最低電位を「数値『0』に対応する電位」にクランプしたり、又は、通信の入力信号周波数を「数値『0』〜数値『9』に対応する各周波数」しか通さないパス・フィルター又はバンド・パス・フィルターだったりなどする。
それから、内部、外部データと内部、外部プログラムの各開始点(各先頭)、各継続中(各途中)、各終了点(各最後尾)を表示するのに、例えば同じ標識を2回続けるとその開始点を意味し、標識1回表示の時その継続中を意味し、同じ標識を3回続けるとその終了点を意味する様にすることが考えられる。ただ桁数が多ければ11値でも多数の組合せ、多数の標識を作れるので、11値でも充分だが。具体例を言えば、数値『10』を数値『A』で表記したとき、4桁で『A,001』、『A,011』、『A,111』それぞれが外部プログラムの開始点、継続中、終了点の各標識を表わし、『A,002』、『A,022』、『A,222』それぞれが外部データの開始点、継続中、終了点の各標識を表わし、『A,003』、『A,033』、『A,333』それぞれが内部プログラムの開始点、継続中、終了点の各標識を表わし、そして、『A,004』、『A,044』、『A,444』それぞれが内部データの開始点、継続中、終了点の各標識を表わす様にするのである。
ところで、各プログラム・ユニットごとに、各サブルーチン・プログラムごとに同様な開始点、継続中、終了点の各標識を付けることが考えられる。「あるプログラムの実行中に」すなわち「終了点の標識が出ないうちに」サブルーチンでもないのに別のプログラムの標識に切り換われば、不正プログラムの実行または異常事態を検出することができる。
【0035】
●j)少なくとも「ファイアー・ウォールやIDS(不正侵入検知システム)など、絶対に不正侵入操作されてはいけない実行プログラムやOS」だけでも、本発明の様に「その命令コード等が3値または3値以上で表現された命令」で構成し、更に無用情報除去手段を設ければ、「これらの実行プログラムやOS」への攻撃を完璧(ぺき)に防御できるので、そのファイアー・ウォールやIDSは完全に機能する。一般的に、ファイアー・ウォールやIDS等は汎用基本ソフトウェア(OS)上で動いている為、そのOSそのものが攻撃されると機能しない恐れがある。そこで、最近、ウィルス対策を施した専用OSを組み込んだハードウェア機器の内部でソフトウェアを動かす方向にシフトしつつあるが。
【0036】
●k)ネットワーク等のコンピューター通信技術やCD等の記録媒体技術は自動車技術等ほど歴史が無いので、又は、人命に直接影響を与える場合を想定する必要が無かったので、仕方無いのかもしれないが、コンピューター通信技術等には自動車技術等の『フェイル・セーフ』の様な設計思想が無いから不正侵入操作を許してしまっている様に思える。万一、故障しても、欠陥が有っても、『安全な方向へ故障するとか、無害な状態で機能停止するとか』という設計思想、または、始めから『少しくらい欠陥(例:セキュリティ・ホール。)が有っても、平気で安全にきちんと機能する』という設計思想が無い様に思える。
結局、現在のコンピューターはソフトウェアに対しては全くの『丸裸、無防備』だから、即ち、いかなる命令、プログラム、ソフトウェアも忠実に実行してしまうから、不正有害命令や不正有害プログラムを実行したり、又は、それらからコンピューターを守るファイアー・ウォールやワクチン・プログラムやIDSなどを実行したり等する。あとはソフトウェア同士の攻防(こうぼう)次第(しだい)で不正侵入操作されるかどうかが決まる。
このためソフトウェアのみに依存した『フェイル・セーフ』は根本的に存在しないと本発明者は考える。それらの事を踏まえて、例えば図7の実施例の様に『ハードウェア』で各ソフトウェア、各プログラム、各命令をランク付けして区別し、各特定領域(例:情報処理手段1a、1b、1c内の各領域など。)別に実行できる命令、プログラム、ソフトウェアをがっちり限定すれば、『フェイル・セーフ』の設計思想へ1歩でも近付くことができる。
つまり、『より信頼できる、より重要なソフトウェア、プログラム、命令に対して強力なパワー、特権をハードウェア的に与える』のである。この様にハードウェアとの連携が極めて重要である。特に将来、自動車の車内通信と車内外通信が入(い)り交(ま)じり易くなりつつあり、万が一でも、車載コンピューターに不正侵入、不正操作されると、人命の安全面から非常に危険である。
【0037】
●l)そもそも、インターネット通信や記録などにおいてダウン・ロード用の通常データと外部プログラムをハードウェア的に分離して通信あるいは記録・再生しないから、通常データを通じてウイルス・プログラム等が侵入し、実行されることを許している。メールなど、通常データのやり取りだけで不正侵入操作を許している。その具体的な防止方法は例えば「ダウン・ロード用の通常データは2値表示、ダウン・ロード用の外部プログラムは3値表示で通信する様に改め、その通常データの出入口部に『2値情報だけを通し、3値もしくは3値以上の情報を通過さない無用情報除去手段』を設けることによってその通常データに潜むウイルス・プログラム等を無害化し、その通常データを命令やプログラムとして扱うことができない仕組みを作る」ことである。そして、情報処理手段は外部プログラム専用の出入口部で『3値表示された外部プログラム』を『その外部プログラム』として取り込み、外部プログラム専用メモリー空間に書き込み、3値表現の命令、プログラムだけを実行する。できれば、外部ソフトウェア専用の出入口部には3値の情報だけを通し、4値もしくは4値以上の情報を通過さない無用情報除去手段を設け、重要なシステム命令やシステム・プログラム等は4値もしくは4値以上で表現、表記する様にし、本発明の様に情報処理する。
【0038】
●m)なお、本発明技術に関して特に注意する事は『N値もしくはN値以下で表現された外部データや外部プログラムを(N+1)値もしくは(N+1)値以上の表現に書き換える内部プログラムを設ける』という愚かな事はしないことである。その様な書き換えを可能にすることはわざわざ自ら本発明の機能を打ち消して、セキュリティー・ホールをつくる様なものであり、セキュリティー面で大きな問題が有り、危険である。ということは『内部不正協力者などがその様な書換え内部プログラムをシステムに注入しない様に監視、管理する必要が有る』ということである。
ただし、次の方法は有る。例えば図7の実施例において通常の内部プログラムも4値で表現し、OS等の重要な内部プログラムと一緒に情報処理手段1cで情報処理を行い、2値の外部プログラムのうち、不正命令や不正プログラム等が潜(ひそ)んでないと確実にチェックできたものだけを3値で表現し直す様にする。つまり、それを2値表現から3値表現に書き換えて、情報処理手段1bで情報処理を行うのである。
あるいは、情報処理手段の全体を同様な情報処理手段1a〜1dの4重の(城壁)構造にし、情報処理手段1aでは信頼性チェックをしていない外部プログラムを実行し、情報処理手段1bでは信頼性チェックをパスした外部プログラムを実行し、情報処理手段1cでは通常の内部プログラムを実行し、情報処理手段1dでは重要な内部プログラムを実行する様にする。これらの事は上記のk)項とl)項の場合についても言える。結局『本発明の大本(おおもと)の狙いは堅持する』ということである。
また、内部不正協力者などが『外部データの記載内容に隷属(れいぞく)的に従う内部不正プログラム』を情報処理手段に注入しない様に監視、管理する必要が有る。この意味は『不正命令や不正プログラムを言葉で表現し直したもの、記号化し直したもの、暗号化し直したもの』を外部データが含む場合に、その書き直した不正命令や不正プログラムに隷属(れいぞく)的に従う内部不正プログラム』を情報処理手段に注入させてはいけない、という意味である。この事は本発明に限らず、すべての情報処理手段について言える。(新しい不正侵入操作方法?)
【0039】
●n)電子政府手続の政府側の情報処理手段などの場合、インターネット等を通じて外部プログラム、ソフトウェアをダウン・ロードする必要は無いから、実施例1(図1)または実施例2(段落番号0027)の様な構成で間に合う。また、その方が安全性はより高くなる。
●o)『インターネット通信や記録媒体などからダウン・ロードした外部ソフトウェアに不正有害命令や不正有害プログラムが潜(ひそ)んでいないかどうか』のチェックを容易にする方法について。外部ソフトウェアにアルゴリズムを添付させ、先ず、そのアルゴリズムをチェックする。そのアルゴリズムに問題が無ければ、そのアルゴリズムとその外部ソフトウェアとの間で対比チェックし、その外部ソフトウェアが忠実にそのアルゴリズムを反映、具体化しているかどうかをチェックする。不必要、余計なプログラム又は命令が挿入、潜入されていないかどうかをチェックする。できるなら、上記l)項に記載の方法で、外部ソフトウェアとアルゴリズム(=通常データ)をハードウェア的に分離して通信もしくは記録・再生する。
●p)『本発明技術を使う情報処理手段』を『ハッキングの踏み台』に用いることは全くできないから、もし世の中の情報処理手段がすべて本発明技術を使えば、ハッキングは不可能になるので、『ハッキングの踏み台による大量のメール送信』という踏み台攻撃はできなくなり、この手のサイバー・テロやシステム・ダウンは無くなる。
●q)『本発明技術を使うサーバー』では不正侵入操作によって『不正アクセスに対するログ・ファイル等の記録』を消去することも、書き換えることもできないし、バック・ドアーを作成することもできない。
【0040】
●r)段落番号[0018]に列挙した特許文献22〜28の各共振型DC−DCコンバータ回路の多出力電源化について。電力を出力する各出力用変圧器にさらに1つ又は複数の出力巻線を磁気結合させ、各出力電圧を整流、平滑した後、3端子レギュレーター等で定電圧制御すれば、容易に多出力電源化することができる。既に元々の出力巻線の電圧は各制御回路で定電圧制御されていたり、あるいは、帰還用もしくは回生用の巻線とダイオードでほぼ一定化されていたりするので、追加の各出力巻線の直流電圧は大まかに定電圧化されている。あとは各3端子レギュレーター等できっちり定電圧制御すれば良い。そして、各直流出力電圧を各・2電源線間の直流電圧に使う。
同様に、特許文献29〜30の各共振型AC−DCコンバータ回路でも同様な方法で多出力電源化することができる。
●s)従来の2進法コンピューターにおいて、データ・バスをプログラム用データ・バスと通常データ用データ・バスの2つに分離し、メモリー手段なども別々にプロクラム用とデータ用の2つに分離しても、実施例2(段落番号0027)と同じ様な機能を果たすことができる。ただし、ダウン・ロードした外部プログラムを実行できない。
●t)電位クランプ手段としては他にも例えば『電源線V1・電源線V0間にP・MOS(上位側)とN・MOS(下位側)を直列接続したNOT回路(インバータ回路)を2段接続して非反転型にした回路』や『電源線V1・電源線V0間にN・MOS(上位側)とP・MOS(下位側)を直列接続した非反転型バッファー回路』が有る。
●u)電位クランプ手段に使うダイオード手段としては他にも例えば、「そのコレクタとベースを直結したバイポーラ・トランジスタ」、「そのドレインとソースを直結した接合型FET」、「そのドレインとゲートを直結したバイポーラ・モードのSIT又はGTBT」、「そのゲート、バック・ゲート及びソースを接続したノーマリィ・オフ型MOS・FET」、「そのゲートとバック・ゲート、ソースとドレインをそれぞれ接続したノーマリィ・オフ型MOS・FET」、「そのドレイン・バックゲート間、そのソース・バックゲート間それぞれが導通しない様にそのバックゲート電位を保ち、そのドレインとゲートを接続したノーマリィ・オフ型MOS・FET」が有る。
【0041】
●v)説明の便宜上、入力端子、出力端子、入出力端子と呼んだが、実際には端子として存在せず、単なる導線や電極などである場合が多い。これは例えばトランジスタのベース端子、ベース電極、ベース・リード線あるいは単にベースという呼び方がされるのと同様である。
●w)図5の3値表現命令の桁数を増やしたければ、各数値のAND多値回路の入力端子0In3、1In3、2In3を前述と同様に使えば良い。あるいは、各AND多値回路の入力部のトランジスタを増やして各入力数を増やし、同様に使えば良い。
●x)図5の1解読例では3値の表現命令だったが、4値の表現命令の場合は以下の様にする。図3の回路を数値『3』用に変更する為に、図3中の電源線V1の所を電源線V2に接続し直し、同じく電源線V2の所を電源線V3に接続し直せば、図3の回路は数値『3』のAND多値回路になる。それから図2の回路を2つ用意し、一方をそのまま数値『1』のAND多値回路とする。他方を数値『2』用に変更する為に、図2中の電源線V0の所を電源線V1に接続し直し、電源線V1の所を電源線V2に接続し直し、電源線V2の所を電源線V3に接続し直せば、他方の図2の回路は数値『2』のAND多値回路になる。そして、図4の回路はそのまま数値『0』のAND多値回路とする。結局、図3と図4の両回路の間に図2の回路を1つ追加し、図3の回路と「追加した図2の回路」それぞれが接続する電源線の電位を1つずつ上げれば良い。5値の表現命令の場合も同様にさらに図2の回路を1つ追加して、同様に電源電位を1つずつ上げて行けば良い。あとは、図5の回路において、追加した回路の各出力端子と電源線V0の間にプル・ダウン用の抵抗を1つずつ接続し、その出力を「入力端子を追加した2値AND回路」に入力すれば良い。
●y)実施例5(段落番号0030)において第2CPUが第1CPUを制御する方法について。情報処理手段1aにウイルス・プログラム等が侵入したと情報処理手段1bが判断した時、第2CPUは第1CPUと情報処理手段1a内の通常メモリー手段にリセット信号を出力し、同時にその通常メモリー手段から対策用メモリー手段に強制的に切り換えた後そのリセット信号の出力を止めて、第1CPUに対策プログラムを実行させることが考えられる。第1CPUはその対策プログラムに従い所定の必要な対策処理をする。同様に、情報処理手段1bの処理動作に不手際などが発生した時、第3CPUが強制的に情報処理手段1b内のメモリー手段を切り換えて第2CPUを制御することが考えられる。
【産業上の利用可能性】
【0042】
最近、頻繁(ひんぱん)に起こる不正侵入操作事件を考えれば、一日も早く実用化する必要性、利用可能性が有る。特に実施例1、2、5の早い利用可能性が大いに有る。
【特許請求の範囲】
【請求項1】
所定の複数をNで表わしたときに、
「1つ又は複数の『N値で表現するときに組み合わせて使う全数値に1つの数値を追加した(N+1)値で表現され、その少なくとも1つの桁が[その追加された1つの数値]である第1命令手段』から成る第1プログラム手段を1つ又は複数個」あるいは「1つ又は複数の前記第1プログラム手段、及び、1つ又は複数の『(N+1)値で表現され、その少なくとも1つの桁が[その追加された1つの数値]であり、[1つ又は複数の前記第1プログラム手段に含まれ、指示された第1処理内容を解釈して実行する為の第1指示処理内容実行プログラム手段]に前記第1処理内容を指示する[第1コマンド手段または第1処理内容指示手段]』」と、
「1つ又は複数の『前記第1プログラム手段、又は、前記第1プログラム手段および[前記第1コマンド手段または第1処理内容指示手段]』がその実行の対象であり、『N値またはN値以下の値』で表現された『データ又は情報』がその情報処理の対象であり、『N値またはN値以下の値』で表現された『外部データ又は外部情報』がその入力の対象に含まれる第1情報処理手段」と、
「『前記外部データ又は外部情報』を外部から入力する前記第1情報処理手段の入口部分またはその入力前の部分またはその入力途中部分に設けられ、『前記外部データ又は外部情報』の中に『その追加された1つの数値』で表現された『データ部分または情報部分』が有るとき、すべての『前記データ部分または情報部分』を無用部分として除去する第1無用部分除去手段」と、
「1つ又は複数の『(N+1)値で表現するときに組み合わせて使う全数値に1つ又は複数個の数値を追加した[(N+2)値または(N+2)値以上の値]で表現され、その少なくとも1つの桁が[その追加された1つ又は複数個の数値]のいずれか1つである第2命令手段』から成る第2プログラム手段を1つ又は複数個」あるいは「1つ又は複数の前記第2プログラム手段、及び、1つ又は複数の『[前記(N+2)値または(N+2)値以上の値]で表現され、その少なくとも1つの桁が[その追加された1つ又は複数個の数値]のいずれか1つであり、[1つ又は複数の前記第2プログラム手段に含まれ、指示された第2処理内容を解釈して実行する為の第2指示処理内容実行プログラム手段]に前記第2処理内容を指示する[第2コマンド手段または第2処理内容指示手段]』」と、
「1つ又は複数の『前記第2プログラム手段、又は、前記第2プログラム手段および[前記第2コマンド手段または第2処理内容指示手段]』がその実行の対象であり、『前記データ又は情報』又は『1つ又は複数の前記第1プログラム手段』又は『[1つ又は複数の前記第1プログラム手段]及び[1つ又は複数の前記第1コマンド手段または第1処理内容指示手段]』がその情報処理の対象であり、『前記外部データ又は外部情報』及び『[1つ又は複数の前記第1プログラム手段]又は[1つ又は複数の前記第1プログラム手段、及び、1つ又は複数の前記第1コマンド手段または第1処理内容指示手段]』がその入力の対象に含まれる第2情報処理手段」と、
「『1つ又は複数の前記第1プログラム手段』又は『[1つ又は複数の前記第1プログラム手段]及び[1つ又は複数の前記第1コマンド手段または第1処理内容指示手段]』を入力する前記第2情報処理手段の入口部分またはその入力前の部分またはその入力途中部分に設けられ、『1つ又は複数の前記第1プログラム手段』又は『[1つ又は複数の前記第1プログラム手段]及び[1つ又は複数の前記第1コマンド手段または第1処理内容指示手段]』の中に『その追加された1つ又は複数個の数値』のうち少なくとも1つで表現された手段部分が有るとき、すべての前記手段部分を無用部分として除去する第2無用部分除去手段」、
を有することを特徴とする不正侵入操作阻止機能を持つ情報処理手段。
【請求項1】
所定の複数をNで表わしたときに、
「1つ又は複数の『N値で表現するときに組み合わせて使う全数値に1つの数値を追加した(N+1)値で表現され、その少なくとも1つの桁が[その追加された1つの数値]である第1命令手段』から成る第1プログラム手段を1つ又は複数個」あるいは「1つ又は複数の前記第1プログラム手段、及び、1つ又は複数の『(N+1)値で表現され、その少なくとも1つの桁が[その追加された1つの数値]であり、[1つ又は複数の前記第1プログラム手段に含まれ、指示された第1処理内容を解釈して実行する為の第1指示処理内容実行プログラム手段]に前記第1処理内容を指示する[第1コマンド手段または第1処理内容指示手段]』」と、
「1つ又は複数の『前記第1プログラム手段、又は、前記第1プログラム手段および[前記第1コマンド手段または第1処理内容指示手段]』がその実行の対象であり、『N値またはN値以下の値』で表現された『データ又は情報』がその情報処理の対象であり、『N値またはN値以下の値』で表現された『外部データ又は外部情報』がその入力の対象に含まれる第1情報処理手段」と、
「『前記外部データ又は外部情報』を外部から入力する前記第1情報処理手段の入口部分またはその入力前の部分またはその入力途中部分に設けられ、『前記外部データ又は外部情報』の中に『その追加された1つの数値』で表現された『データ部分または情報部分』が有るとき、すべての『前記データ部分または情報部分』を無用部分として除去する第1無用部分除去手段」と、
「1つ又は複数の『(N+1)値で表現するときに組み合わせて使う全数値に1つ又は複数個の数値を追加した[(N+2)値または(N+2)値以上の値]で表現され、その少なくとも1つの桁が[その追加された1つ又は複数個の数値]のいずれか1つである第2命令手段』から成る第2プログラム手段を1つ又は複数個」あるいは「1つ又は複数の前記第2プログラム手段、及び、1つ又は複数の『[前記(N+2)値または(N+2)値以上の値]で表現され、その少なくとも1つの桁が[その追加された1つ又は複数個の数値]のいずれか1つであり、[1つ又は複数の前記第2プログラム手段に含まれ、指示された第2処理内容を解釈して実行する為の第2指示処理内容実行プログラム手段]に前記第2処理内容を指示する[第2コマンド手段または第2処理内容指示手段]』」と、
「1つ又は複数の『前記第2プログラム手段、又は、前記第2プログラム手段および[前記第2コマンド手段または第2処理内容指示手段]』がその実行の対象であり、『前記データ又は情報』又は『1つ又は複数の前記第1プログラム手段』又は『[1つ又は複数の前記第1プログラム手段]及び[1つ又は複数の前記第1コマンド手段または第1処理内容指示手段]』がその情報処理の対象であり、『前記外部データ又は外部情報』及び『[1つ又は複数の前記第1プログラム手段]又は[1つ又は複数の前記第1プログラム手段、及び、1つ又は複数の前記第1コマンド手段または第1処理内容指示手段]』がその入力の対象に含まれる第2情報処理手段」と、
「『1つ又は複数の前記第1プログラム手段』又は『[1つ又は複数の前記第1プログラム手段]及び[1つ又は複数の前記第1コマンド手段または第1処理内容指示手段]』を入力する前記第2情報処理手段の入口部分またはその入力前の部分またはその入力途中部分に設けられ、『1つ又は複数の前記第1プログラム手段』又は『[1つ又は複数の前記第1プログラム手段]及び[1つ又は複数の前記第1コマンド手段または第1処理内容指示手段]』の中に『その追加された1つ又は複数個の数値』のうち少なくとも1つで表現された手段部分が有るとき、すべての前記手段部分を無用部分として除去する第2無用部分除去手段」、
を有することを特徴とする不正侵入操作阻止機能を持つ情報処理手段。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2011−103124(P2011−103124A)
【公開日】平成23年5月26日(2011.5.26)
【国際特許分類】
【出願番号】特願2010−250362(P2010−250362)
【出願日】平成22年11月9日(2010.11.9)
【分割の表示】特願2005−128611(P2005−128611)の分割
【原出願日】平成17年3月30日(2005.3.30)
【出願人】(000251934)
【Fターム(参考)】
【公開日】平成23年5月26日(2011.5.26)
【国際特許分類】
【出願日】平成22年11月9日(2010.11.9)
【分割の表示】特願2005−128611(P2005−128611)の分割
【原出願日】平成17年3月30日(2005.3.30)
【出願人】(000251934)
【Fターム(参考)】
[ Back to top ]