JP5208796B2 - 整数の暗号化及び復号化方法 - Google Patents
整数の暗号化及び復号化方法 Download PDFInfo
- Publication number
- JP5208796B2 JP5208796B2 JP2009030444A JP2009030444A JP5208796B2 JP 5208796 B2 JP5208796 B2 JP 5208796B2 JP 2009030444 A JP2009030444 A JP 2009030444A JP 2009030444 A JP2009030444 A JP 2009030444A JP 5208796 B2 JP5208796 B2 JP 5208796B2
- Authority
- JP
- Japan
- Prior art keywords
- integer
- encryption
- power
- encrypting
- decrypting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Description
また、暗号及びデジタル署名を実現しうる方式として、桁数が大きい合成数の素因数分解問題が困難であることを安全性の根拠とした公開鍵暗号であるRSA暗号が知られている(特許文献1及び非特許文献1)。RSA暗号は、暗号化の段階においては適当な正数によるべき乗と素数2個の積を法数とする剰余演算とを用い、復号化においては当該積の素因数を要するべき乗根を用いることにより、素因数を知らなければ復号化が困難になることによって暗号の安全性を確保している。
さらに、コンピュータ・ネットワークを介する情報の送受信においてセキュリティを確保するために、暗号化、認証、改ざん検出の機能を有するSSLプロトコル等が知られている(非特許文献2)。SSLプロトコルに含まれる公開鍵証明書に基づく認証は、RSA暗号を用いうることが知られている。
また、RSA暗号化等の公開鍵暗号化方式においては、元の情報と暗号化した情報との組み合わせが第三者に漏洩すると、当該組み合わせを手がかりとして暗号化及び復号化のための鍵を解析される可能性があった。
さらに、音声による通話又は印刷物等の文書を介する情報の漏洩においては、コンピュータ・ネットワークを用いて伝達される情報に対するSSLプロトコル等のセキュリティ技術では対応できないため、音声又は文書等を含む多様な形態で個人情報を隠蔽しうる方法が必要であった。
本発明では、以下のような解決手段を提供する。
コンピュータ装置が、前記記憶された数Eをべき指数とする、次式記載の整数XiのE乗冪演算において、前記整数Xiの前記展開形を用いて、前記それぞれの桁に対応する整数間の計算に置き換えて展開した剰余計算により、整数XiをE乗してNを法とする整数Yiを計算するステップと、コンピュータ装置が、前記整数Xiを暗号化した整数Yiを記憶手段に記憶するステップと、
入力に用いる整数は、コンピュータ処理可能な整数であればよく、文字又は画像等から可逆的に変換された整数でもよい。例えば、コンピュータ処理可能な文字のそれぞれに割り当てられた文字コード等を1桁、2桁又は4桁等の16進数の整数として扱ってもよい。また、例えば、英字アルファベットに含まれる26個の文字を、26進数を表す1桁の整数として扱ってもよい。また、例えば、コンピュータ処理可能な画像に含まれる個々の画素を、RGB各8ビットの整数の一組とする24ビットの2進数の整数として扱ってもよい。
一実施形態において、構成員の識別番号等の個人情報は、コンピュータ処理可能な整数に可逆的に変換され、本発明の整数を暗号化し復号化する方法の入力に用いられる。
本発明に係る暗号化の鍵を選択するためのランダムな規則は、乱数の発生等を含むランダムな規則を用いることが可能である。例えば、整数の乱数を発生するためのコンピュータ・プログラムを用いて得られる整数を、本発明に係る暗号化の鍵として用いてもよい。これに限定せず、乱数賽等の機構、任意の時刻における電気的雑音の強度と関連づけた数値等をランダムな規則として、これらのランダムな規則に基づいて整数を選択して用いてもよい。
具体的には、本発明に係る整数を暗号化する方法においては、式(I)に含まれる整数Eは、ランダムな規則に基づいて選択されうる。また、本発明に係る整数を復号化する方法においては、式(II)により整数Eと関連づけられる整数Fが選択されうる。
本発明に係る整数を暗号化する方法においては、このランダムな規則による整数Eの選択により、整数Fも選択される。すなわち、本発明に係る任意の時点におけるべき剰余の計算において選択される一対の整数E及び整数Fは、他のべき剰余の計算中に選択された他の一対の整数E及び整数Fとは関連性のない整数でありうる。従って、本発明に係る暗号化及び復号化に用いられる整数E及び整数Fの正しい値を用いることのない第三者に対して、本発明は極めて高い秘匿性を提供することが可能になる。
一実施形態において、桁あふれは、コンピュータが備える中央演算ユニット(CPU)の演算レジスタに発生しうる。従って、特定のCPUが有する演算レジスタの桁数に従って、有効な桁数の整数演算が実施されうる。例えば、レジスタ長が16ビットのCPUの場合、整数演算に用いうる整数は、例えば符号なし16ビット整数として、10進数の0〜65535の範囲である。レジスタ長が32ビットのCPUの場合は、同様に符号なし32ビット整数として、10進数の0〜4294967295の範囲である。
別の実施形態において、桁あふれは、インタープリタ、スクリプト又はスプレッドシート等が整数演算のために用意する内部関数において発生しうる。従って、特定のインタープリタ、スクリプト又はスプレッドシート等が有する内部関数が表現可能な整数の桁数に従って、有効な桁数の整数演算が実施されうる。例えば、特定のコンパイラ等において符号なし16ビット整数の型が定義された変数が表しうる整数は、10進数の0〜65535の範囲である。
これらの4通りの範囲に加えて、「0以上N以下」及び「0以上(N−1)以下」の範囲は、前述の特異点に対する換字式暗号化及び復号化の実施に含まれうる。本発明に係る換字式暗号化及び復号化の範囲の選択は、これらの6通りの範囲のいずれかでもよく、例えば、「(N−3)以上N以下」等のより狭い範囲でもよく、適宜設計しうる。
このように、べき剰余を用いる暗号化及び換字式暗号化のいずれとも独立した変数でありうる当該回数を秘密とすることで、当該回数は第三者に不明となる。すなわち、第三者の解読の手間はさらに膨大となりうる。従って、本発明に係る整数を暗号化し復号化する方法においては、元の整数に対して極めて高い秘匿性を与えることが可能になる。
特に、べき剰余を用いる暗号化及び復号化においては、従来の公開鍵暗号化技術等では0、1、及び元の整数自身が変換されずに特異点となりうるが、本発明においてはオフセットを用いて従来法における特異点の数値を変更することが可能である。従って、本発明においては、従来法の特異点に係る問題を避けて暗号化及び復号化を実施することが可能になる。ここで、オフセットTの加算により得られる整数(Xi+T)が、上述の素数A及びBの積Nを超える場合は、入力として受け付ける整数Xiの範囲を(N−T)未満としてもよく、積Nが整数(Xi+T)を超えるように素数A及びBを改めて選択してもよく、適宜設計しうる。
従って、前述の式(I)として表されるXiのべき乗の計算において、式(VII)を用いて適宜元の整数Xiを上位の桁と下位の桁とに分割することにより、べき乗の計算過程での桁あふれを避けることが可能になる。
一実施形態において、暗号化される整数Xiは生年月日の日付の情報を含む文字列に基づいて生成される4桁、6桁、又は8桁等の整数であり、任意に選択される桁数は例えば2桁の整数でありうる。本発明に係る整数を暗号化し復号化する方法のユーザ等は、自己の生年月日に基づく同一の整数及び任意に選択される2桁の整数から生成される、桁数を増した整数Wiを暗号化の入力とし、当該2桁の整数を使い分けることにより、複数の暗号化した整数を生成して利用しうる。暗号化される整数は例えば10桁等であっても、ユーザは全ての桁の数字を使用目的ごとに記憶する必要はなく、当該2桁の整数を使い分ければよい。
従って、本発明に係る整数を暗号化し復号化する方法においては、生年月日の日付等の個人情報を含む文字列と関連づけられる整数であっても、任意に選択される桁数を増して暗号化することにより、複数の暗号化した整数を生成して使い分けることが可能になる。
これにより、本発明に係る整数を暗号化し復号化する方法の各ステップをコンピュータに実行させうる。従って、暗号化及び復号化に係る各ステップはコンピュータを用いて自動的に処理されうる。
また、本発明に係る整数の暗号化及び復号化装置においては、桁あふれを発生する条件で前述の式(I)のEを選択した後に、例えば前述の式(VII)を用いてXiを展開し、桁あふれを避けて、暗号化した整数であるYiを正確に得ることができる。
さらに、本発明に係る整数の暗号化及び復号化装置においては、換字式暗号化実行部及び換字式復号化実行部を、べき剰余暗号化及び復号化に重畳して用いることにより、単独の方法の繰り返しでは得られない、秘匿性の高い暗号化を実施し、この暗号化により変換された整数を正しく復号化するための情報を生成することが可能である。
mを任意の整数として、前記数式[数12]を成立する前記Fを生成して、整数YiのF乗がコンピュータ装置の計算手段の整数演算に桁あふれを発生するか否かを判定し、判定結果が真となるまで、数Fの生成と前記判定とを繰り返す手段と、前記判定結果が真となるFを記憶手段に記憶する手段とを含み、前記剰余復号化実行手段は、暗号化された整数Yiを整数Mを基数とするM進表記に変換し、前記YiのM進表記の桁数を、少なくとも2つ以上に分割し、前記分割したそれぞれの桁に対応する整数と当該桁数をべき指数とするMのべき乗との積からなる単項式の和からなる前記Yiの展開形を生成する手段と、
前記生成した数Fをべき指数とする、整数YiのF乗冪演算において、整数Yiの前記展開形を用いて、前記それぞれの桁に対応する整数間の計算に置き換えて展開した剰余計算により、整数YiをF乗してNを法とする整数Xnを計算する手段とを含むことを特徴とする、(21)に記載の整数を暗号化し復号化するシステム。
さらに、本発明に係る整数を暗号化及び復号化するシステムにおいては、桁あふれを発生する条件で前述の式(IX)のEを選択した後に、例えば前述の式(VI)を用いてXiを展開し、桁あふれを避けて、暗号化した整数であるYiを正確に得ることができる。
さらに、本発明に係る整数の暗号化及び復号化するシステムにおいては、換字式暗号化手段及び換字式復号化手段による処理を、べき剰余暗号化及び復号化に重畳するにより、単独の方法の繰り返しでは得られない、秘匿性の高い暗号化を実施し、この暗号化により変換された整数を正しく復号化するための情報を生成することが可能である。
図1及び図2に、本発明の一実施形態に係る、整数を暗号化し復号化する方法のフロー図を示す。図1は本発明に係る整数を暗号化する方法のフロー図の例であり、図2は当該暗号化した整数を復号化する方法のフロー図の例である。
まず、図1を参照し、暗号化の諸段階を説明する。本発明に係る整数を暗号化する方法は、図1のステップS100において、変数領域を確保する。具体的には、次の表1に列挙する変数を用いる計算のためにコンピュータ装置等のメモリ領域が適宜確保される。
例えば、べき剰余を用いる暗号化及び換字式暗号化の組み合わせを全体として3回繰り返す場合に、ステップS100においてループカウンタLに整数3を設定してもよい。これに限定せず、ループカウンタLは、所定の正の整数、当該所定の正の整数を暗号化した正の整数、及びランダムに発生した正の整数からなる群から選択してもよい。
ループカウンタLは、べき剰余を用いる暗号化及び換字式暗号化のいずれとも独立した変数であり、暗号化による秘匿性の強度に影響し、暗号化及び復号化のために計算時間に影響しうる。
ループカウンタLに対して、秘匿性の強度を確保するために、予め下限を設定してもよい。さらに、暗号化及び復号化の計算処理のための時間を短縮するために、予め上限を設定してもよい。従って、本発明に係る整数を暗号化し復号化する方法におけるループカウンタLの値は、予め設定された下限及び/又は上限の範囲に従って、所定の正の整数、当該所定の正の整数を暗号化した正の整数、及びランダムに発生した正の整数からなる群から選ばれうる。ループカウンタLを第三者に秘密とすることで、それぞれの暗号化の方法における秘匿性に加えて、第三者の解読の手間はさらに膨大となりうる。従って、本発明に係る整数を暗号化し復号化する方法においては、元の整数に対して極めて高い秘匿性を与えることが可能になる。
一実施形態において、計算に用いるコンピュータ装置等における整数Xi、Yi、Zi、Xn及びYnのワード長は、当該コンピュータ装置等が備えるCPUの内部命令において一つの整数を表すために用いうるレジスタのビット幅の最大以内でありうる。例えば、16ビットレジスタを用いて内部命令に含まれる整数演算を実施可能なCPUを備えるコンピュータ装置においては、整数Xi、Yi、Zi、Xn及びYnのワード長は16ビット以下であり、これらの整数の変数は10進数の記法における0以上65535以下でありうる。
次いで、本発明に係る整数を暗号化する方法は、ステップS120において、(A−1)と(B−1)との積をDに代入し、(A−1)と(B−1)の最小公倍数をKに代入する。
次いで、本発明に係る整数を暗号化する方法は、ステップS130において、D又はKと素である数の集合からランダムにEを選択する。例えば、D又はKと素である数の集合の各要素を大きさに従って昇順に配列し、配列した要素数を上限として整数型の乱数を発生させ、発生した乱数を配列の順番とする要素を選択して、整数Eとしてもよい。
次いで、本発明に係る整数を暗号化する方法は、ステップS140において、次の式(VIII)の右辺の項(XiのE乗)が、計算手段の整数演算に桁あふれを発生するか否かを判定する。判定の結果が真であればステップS150に進み、偽であればステップS130に戻る。
このようにすることで、本発明に係る整数を暗号化し復号化する方法においては、桁あふれを発生する条件で前述の式(VIII)のEを選択した後に、式(IX)を用いてXiを展開し、桁あふれを避けて、暗号化した整数であるYiを正確に得ることができる。
本発明に係る方法においては、式(IX)又はその具体例である式(X)又は式(XI)等を用いて上位の桁と下位の桁を分離しうる。例えば前述の元の整数Xiの値である65532を、2進数の1111111111111100(2)として表し、上位8桁と下位8桁等に分割し、上位8桁に含まれる整数11111111(2)(10進数の255)及び下位8桁に含まれる整数11111100(2)(10進数の252)を用い、255の2乗、255と252の積、252の2乗をそれぞれ計算すると、これらの整数の積はいずれも当該CPUが備える16ビット幅のレジスタを用いて表しうる整数の範囲内にあることは明白である。32ビット幅のレジスタ、64ビット幅のレジスタ等についても同様である。
従って、前述の式(VIII)として表されるXiのべき乗の計算において、最も少ない回数であるXiの2乗の場合に、式(XI)の右辺の2乗からは、Xuの2乗、Xu・Xd、及びXdの2乗が生成され、これらはいずれも元のXiの桁数以下の整数でありうるため、桁あふれを避けられる。すなわち、Xiの任意のべき乗において、式(XI)の手順を繰り返すことにより、べき乗の計算過程での桁あふれを避けることが可能になる。
分割する桁数は、計算手段等が備えるCPUの整数演算のためのレジスタのビット幅等に基づいて適宜設定しうる。好適には、符号なし整数演算のためのレジスタのビット幅を等分した上位の桁数及び下位の桁数を、分割した桁数として用いうる。
例えば、英字アルファベットを26進数の1桁の数字として扱い、unix(登録商標)オペレーティング・システムが備える文字列をシーザー暗号化するためのrot13関数等を利用してもよい。また例えば、このrot13関数が有する鍵である、整数の13に換えて任意の1桁の整数を鍵に用い、同様の関数を10進数の整数に対するシーザー暗号化の関数として定義して用いてもよい。
なお、繰り返しにおいて、変数A、B、D、Kは同じ値を再利用してもよい。変数E及びFの対も同じ値を再利用してもよいが、より好適には、ループカウンタLの値に依存して変数E及びFの対を変化することにより、第三者による解読をさらに困難にすることが可能になる。
このようにして、ステップS190の判定が真になるまで上述の諸段階を繰り返し、暗号化した整数Ziが得られる。例えば、ループカウンタLを3とした場合には、上述のステップS10及びステップS30からなる諸段階が3回繰り返される。
次に、復号化の諸段階を説明する。本発明に係る整数を暗号化する方法は、図2のステップS200において、変数領域を確保し、ループカウンタLを初期化する。この変数領域の確保は、前述の暗号化の諸段階におけるステップS100と同様でもよく、暗号化及び復号化の諸段階を一つのコンピュータ装置等に内蔵し、共通の変数領域を暗号化及び復号化の両方の諸段階に用いてもよい。ループカウンタLの初期化は、復号化と対応する暗号化におけるループカウンタLの値を繰り返し用いうる。例えば、暗号化においてループカウンタLを3とした場合には、復号化においても同様にループカウンタLを3とする。
次いで、本発明に係る暗号化した整数を復号化する方法は、ステップS40に含まれる換字式暗号を復号化する諸段階、及びステップS20に含まれるべき剰余を用いる復号化の諸段階を実施する。ここで、復号化の対象になる数は、図1を用いて前述した暗号化した整数Ziである。
次いで、本発明に係る暗号化した整数を復号化する方法は、ステップS220において、次の式(XV)を用いて当該暗号化したYiをXnに復号化する。次式(XV)は前述の式(III)と同一でもよい。
さらに、本発明の整数を暗号化し復号化する方法においては、暗号化の過程である式(VIII)に含まれず、復号化の過程である式(XVI)及び式(XVII)に含まれる整数Fが第三者に知られにくい又は推定されにくいことに基づいて高いセキュリティを確保しうる。
なお、式(XIV)の左辺に含まれるE及びFを、当業に公知の公開鍵暗号に係る公開鍵及び秘密鍵の対として用いうること、鍵の保管又は認証に第三者機関等を用いうること等、公開鍵暗号技術に関連する方法は周知であり、本発明に適宜取り入れて用いることができる。
図3に、本発明の一実施形態に係る、整数を暗号化する方法を用いる個人情報隠蔽手順の例を示す。
暗号化手段100は、本発明に係る入力された整数から暗号化した整数を生成する手段である。暗号化手段100は、特定の個人20が有する識別のための数字及び/又は文字を含む識別子等を、整数型の識別子30として受け付ける。具体的には、個人20は事業体等に所属する構成員の1人であり、整数型の識別子30は当該事業体において複数の構成員を識別するために適宜用いられる、複数の桁の整数を含む構成員識別子等でありうる。例えば、当該構成員識別子の形態は、当該事業体等の所属が開始された年次を表す数字2桁及び同時期に所属を開始した他の構成員を含む複数の構成員のそれぞれに割り当てられた6桁の数字等からなる、全体として8桁の数字等であり、適宜設定しうる。典型的には、特定の個人20と整数型の識別子30とは1対1に関連づけられ、他の構成員等とは関連づけられない。また、構成員識別子等が英文字等を含む場合、整数型の識別子30は、英文字及び数字の全体又はその一部をコンピュータ処理可能な文字コードの集まりとして扱い、個々の文字コードを16進法の整数として、整数型の識別子30を構成してもよい。本発明に係る整数を暗号化し復号化する方法においては、このように変換された16進法の整数を暗号化し、当該暗号化した16進法の整数から元のコンピュータ処理可能な文字コードの集まりを復号化しうる。構成員識別子等が画像データの場合についても、16進法の整数の集まりとして元の画像データを扱うことにより、同様に暗号化及び復号化が可能である。
例えば、識別用途A(122)が事業体内部のコンピュータ・ネットワーク利用等である場合、本発明に係る暗号化手段100は、特定の個人20を識別するための整数型の識別子30に替えて暗号化した整数A(42)を、情報伝達経路A(82)を介して当該事業体のコンピュータ・ネットワーク132等に提供しうる。情報伝達経路A(82)は例えば当該事業体内のローカルエリアネットワーク等でありうる。
また、例えば、識別用途B(124)が事業体による特定の個人20の業務に係る記録行為等である場合、本発明に係る暗号化手段100は、特定の個人20を識別するための整数型の識別子30に替えて暗号化した整数B(44)を、情報伝達経路B(84)を介して当該事業体の勤務管理記憶装置134等に提供しうる。情報伝達経路B(84)は例えば当該事業体の出入口等に適宜備えられた入構者記録のための端末装置及び記憶装置等でありうる。
このようにして、本発明に係る暗号化手段100においては、特定の個人20に関連づけられる整数型の識別子30から、識別用途ごとに異なる暗号化した整数を生成し、当該特定の個人20の個人情報を隠蔽しうる。
本発明に係る暗号化手段100は特定の識別用途に対して特定の個人情報を隠蔽しうる。暗号化手段100が受け付ける整数型の識別子30が個々の特定の個人20ごとに異なることにより、別個の整数型の識別子30ごとに、暗号化した整数が生成される。従って、識別用途A(122)、識別用途Aの固有情報(62)及び暗号化計算A(72)が一定であっても、異なる整数型の識別子30を有する事業体内の複数の構成員等は、それぞれが異なる暗号化した整数A(72)を得ることができる。
例えば、事業体のネットワーク管理者等は、識別用途Aの固有情報(62)をネットワーク・メンテナンスの日時等の特定の条件に従って選択することにより、当該事業体の複数の構成員のネットワーク・アカウント情報のそれぞれを別個に一括して暗号化しうる。ネットワーク管理者等は識別用途Aの固有情報(62)を選択する条件を管理することにより、複数の構成員のアカウント情報を一括して暗号化して保持し、管理しうる。さらに式(XVI)及び式(XVII)に含まれる整数Fが第三者に知られにくい又は推定されにくいことにより、この値を知らない第三者に対して明示的なアカウント情報を隠蔽することが可能になる。
図4に、本発明の一実施形態に係る、整数を暗号化する方法を用いる個人情報隠蔽手順の別の例を示す。図3と共通する箇所は説明を省略する。
追加の桁37を追加することにより、整数型の識別子30及び追加の桁37に含まれる各桁の数字を含む新たな整数である、桁増しした識別子38が生成されうる。
図5に、本発明の一実施形態に係る、整数を暗号化する方法を用いる個人情報隠蔽手順のさらに別の例を示す。図3と共通する箇所は説明を省略する。
乱数発生手段39により発生した乱数は、上述のように、本発明に係る暗号化の鍵の選択に用いられ、さらに、図1を用いて前述したステップS30に含まれる換字式暗号化の鍵Rの選択に用いることができる。具体的には、換字式暗号化の鍵Rの選択は、発生した乱数に対して直近の素数を選択してもよい。すなわち、重複無く素数を含む集合から、当該発生した乱数との差が最も小さい素数を選択してもよい。あるいは、換字式暗号化の鍵Rの選択は、重複無く素数を含む集合からそれぞれの要素(すなわち素数)を昇順又は降順に配列した数列を用意し、乱数の上限を当該集合の要素数として、発生した乱数を項番号とする要素(すなわち素数)を当該数列から選択してもよい。これらに限らず、乱数と素数の関連づけは適宜設計しうる。
ループカウンタLは、暗号化の強度を確保するために、予め下限を設定してもよい。また、暗号化及び復号化の計算処理のための時間を短縮するために、予め上限を設定してもよい。従って、本発明に係る整数を暗号化し復号化する方法におけるループカウンタLの値は、予め設定された下限及び/又は上限の範囲に従って、所定の正の整数、当該所定の正の整数を暗号化した正の整数、及びランダムに発生した正の整数からなる群から選ばれうる。このように、べき剰余を用いる暗号化及び換字式暗号化のいずれとも独立した変数でありうるループカウンタLを秘密とすることで、第三者の解読の手間はさらに膨大となりうる。
図6に、本発明の一実施形態に係る、暗号化した整数の復号化手順の例を示す。図6においては、説明の簡潔化のためにコンピュータ処理可能な数値に関し、図3を示して説明した暗号化手段100が生成した暗号化した整数A(42)及び/又は暗号化した整数B(44)に対する復号化を説明するが、通話又は文書等の形態で伝達しうる暗号化した整数の復号化についても同様である。図3又は図4と共通する箇所は説明を省略する。
同様に、暗号化した整数B’(54)は暗号化した整数B(44)と同一でありうる。
暗号化した整数A’(52)は、暗号化手段100による暗号化計算A(72)において識別用途A(122)の固有情報(62)を用いて生成した暗号化した整数A(42)でありうる。当該固有情報(62)は、前述の式(VIII)に含まれるN又はEの値、及びKの値でありうるので、例えば、暗号化計算A(72)において用いられたEの値及びKの値を固有情報(92)として復号化計算A(112)に用いうる。
同様に、暗号化計算B(74)において用いられたEの値及びKの値を固有情報(94)として復号化計算B(114)に用いうる。
固有情報(92)及び/又は固有情報(94)は、予め復号化手段110が記憶してもよく、予め定められた手順に従って暗号化手段100又は復号化手段110の一方又は両方が生成してもよく、適宜設定しうる。
本発明に係る整数を暗号化し復号化する方法には、これらの伝達経路又は伝達手段を介して伝達される整数が暗号化されていること、桁あふれを発生する条件での暗号化に用いた特定の数値で復号化する本発明の方法によらなければ元の整数を復号化することはできないという特徴がある。従って、本発明においては、伝達経路又は伝達手段等にアクセスする可能性のある第三者に対して個人情報を隠蔽し、所定の固有情報及び所定の暗号化及び所定の復号化の方法を用いる本発明の実施手段等のみが当該個人情報を正確に復号化することが可能になる。
図7に、本発明の一実施形態に係る、暗号化の諸段階をスプレッドシート形式の計算アプリケーション・パッケージを用いて実装する例を示す。スプレッドシート形式の計算アプリケーション・パッケージとしてはマイクロソフト社製エクセル2007等を用いうるが、これに限らず、整数のべき乗及び剰余計算を実施可能なパッケージ・ソフトウェア等を任意に用いうる。
図7に示す整数の暗号化計算ワークシート200は、複数の行及び列の形態に配列されるセルを含む、スプレッドシート形式の計算アプリケーションのデータでありうる。整数の暗号化計算ワークシート200に含まれる個々のセルは、1組の行番号及び列番号を用いて特定しうる。
具体的には、2行1列から15行1列の領域は、図1に示したステップS100における変数領域を確保するために用いられる。2行2列から15行(2n+1)列の領域は、図1に示したステップS10及びステップS30の繰り返しのために用いられる。図7には、変数A、B、D、Kはそれぞれ同じ値が繰り返して用いられ、変数E、F、Tはループカウンタに依存して繰り返しの各回において変化する例を示す。
従って、本発明においては、図7の9行に含まれるEi、E1、E2等はランダムに選択された整数であり、11行に含まれるFi、F1、F2等は、それぞれ対応するEi、E1、E2等との関連づけを有して所定の条件を満たす集合から選択される。
他の2列のセルには、暗号化の諸段階から生じる変数の値が適宜記憶される。例えば、9行2列には公開鍵E1、11行2列には秘密鍵F1、14行2列にはオフセットT1がそれぞれ記憶される。同様に、他の3列のセルに関しては、13行3列には換字式暗号化の鍵R1、15行3列には1回デクリメントされたループカウンタ(L−1)がそれぞれ記憶される。
このようにして、入力Xiから、2列にはべき剰余を用いる暗号化における変換後の整数Y1、他の変数E1、F1、及びT1が記憶され、3列には整数Y1から変換される整数Z1、他の変数R1、及びデクリメントされたループカウンタ(L−1)が記憶される。
換字式暗号化により整数Z1が得られた後に、本発明に係る整数を暗号化する方法は、15行1列のループカウンタLをデクリメントし、15行3列に当該デクリメントした値である(L−1)を記憶する。当該デクリメントした値がゼロ以下である場合は、暗号化の諸段階を終了させる。当該デクリメントしたループカウンタの値がゼロより大きければ、2行3列のZ1の値を上述の2行1列のXiの値のように取り扱い、べき剰余を用いる暗号化の諸段階及び換字式暗号化の諸段階を繰り返し、2行5列にZ2として暗号化した整数を得られる。
図8に、本発明の一実施形態に係る、復号化の諸段階をスプレッドシート形式の計算アプリケーション・パッケージを用いて実装する例を示す。図8に示す整数の復号化計算ワークシート220は、複数の行及び列の形態に配列されるセルを含む、スプレッドシート形式の計算アプリケーションのデータでありうる。整数の復号化計算ワークシート220に含まれる個々のセルは、1組の行番号及び列番号を用いて特定しうる。
具体的には、2行1列から15行1列の領域は、図1に示したステップS200における変数領域の確保及びループカウンタLの初期化のために用いられる。2行2列から15行(2n+1)列の領域は、図2に示したステップS40及びステップS20の繰り返しのために用いられる。
9行に含まれる整数Eiがランダムな規則により選択されうることは、図7を用いて示した整数の暗号化計算ワークシート200の場合と同様である。
べき剰余を用いる復号化により整数Xn−1が得られた後に、本発明に係る整数を復号化する方法は、15行1列のループカウンタLをデクリメントし、15行3列に当該デクリメントした値である(L−1)を記憶する。当該デクリメントした値がゼロ以下である場合は、復号化の諸段階を終了させる。当該デクリメントしたループカウンタの値がゼロより大きければ、2行3列のXn−1の値を上述の2行1列のZiの値のように取り扱い、換字式復号化の諸段階及びべき剰余を用いる復号化の諸段階を繰り返し、2行5列にXn−2として復号化した整数を得られる。
他の2列のセルには、暗号化の諸段階から生じる変数の値が適宜記憶される。例えば、9行2列には公開鍵E1、11行2列には秘密鍵F1、14行2列にはオフセットT1がそれぞれ記憶される。同様に、他の3列のセルに関しては、13行3列には換字式暗号化の鍵R1、15行3列には1回デクリメントされたループカウンタ(L−1)がそれぞれ記憶される。
このようにして、入力Xiから、2列にはべき剰余を用いる復号化における変換後の整数Y1、他の変数E1、F1、及びT1が記憶され、3列には整数Y1から変換される整数Z1、他の変数R1、及びデクリメントされたループカウンタ(L−1)が記憶される。
本発明に係る整数を暗号化する方法を用いて生成した整数に対して、解読の可能性を総当たりにより探索する場合の所要時間を例示する。これは、いわゆるブルート・フォース・アタック(総当たり攻撃)を用いて秘密情報を解読するための計算時間でありうる。
コンピュータの計算能力が毎秒1ペタフロップス、すなわち1秒間に10の15乗命令数であると仮定すると、当該コンピュータは1年間に約10の22乗命令数を実行することが可能である。
本発明に係る整数を暗号化する方法において、元の整数が6桁の10進数であり、べき剰余を用いる暗号化及び換字式暗号化が連続して実行されるとする。暗号化において、この連続して実行される暗号化が5回繰り返される場合、当該5回繰り返された暗号化に含まれる独立した五重の換字式暗号化の組み合わせの総数は10の30乗(すなわち、10の6乗の5乗)であり、前述のコンピュータによる総当たり計算の所要時間は約10の8乗年(すなわち約1億年)と算出できる。本発明に係る暗号化の方法においては、さらに五重の独立したべき剰余を用いる暗号化が実施され、これらの暗号化に用いられる鍵は乱数発生手段によりランダムに選択されうるので、総当たりによる解読の所要時間は1億年をはるかに超える天文学的数字の時間でありうる。従って、本発明は乱数を適用可能な目標に対して具体的な実装及び製品化が可能な形態を提供でき、簡単なロジックに比して解読の困難さを飛躍的に向上させたという効果がある。
このように、本発明においては、べき剰余を用いる暗号化及び換字式暗号化を連続して複数回繰り返し実行することにより、元の整数から極めて秘匿性の高い暗号化した整数を生成することが可能である。本発明においては、第三者による解読の手間を膨大化することにより、守秘情報を参照するための識別情報等を高い秘匿性で暗号化し復号化することができる。
30 整数型の識別子
37 追加の桁
39 乱数発生手段
40 オフセット情報
41 整数型の復号化した識別子
42、44、46、52、54 暗号化した整数
62、64、66、92、94 固有情報
72、74、76 暗号化計算
82、84、102、104 情報伝達経路
100 暗号化手段
110 復号化手段
112、114 復号化計算
122、124、126 識別用途
Claims (22)
- コンピュータ装置が、0及び1を除く整数Xiを暗号化し復号化する方法であって、
コンピュータ装置が、入力された前記整数Xiを整数Yiに暗号化する、べき剰余暗号化ステップと、
コンピュータ装置が前記暗号化された整数Yiを前記整数Xiに復号化する、べき剰余復号化ステップとを含み、
前記べき剰余暗号化ステップは、
コンピュータ装置がその積Nが入力された前記整数Xiを超える2つの素数A及びBを生成し、前記N、A、Bを記憶手段に記憶するステップと、
コンピュータ装置が(A−1)と(B−1)との積D及び(A−1)と(B−1)の最小公倍数Kを生成し、前記D及びKを記憶手段に記憶するステップと、
コンピュータ装置がD又はKと素である数の集合を生成するステップと、
コンピュータ装置が前記生成したD又はKと素である数の集合から、数Eをランダムな規則により選択して、前記整数XiのE乗がコンピュータ装置の計算手段の整数演算に桁あふれを発生するか否かを判定し、判定結果が真となるまで、前記D又はKと素である数Eのランダムな規則による選択と前記判定を繰り返すステップと、
コンピュータ装置が判定結果が真となるEを記憶手段に記憶するステップと、
コンピュータ装置が、整数Xiを整数Mを基数とするM進表記に変換し、前記XiのM進表記の桁数を、少なくとも2つ以上に分割し、前記分割したそれぞれの桁に対応する整数と当該桁数をべき指数とするMのべき乗との積からなる単項式の和からなる前記Xiの展開形を生成するステップと、
コンピュータ装置が、前記記憶された数Eをべき指数とする、次式記載の整数XiのE乗冪演算において、前記整数Xiの前記展開形を用いて、前記それぞれの桁に対応する整数間の計算に置き換えて展開した剰余計算により、整数XiをE乗してNを法とする整数Yiを計算するステップと、
コンピュータ装置が、前記整数Xiを暗号化した整数Yiを記憶手段に記憶するステップと、
前記べき剰余復号化ステップは、
コンピュータ装置がmを任意の整数として次式を成立するFを生成し記憶手段に記憶するステップと、
コンピュータ装置が前記整数Xnを記憶手段に記憶することで、前記暗号化したYiをXnすなわち、Xiに復号するステップと、
- コンピュータ装置がさらに、
換字式暗号化を用いて整数を換字暗号した整数に変換する換字暗号化ステップと、
換字式復号化を用いて前記換字暗号した整数を復号化する換字式復号化ステップとを含み、
前記べき剰余暗号化ステップ又は換字暗号化ステップのいずれか一方を先に実行し、続いて残りの一方を実行することで、整数を暗号化する暗号化ステップと、
前記換字式暗号化ステップと前記べき剰余暗号化ステップの実行順序に対応して、前記換字式暗号化ステップを先に実行した場合はべき剰余復号化ステップを、前記べき剰余暗号化ステップを先に実行した場合は換字式復号化ステップを、それぞれ先に実行し、続いて残りの一方を実行することで、暗号化された整数を復号化する復号化ステップと、
を含む、請求項1に記載の整数を暗号化し復号化する方法。 - 前記換字式暗号化の鍵は、ランダムな規則によりコンピュータ装置が選択する整数である、請求項2に記載の整数を暗号化し復号化する方法。
- 前記整数を暗号化する暗号化ステップは、前記べき剰余暗号化ステップを先に実行し、続いて前記換字暗号化ステップを実行し、
前記暗号化された整数を復号化する復号化ステップは、前記換字式復号化ステップを、先に実行し、続いて前記べき剰余復号化ステップを実行するものであって、
前記換字暗号化ステップにおいて、コンピュータ装置が前記整数Yiを整数Ziに変換し、
前記換字復号化ステップにおいて、コンピュータ装置が前記整数Ziを前記整数Yiに変換することを特徴とする、請求項2に記載の整数を暗号化し復号化する方法。 - コンピュータ装置が前記べき剰余暗号化ステップと換字暗号化ステップとを連続する暗号化ステップ、及びコンピュータ装置が前記換字復号化ステップとべき剰余復号化ステップとを連続する復号化ステップは、それぞれ少なくとも2以上の同一の複数回数繰り返し実施される、請求項4に記載の整数を暗号化し復号化する方法。
- 前記整数を暗号化する暗号化ステップは、前記換字暗号化ステップを先に実行し、続いて前記べき剰余暗号化ステップを実行し、
前記暗号化された整数を復号化する復号化ステップは、前記べき剰余復号化ステップを先に実行し、続いて前記換字式復号化ステップを実行するものであって、
前記整数Xiはコンピュータ装置が前記換字暗号化ステップを実行することにより変換された整数であることを特徴とする、請求項2に記載の整数を暗号化し復号化する方法。 - コンピュータ装置が実行する前記換字暗号化ステップとべき剰余暗号化ステップとを連続する暗号化ステップ、及びコンピュータ装置が実行する前記べき剰余復号化ステップと換字復号化ステップを連続する復号化ステップは、それぞれ少なくとも2以上の同一の複数回数繰り返し実施する、請求項6に記載の整数を暗号化し復号化する方法。
- 前記少なくとも2以上の同一の繰り返し実施する複数回数は、所定の正の整数、コンピュータ装置が前記所定の正の整数を暗号化した正の整数、及びコンピュータ装置がランダムに発生した正の整数のいずれかである、請求項5又は7に記載の整数を暗号化し復号化する方法。
- 前記換字式暗号化は、単表式暗号化、多表式暗号化及び自動鍵暗号化のいずれかであり、
前記換字式復号化は、前記換字式暗号化に対応して単表式復号化、多表式復号化及び自動鍵復号化のいずれかである、
請求項2に記載の整数を暗号化し復号化する方法。 - コンピュータ装置がさらに、前記整数Xiを変換した整数Yiを生成する前に、前記整数Xiから前記整数Xi以下の整数Tを加算して前記整数Xiと置き換えるステップと、
コンピュータ装置が前記変換した整数Yiを整数Xnに復号化した後に、前記整数Xnに前記整数Tを減算して前記整数Xnと置き換えるステップと、
を含む、請求項2に記載の整数を暗号化し復号化する方法。 - 前記整数Tはコンピュータ装置がランダムな規則により選択する整数である、請求項10に記載の整数を暗号化し復号化する方法。
- 前記整数Xiは、コンピュータ装置が識別子に含まれる文字又は数字の一部又は全体から、可逆的に変換した整数である、請求項1に記載の整数を暗号化し復号化する方法。
- 前記整数Xiは、コンピュータ装置が1次元画像又は2次元画像から可逆的に変換された1次元画像の一部又は全体から、可逆的に変換した整数である、請求項1に記載の整数を暗号化し復号化する方法。
- さらに、コンピュータ装置が暗号化に先立って、少なくとも一つの桁を元の整数に対して追加することにより桁を増した整数に置き換えるステップを含む、請求項1に記載の整数を暗号化し復号化する方法。
- さらに、コンピュータ装置が復号化の後に復号化した整数から前記追加した少なくとも一つの桁を除去するステップを含む、請求項15に記載の整数を暗号化し復号化する方法。
- 前記Fを生成し記憶手段に記憶するステップは、
コンピュータ装置がmを任意の整数として、前記数式[数24]を成立する数Fを生成して、前記整数YiのF乗がコンピュータ装置の計算手段の整数演算に桁あふれを発生するか否かを判定し、判定結果が真となるまで、数Fの生成と前記判定を繰り返すステップと、
コンピュータ装置が前記判定結果が真となるFを記憶手段に記憶するステップとを含み、
前記整数Xnを計算するステップは、
コンピュータ装置が、前記整数Yiを整数Mを基数とするM進表記に変換し、前記整数YiのM進表記の桁数を、少なくとも2つ以上に分割し、前記分割したそれぞれの桁に対応する整数と当該桁数をべき指数とするMのべき乗との積からなる単項式の和からなる前記整数Yiの展開形を生成するステップと、
コンピュータ装置が、前記記憶された数Fをべき指数とする、前記整数YiのF乗冪演算において、前記整数Yiの前記展開形を用いて、前記それぞれの桁に対応する整数間の計算に置き換えて展開した剰余計算により、前記整数YiをF乗してNを法とする整数Xnを計算するステップとを含むことを特徴とする、請求項1から16のいずれかに記載の整数を暗号化し復号する方法。 - コンピュータ装置に請求項1から17のいずれかに記載の方法の各ステップを実行させるための、コンピュータ・プログラム。
- 入力された0及び1と異なる整数Xiを暗号化し復号化する装置であって、
暗号化のための鍵をランダムな規則により選択する暗号化鍵選択部と、
積Nが前記整数Xiを超える2つの素数A及びBを生成し、前記N、A、Bを記憶手段に記憶する素数生成部と、
(A−1)と(B−1)との積D及び(A−1)と(B−1)の最小公倍数Kを生成し、前記D及びKを記憶手段に記憶し、
D又はKと素である数の集合であって、前記暗号化のための鍵の候補となる集合を生成し、
前記生成したD又はKと素である数の集合から、数Eを前記暗号化鍵選択部により選択して、前記整数XiのE乗がコンピュータ装置の計算手段の整数演算に桁あふれを発生するか否かを判定し、判定結果が真となるまで、前記D又はKと素である数Eの選択と前記判定を繰り返し、判定結果が真となるEを記憶手段に記憶し、
整数Xiを整数Mを基数とするM進表記に変換し、前記XiのM進表記の桁数を、少なくとも2つ以上に分割し、前記分割したそれぞれの桁に対応する整数と当該桁数をべき指数とするMのべき乗との積からなる単項式の和からなる前記Xiの展開形を生成し、
前記記憶された数Eをべき指数とする、次式記載の整数XiのE乗冪演算において、整数Xiの前記展開形を用いて、前記それぞれの桁に対応する整数間の計算に置き換えて展開した剰余計算により、整数XiをE乗してNを法とする整数Yiを計算して、整数Xiを暗号化した整数Yiを生成し、記憶手段に記憶する剰余暗号化実行部と、
- 前記秘密鍵生成部は、
mを任意の整数として、前記数式[数28]を成立する前記Fを生成して、整数YiのF乗がコンピュータ装置の計算手段の整数演算に桁あふれを発生するか否かを判定し、判定結果が真となるまで、数Fの生成と前記判定とを繰り返す手段と、
前記判定結果が真となるFを記憶手段に記憶する手段とを含み、
前記剰余復号化実行部は、
暗号化された整数Yiを整数Mを基数とするM進表記に変換し、前記YiのM進表記の桁数を、少なくとも2つ以上に分割し、前記分割したそれぞれの桁に対応する整数と当該桁数をべき指数とするMのべき乗との積からなる単項式の和からなる前記Yiの展開形を生成する手段と、
前記生成した数Fをべき指数とする、整数YiのF乗冪演算において、整数Yiの前記展開形を用いて、前記それぞれの桁に対応する整数間の計算に置き換えて展開した剰余計算により、整数YiをF乗してNを法とする整数Xnを計算する手段とを含むことを特徴とする、請求項19に記載の整数を暗号化し復号化する装置。 - 入力された0及び1を除く整数Xiの暗号化により情報を暗号化し復号化するシステムであって、
暗号化のための鍵をランダムな規則により選択する暗号化鍵選択手段と、
積Nが前記整数Xiを超える2つの素数A及びBを生成し記憶手段に記憶する素数生成手段と、
(A−1)と(B−1)との積D及び(A−1)と(B−1)の最小公倍数Kを生成し、前記D及びKを記憶手段に記憶し、
D又はKと素である数の集合であって、前記暗号化のための鍵の候補となる集合を生成し、
前記生成したD又はKと素である数の集合から、数Eを前記暗号化鍵選択手段により選択して、前記整数XiのE乗がコンピュータ装置の計算手段の整数演算に桁あふれを発生するか否かを判定し、判定結果が真となるまで、前記D又はKと素である数Eの選択と前記判定を繰り返し、判定結果が真となるEを記憶手段に記憶し、
整数Xiを整数Mを基数とするM進表記に変換し、前記XiのM進表記の桁数を、少なくとも2つ以上に分割し、前記分割したそれぞれの桁に対応する整数と当該桁数をべき指数とするMのべき乗との積からなる単項式の和からなる前記Xiの展開形を生成し、
前記記憶された数Eをべき指数とする、次式記載の整数XiのE乗冪演算において、整数Xiの前記展開形を用いて、前記それぞれの桁に対応する整数間の計算に置き換えて展開した剰余計算により、整数XiをE乗してNを法とする整数Yiを計算して、整数Xiを暗号化した整数Yiを生成し、記憶手段に記憶する剰余暗号化手段と、
- 前記秘密鍵生成手段は、
mを任意の整数として、前記数式[数31]を成立する前記Fを生成して、整数YiのF乗がコンピュータ装置の計算手段の整数演算に桁あふれを発生するか否かを判定し、判定結果が真となるまで、数Fの生成と前記判定とを繰り返す手段と、
前記判定結果が真となるFを記憶手段に記憶する手段とを含み、
前記剰余復号化実行手段は、
暗号化された整数Yiを整数Mを基数とするM進表記に変換し、前記YiのM進表記の桁数を、少なくとも2つ以上に分割し、前記分割したそれぞれの桁に対応する整数と当該桁数をべき指数とするMのべき乗との積からなる単項式の和からなる前記Yiの展開形を生成する手段と、
前記生成した数Fをべき指数とする、整数YiのF乗冪演算において、整数Yiの前記展開形を用いて、前記それぞれの桁に対応する整数間の計算に置き換えて展開した剰余計算により、整数YiをF乗してNを法とする整数Xnを計算する手段とを含むことを特徴とする、請求項21に記載の整数を暗号化し復号化するシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009030444A JP5208796B2 (ja) | 2009-02-12 | 2009-02-12 | 整数の暗号化及び復号化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009030444A JP5208796B2 (ja) | 2009-02-12 | 2009-02-12 | 整数の暗号化及び復号化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010186075A JP2010186075A (ja) | 2010-08-26 |
JP5208796B2 true JP5208796B2 (ja) | 2013-06-12 |
Family
ID=42766761
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009030444A Active JP5208796B2 (ja) | 2009-02-12 | 2009-02-12 | 整数の暗号化及び復号化方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5208796B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104616195A (zh) * | 2015-03-04 | 2015-05-13 | 中国农业银行股份有限公司 | 一种额度发生数据的处理方法及装置 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018135566A1 (ja) * | 2017-01-20 | 2018-07-26 | 日本電信電話株式会社 | 秘密計算システム、秘密計算装置、秘密計算方法、プログラム |
WO2022269914A1 (ja) * | 2021-06-25 | 2022-12-29 | 日本電気株式会社 | 端末装置、暗号化情報変換装置、照合システム、入力情報暗号化方法、暗号化情報変換方法、照合方法、入力情報暗号化プログラム、及び暗号化情報変換プログラム |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0227389A (ja) * | 1988-07-15 | 1990-01-30 | Sony Corp | 暗号化方法及び該暗号方法を用いた暗号化装置/復号化装置 |
JPH0488736A (ja) * | 1990-07-31 | 1992-03-23 | Matsushita Electric Ind Co Ltd | データ伝送方式 |
JPH0720778A (ja) * | 1993-07-02 | 1995-01-24 | Fujitsu Ltd | 剰余計算装置、テーブル作成装置および乗算剰余計算装置 |
US6026293A (en) * | 1996-09-05 | 2000-02-15 | Ericsson Inc. | System for preventing electronic memory tampering |
JP2003029631A (ja) * | 2001-07-14 | 2003-01-31 | Baba Giken:Kk | 実用的なrsa暗号の実装 |
-
2009
- 2009-02-12 JP JP2009030444A patent/JP5208796B2/ja active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104616195A (zh) * | 2015-03-04 | 2015-05-13 | 中国农业银行股份有限公司 | 一种额度发生数据的处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2010186075A (ja) | 2010-08-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108463968B (zh) | 可变长度数据的快速格式保留加密 | |
JP6783877B2 (ja) | 完全準同型暗号化の暗号化テキストのクエリメソッド及びシステム | |
CN112989368B (zh) | 多方联合进行隐私数据处理的方法及装置 | |
EP2742644B1 (en) | Encryption and decryption method | |
JPWO2014112048A1 (ja) | 暗号システム、再暗号化装置及び暗号方法 | |
RU2124814C1 (ru) | Способ шифрования блоков цифровых данных | |
US20210279341A1 (en) | Cryptographic security system, method, and program product using data partitioning | |
Attaullah et al. | Cryptosystem techniques based on the improved Chebyshev map: an application in image encryption | |
Ahmad et al. | A secure network communication protocol based on text to barcode encryption algorithm | |
KR100583495B1 (ko) | 암호화 방법 | |
JP5208796B2 (ja) | 整数の暗号化及び復号化方法 | |
Ahmad Abusukhon et al. | A novel network security algorithm based on encrypting text into a white-page image | |
Jana et al. | A novel time-stamp-based audio encryption scheme using sudoku puzzle | |
Raghunandan et al. | Securing media information using hybrid transposition using fisher yates algorithm and RSA public key algorithm using Pell’s cubic equation | |
Galbreath | Cryptography for Internet and database applications: developing secret and public key techniques with Java | |
JarJar | Two Feistel rounds in image cryptography acting at the nucleotide level exploiting dna and rna property | |
JP5208717B2 (ja) | 整数の暗号化及び復号化方法 | |
JP2001282103A (ja) | 暗号化方法 | |
Tu et al. | Protecting secret documents via a sharing and hiding scheme | |
JP5436373B2 (ja) | 秘匿性増強処理演算装置およびこれを備えた量子暗号通信端末 | |
JP5208797B2 (ja) | 整数の暗号化及び復号化方法 | |
JP5208642B2 (ja) | 整数の暗号化及び復号方法 | |
Shawkat et al. | Optimization-based pseudo random key generation for fast encryption scheme | |
JP5208982B2 (ja) | 整数を暗号化及び復号化する方法、装置及びシステム | |
Babash | XOR ciphers model and the attack to it |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20101215 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121113 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130109 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130212 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130220 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160301 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5208796 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160301 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |