説明

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

【課題】不正アクセス者に解読され難く、かつ簡単な処理によって暗号化/復号化することが可能な暗号化方式を提供する。
【解決手段】暗号化データ作成装置が、所定のデータ長のブロック単位でデータ位置を変換するためのルールであるブロック変換ルールが格納されたルール格納DBを有し、暗号化対象データをブロック変換ルールに従ってブロック変換した暗号化データを作成し、作成された暗号化データを暗号化データ格納メモリ10に格納する。

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

【特許請求の範囲】
【請求項1】
暗号化対象データを暗号化した暗号化データを作成する暗号化データ作成装置であって、
所定のデータ長のブロック単位でデータ位置を変換するためのルールであるブロック変換ルールが格納されたルール格納DBと、
前記暗号化対象データを前記ブロック変換ルールに従ってブロック変換した暗号化データを作成する暗号化データ作成手段と、
作成された暗号化データを記憶する暗号化データ記憶手段とを備えた
ことを特徴とする暗号化データ作成装置。
【請求項2】
前記ブロック変換ルールでは、前記暗号化データにおける前記所定のデータ長の各ブロックがそれぞれ変換される変換ブロックが定められている
請求項1記載の暗号化データ作成装置。
【請求項3】
前記ブロック変換ルールでは、データ位置の変換対象とするブロック数が定められており、
前記暗号化対象データのブロック数が前記ブロック変換ルールで定められているブロック数未満であった場合に、任意のデータ内容とした不足数分のブロックを前記暗号化対象データに追加する不足ブロック追加手段を備え、
前記暗号化データ作成手段は、前記不足ブロック追加手段によって不足数分のブロックが追加された暗号化対象データを前記ブロック変換ルールに従ってブロック変換した暗号化データを作成し、
前記暗号化データ記憶手段は、暗号化対象データのブロック数をも記憶する
請求項1または請求項2記載の暗号化データ作成装置。
【請求項4】
前記ブロック変換ルールでは、データ位置の変換対象とするブロック数が定められており、
前記暗号化対象データのブロック数が前記ブロック変換ルールで定められているブロック数未満であった場合に、特定のデータ内容とした不足数分のブロックを前記暗号化対象データに追加する不足ブロック追加手段を備え、
前記暗号化データ作成手段は、前記不足ブロック追加手段によって不足数分のブロックが追加された暗号化対象データを前記ブロック変換ルールに従ってブロック変換した暗号化データを作成する
請求項1または請求項2記載の暗号化データ作成装置。
【請求項5】
前記ルール格納DBには、複数種類のブロック変換ルールが格納されており、
前記複数種類のブロック変換ルールのうち何れのブロック変換ルールを適用するかを決定するルール決定手段を備え、
前記暗号化データ作成手段は、前記ルール決定手段によって決定されたブロック変換ルールに従って前記暗号化対象データをブロック変換した暗号化データを作成し、
前記暗号化データ記憶手段は、何れのブロック変換ルールを適用したかを示す適用ルール情報をも記憶する
請求項1から請求項4のうちいずれかに記載の暗号化データ作成装置。
【請求項6】
前記暗号化対象データは、オンラインゲームで使用されるパスワードデータである
請求項1から請求項5のうちいずれかに記載の暗号化データ作成装置。
【請求項7】
前記暗号化データ作成手段は、前記暗号化対象データを前記ブロック変換ルールに従ってブロック変換したあと、あらかじめ定められたローテーションルールに従って各ブロック内のデータをそれぞれビット単位でローテーションさせた暗号化データを作成する
請求項1から請求項6のうちいずれかに記載の暗号化データ作成装置。
【請求項8】
暗号化対象データを暗号化した暗号化データを作成する暗号化データ作成方法であって、
所定のデータ長のブロック単位でデータ位置を変換するためのルールであるブロック変換ルールが格納されたルール格納DBに格納されている前記ブロック変換ルールに従って、前記暗号化対象データをブロック変換した暗号化データを作成する暗号化データ作成ステップと、
該暗号化データ作成ステップにて作成した暗号化データを暗号化データDBに格納する暗号化データ格納ステップとを含む
ことを特徴とする暗号化データ作成方法。
【請求項9】
暗号化対象データを暗号化した暗号化データを作成させる暗号化データ作成プログラムであって、
コンピュータに、
所定のデータ長のブロック単位でデータ位置を変換するためのルールであるブロック変換ルールが格納されたルール格納DBに格納されている前記ブロック変換ルールに従って、前記暗号化対象データをブロック変換した暗号化データを作成する暗号化データ作成ステップと、
該暗号化データ作成ステップにて作成した暗号化データを暗号化データDBに格納する暗号化データ格納ステップとを
実行させるための暗号化データ作成プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2009−38639(P2009−38639A)
【公開日】平成21年2月19日(2009.2.19)
【国際特許分類】
【出願番号】特願2007−201872(P2007−201872)
【出願日】平成19年8月2日(2007.8.2)
【出願人】(592044813)株式会社スクウェア・エニックス・ホールディングス (115)
【Fターム(参考)】