説明

暗号化データ作成装置、暗号化データ作成方法、および暗号化データ作成プログラム

【課題】不正アクセス者に解読され難く、かつ簡単な処理によって暗号化/復号化することが可能な暗号化方式を提供する。
【解決手段】暗号化データ作成装置が、暗号化対象データPdよりも大きいデータ長とされた暗号化演算及び復号化演算に用いる共通鍵データKdを示す共通鍵数値と任意に決定されたランダムデータRdを示すランダム数値との積と、暗号化対象データPdを示す暗号化対象数値との和を、暗号化データとして算出し、算出した暗号化データと、共通鍵データとを記憶する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、暗号化対象データを暗号化した暗号化データを作成するための技術に関する。
【背景技術】
【0002】
従来から、インターネットなどの通信ネットワーク上に開設されたオンラインゲームサーバにビデオゲーム装置を接続してプレイを楽しむオンラインゲームと呼ばれるものある。このオンラインゲームをプレイする際にビデオゲーム装置内のデータが通信ネットワーク上に漏洩してしまうことを防止するために、ビデオゲーム装置には、オンラインゲーム用のパスワードが設定されて格納されている。このようなオンラインゲームでは、プレイヤを特定するために、ログイン時にプレイヤにパスワードを入力させることによって、悪意のある第三者が、当該のプレイヤに成り済ましてプレイをしたり、酷い場合は正規のプレイヤが獲得したアイテム等を不正に奪ったり消去したりすることを防いでいる。また、一部のオンラインゲームでは、ゲームで使用するアイテムを実世界で流通している貨幣で売買する「アイテム課金」と呼ばれる行為も行われるようになっており、このようなアイテム買い取りに利用するためのクレジットカード情報等が記録されている場合もあり、パスワードが解読されることを防ぐことは非常に重要な課題となっている。
【0003】
しかし、パスワードデータはゲームデータ等の他のデータと合わせて通信ネットワーク上のサーバに記録されているため、データのどの領域にパスワードが格納されているかが特定されてしまうと、解読がされやすくなるという性質がある。ところが、あまりにも複雑な暗号化のルールを設定すると、一度に多くのプレイヤがアクセスすることが頻繁に発生するオンラインゲームにおいては処理負荷がかかりすぎてしまうため、プレイヤが快適にゲームを楽しむことを阻害してしまう。このような事情から、暗号化/復号化はできる限り負荷をかけずに実行できるようにすることが好ましい。
【0004】
暗号化技術としては、例えば、特許文献1に記載されているように、ランダムに生成された2値系列から、暗号化及び復号化に用いる共通鍵を簡単に生成し、暗号化及び復号化処理の簡素化を図るようにしたものがある。
【0005】
【特許文献1】特開平9−311627号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
上述したように、特許文献1に記載された手法など様々な暗号化方式が提案され運用されているが、不正アクセス者に解読され難く、かつ簡単な処理によって暗号化/復号化することができる新たな暗号化方法の提案が望まれている。
【0007】
本発明は、上記の問題を解消すべく、不正アクセス者に解読され難く、かつ簡単な処理によって暗号化/復号化することができるような新たな暗号化方式を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明の暗号化データ作成装置は、暗号化対象データを暗号化した暗号化データを作成する暗号化データ作成装置であって、前記暗号化対象データよりも大きいデータ長とされた暗号化演算及び復号化演算に用いる共通鍵データを示す共通鍵数値と任意に決定されたランダムデータを示すランダム数値との積と、前記暗号化対象データを示す暗号化対象数値との和を、暗号化データとして算出する前記暗号化演算を行う暗号化演算手段と、前記暗号化演算により算出された前記暗号化データと、前記共通鍵データとを記憶する暗号化データ記憶手段とを備えたことを特徴とする。
【0009】
上記の構成としたことで、不正アクセス者に解読され難く、かつ簡単な処理によって暗号化/復号化することができるような新たな暗号化方式を提供することができるようになる。
【0010】
前記共通鍵データを決定する共通鍵データ決定手段を備え、前記暗号化演算手段は、前記共通鍵データ決定手段が決定した前記共通鍵データを用いて前記暗号化演算を行う構成とされていてもよい。
【0011】
前記共通鍵データ決定手段は、例えば、前記暗号化対象データに基づいて前記共通鍵データを決定する。
【0012】
前記暗号化対象データの指定を受け付ける暗号化対象データ受付手段を備え、前記共通鍵データ決定手段は、例えば、前記暗号化対象データ受付手段が前記暗号化対象データの指定を受け付けた時間を示す時間データに基づいて前記共通鍵データを決定する。
【0013】
前記ランダムデータを任意に決定するランダムデータ決定手段を備え、前記暗号化演算手段は、前記ランダムデータ決定手段が決定した前記ランダムデータを用いて前記暗号化演算を行うように構成されていてもよい。
【0014】
前記暗号化データ記憶手段に記憶されている前記暗号化データを示す暗号化数値を前記共通鍵データを示す共通鍵数値で除算した余りを、復号化データとして算出する前記復号化演算を行う復号化演算手段と、該復号化演算手段により算出された前記復号化データを出力する復号化データ出力手段とを備えた構成とされていてもよい。
【0015】
前記暗号化対象データを用いた前記暗号化演算による算出された前記暗号化データを、あらかじめ定められたローテーションルールに従ってそれぞれビット単位でローテーションさせるローテーション処理手段を備え、前記暗号化データ記憶手段は、前記ローテーション処理手段によりデータがローテーションされた暗号化データを記憶するように構成されていてもよい。
【0016】
前記暗号化対象データは、例えば、オンラインゲームで使用されるパスワードデータである。
【0017】
また、本発明の暗号化データ作成方法は、暗号化対象データを暗号化した暗号化データを作成する暗号化データ作成方法であって、前記暗号化対象データよりも大きいデータ長とされた暗号化演算及び復号化演算に用いる共通鍵データを示す共通鍵数値と任意に決定されたランダムデータを示すランダム数値との積と、前記暗号化対象データを示す暗号化対象数値との和を、暗号化データとして算出する前記暗号化演算を行う暗号化演算ステップと、前記暗号化演算により算出した前記暗号化データと、前記共通鍵データとを暗号化データDBに格納する暗号化データ格納ステップとを含むことを特徴とする。
【0018】
さらに、本発明の暗号化データ作成プログラムは、暗号化対象データを暗号化した暗号化データを作成させる暗号化データ作成プログラムであって、コンピュータに、前記暗号化対象データよりも大きいデータ長とされた暗号化演算及び復号化演算に用いる共通鍵データを示す共通鍵数値と任意に決定されたランダムデータを示すランダム数値との積と、前記暗号化対象データを示す暗号化対象数値との和を、暗号化データとして算出する前記暗号化演算を行う暗号化演算ステップと、前記暗号化演算により算出した前記暗号化データと、前記共通鍵データとを暗号化データDBに格納する暗号化データ格納ステップとを実行させるためのものである。
【発明の効果】
【0019】
本発明によれば、不正アクセス者に解読され難く、かつ簡単な処理によって暗号化/復号化することができるような新たな暗号化方式を提供することができるようになる。
【発明を実施するための最良の形態】
【0020】
以下、本発明の一実施の形態について図面を参照して説明する。
【0021】
図1は、本発明の一実施の形態における暗号化データ作成装置による暗号化データ作成方式の概要を示す概念図である。図1に示すように、本例の暗号化データ作成装置(図示せず)は、所定の暗号化演算式による演算を行うことで、暗号化対象データであるオンラインゲームのパスワードデータPdを暗号化した暗号化データを作成し、作成した暗号化データを暗号化データ格納メモリ10に格納する機能を有する。また、暗号化データ作成装置は、暗号化データ格納メモリ10に格納された暗号化データ及び共通鍵データを読み出して、所定の復号化演算式による演算を行うことで暗号化データを復号化し、復号化したパスワードデータPdを出力する機能を有する。
【0022】
暗号化データ作成装置は、ビデオゲーム装置やパーソナルコンピュータなどの情報処理装置によって構成される。暗号化データ格納メモリ10は、例えば暗号化データ作成装置内に備えられており、RAMやハードディスクなどの記憶媒体によって構成される。本例では、暗号化対象データとしてオンラインゲームのパスワードデータを用いているが、暗号化の対象となるようなデータであれば、どのようなデータであってもよい。
【0023】
次に、本例の暗号化データ作成装置の動作について説明する。
ここでは、説明を簡単にするため、本発明に特に関わる処理以外は、説明を省略している場合があるものとする。なお、本例では、データ長が1バイトとされているオンラインゲームのパスワードデータPd(ここでは「A」をASCII(American Standard Code for Information Interchange)コードで表記した「0x41」)を暗号化する処理が実行されるものとする。
【0024】
図2は、本例の暗号化データ作成装置が実行する暗号化処理の例を示すフローチャートである。図3は、1バイトの暗号化対象データを暗号化する場合の処理の概要を示す概念図である。
【0025】
暗号化処理において、暗号化データ作成装置は、先ず、暗号化対象データであるパスワードデータPdを受け付ける(ステップS101)。ステップS101では、例えばパスワード設定画面においてユーザ(プレイヤ)が指定したパスワードを示すパスワードデータを受け付ける。ここでは、図3に示すように、1バイトのデータ長を有する暗号化対象データPd「0x41」が受け付けられる。
【0026】
次に、暗号化データ作成装置は、暗号化及び復号化に用いられる共通鍵データKdを決定する(ステップS102)。共通鍵データKdは、そのデータ長が、暗号化対象データPdよりも大きくなるようなものに決定される。ここでは、図3に示すように、2バイトの共通鍵データKd「0x1111」に決定されたものとする。なお、ステップS102では、共通鍵データが漏洩してしまうような場合に備えて、例えば、暗号化対象データPdに所定の演算処理を施すなどして、暗号化対象データPdに基づいて共通鍵データKdを生成するようにしてもよい。また、ステップS102にて、ステップS101にてパスワードデータPdを受け付けた時間を示す時間データを共通鍵データKdに決定するようにしてもよく、その時間データに所定の演算処理を施したものを共通鍵データKdが生成されるようにしてもよい。この共通鍵データKdは、暗号化データ作成装置がランダムに生成するようにしてもよいし、ユーザが任意に指定したものが生成されるようにしてもよい。
【0027】
次に、暗号化データ作成装置は、暗号化演算に用いられるランダムデータRdを任意に決定する(ステップS103)。ランダムデータRdは、どのような値を示すものであってもよく、図3に示すように、ここでは1/2バイトのランダムデータRd「0x5」に決定されたものとする。このランダムデータRdは、暗号化データ作成装置がランダムに決定するようにしてもよいし、ユーザが任意に指定したものに決定されるようにしてもよい。
【0028】
次に、暗号化データ作成装置は、ステップS101にて受け付けた暗号化対象データPd「0x41」と、ステップS102にて決定した共通鍵データKd「0x1111」と、ステップS103にて決定したランダムデータRd「0x5」とを用いて、所定の暗号化演算式「共通鍵データKd×ランダムデータRd+暗号化対象データPd」による演算を行うことで、暗号化対象データPd「0x41」を暗号化した暗号化データを作成する(ステップS104)。ここでは、図3に示すように、共通鍵データKd「0x1111」とランダムデータRd「0x5」との積である「0x5555」と、暗号化対象データPd「0x41」との和である「0x5596」が暗号化データEdとして算出される。
【0029】
そして、暗号化データ作成装置は、作成した暗号化データEd「0x5596」と、暗号化演算に使用した共通鍵データKd「0x1111」とを、暗号化データ格納メモリ10に格納する(ステップS105)。
【0030】
図4は、本例の暗号化データ作成装置が実行する復号化処理の例を示すフローチャートである。ここでは、所定の暗号化演算式による演算により作成された暗号化データEd「0x5596」を復号化する場合について説明する。
【0031】
復号化処理において、暗号化データ作成装置は、先ず、復号化対象データである暗号化データを、暗号化データ格納メモリ10から読み出す(ステップS201)。ここでは、図5に示すように、暗号化データEd「0x5596」が読み出されるものとする。
【0032】
次に、暗号化データ作成装置は、暗号化データ格納メモリ10から共通鍵データを、暗号化データ格納メモリ10から読み出す(ステップS202)。ここでは、図5に示すように、共通鍵データKd「0x1111」が読み出されるものとする。
【0033】
次に、暗号化データ作成装置は、ステップS201にて読み出した暗号化データEd「0x5596」と、ステップS202にて読み出した共通鍵データKd「0x1111」とを用いて、所定の復号化演算式「暗号化データEd mod 共通鍵データKd(暗号化データEdを共通鍵データKdで除算したときの余りを解とする式)」による演算を行うことで、暗号化データEd「0x5596」を復号化する(ステップS203)。ここでは、図5に示すように、暗号化データEd「0x5596」を共通鍵データKdで除算したときの余り「0x41」が復号化データとして算出される。このようにして、暗号化対象データPdと同一の復号化データ「0x41」が作成される。
【0034】
そして、暗号化データ作成装置は、作成した復号化データ「0x41」を出力し、例えばパスワードの照合などのために復号化データを使用する(ステップS204)。
【0035】
なお、上記の例では、16進数を用いて説明していたが、2進数や10進数などの他の方式による数値であってもよい。また、上記の例において、「A mod B」は、「AをBで除算したときの余りの値」を意味する。また、上記の例においては、暗号化対象データPdを1バイトであるものとしていたが、他のデータ長であってもよい。
【0036】
以上に説明したように、上述した一実施の形態では、暗号化データ作成装置が、暗号化対象データPdよりも大きいデータ長とされた暗号化演算及び復号化演算に用いる共通鍵データKdを示す共通鍵数値と任意に決定されたランダムデータRdを示すランダム数値との積と、暗号化対象データPdを示す暗号化対象数値との和を、暗号化データとして算出し、算出した暗号化データと、共通鍵データとを記憶する構成としたので、不正アクセス者に解読され難く、かつ簡単な処理によって暗号化/復号化することができるような新たな暗号化方式を提供することができるようになる。すなわち、ブロック変換ルールに基づきブロック単位でデータを入れ替えるという簡単な構成によって、不正アクセス者に解読され難い暗号化データを作成することができるため、新たな暗号化方式を提供することができる。また、ランダムデータRdが任意に決定されるため、同じ暗号化対象データであっても暗号化を行う毎に異なる暗号化データを得ることが可能となり、暗号化データに多様性を持たせることができ、セキュリティレベルを向上させること可能となる。また、簡単な復号化演算により演算することができるので、暗号化データ作成装置の処理負荷を軽減させることができ、また高速に復号化することができるようになる。
【0037】
また、上述した実施の形態では、暗号化データ作成装置が、共通鍵データを決定し、決定した共通鍵データを用いて暗号化演算を行う構成としたので、同じ暗号化対象データであっても暗号化を行う毎に異なる暗号化データを得ることが可能となり、暗号化データに多様性を持たせることができ、セキュリティレベルを向上させること可能となる。
【0038】
また、上述した実施の形態では、暗号化データ作成装置が、例えば、暗号化対象データに基づいて共通鍵データを決定する構成としたので、共通鍵データを簡単に決定することが可能となる。
【0039】
また、上述した実施の形態では、暗号化データ作成装置が、例えば、暗号化対象データの指定を受け付けた時間を示す時間データに基づいて共通鍵データを決定する構成としたので、共通鍵データを簡単かつランダムに決定することが可能となる。
【0040】
また、上述した実施の形態では、暗号化データ作成装置が、ランダムデータを任意に決定し、決定したランダムデータを用いて暗号化演算を行う構成としたので、ランダムデータの決定を簡単に行うことができ、また、同じ暗号化対象データであっても暗号化を行う毎に異なる暗号化データを得ることが可能となり、暗号化データに多様性を持たせることができ、セキュリティレベルを向上させること可能となる。
【0041】
また、上述した実施の形態では、暗号化データ作成装置が、暗号化データ格納メモリ10に記憶されている暗号化データを示す暗号化数値を、共通鍵データを示す共通鍵数値で除算した余りを、復号化データとして算出する前記復号化演算を行い、算出した復号化データを出力する構成としているので、簡単な復号化演算により演算することができ、暗号化データ作成装置の処理負荷を軽減させることができ、また高速に復号化することができるようになる。
【0042】
なお、上述した実施の形態では特に言及していないが、暗号化データ作成装置は、自己が備える記憶装置に記憶されている制御プログラムに従って、上述した暗号化や復号化のための処理を実行する。
【0043】
また、上述した実施の形態では特に言及していないが、暗号化データ作成装置が、暗号化対象データを用いた暗号化演算による算出された暗号化データを、あらかじめ定められたローテーションルール(例えば、「3ビットスライドする」など)に従ってそれぞれビット単位でローテーションさせ、データがローテーションされた暗号化データを暗号化データ格納メモリ10に記憶するように構成されていてもよい。このように、暗号化データ作成装置が、データがローテーションされた暗号化データを暗号化データ格納メモリ10に記憶する構成とした場合には、より不正アクセス者に解読され難い暗号化データを作成することができる。
【産業上の利用可能性】
【0044】
本発明によれば、不正アクセス者に解読され難く、かつ簡単な処理によって暗号化/復号化することが可能な暗号化方式を使用する暗号化データ作成装置に適用するのに有用である。
【図面の簡単な説明】
【0045】
【図1】本発明の一実施の形態における暗号化データ作成装置による暗号化データ作成方式の概要を示す概念図である。
【図2】暗号化処理の例を示すフローチャートである。
【図3】1バイトの暗号化対象データを暗号化する場合の処理の概要を示す概念図である。
【図4】復号化処理の例を示すフローチャートである。
【図5】1バイトの暗号化対象データを復号化する場合の処理の概要を示す概念図である。
【符号の説明】
【0046】
10 暗号化データ格納メモリ
Pd 暗号化対象データ
Kd 共通鍵データ
Rd ランダムデータ
Ed 暗号化データ

【特許請求の範囲】
【請求項1】
暗号化対象データを暗号化した暗号化データを作成する暗号化データ作成装置であって、
前記暗号化対象データよりも大きいデータ長とされた暗号化演算及び復号化演算に用いる共通鍵データを示す共通鍵数値と任意に決定されたランダムデータを示すランダム数値との積と、前記暗号化対象データを示す暗号化対象数値との和を、暗号化データとして算出する前記暗号化演算を行う暗号化演算手段と、
前記暗号化演算により算出された前記暗号化データと、前記共通鍵データとを記憶する暗号化データ記憶手段とを備えた
ことを特徴とする暗号化データ作成装置。
【請求項2】
前記共通鍵データを決定する共通鍵データ決定手段を備え、
前記暗号化演算手段は、前記共通鍵データ決定手段が決定した前記共通鍵データを用いて前記暗号化演算を行う
請求項1記載の暗号化データ作成装置。
【請求項3】
前記共通鍵データ決定手段は、前記暗号化対象データに基づいて前記共通鍵データを決定する
請求項2記載の暗号化データ作成装置。
【請求項4】
前記暗号化対象データの指定を受け付ける暗号化対象データ受付手段を備え、
前記共通鍵データ決定手段は、前記暗号化対象データ受付手段が前記暗号化対象データの指定を受け付けた時間を示す時間データに基づいて前記共通鍵データを決定する
請求項2記載の暗号化データ作成装置。
【請求項5】
前記ランダムデータを任意に決定するランダムデータ決定手段を備え、
前記暗号化演算手段は、前記ランダムデータ決定手段が決定した前記ランダムデータを用いて前記暗号化演算を行う
請求項1から請求項4のうちいずれかに記載の暗号化データ作成装置。
【請求項6】
前記暗号化データ記憶手段に記憶されている前記暗号化データを示す暗号化数値を前記共通鍵データを示す共通鍵数値で除算した余りを、復号化データとして算出する前記復号化演算を行う復号化演算手段と、
該復号化演算手段により算出された前記復号化データを出力する復号化データ出力手段とを備えた
請求項1から請求項5のうちいずれかに記載の暗号化データ作成装置。
【請求項7】
前記暗号化対象データを用いた前記暗号化演算による算出された前記暗号化データを、あらかじめ定められたローテーションルールに従ってそれぞれビット単位でローテーションさせるローテーション処理手段を備え、
前記暗号化データ記憶手段は、前記ローテーション処理手段によりデータがローテーションされた暗号化データを記憶する
請求項1から請求項5のうちいずれかに記載の暗号化データ作成装置。
【請求項8】
前記暗号化対象データは、オンラインゲームで使用されるパスワードデータである
請求項1から請求項7のうちいずれかに記載の暗号化データ作成装置。
【請求項9】
暗号化対象データを暗号化した暗号化データを作成する暗号化データ作成方法であって、
前記暗号化対象データよりも大きいデータ長とされた暗号化演算及び復号化演算に用いる共通鍵データを示す共通鍵数値と任意に決定されたランダムデータを示すランダム数値との積と、前記暗号化対象データを示す暗号化対象数値との和を、暗号化データとして算出する前記暗号化演算を行う暗号化演算ステップと、
前記暗号化演算により算出した前記暗号化データと、前記共通鍵データとを暗号化データDBに格納する暗号化データ格納ステップとを含む
ことを特徴とする暗号化データ作成方法。
【請求項10】
暗号化対象データを暗号化した暗号化データを作成させる暗号化データ作成プログラムであって、
コンピュータに、
前記暗号化対象データよりも大きいデータ長とされた暗号化演算及び復号化演算に用いる共通鍵データを示す共通鍵数値と任意に決定されたランダムデータを示すランダム数値との積と、前記暗号化対象データを示す暗号化対象数値との和を、暗号化データとして算出する前記暗号化演算を行う暗号化演算ステップと、
前記暗号化演算により算出した前記暗号化データと、前記共通鍵データとを暗号化データDBに格納する暗号化データ格納ステップとを
実行させるための暗号化データ作成プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate