KR20020004022A - 다차원 셀룰라 오토마타를 이용한 난수 발생 방법 및 장치 - Google Patents

다차원 셀룰라 오토마타를 이용한 난수 발생 방법 및 장치 Download PDF

Info

Publication number
KR20020004022A
KR20020004022A KR1020000036698A KR20000036698A KR20020004022A KR 20020004022 A KR20020004022 A KR 20020004022A KR 1020000036698 A KR1020000036698 A KR 1020000036698A KR 20000036698 A KR20000036698 A KR 20000036698A KR 20020004022 A KR20020004022 A KR 20020004022A
Authority
KR
South Korea
Prior art keywords
cells
cell
values
cellular space
value
Prior art date
Application number
KR1020000036698A
Other languages
English (en)
Inventor
김재겸
손호준
이동우
조성진
임종인
이경현
Original Assignee
이상성
(주)파이언소프트
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 이상성, (주)파이언소프트 filed Critical 이상성
Priority to KR1020000036698A priority Critical patent/KR20020004022A/ko
Publication of KR20020004022A publication Critical patent/KR20020004022A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/582Pseudo-random number generators

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명은 다차원 셀룰라 오토마타를 이용한 난수 발생 방법 및 장치에 관한 것으로, 도형의 조작변형에 의한 다차원 셀룰라 공간의 구성, 셀들의 값들의 동시변환, 셀들의 값들의 내부적인 로테이션 등을 이용하여, 이진 난수 열을 발생시키는 방법 및 장치에 관한 것이다.

Description

다차원 셀룰라 오토마타를 이용한 난수 발생 방법 및 장치{.}
본 발명은 다차원 셀룰라 오토마타(Cellular Automata)를 이용하여 이진 난수 열을 발생시키는 방법 및 장치에 관한 것이다.
셀룰라 오토마톤(Celluar Automaton)은 이산적인 공간과 이산적인 시간으로 구성되어 있으면서, 이산적인 공간인 셀룰라 공간(Cellular Space)의 셀(Cell)이라고 불리워지는 각 단위 공간의 주어진 시각에서의 상태는 유한한 개수의 상태들 중의 하나의 상태로 주어지며, 각 시각에서의 각 셀의 상태가 그 셀의 근방에 있는 셀들의 직전 시각에서의 상태들에 의해서 결정되어 지는 동역학계(Dynamic System)이다.
셀룰라 오토마타를 이용한 난수 열 발생 방법에 대한 종래의 방법으로는 울프램(Wolfram)의 방법(미국 특허 등록 번호 4,691,291) 등이 있는데, 이러한 방법들은 셀들의 1차원 배열에 기초한 셀룰라 공간들을 이용한다.
본 발명은 셀들의 다차원 배열에 기초하는 셀룰라 공간들을 이용하는데, h(≥2)차원 공간에서의 도형을 2h차원 이하의 공간으로 임베딩(Imbedding)되는 아이덴티피케이션 공간(Identification Space)으로 조작변형하여 셀룰라 공간으로 하고, 이 공간에서의 셀들의 상태들의 불규칙한 분포와 이 불규칙한 상태들의 확산을 이용하여, 이진 난수 열 발생 시스템을 구성하는 것이다.
도 1은 셀룰라 공간의 구성을 설명하기 위한 보조도이다.
도 2는 이진 난수 열을 발생시키는 방법의 흐름도이다.
본 발명에서 사용하는 셀룰라 공간(110)의 구성을 도 1을 참조하여 설명한다. 먼저, 도 1과 같이 삼각형들로 이루어져 있는 평면도형에서 도 1의 제일 위쪽 변과 도 1의 제일 아래쪽 변을 이어 붙이고, 즉, A1, A2, A3삼각형의 위쪽 변을 각각 B1, B2, B3삼각형의 아래쪽 변에 이어 붙이고, 도 1의 제일 왼쪽 변과 도 1의 제일 오른쪽 변을 이어 붙여서, 즉, 도 1의 C1, C2, C3, C4삼각형의 왼쪽 변을 각각 도 1의 D1, D2, D3, D4삼각형의 오른쪽 변에 이어 붙여서 도우넛(Torus)의 표면 형태의 도형을 만든다. 다음으로, 도 1의 E1, E2, E3, E4, E5, E6, E7, E8, F1, F2, F3, F4, F5, F6, F7, F8삼각형의 내부를 각각 삭제한 다음, 도 1의 E1, E2, E3, E4, E5, E6, E7, E8삼각형의 변 a, b, c를 각각 도 1의 F1, F2, F3, F4, F5, F6, F7, F8삼각형의 변 a, b, c에 이어 붙인다. 이렇게 하여 만든 도형(111)이 본 발명에서 사용하는 셀룰라 공간(110)이다. 이 도형은 최소 단위의 삼각형을 128개 가진다.
이 셀룰라 공간(110)의 셀들은 상기 도형(111)의 최소 단위의 삼각형들이다. 주어진 셀과 인접하는 셀이란 주어진 셀의 삼각형과 꼭 하나의 변을 공유하는 삼각형의 셀을 뜻한다. 따라서 이 셀룰라 공간(110)의 각 셀은 꼭 3개의 인접하는 셀들을 갖는다. 그리고 각 셀의 값으로는 32비트(Bit)의 이진 숫자가 입력된다.
그리고 시각의 변화에 따라 셀룰라 공간(110)의 셀들의 값들을 동시에 갱신하는 셀룰라 공간(110)의 셀들의 값들의 동시변환으로는 다음과 같은 세가지(120, 130, 140)의 방법을 사용한다.
첫 번째 방법은 선형적인 변환만을 이용하는 방법(120)으로 시각 t에서 모든 셀들의 값들이 주어져 있을 때, 시각 t+1에서의 각 셀(121)의 값을 그 셀(121)과 인접하는 3개의 셀들의 시각 t에서의 값들을 비트와이즈(Bitwise)하게 배타적논리합(XOR)한 값으로 부여하는 방법이다.
두 번째 방법은 비선형적인 변환과 선형적인 변환을 혼합하여 이용하는 방법(130)으로 도 1의 Ni(i=1, 2, 3, 4, 5, 6) 의 6개의 셀들의 경우는 시각 t+1에서의 Ni의 값을 시각 t에서의 Ni1의 값과 Ni2의 값을 비트와이즈하게 논리합(OR)한 후 이 논리합을 시각 t에서의 Ni3의 값과 비트와이즈(Bitwise)하게 배타적논리합(XOR)한 값으로 부여하는 방법을 사용하고, 이 여섯 개의 셀들을 제외한 셀들의 시각 t+1에서의 값들은 위의 방법(120)과 마찬가지 방법으로 부여하는 방법이다.
세 번째 방법은 일부의 셀들의 값을 각 셀의 내부적인 로테이션에 의하여 갱신하는 방법(140)에서는 도 1의 R1, R2, R3, R4셀의 값을 각각 내부적으로 3비트, 5비트, 7비트, 13비트씩 상위 비트 방향으로 로테이션하여 갱신하고, 이 네 개의 셀들을 제외한 나머지 셀들의 값들은 변화시키지 않는 방법이다.
이제 이상의 설명을 바탕으로 키(Key)를 사용하는 경우의 이진 난수 열 발생 방법(200)을 설명하는데, 아래와 같은 단계들로 구성된다. 도 2는 이 방법(200)의 흐름도이다.
첫 번째 단계는 셀룰라 공간(110)의 각 셀에 초기값을 부여하는 단계(210)로, 각 셀에 임의의 값을 부여한다. 여기서 부여할 수 있는 값의 총비트 수는 (128 X 32)개, 즉, 4096개이다.
두 번째 단계는 키 값을 셀룰라 공간(110)의 각 셀에 반영시키는 단계(220)로, 키 값을 이진 비트의 열로 표현했을 때, i번째 비트의 값이 1이면 i2번 셀의 값의 최상위 비트를 기준으로 i3번째 비트의 값을 1로 부여하고 i2번 셀의 값의 최상위 비트를 기준으로 i4번째 비트의 값을 0으로 부여하며, i번째 비트의 값이 0이면 i2번 셀의 값의 최상위 비트를 기준으로 i3번째 비트의 값을 0으로 부여하고 i2번 셀의 값의 최상위 비트를 기준으로 i4번째 비트의 값을 1로 부여한다. 단, 128개의 셀들의 번호는 0에서 127까지 미리 부여되어 있는 것으로 하며, i1은 음수가 아닌 정수이고 i2는 음수가 아니면서 128보다 작은 정수로 각각 i를 128로 나누었을 때의 몫과 나머지이며 i3은 음수가 아니면서 32보다 작은 정수로 (i + i1)을 32로 나누었을 때의 나머지이며, i4는 음수가 아니면서 32보다 작은 정수로 (i3 + 16)을 32로 나누었을 때의 나머지이다. 여기서 키 값의 최대 길이는 (128 X 16)비트, 즉, 2048비트이다.
세 번째 단계는 셀룰라 공간(110)의 셀들의 값들을 초기 갱신하는 단계(230)로, 위의 첫 번째 방법(120)으로 모든 셀들의 값들을 갱신하는 부분단계와 위의 세 번째 방법(140)으로 모든 셀들의 값들을 갱신하는 부분단계를 교대로 100회씩 반복한다. 여기서 반복의 회수는 적당히 가감될 수 있다.
네 번째 단계는 난수 열을 생성하는 단계(240)로, 위의 두 번째 방법(130)으로 모든 셀들의 값들을 갱신하는 부분단계와 위의 세 번째 방법(140)으로 모든 셀들의 값들을 갱신하는 부분단계를 교대로 1회씩 실행하여 셀들의 값들을 갱신하는 부분단계와 128개의 셀들 중 일부의 셀들의 값들을 추출하여 이 추출한 값들을 난수 열의 일부로 구성하는 부분단계를 필요한 회수만큼 교대로 반복한다.
이상에서 키를 사용하는 경우의 이진 난수 열 발생 방법(200)을 설명하였는데, 키를 사용하지 않는 경우의 이진 난수 열 발생 방법은 위의 방법(200)에서 두 번째 단계(220)을 제외한 방법이다.
셀들의 다차원 배열에 기초하는 셀룰라 공간들에서의 셀들의 상태들의 불규칙한 분포의 확산은 셀들의 1차원 배열에 기초하는 셀룰라 공간들의 경우 보다 훨씬 복잡하고 넓게 이루어진다. 따라서, 위의 난수 열 발생 방법의 경우에서는 셀들의 1차원 배열에 기초하는 종래의 방법들의 경우에서보다 키의 각 요소들이 난수 열 전체에 훨씬 복잡하고 넓게 영향을 끼친다. 그러므로, 위의 난수 열 발생 시스템들에서 발생되는 난수 열의 랜덤성은 매우 우수하다. 따라서 위의 난수 열 발생시스템은 데이터의 암호화 및 복호화 시스템, 인증 시스템 등에 효과적으로 활용될 수 있다.

Claims (2)

  1. 셀룰라 오토마타를 이용하여 이진 난수 열을 발생시키는 방법 및 장치에 있어서, 삼각형 모양의 셀들로 구성되고 각 셀이 인접한 셀을, 즉, 상기 셀과 꼭 하나의 변을 공유하는 셀을 꼭 3개씩 갖도록 구성된 셀룰라 공간을 이용하는 것을 특징으로 하면서, 상기 셀룰라 공간의 각 셀에 초기값을 부여하는 단계, 키 값을 상기 셀룰라 공간의 각 셀에 반영시키는 단계, 상기 셀룰라 공간의 각 셀의 값을 상기 셀과 인접한 3개의 셀들의 값들을 비트와이즈하게 배타적논리합한 값으로 갱신하는 방법으로 상기 셀룰라 공간의 모든 셀들의 값들을 갱신하는 부분단계와 상기 셀룰라 공간의 일부의 셀들의 값들을 각 셀의 내부적인 비트와이즈 로테이션에 의하여 갱신하는 부분단계를 교대로 일정 회수 반복 실행하여 상기 셀룰라 공간의 셀들의 값들을 초기 갱신하는 단계, 상기 셀룰라 공간의 각 셀의 값을 상기 셀과 인접한 세개의 셀들 중 두 개의 셀들의 값들을 비트와이즈하게 논리합한 후 이 논리합한 값과 상기 인접한 세 개의 셀들 중 나머지 하나의 셀의 값을 비트와이즈하게 배타적논리합한 값으로 갱신하는 방법으로 상기 셀룰라 공간의 모든 셀들의 값들을 갱신하는 부분단계와 상기 셀룰라 공간의 일부의 셀들의 값들을 각 셀의 내부적인 비트와이즈 로테이션에 의하여 갱신하는 부분단계와 상기 셀룰라 공간의 셀들 중 일부의 셀들의 값들을 추출하여 난수 열의 일부로 구성하는 부분단계의 세 가지의 부분단계들을 필요한 회수만큼 교대로 반복하여 난수 열을 생성하는 단계 등의 단계들을 포함하는 것을 특징으로 하는 방법 및 장치.
  2. 제 1항에 있어서, 키 값을 셀룰라 공간의 각 셀에 반영시키는 단계를 제외하여 키를 사용하지 않는 것을 특징으로 하는 방법 및 장치.
KR1020000036698A 2000-06-29 2000-06-29 다차원 셀룰라 오토마타를 이용한 난수 발생 방법 및 장치 KR20020004022A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000036698A KR20020004022A (ko) 2000-06-29 2000-06-29 다차원 셀룰라 오토마타를 이용한 난수 발생 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000036698A KR20020004022A (ko) 2000-06-29 2000-06-29 다차원 셀룰라 오토마타를 이용한 난수 발생 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20020004022A true KR20020004022A (ko) 2002-01-16

Family

ID=19675014

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000036698A KR20020004022A (ko) 2000-06-29 2000-06-29 다차원 셀룰라 오토마타를 이용한 난수 발생 방법 및 장치

Country Status (1)

Country Link
KR (1) KR20020004022A (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100450766B1 (ko) * 2002-10-11 2004-10-01 한국전자통신연구원 셀룰라 오토마타를 이용한 암호 및 복호 방법과 그 장치
CN104181091A (zh) * 2014-08-18 2014-12-03 浙江大学 一种混凝土氯离子扩散与渗透作用的模拟方法
CN105243186A (zh) * 2015-09-11 2016-01-13 广西大学 基于元胞自动机的扩散模拟方法
KR102197744B1 (ko) * 2020-02-04 2021-01-04 금오공과대학교 산학협력단 무작위 천이 규칙을 적용한 셀룰러 오토마타 기반 참 난수 생성 장치

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5365585A (en) * 1993-08-30 1994-11-15 Motorola, Inc. Method and apparatus for encryption having a feedback register with selectable taps
WO1995005043A1 (en) * 1993-08-04 1995-02-16 Scientific-Atlanta, Inc. Method and apparatus for uniquely encrypting a plurality of services at a transmission site
US5889868A (en) * 1996-07-02 1999-03-30 The Dice Company Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data
KR19990062338A (ko) * 1997-12-23 1999-07-26 김재겸 셀룰라 오토마타를 이용한 난수 열 발생 시스템과 이를 이용한 데이터 암호화 및 복호화 방법
KR19990069481A (ko) * 1998-02-03 1999-09-06 김재겸 셀룰라 오토마타를 이용한 암호화 및 복호화 방법과 해슁의 방법과 난수 열 발생 시스템

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995005043A1 (en) * 1993-08-04 1995-02-16 Scientific-Atlanta, Inc. Method and apparatus for uniquely encrypting a plurality of services at a transmission site
US5365585A (en) * 1993-08-30 1994-11-15 Motorola, Inc. Method and apparatus for encryption having a feedback register with selectable taps
US5889868A (en) * 1996-07-02 1999-03-30 The Dice Company Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data
KR19990062338A (ko) * 1997-12-23 1999-07-26 김재겸 셀룰라 오토마타를 이용한 난수 열 발생 시스템과 이를 이용한 데이터 암호화 및 복호화 방법
KR19990069481A (ko) * 1998-02-03 1999-09-06 김재겸 셀룰라 오토마타를 이용한 암호화 및 복호화 방법과 해슁의 방법과 난수 열 발생 시스템

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100450766B1 (ko) * 2002-10-11 2004-10-01 한국전자통신연구원 셀룰라 오토마타를 이용한 암호 및 복호 방법과 그 장치
CN104181091A (zh) * 2014-08-18 2014-12-03 浙江大学 一种混凝土氯离子扩散与渗透作用的模拟方法
CN105243186A (zh) * 2015-09-11 2016-01-13 广西大学 基于元胞自动机的扩散模拟方法
KR102197744B1 (ko) * 2020-02-04 2021-01-04 금오공과대학교 산학협력단 무작위 천이 규칙을 적용한 셀룰러 오토마타 기반 참 난수 생성 장치

Similar Documents

Publication Publication Date Title
Bhattacharjee et al. A search for good pseudo-random number generators: Survey and empirical studies
Steinberg et al. A construction method for orthogonal Latin hypercube designs
US5838795A (en) Method and apparatus for statistical diffusion in iterated block substitution
CN108366181A (zh) 一种基于超混沌系统和多级置乱的图像加密方法
Ronald Robust encodings in genetic algorithms: A survey of encoding issues
Kontopoulos et al. A space efficient scheme for persistent graph representation
KR102409615B1 (ko) 연상 메모리에서의 최소값-최대값 계산 방법
Benjamin et al. A possible nanometer-scale computing device based on an adding cellular automaton
US20020021801A1 (en) Computing apparatus using an SPN structure in an F function and a computation method thereof
KR20230138519A (ko) 병렬 조합 설계를 위한 시스템 및 방법
KR20020004022A (ko) 다차원 셀룰라 오토마타를 이용한 난수 발생 방법 및 장치
US8130956B2 (en) Efficient and low power encrypting and decrypting of data
Sun et al. SoK: modeling for large s-boxes oriented to differential probabilities and linear correlations
KR20070106629A (ko) 의사랜덤 데이터 시퀀스 생성을 위한 방법, 시스템 및 장치
CN116865950A (zh) 一种检测试剂盒质检数据安全存储系统
CN116484442A (zh) 基于数据加密的智能售电数据存储方法
US20090022310A1 (en) Cryptographic device and method for generating pseudo-random numbers
CN110647665B (zh) 一种超并行比对的方法与系统
Salman Analysis of elementary cellular automata boundary conditions
CN109951282B (zh) 一种基于分段cubic混沌映射的伪随机序列产生方法
Hyyrö et al. Increased bit-parallelism for approximate string matching
Benkiniouar et al. Cellular automata for cryptography
Poornima et al. A survey on cellular automata with the application in pseudo random number generation
Geneson et al. Ramsey numbers of ordered graphs under graph operations
KR19990062338A (ko) 셀룰라 오토마타를 이용한 난수 열 발생 시스템과 이를 이용한 데이터 암호화 및 복호화 방법

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E701 Decision to grant or registration of patent right
NORF Unpaid initial registration fee