(57)【要約】【課題】  データの暗号化／復号化方法及びそれを適用したバスシステムを提供する。【解決手段】  バスに伝送するデータを所定のキーから生成されたキーストリームと演算することによってデータを暗号化し、暗号化されたデータをバスを通じて所定のモジュールに伝送し、暗号化されたデータがバスを通じて伝送される区間でオンとなる同期信号を所定のモジュールに伝送するデータ暗号化方法である。これにより、暗号化の速度を向上させ、具現を簡単にして、バスから伝送されるデータに対する保安を強化しうる。【選択図】      図３
2008282004.tif 000002
【特許請求の範囲】
【請求項１】
（ａ）バスに伝送するデータを所定のキーから生成されたキーストリームと演算することによって前記データを暗号化するステップと、
（ｂ）前記暗号化されたデータを前記バスを通じて所定のモジュールに伝送するステップと、
（ｃ）前記暗号化されたデータが前記バスを通じて前記所定のモジュールに伝送される時に同期信号を伝送するステップと、を含むことを特徴とするデータ暗号化方法。
【請求項２】
前記（ａ）ステップは、
前記データ及び前記キーストリームに対して排他的論理和を行うことによって、前記データを暗号化することを特徴とする請求項１に記載のデータ暗号化方法。
【請求項３】
前記（ａ）ステップは、
前記キーストリームは、前記所定のキー及び付加情報を含むシードに基づいて生成され、
前記シードは、前記暗号化されたデータを受信するモジュールで前記暗号化されたデータを復号化する時に同一に適用されることを特徴とする請求項２に記載のデータ暗号化方法。
【請求項４】
前記（ａ）ステップは、
前記キーストリームは、前記バスのクロック信号に同期されるように生成されたことを特徴とする請求項２に記載のデータ暗号化方法。
【請求項５】
前記（ｃ）ステップは、
前記同期信号は、前記バスのクロック信号に同期されることを特徴とする請求項１に記載のデータ暗号化方法。
【請求項６】
前記（ｃ）ステップは、
前記同期信号は、少なくとも二つ以上の所定のモジュールにブロードキャスティングされることを特徴とする請求項５に記載のデータ暗号化方法。
【請求項７】
前記（ｃ）ステップは、
前記同期信号は、前記少なくとも二つ以上の所定のモジュールそれぞれの専用線を通じて伝送されることを特徴とする請求項６に記載のデータ暗号化方法。
【請求項８】
前記（ｃ）ステップは、
前記同期信号は、前記バスのコントローラによって前記バスに伝送されることを特徴とする請求項６に記載のデータ暗号化方法。
【請求項９】
前記（ｃ）ステップは、
前記所定のモジュールは、少なくとも二つ以上であり、前記少なくとも二つ以上のモジュールを複数のグループに分け、
前記複数のグループのうち少なくとも一つのグループに前記同期信号を伝送することを特徴とする請求項５に記載のデータ暗号化方法。
【請求項１０】
（ａ）バスに伝送するデータを所定のキーから生成されたキーストリームと演算することによって、前記データを暗号化するステップと、
（ｂ）前記暗号化されたデータを、前記バスを通じて所定のモジュールに伝送するステップと、
（ｃ）前記暗号化されたデータが前記バスを通じて前記所定のモジュールに伝送される時に同期信号を伝送するステップと、を含むデータ暗号化方法を実行するためのプログラムを記録したコンピュータで読み取り可能な記録媒体。
【請求項１１】
（ａ）所定のモジュールからバスを通じて暗号化されたデータを受信するステップと、
（ｂ）前記暗号化されたデータが前記バスを通じて伝送される区間でオンとなる同期信号を受信するステップと、
（ｃ）前記暗号化されたデータを前記同期信号がオンである区間で所定のキーから生成されたキーストリームと演算することによって復号化するステップと、を含むことを特徴とするデータ復号化方法。
【請求項１２】
前記（ｂ）ステップは、
前記同期信号は、前記バスのクロック信号に同期されることを特徴とする請求項１１に記載のデータ復号化方法。
【請求項１３】
前記（ｃ）ステップは、
前記暗号化されたデータ及び前記キーストリームに対して排他的論理和を行うことによって、前記暗号化されたデータを復号化することを特徴とする請求項１１に記載のデータ復号化方法。
【請求項１４】
（ａ）所定のモジュールからバスを通じて暗号化されたデータを受信するステップと、
（ｂ）前記暗号化されたデータが前記バスを通じて伝送される区間でオンとなる同期信号を受信するステップと、
（ｃ）前記暗号化されたデータを前記同期信号がオンである区間で所定のキーから生成されたキーストリームと演算することによって復号化するステップと、を含むデータ復号化方法を実行するためのプログラムを記録したコンピュータで読み取り可能な記録媒体。
【請求項１５】
バスに連結された少なくとも二つ以上のモジュールを含むバスシステムにおいて、
各モジュールは、モジュールコア及び前記モジュールコアと前記バスとをインターフェーシングするラッパーを備え、
前記ラッパーは、前記モジュールコアで生成された第１データを暗号化して前記バスに伝送し、前記暗号化された第１データが前記バスに伝送される時に第１同期信号を出力し、
前記バスから伝送された第２データを前記第２データが前記バスに伝送されるとき、第２同期信号によって復号化して前記モジュールコアに提供することを特徴とするバスシステム。
【請求項１６】
前記ラッパーは、
前記モジュールコアで前記第１データが生成されれば、所定のキーからキーストリームを生成するストリーム暗号化送信部と、
前記バスから前記第２データが伝送されれば、前記第２同期信号によって前記キーストリームを生成するストリーム暗号化受信部と、を備えることを特徴とする請求項１５に記載のバスシステム。
【請求項１７】
前記キーストリームは、前記所定のキーと付加情報を含むシードとに基づいて生成され、
前記シードは、前記各モジュールに同一に適用されることを特徴とする請求項１６に記載のバスシステム。
【請求項１８】
前記ラッパーは、
前記キーストリーム及び前記第１データに対して排他的論理和を行って前記暗号化された第１データを生成する第１演算部と、
前記キーストリーム及び前記第２データに対して排他的論理和を行って復号化された第２データを生成する第２演算部と、をさらに備えることを特徴とする請求項１６に記載のバスシステム。
【請求項１９】
前記第１及び第２同期信号は、少なくとも二つ以上の前記各モジュールの専用線を通じて伝送されることを特徴とする請求項１５に記載のバスシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗号化方法に係り、さらに詳細には、データの暗号化／復号化方法、及びバスシステムに関する。
【背景技術】
【０００２】
暗号システムは、キーを運用する方式によって公開キー暗号システムと秘密キー暗号システムと分けうる。公開キー暗号システムで、全ユーザは、全ての人間に公開されている公開キーと自分のみの個人キーとを有しており、公開キーは、文書の暗号化時に使用し、個人キーは、個人が保管しつつ暗号化された文書を解読する時に使用する。逆に、秘密キー暗号システムは、一つの秘密キーのみで暗号化及び復号化（解読）を同時に行うものであって、ブロック暗号システムとストリーム暗号システムとがある。
【０００３】
ブロック暗号システムは、与えられた平文を所定の長さのブロック（６４ビットあるいは１２８ビット）に分けてブロック単位で暗号化を行う。ストリーム暗号システムは、平文をブロックに分けず、秘密キーから誘導されたキーストリームと平文に対して排他的論理和（ＸＯＲ：Ｅｘｃｌｕｓｉｖｅ  ＯＲ）を行って暗号文を生成する。一般的に、ストリーム暗号システムは、ブロック暗号システムに比べて速度が速い。
【０００４】
図１は、従来のストリーム暗号システムを示すブロック図である。図１を参照するに、ストリーム暗号システムは、ＣＰＵ（セントラル  プロセッシング  ユニット）１１、キャッシュ１２、メモリコントローラ１３、暗号化／復号化部１４、演算部１５及び外部メモリ１６を備える。
【０００５】
まず、ＣＰＵ  １１からバスに伝送されるデータを暗号化する動作について説明する。ＣＰＵ  １１でデータに対する読み取り／書き込みを要請する場合、生成されるデータは、暗号化されない平文データであるので、これをバスに伝送するためには、暗号化する過程が必要である。ＣＰＵ  １１がデータに対する読み取り／書き込みを要請すれば、暗号化／復号化部１４は、データに対する読み取り／書き込み要請を探知する。このとき、暗号化／復号化部１４に含まれたキーストリーム生成部１４１は、クロック信号に同期して（すなわち、クロック信号の上昇及び／または下降エッジで）データのサイズに該当するキーストリームを発生させる。ここで、データサイズは、例えば、バイトまたは入力されたデータから線、単語、文字の数を計算したワードカウントで表せる。演算部１５は、キーストリーム及びデータに対してそれぞれバイト単位で１対１マッピングされるように同期されて、ＸＯＲを行ってデータを暗号化する。このように、暗号化されたデータは、バスを通じて外部に伝送される。
【０００６】
次いで、バスを通じて伝送される暗号化されたデータをＣＰＵ  １１が認識できるように復号化する動作について説明する。外部メモリ１６からバスを通じて伝送される暗号化されたデータは、メモリコントローラ１３及びキャッシュ１２を経てＣＰＵ  １１に伝えられるが、ＣＰＵ  １１は、暗号化されたデータを認識できないので、これを復号化する過程が必要である。外部メモリ１６からバスを通じて暗号化されたデータが伝送されれば、暗号化／復号化部１４は、これを探知する。このとき、暗号化／復号化部１４に含まれたキーストリーム生成部１４１は、クロック信号に同期してキーストリームを発生させる。演算部１５は、キーストリームと暗号化されたデータとに対して、それぞれバイト単位で１対１マッピングされるように同期されて、ＸＯＲを行ってデータを復号化する。このように、復号化されたデータは、ＣＰＵ  １１に入力される。
【０００７】
ここで、ＣＰＵ  １１、キャッシュ１２、メモリコントローラ１３、暗号化／解読化部１４、及び演算部１５を備える領域は、信頼領域といい、信頼領域を除外した全てのモジュール、例えば、外部メモリ１５は、非信頼領域と言える。非信頼領域でバスを通じて伝送されるデータは、タッピングを通じて外部に露出される恐れがある。ここで、タッピングは、バスを通じて伝送されるデータを他の線を通じて外部に露出させることを称す。ＳｏＣ（システム  オン  チップ）や単一チップの内部は、信頼領域であってデータが保護されるが、一つのボード上に異なるモジュールを付けて使用する場合には、信頼領域としてデータが保護され難い。それは、ボード上でバスを通じて伝送されるデータは、タッピングを通じて情報が露出される可能性があるためである。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
本発明が解決しようとする技術的課題は、バスに連結された異なるモジュール間に安全にデータを伝送できるデータ暗号化方法を提供することである。
【０００９】
本発明が解決しようとする他の技術的課題は、バスに連結された異なるモジュール間に安全にデータを伝送できるデータ復号化方法を提供することである。
【００１０】
本発明が解決しようとするさらに他の技術的課題は、バスに連結された異なるモジュール間に安全にデータを伝送でき、暗号化されたまたは復号化されたデータを伝送する時の性能の低下を減らせるバスシステムを提供することである。
【課題を解決するための手段】
【００１１】
前記課題を解決するための本発明によるデータ暗号化方法は、バスに伝送するデータを所定のキーから生成されたキーストリームと演算することによって、前記データを暗号化するステップ、前記暗号化されたデータを、前記バスを通じて所定のモジュールに伝送するステップ、及び前記暗号化されたデータが前記バスを通じて伝送される区間でオンとなる同期信号を前記所定のモジュールに伝送するステップを含む。
【００１２】
また、前記課題は、バスに伝送するデータを所定のキーから生成されたキーストリームと演算することによって前記データを暗号化するステップ、前記暗号化されたデータを前記バスを通じて所定のモジュールに伝送するステップ、及び前記暗号化されたデータが前記バスを通じて伝送される区間でオンとなる同期信号を前記所定のモジュールに伝送するステップを含む、データ暗号化方法を実行するためのプログラムを記録したコンピュータで読み取り可能な記録媒体によって達成される。
【００１３】
また、前記他の課題を解決するための本発明によるデータ復号化方法は、所定のモジュールからバスを通じて暗号化されたデータを受信するステップ、前記暗号化されたデータが前記バスを通じて伝送される区間でオンとなる同期信号を受信するステップ、及び前記暗号化されたデータを、前記同期信号がオンである区間で所定のキーから生成されたキーストリームと演算することによって復号化するステップを含む。
【００１４】
また、前記他の課題は、所定のモジュールからバスを通じて暗号化されたデータを受信するステップ、前記暗号化されたデータが、前記バスを通じて伝送される区間でオンとなる同期信号を受信するステップ、及び前記暗号化されたデータを、前記同期信号がオンである区間で所定のキーから生成されたキーストリームと演算することによって復号化するステップを含む、データ復号化方法を実行するためのプログラムを記録したコンピュータで読み取り可能な記録媒体によって達成される。
【００１５】
また、前記さらに他の課題を解決するための本発明によるバスシステムは、バスに連結された少なくとも二つ以上のモジュールを含み、各モジュールは、モジュールコア及び、前記モジュールコアと前記バスとをインターフェーシングするラッパーを備え、前記ラッパーは、前記モジュールコアで生成された第１データを暗号化して前記バスに伝送し、前記暗号化された第１データが前記バスに伝送される区間でオンとなる第１同期信号を出力し、前記バスから伝送された第２データを、前記第２データが前記バスに伝送される区間でオンとなる第２同期信号によって復号化して前記モジュールコアに提供する。
【発明の効果】
【００１６】
本発明によれば、バスに伝送するデータを所定のキーから生成されたキーストリームと演算することによってデータを暗号化し、暗号化されたデータを、バスを通じて所定のモジュールに伝送し、暗号化されたデータがバスを通じて伝送される区間でオンとなる同期信号を所定のモジュールに提供することによって、同期信号を参照して復号化でき、その結果、バス上で伝送されるデータに対する保安性が向上しうる。
【００１７】
また、本発明によれば、同期信号をブロードキャスティングし、初期セッティング時に同じシードを共有することによって、ストリーム暗号化送受信部の数を減らせてシステムの具現が簡便になる。そして、信頼領域外に新たなモジュールを付ける場合にも、保安を維持できて拡張が容易であるので、チップ外部に一つ以上の別途のモジュールを装着する場合、ボード上に色々なモジュールが装着された場合、独占バスを使用する場合、オープンバスシステムの場合に、効率的に利用しうる。
【発明を実施するための最良の形態】
【００１８】
本明細書に開示されている本発明の実施形態について、特定の構造的ないし機能的な説明は、単に本発明の実施形態を説明するための目的として例示されたものであり、本発明の実施形態は、多様な形態で実施され、本明細書で説明された実施形態に限定されると解釈されてはならない。
【００１９】
本発明は、多様な変更を加えることができ、色々な形態を有しうるところ、特定の実施形態を図面に例示し、本明細書に詳細に説明しようとする。しかし、これは、本発明を特定の開示形態について限定しようとするものではなく、本発明の思想及び技術範囲に含まれる全ての変更、均等物ないし代替物を含むと理解されねばならない。各図面を説明しつつ、類似した参照符号を構成要素について使用した。
【００２０】
特に限定されない限り、技術的または科学的な用語を含めて、ここで使われる全ての用語は、当業者によって一般的に理解されるものと同じ意味を有している。一般的に使われる辞書に定義されているものと同じ用語は、関連技術の文脈上の意味と一致する意味を有すると解釈されねばならず、本出願で明白に定義しない限り、理想的にまたは過度に形式的な意味として解釈されない。
【００２１】
以下、添付した図面を参照して、本発明の望ましい実施形態をさらに詳細に説明する。図面上の同じ構成要素については、同じ参照符号を使用し、同じ構成要素について重畳された説明は省略する。
【００２２】
図２は、本発明の一実施形態による１：１構造のバスシステムを示すブロック図である。図２を参照するに、１：１構造のバスシステムは、第１モジュールコア２１、第１ラッパー２２、第２モジュールコア２３、第２ラッパー２４、及びバス２５を備える。第１モジュールコア２１及び第２モジュールコア２３は、ＣＰＵ（セントラル  プロセッシング  ユニット）、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）、ＵＡＲＴ（Ｕｎｉｖｅｒｓａｌ  Ｓｓｙｎｃｈｒｏｎｏｕｓ  Ｒｅｃｅｉｖｅｒ／Ｔｒａｎｓｍｉｔｔｅｒ）となりうる。
【００２３】
第１ラッパー２２は、第１モジュールコア２１の出力信号をバス２５の伝送スペックに適するように変換し、バスから伝送される制御信号及びデータ信号をモニタリングすることによって第１モジュールコア２１とバス２５とをインターフェーシングし、第１ストリーム暗号化送信部（Ｔｘ  ＳＣ）２２１及び第１ストリーム暗号化受信部（Ｒｘ  ＳＣ）２２２を備える。
【００２４】
第２ラッパー２４は、第２モジュールコア２３の出力信号をバス２５の伝送スペックに適するように変換し、バスから伝送される制御信号及びデータ信号をモニタリングすることによって、第２モジュールコア２３とバス２５とをインターフェーシングし、第２ストリーム暗号化送信部２４１及び第２ストリーム暗号化送信部２４２を備える。
【００２５】
第１及び第２ストリーム暗号化送信部２２１,２４２は、バスに伝送するデータを暗号化する。具体的に、第１及び第２ストリーム暗号化送信部２２１,２４２は、所定のキーと付加情報（例えば、初期化ベクトル）を含むシードとからキーストリームを生成し、生成されたキーストリームとバスに伝送するデータとを演算して暗号化する。例えば、第１及び第２ストリーム暗号化送信部２２１,２４２は、生成されたキーストリームとバスに伝送するデータとに対してＸＯＲを行ってデータを暗号化しうる。
【００２６】
第１及び第２ストリーム暗号化受信部２２２,２４１は、バスから伝送されるデータを復号化する。具体的に、第１及び第２ストリーム暗号化受信部２２２,２４１は、所定のキーと付加情報を含むシードとからキーストリームを生成し、生成されたキーストリームとバスから伝送されるデータとを演算して復号化する。例えば、第１及び第２ストリーム暗号化受信部２２２,２４１は、生成されたキーストリームとバスから伝送されるデータとに対してＸＯＲを行ってデータを復号化しうる。
【００２７】
この場合、第１及び第２ストリーム暗号化送信部２２１,２４２及び第１及び第２ストリーム暗号化受信部２２２,２４１は、同じシードを共有しうる。具体的に、初期に電源を供給するとき、同じシードを第１及び第２ストリーム暗号化送信部及び受信部２２１,２２２,２４１,２４２に提供しうる。これにより、第１及び第２ストリーム暗号化送信部及び受信部２２１,２２２,２４１,２４２は、同じキーストリームを生成しうる。但し、第１ストリーム暗号化送信部２２１及び第２ストリーム暗号化受信部２４１の対と、第２ストリーム暗号化送信部２４２及び第１ストリーム暗号化受信部２２２の対とが、それぞれの同期信号によって使われるキーストリームの順序が変更される。同期信号については、以下で図３を参照して説明する。
【００２８】
例えば、第１及び第２ストリーム暗号化送信部２２１,２４２及び第１及び第２ストリーム暗号化受信部２２２,２４１は、ＲＣ４（Ｒｏｕｔｅ  Ｃｏｌｏｎｉａｌｅ  ４）でありうる。ＲＣ４は、バイト演算を通じてキーの長さを可変的に作れるストリーム方式の暗号化アルゴリズムであって、ブロック暗号化アルゴリズムに比べて非常に速い暗号化速度を支援する。しかし、これは、本発明の一実施形態に過ぎず、他の実施形態で第１及び第２ストリーム暗号化送信部２２１,２４２と第１及び第２ストリーム暗号化受信部２２２,２４１とは、異なるアルゴリズムで具現しうるというのは、当業者に自明である。
【００２９】
図３は、図２のバスシステムにおけるデータの伝送動作を詳細に示すブロック図である。図３を参照するに、１：１構造のバスシステムは、第１モジュールラッパー３１、第２モジュールラッパー３２及びバス３３を備える。第１モジュールラッパー３１は、ストリーム暗号化送信部（Ｔｘ  ＳＣ）３１１を備え、第２モジュールラッパー３２は、ストリーム暗号化受信部（Ｒｘ  ＳＣ）３２１を備える。
【００３０】
第１モジュールラッパー３１は、データが入力されれば、ストリーム暗号化送信部３１１で暗号化し、暗号化されたデータＥ＿ＤＡＴＡをバスを通じて第２モジュールラッパー３２に伝送する。第２モジュールラッパー３２は、バスで暗号化されたデータＥ＿ＤＡＴＡが伝送されれば、ストリーム暗号化受信部３２１で復号化して第２モジュールラッパー３２と連結されたモジュール（図示せず）に提供する。
【００３１】
このとき、第１モジュールラッパー３１は、暗号化されたデータＥ＿ＤＡＴＡをバスに伝送する場合、バスのクロック信号に同期される同期信号を生成する。同期信号は、暗号化されたデータＥ＿ＤＡＴＡによってオン／オフとなる信号である。例えば、同期信号は、暗号化されたデータＥ＿ＤＡＴＡがバスに提供される場合にのみ論理‘ハイ（ｈｉｇｈ）’としてオンとなり、暗号化されたデータＥ＿ＤＡＴＡがバスに提供されない場合には、論理‘ロー（ｌｏｗ）’としてオフとなる。
【００３２】
第１モジュールラッパー３１で生成される同期信号は、第２モジュールラッパー３２に含まれたストリーム暗号化受信部３２１に提供される。本発明の一実施形態で、同期信号は、専用線を通じて第２モジュールラッパー３２に提供される。バス３３に伝送される信号は、一定のバススペックによらねばならないところ、バスではない別途の専用線を通じて同期信号を伝送することによって、バススペックの変更が不要となって、互換性を高めうる。本発明の他の実施形態で、同期信号は、バスコントローラによって制御されてバスに伝送される。本発明のさらに他の実施形態で、別途の同期信号を生成せず、バス３３の制御信号を組合わせて第１モジュールラッパー３１と第２モジュールラッパー３２との同期を合せることもできるが、この場合、具現が複雑になりうる。
【００３３】
第２モジュールラッパー３２に含まれたストリーム暗号化受信部３２１は、バスから暗号化されたデータＥ＿ＤＡＴＡを受信すると同時に、第１モジュールラッパー３１で生成された同期信号を受信する。ストリーム暗号化受信部３２１は、同期信号によってキーストリームを生成し、暗号化されたデータＥ＿ＤＡＴＡをキーストリームと演算して復号化する。
【００３４】
図４は、図２のバスシステムに含まれたラッパーを概略的に示すブロック図である。図４を参照するに、ラッパー４０は、ストリーム暗号化送信部（Ｔｘ  ＳＣ）４１及びストリーム暗号化受信部（Ｒｘ  ＳＣ）４２を備える。ストリーム暗号化送信部４１は、第１データを暗号化してバスに第１暗号化されたデータＥ＿ＤＡＴＡ１を提供し、ストリーム暗号化受信部４２は、バスから伝送された第２暗号化されたデータＥ＿ＤＡＴＡ２を復号化する。
【００３５】
ラッパー４０は、第１暗号化されたデータＥ＿ＤＡＴＡ１によってオン／オフとなる第１同期信号を、バスではない別途の専用線を通じて他のモジュールに伝送し、第２暗号化されたデータＥ＿ＤＡＴＡ２によってオン／オフとなる第２同期信号を、バスではない別途の専用線を通じて他のモジュールから伝送される。言い換えれば、ラッパー４０は、バス以外に二つの別途の専用線を有しうる。異なるモジュールが１：１の構造で連結された場合には、ラッパー４０は、二つの専用線を有することができ、異なるモジュールが１：Ｎの構造で連結された場合には、ラッパー４０は、２Ｎ個の専用線を有することができる。ここで、Ｎは、１より大きい自然数である。
【００３６】
図５は、本発明の一実施形態によるＮ：Ｎ構造のバスシステムを示すブロック図である。図５を参照するに、Ｎ：Ｎ構造のバスシステムは、ＣＰＵ  ５１、ＰＣＩ  ５３、ＵＡＲＴ  ５５、及びバス５９を備え、他のモジュール５７をさらに含みうる。ここで、ＣＰＵ  ５１、ＰＣＩ
５３及びＵＡＲＴ  ５５は、バス５９と連結されたモジュールを説明するための例に過ぎず、他のモジュールや将来に開発される新たなモジュールなどいずれのものでも可能である。
【００３７】
ＣＰＵ  ５１は、命令語の解釈と資料の演算、比較などの処理を制御するコンピュータシステムの核心的な装置であって、バス５９とインターフェーシングするためのＣＰＵラッパー５２をさらに備え、ＣＰＵラッパー５２は、第１ストリーム暗号化送信部５２１及び第１ストリーム暗号化受信部５２２を備えうる。
【００３８】
ＰＣＩ  ５３は、高速運用のためにマイクロプロセッサーに近く位置している拡張スロットに付着された装置間の相互接続システムであって、バス５９とインターフェーシングするためのＰＣＩラッパー５４をさらに備え、ＰＣＩラッパー５４は、第２ストリーム暗号化送信部５４１及び第２ストリーム暗号化受信部５４２を備えうる。
【００３９】
ＵＡＲＴ  ５５は、コンピュータの非同期直列通信を処理するプログラムであって、通常マイクロチップで実現され、バス５９とインターフェーシングするためのＵＡＲＴラッパー５６をさらに備え、ＵＡＲＴラッパー５６は、第３ストリーム暗号化送信部５６１及び第３ストリーム暗号化受信部５６２を備えうる。
【００４０】
他のモジュール５７は、将来に開発されるモジュールであり、バス５９とインターフェーシングするためのラッパー５８をさらに備え、ラッパー５８は、第４ストリーム暗号化送信部５８１及び第４ストリーム暗号化受信部５８２を備えうる。
【００４１】
図５のバスシステムは、４個のモジュールを含むので、Ｎは、４であり、４：４の構造を有する。このとき、それぞれのストリーム暗号化送信部及び受信部が独立的に動作すれば、バスシステムのモジュール相互間は、４＊３（すなわち、Ｎ＊（Ｎ−１））個の対を有し、ストリーム暗号化送信部／受信部は、２＊４＊３（すなわち、２＊Ｎ＊（Ｎ−１））個が必要となるので、バスシステムの構造は、非常に複雑になる。
【００４２】
しかし、本発明の一実施形態で、ストリーム暗号化送信部／受信部は、同じシードを共有して２＊４（すなわち、２＊Ｎ）個のみで暗号化及び復号化を行える。前述したように、ここで、シードは、所定のキーと付加情報（例えば、初期ベクトル（Ｉｎｉｔｉａｌｉｚａｔｉｏｎ  Ｖｅｃｔｏｒ：ＩＶ））を含むものであって、ストリーム暗号化送信部／受信部は、シードを基にキーストリームを生成する。すなわち、第１ないし第４ストリーム暗号化送信部５２１,５４１,５６１,５８１及び第１ないし第４ストリーム暗号化受信部５２２,５４２,５６２,５８２は、同じシードを共有して、８個のユニットのみでＮ：Ｎの構造のバスシステムを簡単に具現しうる。
【００４３】
このとき、一つのモジュールは、同期信号を全体モジュールにブロードキャストしうる。例えば、ＣＰＵラッパー５２は、同期信号をＰＣＩラッパー５４、ＵＡＲＴラッパー５６及びラッパー５８に伝送されるようにブロードキャストしうる。しかし、これは、本発明の一実施形態に過ぎず、他の実施形態で複数のモジュールを少なくとも二つ以上のグループに分け、少なくとも二つ以上のグループのうち少なくとも一つのグループにのみ同期信号を伝送しうる。例えば、ＰＣＩ  ５３とＵＡＲＴ  ５５を第１グループとし、他のモジュール５７を第２グループとし、ＣＰＵラッパー５２は、第１グループに含まれたＰＣＩラッパー５４及びＵＡＲＴラッパー５６にのみ同期信号を伝送しうる。
【００４４】
本発明の一実施形態で、同期信号は、１ビットでありうる。ストリーム暗号化送信部及び受信部は、２＊４個（すなわち、２＊Ｎ個）が存在するが、同期信号は、４＊３個（すなわち、Ｎ＊（Ｎ−１）個）が必要となるので、全体的に４＊３ビット（すなわち、Ｎ＊（Ｎ−１）ビット）の付加ビットが発生する。
【００４５】
図６は、本発明の一実施形態によるバスシステムのデータ暗号化及び復号化動作を具体的に示すブロック図である。図６を参照するに、バスシステムは、モジュールコア６１及びラッパー６２を備え、ラッパー６２は、ストリーム暗号化送信部（Ｔｘ  ＳＣ）６２１及びストリーム暗号化受信部（Ｒｘ  ＳＣ）６２２を備える。また、ラッパー６２は、第１及び第２演算部６２３,６３４をさらに備えうる。
【００４６】
モジュールコア６１は、ＣＰＵまたはＰＣＩのうち何れか一つのモジュールでありうる。モジュールコア６１は、データの読み取り／書き込み要請をでき、このような要請されたデータは、暗号化されていない平文データ（Ｐｌａｉｎｔｅｘｔ  Ｄａｔａ：ＰＤ）である。モジュールコア６１で生成されたデータは、バスを通じて目標モジュールに伝送されねばならないが、バスから外部に露出される恐れがあるので、バスでは、ＰＤを暗号化して暗号文データ（Ｃｉｐｈｅｒｔｅｘｔ  Ｄａｔａ：ＣＤ）として伝送せねばならない。
【００４７】
以下では、データの暗号化及び復号化過程を分けてラッパー６２の動作を説明する。
【００４８】
まず、暗号化過程でラッパー６２は、モジュールコア６１から入力された平文データＰＤ１を探知し、ラッパー６２に含まれたストリーム暗号化送信部６２１は、バスのクロック信号に同期されるようにキーストリームを生成する。前述したように、ストリーム暗号化送信部６２１は、所定のキーと付加情報を含むシードとからキーストリームを生成する。このとき、生成されたキーストリームは、ランダムナンバーとなり、多様な変形が可能であるというのは、当業者に自明である。
【００４９】
ラッパー６２に含まれた第１演算部６２３は、生成されたキーストリームと平文データＰＤ１とを演算して暗号化されたデータ、すなわち、暗号文データＣＤ１を生成する。このとき、本発明の一実施形態で、第１演算部６２３は、生成されたキーストリームと平文データＰＤ１に対してＸＯＲを行って暗号文データＣＤ１を生成しうる。
【００５０】
ラッパー６２は、暗号文データＣＤ１をバスに伝送すると同時に、バスに暗号文データＣＤ１が伝送される区間に論理‘ハイ（ｈｉｇｈ）’を有する同期信号を生成する。すなわち、同期信号は、暗号文データＣＤ１によってオン／オフとなり、バスのクロック信号と同期されねばならない。ここで、一データフレームがバス上でディレーなどの理由で中間に切れる場合には、同期信号も論理‘ロー（ｌｏｗ）’に切換えられ、データが再び伝送されれば、同期信号も論理‘ハイ’に切換えられる。これにより、目標モジュールのストリーム暗号化受信部が受信した暗号文データと正確に同期されるキーストリームを生成しうる。他の実施形態で、ラッパー６２は、同期信号を他のモジュールにも伝送でき、この場合、ブロードキャスティングすることもでき、モジュールを複数のグループに分けて一部のグループにのみ伝送することもできる。
【００５１】
次いで、復号化過程で、ラッパー６２は、バスから伝送される暗号化されたデータ、すなわち、暗号文データＣＤ２を探知する。また、ラッパー６２に含まれたストリーム暗号化受信部６２２は、同期信号を受信し、同期信号によってキーストリームを生成する。この場合、キーストリームの生成に基となるシードは、ストリーム暗号化送信部６２１及び他のモジュールのストリーム暗号化送信部／受信部と同じである。同期信号は、暗号文データＣＤ２を生成した相手のモジュールから提供されたものであって、暗号文データＣＤ２によってオン／オフとなる。他の実施形態で、ラッパー６２は、同期信号を他のモジュールから伝送される。
【００５２】
ラッパー６２に含まれたストリーム暗号化受信部６２２は、生成されたキーストリームと暗号文データＣＤ２とを演算して、暗号文データＣＤ２を復号化されたデータ、すなわち、平文データＰＤ２を生成する。このとき、本発明の一実施形態で、ストリーム暗号化受信部６２２は、生成されたキーストリームと暗号文データＣＤ２とに対してＸＯＲを行って平文データＰＤ２を生成しうる。
【００５３】
図７は、本発明の一実施形態によるデータの暗号化方法を示すフローチャートである。図７を参照するに、本実施形態によるデータの暗号化方法は、図６に示されたバスシステムで時系列的に処理されるステップで構成される。したがって、以下省略された内容であっても、図３に示されたバスシステムについて前述された内容は、本実施形態によるデータの暗号化方法にも適用される。
【００５４】
７１ステップで、データを伝送するモジュールでデータが生成されれば、モジュールに連結されたラッパーは、バスに伝送するデータを所定のキーから生成されたキーストリームと演算することによってデータを暗号化する。本発明の一実施形態で、バスに伝送するデータ及びキーストリームに対してＸＯＲを行うことによってデータを暗号化しうる。このとき、キーストリームは、所定のキー及び付加情報を含むシードに基づいて生成され、バスのクロック信号に同期される。ここで、付加情報は、初期化ベクトル（ＩＶ）で表示される。
【００５５】
７２ステップで、ラッパーは、暗号化されたデータを、バスを通じて所定のモジュールに伝送する。本発明の一実施形態で、所定のモジュールは、少なくとも二つ以上でありうる。
【００５６】
７３ステップで、暗号化されたデータがバスを通じて伝送される区間でオンとなる同期信号を所定のモジュールに伝送する。このとき、同期信号は、バスのクロック信号に同期される。本発明の一実施形態で、所定のモジュールは、少なくとも二つ以上であり、同期信号は、ブロードキャスティングされる。ここで、同期信号は、少なくとも二つ以上のモジュールそれぞれの専用線を通じて伝送されることもあり、バスのコントローラの制御を通じてバスに伝送されることもある。本発明の他の実施形態で、所定のモジュールは、少なくとも二つ以上であり、少なくとも二つ以上のモジュールは、複数のグループに分けられ、複数のグループのうち少なくとも一つのグループに同期信号を伝送しうる。
【００５７】
図８は、本発明の一実施形態によるデータの復号化方法を示すフローチャートである。図８を参照するに、本実施形態によるデータの復号化方法は、図６に示されたバスシステムで時系列的に処理されるステップで構成される。したがって、以下省略された内容であっても、図６に示されたバスシステムについて前述された内容は、本実施形態によるデータの復号化方法にも適用される。
【００５８】
８１ステップで、データを受信するモジュールに連結されたラッパーは、所定のモジュールからバスを通じて暗号化されたデータを受信する。
【００５９】
８２ステップで、ラッパーは、暗号化されたデータがバスを通じて伝送される区間でオンとなる同期信号を受信する。このとき、同期信号は、バスのクロック信号に同期される。
【００６０】
８３ステップで、ラッパーは、暗号化されたデータを同期信号がオンである区間で所定のキーから生成されたキーストリームと演算することによって復号化する。本発明の一実施形態で、キーストリームと暗号化されたデータに対してＸＯＲを行うことによって、暗号化されたデータを復号化しうる。
【００６１】
本発明は、前述した実施形態に限定されず、本発明の思想内で当業者による変形が可能である。
【００６２】
本発明はまた、コンピュータで読み取り可能な記録媒体にコンピュータ可読コードとして具現することが可能である。コンピュータで読み取り可能な記録媒体は、コンピュータシステムによって読み取られるデータが保存される全ての種類の記録装置を含む。コンピュータで読み取り可能な記録媒体の例としては、ＲＯＭ（リード  オンリ  メモリ）、ＲＡＭ（ランダム  アクセス  メモリ）、ＣＤ−ＲＯＭ、磁気テープ、ハードディスク、フロッピー（登録商標）ディスク、フラッシュメモリ、光データ保存装置があり、またキャリアウェーブ（例えば、インターネットを通じた伝送）の形態で具現されるものも含む。また、コンピュータで読み取り可能な記録媒体は、ネットワークに連結されたコンピュータシステムに分散され、分散方式でコンピュータ可読コードとして保存され、かつ実行される。
【００６３】
本発明は、図面に示した実施形態を参照して説明されたが、それは、例示的なものに過ぎず、当業者ならば、これから多様な変形及び均等な他の実施形態が可能であるということが分かるであろう。したがって、本発明の真の技術的保護範囲は、特許請求の範囲の技術的思想によって決定されねばならない。  
【産業上の利用可能性】
【００６４】
本発明は、データ暗号化関連の技術分野に適用可能である。
【図面の簡単な説明】
【００６５】
【図１】従来のストリーム暗号システムを示すブロック図である。
【図２】本発明の一実施形態による１：１構造のバスシステムを示すブロック図である。
【図３】図２のバスシステムでのデータの伝送動作を詳細に示すブロック図である。
【図４】図２のバスシステムに含まれたラッパーを概略的に示すブロック図である。
【図５】本発明の一実施形態によるＮ：Ｎ構造のバスシステムを示すブロック図である。
【図６】本発明の一実施形態によるバスシステムのデータ暗号化及び復号化動作を具体的に示すブロック図である。
【図７】本発明の一実施形態によるデータの暗号化方法を示すフローチャートである。
【図８】本発明の一実施形態によるデータの復号化方法を示すフローチャートである。
【符号の説明】
【００６６】
３１    第１モジュールラッパー
３２    第２モジュールラッパー
３３    バス
３１１  ストリーム暗号化送信部
３２１  ストリーム暗号化受信部
【図１】
2008282004.tif 000003
【図２】
2008282004.tif 000004
【図３】
2008282004.tif 000005
【図４】
2008282004.tif 000006
【図５】
2008282004.tif 000007
【図６】
2008282004.tif 000008
【図７】
2008282004.tif 000009
【図８】
2008282004.tif 000010