JP2016115066A - 乱数列生成装置、方法及びプログラム - Google Patents
乱数列生成装置、方法及びプログラム Download PDFInfo
- Publication number
- JP2016115066A JP2016115066A JP2014252138A JP2014252138A JP2016115066A JP 2016115066 A JP2016115066 A JP 2016115066A JP 2014252138 A JP2014252138 A JP 2014252138A JP 2014252138 A JP2014252138 A JP 2014252138A JP 2016115066 A JP2016115066 A JP 2016115066A
- Authority
- JP
- Japan
- Prior art keywords
- random number
- sequence
- number sequence
- unique
- cipher
- 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.)
- Granted
Links
Images
Abstract
【解決手段】乱数列生成装置10は、一意の番号を生成し、生成した一意の番号を、セキュアな保護記憶部30に記憶された秘密鍵Kと暗号アルゴリズムによって暗号化し、作成された暗号を所定の桁数に変換し、一意の番号とを連結させた連結列を作成し、連結列を構成する要素の順番を並び替え、連結列を構成する要素ごとを符号に変換する変換表311を用いて連結列を一意の乱数列に変換する。変換して得られた乱数列に対してチェックデジットを付加して出力の乱数列とする。
【選択図】図1
Description
(1) 一意の番号を生成する番号生成部と、前記一意の番号を、暗号アルゴリズムによって暗号化する暗号作成部と、前記一意の番号と、前記暗号作成部によって作成された暗号とを連結させた連結列を作成する列作成部と、所定の規則を用いて、前記連結列を一意の乱数列に変換する変換部と、を備える乱数列生成装置。
したがって、(1)に係る乱数列生成装置は、一意の番号を含むことによって一意性が保証され、かつ、変換によって一意の番号の規則性が隠されると共に暗号を含むことによって不正発行が困難な乱数列を生成することができる。
図1は、本発明の一実施形態に係る乱数列生成装置10の構成を示すブロック図である。乱数列生成装置10は、番号生成部11と、暗号作成部12と、列作成部13と、変換部14と、チェックデジット付加部15と、保護記憶部30と、変換表311を記憶する記憶部31とを備える。各部を詳述する。
カウントアップの方法は、いずれの場合も、10進(すなわち、0〜9)に限らず、例えば、30進でもよい。30進の場合、カウントアップの方法は、例えば、0〜9と、a〜zのうちの選択された20個のアルファベットとを用いて順にアップし桁上がりするとしてもよく、他の記号などの符号を用いて順にアップし桁上がりするとしてもよい。一意の番号に出現する符号は、後述する変換部14で用いられる所定の規則(例えば、変換表311など)にも、対応して用いられる。
暗号アルゴリズムは、一方向性関数である鍵付きハッシュ関数などであってよく、秘密鍵Kを用いるものであってよい。
列作成部13は、暗号作成部12によって変換暗号列が作成された場合、変換暗号列と、一意の番号とから連結列を作成する。
所定の規則は、一意の乱数列を構成する要素ごとを符号に変換する変換表311(後述する図2参照)などであってもよい。
保護記憶部30は、メモリ保護機能及びレジスタ保護機能などを具備したソフトウェアセキュアエレメントであってもよい。ソフトウェアセキュアエレメントは、メモリ上に保管されているデータ、プログラムが行うメモリへのアクセス、CPUで実行される演算などを保護することが可能である。ソフトウェアセキュアエレメントは、暗号アルゴリズムで利用する秘密鍵K、秘密鍵Kを含む処理、計算、及び変換表311(後述する図2参照)を安全に処理又は保管することが可能であり、攻撃者による解析などから保護する。
このように桁数が適切に調整され、チェックデジットが付加されて作成された乱数列は、一意性が保証され、かつ、不正発行が困難な乱数列なので、カードなどに印刷されて利用されることが可能である。
変換部14は、変換対象の連結列の2桁ずつをそれぞれ変換表311の行と列とに対応させ、対応する行及び列の交点に記憶されている符号に変換する。例えば、変換部14は、変換対象の連結列が「0ac1・・・」の場合、「0」と「a」とを「c0」に、「c」と「1」とを「ds」のように、変換表311を用いて変換する。
乱数列生成方法の一例として、乱数列生成装置10が、英数字のうち30文字を利用して16桁の乱数列を生成する場合を説明する。乱数列の構成は次のとおりとする。
S(ymd||counter||Trunc(EK(ymd||counter),n))||chksm
ここで、ymdは発行日、counterはその日の発行数を管理するカウンタ、EKは暗号アルゴリズムである。EKは鍵付きハッシュ関数などの一方向性関数であってもよい。
Trunc(x,n)は、xから上位nビットを抜き取り、英数字を割り当てる関数である。Sは入力値の並び替えと表変換を行う関数である。chksmは、チェックデジットである。なお、記号「||」は、前後の文字列を連結することを表している。
すなわち、乱数列生成装置10は、発行日ymdに3桁を割り当て、開始日を「000」とし、1日ごとにカウントアップする。乱数列生成装置10は、カウンタcounterに5桁を割り当て、その日の一意の乱数列の発行を「00000」から順にカウントアップする。
すなわち、乱数列生成装置10は、「発行日||カウンタ」を、秘密鍵Kを利用する暗号アルゴリズム(例えば、AES(Advanced Encryption Standard)など)又は一方向性関数に入力する。
すなわち、乱数列生成装置10は、暗号部分に6桁を割り当て、得られた暗号から上位の6桁を抜き取る。
すなわち、乱数列生成装置10は、発行日(3桁)、カウンタ(5桁)、暗号部分(6桁)によって作成した連結列に対して、2桁ずつを変換表311を用いて変換し、変換した14桁のコードを、一意の乱数列の上位14桁とする。
すなわち、乱数列生成装置10は、一意の乱数列の各要素の和を30で割った余りを、チェックデジットとする。例えば、乱数列生成装置10は、14桁のコードを上位の7桁と下位7桁とに分けてそれぞれチェックデジットを算出し、算出したチェックデジットをそれぞれ15桁目、16桁目とする。
このように、乱数列生成装置10は、一意性が保証されて衝突が起こらず、かつ、第3者による不正発行が困難な一意の乱数列を生成する。
さらに、乱数列生成装置10は、電子マネーへのチャージや有料サービスの利用などが受けられるカードであって、小売店などで販売されPINやパスコードが印刷されるカードなどに適した、所定の桁数の乱数列を生成可能である。
11 番号生成部
12 暗号作成部
13 列作成部
14 変換部
15 チェックデジット付加部
30 保護記憶部
31 記憶部
311 変換表
Claims (9)
- 一意の番号を生成する番号生成部と、
前記一意の番号を、暗号アルゴリズムによって暗号化する暗号作成部と、
前記一意の番号と、前記暗号作成部によって作成された暗号とを連結させた連結列を作成する列作成部と、
所定の規則を用いて、前記連結列を一意の乱数列に変換する変換部と、
を備える乱数列生成装置。 - 前記変換部は、前記連結列を構成する要素の順番を並び替え、並び替えた変更連結列を作成し、前記変更連結列を前記乱数列に変換する、請求項1に記載の乱数列生成装置。
- 前記暗号作成部は、前記暗号を所定の桁数に変換した変換暗号列を作成し、
前記列作成部は、前記変換暗号列と、前記一意の番号とから前記連結列を作成する、請求項1又は2に記載の乱数列生成装置。 - 前記乱数列の要素に基づいてチェックデジットを算出し、算出した前記チェックデジットを前記乱数列に付加するチェックデジット付加部をさらに備える、請求項3に記載の乱数列生成装置。
- 前記変換部は、前記連結列を構成する要素ごとを符号に変換する変換表を用いて変換する、請求項1から4のいずれか一項に記載の乱数列生成装置。
- 前記番号生成部は、日付と日付ごとのカウンタとを連結した番号を前記一意の番号とする、請求項1から5のいずれか一項に記載の乱数列生成装置。
- 前記暗号アルゴリズムに用いられる秘密鍵を記憶するセキュアな保護記憶部をさらに備える請求項1から6のいずれか一項に記載の乱数列生成装置。
- 請求項1に記載の乱数列生成装置が実行する方法であって、
前記番号生成部が、一意の番号を生成する番号生成ステップと、
前記暗号作成部が、前記一意の番号を、暗号アルゴリズムによって暗号化する暗号作成ステップと、
前記列作成部が、前記一意の番号と、前記暗号作成ステップによって作成された暗号とを連結させた連結列を作成する乱数列作成ステップと、
前記変換部が、所定の規則を用いて、前記連結列を一意の乱数列に変換する変換ステップと、
を備える方法。 - コンピュータに、請求項8に記載の各ステップを実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014252138A JP6735062B2 (ja) | 2014-12-12 | 2014-12-12 | 乱数列生成装置、方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014252138A JP6735062B2 (ja) | 2014-12-12 | 2014-12-12 | 乱数列生成装置、方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016115066A true JP2016115066A (ja) | 2016-06-23 |
JP6735062B2 JP6735062B2 (ja) | 2020-08-05 |
Family
ID=56141921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014252138A Active JP6735062B2 (ja) | 2014-12-12 | 2014-12-12 | 乱数列生成装置、方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6735062B2 (ja) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002169681A (ja) * | 2000-10-11 | 2002-06-14 | Trustcopy Pte Ltd | 秘密の安全の保護および、または認証された文書の遠隔印刷 |
JP2004178430A (ja) * | 2002-11-28 | 2004-06-24 | Dainippon Printing Co Ltd | ユニークナンバー生成装置、生成方法、生成プログラム及びその記録媒体、並びに応募処理システム |
JP2007281713A (ja) * | 2006-04-04 | 2007-10-25 | Shachihata Inc | 情報生成処理プログラム、情報生成装置及び情報生成方法 |
JP2008072241A (ja) * | 2006-09-12 | 2008-03-27 | Ricoh Co Ltd | 無線通信装置及び無線通信方法 |
JP2008276728A (ja) * | 2007-03-30 | 2008-11-13 | Hitachi Ltd | 疑似乱数生成装置及びそれを用いた暗号化処理装置 |
-
2014
- 2014-12-12 JP JP2014252138A patent/JP6735062B2/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002169681A (ja) * | 2000-10-11 | 2002-06-14 | Trustcopy Pte Ltd | 秘密の安全の保護および、または認証された文書の遠隔印刷 |
JP2004178430A (ja) * | 2002-11-28 | 2004-06-24 | Dainippon Printing Co Ltd | ユニークナンバー生成装置、生成方法、生成プログラム及びその記録媒体、並びに応募処理システム |
JP2007281713A (ja) * | 2006-04-04 | 2007-10-25 | Shachihata Inc | 情報生成処理プログラム、情報生成装置及び情報生成方法 |
JP2008072241A (ja) * | 2006-09-12 | 2008-03-27 | Ricoh Co Ltd | 無線通信装置及び無線通信方法 |
JP2008276728A (ja) * | 2007-03-30 | 2008-11-13 | Hitachi Ltd | 疑似乱数生成装置及びそれを用いた暗号化処理装置 |
Also Published As
Publication number | Publication date |
---|---|
JP6735062B2 (ja) | 2020-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11516201B2 (en) | Encryption and decryption techniques using shuffle function | |
ES2822997T3 (es) | Método para satisfacer una solicitud criptográfica que requiere un valor de una clave privada | |
US9830476B2 (en) | System and method for cascading token generation and data de-identification | |
US9934400B2 (en) | System and methods for encrypting data | |
KR101623503B1 (ko) | Lea 블록암호의 화이트박스 암호 구현 장치 및 방법 | |
CN103853943A (zh) | 程序保护方法及装置 | |
CN103824197A (zh) | 防伪码生成装置 | |
CN107592963B (zh) | 用于执行安全计算的方法和计算设备 | |
US20170063533A1 (en) | Complex format-preserving tokenization scheme | |
JP6735062B2 (ja) | 乱数列生成装置、方法及びプログラム | |
KR101977128B1 (ko) | 장문 텍스트열에 대한 고정 길이 암호화 장치 및 방법 | |
KR101584220B1 (ko) | 암호화 데이터 정렬 유지를 위한 인코딩 방법 | |
Singh et al. | Developing mobile message security application using 3D Playfair Cipher algorithm | |
Setiawaty et al. | The Implementation of the RC4 algorithm For Sale and Purchase Agreements Data Security On Notary Office | |
JP2021092634A (ja) | 平文暗号化復号化方法および平文暗号化復号化装置 | |
JP2015069191A (ja) | 情報処理装置、暗号化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170816 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180330 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180417 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180828 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20190115 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200713 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6735062 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |