JP5208717B2 - 整数の暗号化及び復号化方法 - Google Patents
整数の暗号化及び復号化方法 Download PDFInfo
- Publication number
- JP5208717B2 JP5208717B2 JP2008328768A JP2008328768A JP5208717B2 JP 5208717 B2 JP5208717 B2 JP 5208717B2 JP 2008328768 A JP2008328768 A JP 2008328768A JP 2008328768 A JP2008328768 A JP 2008328768A JP 5208717 B2 JP5208717 B2 JP 5208717B2
- Authority
- JP
- Japan
- Prior art keywords
- integer
- encryption
- power
- substitution
- computer device
- 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.)
- Expired - Fee Related
Links
Images
Description
また、暗号及びデジタル署名を実現しうる方式として、桁数が大きい合成数の素因数分解問題が困難であることを安全性の根拠とした公開鍵暗号であるRSA暗号が知られている(特許文献1及び非特許文献1)。RSA暗号は、暗号化の段階においては適当な正数によるべき乗と素数2個の積を法数とする剰余演算とを用い、復号化においては当該積の素因数を要するべき乗根を用いることにより、素因数を知らなければ復号化が困難になることによって暗号の安全性を確保している。
さらに、コンピュータ・ネットワークを介する情報の送受信においてセキュリティを確保するために、暗号化、認証、改ざん検出の機能を有するSSLプロトコル等が知られている(非特許文献2)。SSLプロトコルに含まれる公開鍵証明書に基づく認証は、RSA暗号を用いうることが知られている。
また、RSA暗号化等の公開鍵暗号化方式においては、元の数字が0又は1の場合、又は数字の並びのうちで最後の数字が変換されないために、暗号化した情報が単純さを含む場合があった。
さらに、音声による通話又は印刷物等の文書を介する情報の漏洩においては、コンピュータ・ネットワークを用いて伝達される情報に対するSSLプロトコル等のセキュリティ技術では対応できないため、音声又は文書等を含む多様な形態で個人情報を隠蔽しうる方法が必要であった。
本発明では、以下のような解決手段を提供する。
入力に用いる整数は、コンピュータ処理可能な整数であればよく、文字又は画像等から可逆的に変換された整数でもよい。例えば、コンピュータ処理可能な文字のそれぞれに割り当てられた文字コード等を1桁、2桁又は4桁等の16進数の整数として扱ってもよい。また、例えば、英字アルファベットに含まれる26個の文字を、26進数を表す1桁の整数として扱ってもよい。また、例えば、コンピュータ処理可能な画像に含まれる個々の画素を、RGB各8ビットの整数の一組とする24ビットの2進数の整数として扱ってもよい。
一実施形態において、構成員の識別番号等の個人情報は、コンピュータ処理可能な整数に可逆的に変換され、本発明の整数を暗号化し復号化する方法の入力に用いられる。
一実施形態において、桁あふれは、コンピュータが備える中央演算ユニット(CPU)の演算レジスタに発生しうる。従って、特定のCPUが有する演算レジスタの桁数に従って、有効な桁数の整数演算が実施されうる。例えば、レジスタ長が16ビットのCPUの場合、整数演算に用いうる整数は、例えば符号なし16ビット整数として、10進数の0〜65535の範囲である。レジスタ長が32ビットのCPUの場合は、同様に符号なし32ビット整数として、10進数の0〜4294967295の範囲である。
別の実施形態において、桁あふれは、インタープリタ、スクリプト又はスプレッドシート等が整数演算のために用意する内部関数において発生しうる。従って、特定のインタープリタ、スクリプト又はスプレッドシート等が有する内部関数が表現可能な整数の桁数に従って、有効な桁数の整数演算が実施されうる。例えば、特定のコンパイラ等において符号なし16ビット整数の型が定義された変数が表しうる整数は、10進数の0〜65535の範囲である。
このように、べき剰余を用いる暗号化及び換字式暗号化のいずれとも独立した変数でありうる当該回数を秘密とすることで、当該回数は第三者に不明となる。すなわち、第三者の解読の手間はさらに膨大となりうる。従って、本発明に係る整数を暗号化し復号化する方法においては、元の整数に対して極めて高い秘匿性を与えることが可能になる。
特に、べき剰余を用いる暗号化及び復号化においては、従来の公開鍵暗号化技術等では0、1、及び元の整数自身が変換されずに特異点となりうるが、本発明においてはオフセットを用いて従来法における特異点の数値を変更することが可能である。従って、本発明においては、従来法の特異点に係る問題を避けて暗号化及び復号化を実施することが可能になる。ここで、オフセットTの加算により得られる整数(Xi+T)が、上述の素数A及びBの積Nを超える場合は、入力として受け付ける整数Xiの範囲を(N−T)未満としてもよく、積Nが整数(Xi+T)を超えるように素数A及びBを改めて選択してもよく、適宜設計しうる。
従って、前述の数式(I)として表されるXiのべき乗の計算において、数式(VII)を用いて適宜元の整数Xiを上位の桁と下位の桁とに分割することにより、べき乗の計算過程での桁あふれを避けることが可能になる。
(12) 前記整数Zは、コンピュータ装置が、識別子に含まれる文字又は数字の一部又は全体から、可逆的に変換した整数である、(3)に記載の整数を暗号化し復号化する方法。
(14) 前記整数Zは、コンピュータ装置が、1次元画像又は2次元画像から可逆的に変換された1次元画像の一部又は全体から、可逆的に変換した整数である、(3)に記載の整数を暗号化し復号化する方法。
一実施形態において、暗号化される整数Xiは生年月日の日付の情報を含む文字列に基づいて生成される4桁、6桁、又は8桁等の整数であり、任意に選択される桁数は例えば2桁の整数でありうる。本発明に係る整数を暗号化し復号化する方法のユーザ等は、自己の生年月日に基づく同一の整数及び任意に選択される2桁の整数から生成される、桁数を増した整数Wiを暗号化の入力とし、当該2桁の整数を使い分けることにより、複数の暗号化した整数を生成して利用しうる。暗号化される整数は例えば10桁等であっても、ユーザは全ての桁の数字を使用目的ごとに記憶する必要はなく、当該2桁の整数を使い分ければよい。
従って、本発明に係る整数を暗号化し復号化する方法においては、生年月日の日付等の個人情報を含む文字列と関連付けられる整数であっても、任意に選択される桁数を増して暗号化することにより、複数の暗号化した整数を生成して使い分けることが可能になる。
これにより、本発明に係る整数を暗号化し復号化する方法の各ステップをコンピュータに実行させうる。従って、暗号化及び復号化に係る各ステップはコンピュータを用いて自動的に処理されうる。
前記べき剰余復号化実行部は、mを任意の整数として次式を成立するFを生成し記憶手段に記憶する秘密鍵生成部と、
(20) 前記秘密鍵生成部は、mを任意の整数として、前記数式[数19]を成立する前記Fを生成して、整数YiのF乗がコンピュータ装置の計算手段の整数演算に桁あふれを発生するか否かを判定し、判定結果が真となるまで、数Fの生成と前記判定とを繰り返す手段と、前記判定結果が真となるFを記憶手段に記憶する手段とを含み、前記剰余復号化実行部は、暗号化された整数Yiを整数Mを基数とするM進表記に変換し、前記YiのM進表記の桁数を、少なくとも2つ以上に分割し、前記分割したそれぞれの桁に対応する整数と当該桁数をべき指数とするMのべき乗との積からなる単項式の和からなる前記Yiの展開形を生成する手段と、前記生成した数Fをべき指数とする、整数YiのF乗冪演算において、整数Yiの前記展開形を用いて、前記それぞれの桁に対応する整数間の計算に置き換えて展開した剰余計算により、整数YiをF乗してNを法とする整数Xnを計算する手段とを含むことを特徴とする、(19)に記載の整数の暗号化及び復号装置。
また、本発明に係る整数の暗号化及び復号化装置においては、桁あふれを発生する条件で前述の数式(I)のEを選択した後に、例えば前述の数式(VII)を用いてXiを展開し、桁あふれを避けて、暗号化した整数であるYiを正確に得ることができる。
さらに、本発明に係る整数の暗号化及び復号化装置においては、換字式暗号化実行部及び換字式復号化実行部を、べき剰余暗号化及び復号化に重畳して用いることにより、単独の方法の繰り返しでは得られない、秘匿性の高い暗号化を実施し、この暗号化により変換された整数を正しく復号化するための情報を生成することが可能である。
(22) 前記秘密鍵生成手段は、mを任意の整数として、前記[数22]を成立する前記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を生成する。
次いで、本発明に係る整数を暗号化する方法は、ステップ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において、次の数式(XVII)を用いて前記暗号化したYiをXnに復号化する。
さらに、本発明の整数を暗号化し復号化する方法においては、暗号化の過程である数式(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の個人情報を隠蔽しうる。
図1に示し、識別用途A(122)、識別用途Aの固有情報(62)、暗号化計算A(72)及び暗号化した整数A(42)を用いて上述のように、本発明に係る暗号化手段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と共通する箇所は説明を省略する。
ループカウンタ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はループカウンタに依存して繰り返しの各回において変化する例を示す。
すなわち、3行1列のセル及び4行2列のセルは、2個の素数A及びBを記憶するために用いうる。また、A及びBの積が入力Xiを超えることの判定を、例えば3行2列のセルを用いて表示してもよい。このA及びBの積は、前述の数式(VIII)におけるNであり、Nは本発明に係る整数の暗号化に含まれる剰余計算の底でありうる。
7行1列のセルは、(A−1)及び(B−1)の積であるD値を記憶するために用いうる。8行1列のセルは、(A−1)と(B−1)の最小公倍数であるK値を記憶するために用いうる。9行1列のセルは、D又はKと素である整数Eiを記憶するために用いうる。この整数Eiは、公開鍵暗号化技術における公開鍵として用いうる。11行1列のセルは、前述の数式(XVI)を成立する整数Fを記憶するために用いうる。この整数Fiは、公開鍵暗号化技術における秘密鍵として用いうる。13行1列のセルは、換字式暗号化の鍵Riを、14行1列のセルはオフセットTiを、15行1列はループカウンタLを記憶するために用いうる。
他の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の繰り返しのために用いられる。
べき剰余を用いる復号化により整数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を換字暗号した整数Ziに変換する換字暗号化ステップと、
コンピュータ装置が換字式復号化を用いて前記換字暗号した整数Ziを換字復号した整数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と素である数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に復号するステップと、
- コンピュータ装置が前記べき剰余暗号化ステップに続いて、換字暗号化ステップを実施する暗号化ステップ、及びコンピュータ装置が前記換字復号化ステップに続いて、べき剰余復号化ステップを実施する復号化ステップは、それぞれ少なくとも2以上の同一の複数回数交互に繰り返し実施する、請求項1に記載の整数を暗号化し復号化する方法。
- コンピュータ装置が入力された整数Zを暗号化し復号化する方法であって、
コンピュータ装置が換字式暗号化を用いて前記整数Zを換字暗号した整数Xiに変換する換字暗号化ステップと、
コンピュータ装置が、前記整数Xiを整数Yiに暗号化する、べき剰余暗号化ステップと、
コンピュータ装置が前記暗号化された整数Yiを前記整数Xiに復号化する、べき剰余復号化ステップと
コンピュータ装置が換字式復号化を用いて前記換字暗号した整数Xnすなわち、Xiを換字復号化して前記整数Zに復号化する換字復号化ステップとを含み、
前記べき剰余暗号化ステップは、
コンピュータ装置がその積Nが前記整数Xiを超える2つの素数A及びBを生成し、前記N、A、Bを記憶手段に記憶するステップと、
コンピュータ装置が(A−1)と(B−1)との積D及び(A−1)と(B−1)の最小公倍数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であって、前記EとFとの積が、mと最小公倍数Kとの積に1を加えた整数となる、前記整数Fを生成し記憶手段に記憶するステップと、
コンピュータ装置が前記記憶された数Fをべき指数とする、暗号化した前記整数YiをF乗してNを法とする整数Xnを計算するステップと、
コンピュータ装置が前記整数Xnを記憶手段に記憶することで、前記暗号化したYiをXnすなわち、Xiに復号するステップと、
を含むことを特徴とする整数を暗号化し復号化する方法。 - コンピュータ装置が前記換字暗号化ステップに続いて、べき剰余暗号化ステップを実施する暗号化ステップ、及びコンピュータ装置が前記べき剰余復号化ステップに続いて、換字復号化ステップを実施する復号化ステップは、それぞれ少なくとも2以上の同一の複数回数繰り返し実施する、請求項3に記載の整数を暗号化し復号化する方法。
- 前記少なくとも2以上の同一の繰り返し実施する複数回数は、所定の正の整数、コンピュータ装置が前記所定の正の整数を暗号化した正の整数、及びコンピュータ装置がランダムに発生した正の整数のいずれかであることを特徴とする、請求項2又は4に記載の整数を暗号化し復号化する方法。
- 前記換字式暗号化は、単表式暗号化、多表式暗号化及び自動鍵暗号化のいずれかであり、
前記換字式復号化は、前記換字式暗号化に対応して単表式復号化、多表式復号化及び自動鍵復号化のいずれかであることを特徴とする、
請求項1又は3に記載の整数を暗号化し復号化する方法。 - コンピュータ装置が、前記換字式暗号化及び前記換字式復号化の鍵を、ランダムに発生した整数に基づいて選択する、請求項1又は3に記載の整数を暗号化し復号化する方法。
- コンピュータ装置がさらに、前記整数Xiを変換した整数Yiを生成する前に、前記整数Xiから前記整数Xi以下の整数Tを加算して前記整数Xiと置き換えるステップと、
コンピュータ装置が前記変換した整数Yiを整数Xnに復号化した後に、前記整数Xnに前記整数Tを減算して前記整数Xnと置き換えるステップと、
を含む、請求項1又は3に記載の整数を暗号化し復号化する方法。 - 前記整数Tはコンピュータ装置がランダムに発生した整数である、請求項8に記載の整数を暗号化し復号化する方法。
- 前記整数Xiは、コンピュータ装置が、識別子に含まれる文字又は数字の一部又は全体から、可逆的に変換した整数である、請求項1に記載の整数を暗号化し復号化する方法。
- 前記整数Zは、コンピュータ装置が、識別子に含まれる文字又は数字の一部又は全体から、可逆的に変換した整数である、請求項3に記載の整数を暗号化し復号化する方法。
- 前記整数Xiは、コンピュータ装置が、1次元画像又は2次元画像から可逆的に変換された1次元画像の一部又は全体から、可逆的に変換した整数である、請求項1に記載の整数を暗号化し復号化する方法。
- 前記整数Zは、コンピュータ装置が、1次元画像又は2次元画像から可逆的に変換された1次元画像の一部又は全体から、可逆的に変換した整数である、請求項3に記載の整数を暗号化し復号化する方法。
- コンピュータ装置がさらに、暗号化に先立って、少なくとも一つの桁を元の整数に対して追加することにより桁を増した整数に置き換えるステップを含む、請求項1又は3に記載の整数を暗号化し復号化する方法。
- コンピュータ装置がさらに、復号化の後に復号化した整数から前記追加した少なくとも一つの桁を除去するステップを含む、請求項15に記載の整数を暗号化し復号化する方法。
- 前記Fを生成し記憶手段に記憶するステップは、
コンピュータ装置がmを任意の整数として、整数Fであって、前記EとFとの積が、mと最小公倍数Kとの積に1を加えた整数となる、前記整数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のいずれかに記載の方法の各ステップを実行させるための、コンピュータ・プログラム。
- 入力された整数を暗号化し復号化する装置であって、
換字式暗号化を用いて整数を換字暗号した整数に変換する換字式暗号化実行部と、
換字式復号化を用いて換字暗号した整数を換字暗号化前の整数に復号化する換字式復号化実行部と
整数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と素である数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を生成し記憶手段に記憶する秘密鍵生成部と、
- 前記秘密鍵生成部は、
mを任意の整数として、前記数式[数6]を成立する前記Fを生成して、整数YiのF乗がコンピュータ装置の計算手段の整数演算に桁あふれを発生するか否かを判定し、判定結果が真となるまで、数Fの生成と前記判定とを繰り返す手段と、
前記判定結果が真となるFを記憶手段に記憶する手段とを含み、
前記剰余復号化実行部は、
暗号化された整数Yiを整数Mを基数とするM進表記に変換し、前記YiのM進表記の桁数を、少なくとも2つ以上に分割し、前記分割したそれぞれの桁に対応する整数と当該桁数をべき指数とするMのべき乗との積からなる単項式の和からなる前記Yiの展開形を生成する手段と、
前記生成した数Fをべき指数とする、整数YiのF乗冪演算において、整数Yiの前記展開形を用いて、前記それぞれの桁に対応する整数間の計算に置き換えて展開した剰余計算により、整数YiをF乗してNを法とする整数Xnを計算する手段とを含むことを特徴とする、請求項19に記載の整数の暗号化及び復号装置。 - 入力された整数を暗号化し復号化するシステムであって、
整数を入力する手段と、
換字式暗号化を用いて整数を換字暗号した整数に変換する換字式暗号化手段と、
換字式復号化を用いて換字暗号した整数を換字暗号化前の整数に復号化する換字式復号化手段と
整数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と素である数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を生成し記憶手段に記憶する秘密鍵生成手段と、
前記整数を暗号化し復号化するシステム。 - 前記秘密鍵生成手段は、
mを任意の整数として、前記[数9]を成立する前記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 |
---|---|---|---|
JP2008328768A JP5208717B2 (ja) | 2008-12-24 | 2008-12-24 | 整数の暗号化及び復号化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008328768A JP5208717B2 (ja) | 2008-12-24 | 2008-12-24 | 整数の暗号化及び復号化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010152012A JP2010152012A (ja) | 2010-07-08 |
JP5208717B2 true JP5208717B2 (ja) | 2013-06-12 |
Family
ID=42571193
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008328768A Expired - Fee Related JP5208717B2 (ja) | 2008-12-24 | 2008-12-24 | 整数の暗号化及び復号化方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5208717B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5247773B2 (ja) * | 2010-08-03 | 2013-07-24 | 中国電力株式会社 | 暗号装置及びその方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0227389A (ja) * | 1988-07-15 | 1990-01-30 | Sony Corp | 暗号化方法及び該暗号方法を用いた暗号化装置/復号化装置 |
JP2002023624A (ja) * | 2000-07-07 | 2002-01-23 | Murata Mach Ltd | ブロック暗号通信方法とその装置、及びブロック暗号通信プログラムを記録した記録媒体 |
JP2002132731A (ja) * | 2000-10-23 | 2002-05-10 | Hitachi Systems & Services Ltd | 生体情報とデータ記録媒体を用いたユーザ認証方法、認証装置およびプログラム記録媒体 |
JP2008129811A (ja) * | 2006-11-20 | 2008-06-05 | Ricoh Co Ltd | 暗号処理管理方法、暗号処理管理装置及び暗号処理管理プログラム |
JP2008185608A (ja) * | 2007-01-26 | 2008-08-14 | Casio Comput Co Ltd | 暗号化装置、暗号復号装置、暗号化方法、暗号復号方法、及び、プログラム |
-
2008
- 2008-12-24 JP JP2008328768A patent/JP5208717B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010152012A (ja) | 2010-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108463968B (zh) | 可变长度数据的快速格式保留加密 | |
Kester | A cryptosystem based on Vigenère cipher with varying key | |
JP3583555B2 (ja) | 暗号通信法 | |
Thangavel et al. | Enhanced DNA and ElGamal cryptosystem for secure data storage and retrieval in cloud | |
EP2742644B1 (en) | Encryption and decryption method | |
JP2011164607A (ja) | シンボルシーケンスの編集距離のプライバシーを保護した計算の方法およびシステム | |
Ghazanfaripour et al. | Designing a digital image encryption scheme using chaotic maps with prime modular | |
RU2124814C1 (ru) | Способ шифрования блоков цифровых данных | |
US20210279341A1 (en) | Cryptographic security system, method, and program product using data partitioning | |
Ahmad et al. | A secure network communication protocol based on text to barcode encryption algorithm | |
KR100583495B1 (ko) | 암호화 방법 | |
Sakib | Analysis of Fundamental Algebraic Concepts and Information Security System | |
JP5208796B2 (ja) | 整数の暗号化及び復号化方法 | |
Ahmad Abusukhon et al. | A novel network security algorithm based on encrypting text into a white-page image | |
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) | 暗号化方法 | |
JP5208797B2 (ja) | 整数の暗号化及び復号化方法 | |
Shawkat et al. | Optimization-based pseudo random key generation for fast encryption scheme | |
JP5208642B2 (ja) | 整数の暗号化及び復号方法 | |
JP5208982B2 (ja) | 整数を暗号化及び復号化する方法、装置及びシステム | |
Babash | XOR ciphers model and the attack to it | |
RU2188513C2 (ru) | Способ криптографического преобразования l-битовых входных блоков цифровых данных в l-битовые выходные блоки | |
JP7411526B2 (ja) | 情報処理システム及び情報処理方法 |
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 | Request for written amendment filed |
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: 5208717 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 |
|
LAPS | Cancellation because of no payment of annual fees |