KR101389483B1 - 의사난수 스트링을 생성하기 위한 방법 및 장치 - Google Patents

의사난수 스트링을 생성하기 위한 방법 및 장치 Download PDF

Info

Publication number
KR101389483B1
KR101389483B1 KR1020087027363A KR20087027363A KR101389483B1 KR 101389483 B1 KR101389483 B1 KR 101389483B1 KR 1020087027363 A KR1020087027363 A KR 1020087027363A KR 20087027363 A KR20087027363 A KR 20087027363A KR 101389483 B1 KR101389483 B1 KR 101389483B1
Authority
KR
South Korea
Prior art keywords
polynomials
generator
pseudorandom
variables
equations
Prior art date
Application number
KR1020087027363A
Other languages
English (en)
Other versions
KR20090031505A (ko
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 오렌지
Publication of KR20090031505A publication Critical patent/KR20090031505A/ko
Application granted granted Critical
Publication of KR101389483B1 publication Critical patent/KR101389483B1/ko

Links

Images

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
    • 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
    • G06F7/584Pseudo-random number generators using finite field arithmetic, e.g. using a linear feedback shift register
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/58Indexing scheme relating to groups G06F7/58 - G06F7/588
    • G06F2207/582Parallel finite field implementation, i.e. at least partially parallel implementation of finite field arithmetic, generating several new bits or trits per step, e.g. using a GF multiplier

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Complex Calculations (AREA)
  • Detection And Correction Of Errors (AREA)
  • Storage Device Security (AREA)
  • Automatic Analysis And Handling Materials Therefor (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

의사난수 스트링을 생성하기 위한 방법 및 장치
본 발명은 암호화 절차에서 사용되도록 의도되는 기수(cardinal) q≥2의 유한체(K)에 속하는 항들의 의사난수 스트링을 생성하기 위한 방법에 관한 것으로, 상기 방법은 상기 유한체(K)에 속하는 n 변수들을 갖는 m 다항식들의 연립방정식(
Figure 112008077246019-pct00065
)의 반복적 계산을 포함한다. 본 발명에 따르면, 상기 m 다항식들의 계수들이 매 반복마다 재생된다. 본 발명은 또한 상기 방법을 구현하도록 의도되는 의사난수 스트링 생성기에 관한 것이다.

Description

의사난수 스트링을 생성하기 위한 방법 및 장치 {METHOD AND DEVICE FOR GENERATING A PSEUDORANDOM STRING}
본 발명은 주어진 알파벳에 속하는 심볼들의 의사난수 스트링들을 생성하는 것에 관한 것이다. 이러한 스트링들은 특히 일부 암호화 절차들에서 사용된다.
의사난수 스트링은, 비록 결정론적으로 생성되더라도, 각각의 심볼이 알파벳으로부터 완전히 무작위로 선택되는 심볼들의 스트링으로부터 적어도 합리적인 시간 내에서 구분하기가 불가능한 것이다(합리적인 시간의 의미는 목표 애플리케이션 및 이용 가능한 컴퓨테이션 파워에 명백하게 관련된다). 실제로, 의사난수 스트링은 비밀 파라미터(콘텍스트에 따라, 시드(seed) 또는 키라고 불림), 그리고 적절한 경우 비밀적일 수도 있고 아닐 수도 있는, 초기화 벡터로 불리는 추가 파라미터를 이용하여 적절한 알고리즘을 초기화함으로써 일반적으로 생성된다.
상기에서 언급되는 알파벳은 이진 세트 {0,1}일 수 있으며, 0 내지 9의 디짓(digit)들의 세트 또는 알파뉴머릭(alphanumeric) 세트는 이러한 디짓들과 대문자 및 소문자(uppercase and lowercase letters)를 포함한다. 본 발명의 콘텍스트에서는, 알파벳의 심볼들이 기수(cardinal) q≥2의 유한체(K) 또는 갈루아체(Galois body) GF(q)에 속한다.
의사난수 스트링들의 중요 애플리케이션은 스트림 암호화이다. 이 기법은 알파벳 내 값들을 갖는 클리어 내 데이터의 스트링 {xi}을 동일한 알파벳 내 값들의 다른 스트링 {zi}을 통해 (암호론적 관점으로) 암호화하는데 이용되는데, 여기서 {zi}은 역시 상기 알파벳 내 값들을 갖는 암호화된 스트링 {yi}을 생성하기 위해 의사난수 생성기에 의해 생성되는 스트링이다. 다시 말해, 상기 알파벳 내에서 내부 합성 yi = xi*zi의 법칙이 선택된다; 예컨대, 상기 내부 법칙은 알파벳이 이진 알파벳 {0,1}일 경우 배타적 OR 연산자일 수 있다. 스트림 암호화는 또한 플라이(fly) 암호화에 대해서도 공지되어 있는데, 그 이유는 데이터의 블록들에 대해 동작하는 암호화 방법들과 대조적으로 데이터 워드들이 하나씩 암호화되기 때문이다. 블록 암호화와 비교하여, 스트림 암호화는 전송 지연 및 데이터 저장 문제점들을 감소시키는 장점을 갖지만, 명백하게 적어도 클리어 내 데이터의 데이트율만큼 높은 의사난수 심볼 데이터율을 요구한다; 그러므로, 스트림 암호화에 대한 애플리케이션은 상대적으로 고속 의사난수 스트링 생성기들에 대하여 남겨진다.
스트림 암호화는 TLS(전송 계층 보안) 인터넷 연동 보호 프로토콜("The TLS Protocol", T.Dierks and C.Allen, version 1.0, RFC 2246, January 1999 참조)에서 사용되는데, 그 가운데 가장 널리 사용되는 스트림 암호화 알고리즘 중 하나는 RC4 알고리즘("Linear Statistical Weakness of Alleged RC4 Keystream Generator", J.O.Golic, proceedings of "Advances in Cryptology - EUROCRYPT '97", pages 226 to 238, editor W.Fumy, Lecture Notes in Computer Science vol.1233, Springer-Verlag 참조)이며, 상기 스트림 암호화는 무선 채널 트래픽에서 사용되고, GSM 시스템에서는 시그널링 암호화가 사용되는데, 가장 널리 사용되는 알고리즘 중 하나는 A5/1 알고리즘("Real Time Cryptanalysis of A5/1 on a PC", A.Biryukov, A.Shamir, and D.Wagner, Proceedings of FSE 2000, pages 1 to 18, editor B.Schneier, Springer-Verlag 2000)이다.
의사난수 스트링들의 다른 중요한 애플리케이션들도 존재하는데, 예컨대 확률 계산들과 공용 키 인증 암호 프로토콜들이다.
현재의 많은 스트림 알고리즘, 예컨대 상기에서 언급된 A5/1 알고리즘은 어쩌면 비-선형 함수들을 이용하여 결합된, 선형 피드백 레지스터들에 의해 생성되는 순환적 선형 스트링들을 이용한다("Le chiffrement a la volee" ["Onthe fly encryption"], A.Canteaut, special issue of the review "Pour la Science", pages 86 and 87, Paris, July-October 2002 참조). 이러한 알고리즘은 고속 의사난수 스트링 생성기들에서 구현될 수 있지만, 보안성에 있어서 경고되는데, 왜냐하면 완전히 무작위적인 스트링들로부터 생성되는 의사난수 스트링들을 구분하는 실제 문제에서 불가능성에 관련하여, 커다란 신뢰성이 제공될 수 있는 것에 관한 강력한 보안성 논거들이 부족하기 때문이다.
프랑스 특허 출원 05 06041은 암호 절차에서 사용되도록 의도되는 q≥2의 유한체(K)에 속하는 용어들의 의사난수 스트링들에 대한 생성기를 개시한다. 상기 생성기는 초기화로부터 K의 엘리먼트들의 n-튜플
Figure 112008077246019-pct00001
, K의 엘리먼 트들의 n-튜플
Figure 112008077246019-pct00002
(i=1,2,...)을 반복적으로 계산하기 위한 수단을 포함하는데, 각각의 n-튜플
Figure 112008077246019-pct00003
은 미리 결정된 방식으로 K의 엘리먼트들의 m-튜플
Figure 112008077246019-pct00004
로부터 유도되고, 상기 의사난수 스트링의 용어는 미리 결정된 방식으로 n-튜플들
Figure 112008077246019-pct00005
및/또는 m-튜플들
Figure 112008077246019-pct00006
로부터 추출된다. 상기 생성기는, i의 하나 이상의 값들에 대하여, n-튜플
Figure 112008077246019-pct00007
의 성분들에 K 내 계수들을 갖는 미리 결정된 이차식(quadratic form)을 적용시킴으로써, m-튜플
Figure 112008077246019-pct00008
의 하나 이상의 성분들
Figure 112008077246019-pct00009
(k=1,2,...,m)을 획득하기 위한 수단을 더 포함하는 것이 주목할만하다.
상기 의사난수 생성기는, 유한체 상에서 이차방정식들의 연립방정식을 해결하는 문제점에 관하여 주어진 난점에서, 높은 수준의 보안성을 제공하는 알고리즘을 이용한다. 복잡성 이론의 공통적으로 받아들여지는 추측 P≠NP에 대한 검증에 따라, 유한체(K)가 고려한 것은 무엇이든지, 주어진 후보가 다항식 시간으로 수행될 수 있는 연립방정식에 관한 솔루션인지 아닌지의 여부를 검증하더라도, 상기 문제점을 해결하는 것은 다항식 시간 그 이상을 요구하는 것을 알 수 있다(이러한 종류의 문제점은 NP-하드 문제점으로 불린다). 또한, 상대적으로 적당한 m 및 n의 사이즈에 대해서도(예컨대, K=GF(2)이고 m 및 n은 100 이상), m 및 n의 값들이 충분히 가까울 경우, 상기 문제점의 난수 인스턴스들을 해결하는 효과있는 방법은 현재 공지되어 있지 않다.
이처럼, 프랑스 특허 출원 05 06041에 따른 의사난수 생성기가 충분히 효과적일 수 있는지의 여부, 즉 구상될 산업 규모에 있어서 생성된 스트링의 각각의 심 볼에 대하여 이러한 종류의 생성기를 사용하기에 충분히 작은(적어도 적절한 파라미터 값들에 대하여, 그러나 그럼에도 불구하고 여전히 어려운 것으로 간주되는 직전에 언급된 문제점에 대해서는 충분히 높은) 컴퓨테이션 자원들(시간, 메모리 등)을 요구할 수 있는지의 여부를 결정하는데 있어서 의문점이 일어난다.
요구되는 계산 자원들에 관한 상기 의문점은 특히 이러한 타입의 의사난수 생성기를 배선 논리칩들(hardwired logic chips)과 같은 저렴한 전자 시스템들에 통합시키는 가능성에 관한 것이다. 배선 전자 논리 회로들은 트랜지스터들로부터 생성되는 논리 게이트들로 이루어진다(모든 논리 함수들 중에서 두 개의 타입들의 논리 게이트들, 즉 NAND 게이트들 및 NOR 게이트들을 이용하는 프로그램을 생각하는 것도 가능하다). 그러므로, 논리 회로를 구현하는데 요구되는 논리 게이트들의 개수는 특히 회로의 사이즈, 회로의 전류 소모량, 회로의 비용을 반영한다.
그러므로, 보다 상세하게, 프랑스 특허 출원 05 06041의 의사난수 생성기에서 수행되는 계산들을 고려해 보자.
생성기는 반복 i마다, 적어도 하나의 변수
Figure 112008077246019-pct00010
(k=1,2,...,m)를 n 변수들
Figure 112008077246019-pct00011
(j=1,2,...,n)과 연관시키는 하나 이상의 이차식(들)을 반복적으로 호출한다. 그러므로, 상기 연관은 입력 값들의 n-튜플
Figure 112008077246019-pct00012
과 출력 값들의 m-튜플
Figure 112008077246019-pct00013
을 연관시키는 특정 함수 "G"로 이루어진다. 그러므로, 상기 함수 G는 유한체(K) 상에서 m 다변수 이차 다항식들의 연립방정식(G)(즉, x1 내지 xn의 n개의 변수들을 갖는, n>1)에 대응한다. 이러한 다항식들은 그러므로 하기의 형태 를 가지며, 여기서 계수들은 K에 속하고, 양들 yk도 K에 속한다:
Figure 112008077246019-pct00014
이러한 종류의 생성기를 구현하기 위한 종래 방식에서는, 이러한 계수들의 값들이 메모리에 저장될 것이고, 상기 m 다항식들의 값들은 매 반복마다 계산될 것이다. 그러므로, m.N에 동등한 모든 개수의 계수들을 저장할 필요가 있을 것이며, 이때 상기 N은 각각의 다항식의 항들의 개수이다. n개의 변수들을 갖는 이차다항식에 대하여, 상기 항 개수 N이
Figure 112008077246019-pct00015
에 동등함을 검정하는 것은 간단한 문제이다.
또한, 어려운 것으로 간주될, K 상에서 n이 알려지지 않은 m 이차방정식들의 연립방정식을 해결하기 위해, m 및 n의 값들이 충분히 크고 그들의 차수(order of magnitude)가 충분히 가까운 것이 바람직하다. 따라서, n의 높은 값들에 대해, 그리고 n의 값들과 동일한 차수의 m의 값들에 대해, 저장될 계수들의 개수는 n3의 오더(order)를 갖는다. 예컨대, n이 거의 100에 동등한 경우, 거의 백만 개의 계수들이 저장되어야 한다.
결과적으로, 프랑스 특허 출원 05 06041에 따른 의사난수 생성기의 종래 구현은 상기 생성기를 배선 논리칩에 통합시키는 구상을 가능하게 하기 위하여 너무 많은 전자 게이트들을 요구한다. 높은 차수(degree)의 다항식들이 계산 자원들의 적절한 증가를 댓가로 생성기가 더욱 안전하게 되도록 하는 장점을 가지더라도, 배선 논리칩 안으로, 다변수 다항식들 중 일부가 2보다 높은 전역 차수(global degree)를 갖는 다변수 다항식들의 연립방정식을 이용하는 의사난수 생성기를 삽입하는 구상이 더욱 실행 가능성이 떨어짐은 말할 필요도 없다.
그러므로, 본 발명은 암호화 절차에서 사용되도록 의도되는 기수 q≥2의 유한체(K)에 항들이 속하는 의사난수 스트링의 생성기에 관한 것으로, 상기 생성기는 유한체(K)에 속하는 n 변수들을 갖는 m 다항식들의 연립방정식(
Figure 112008077246019-pct00016
)을 반복적으로 계산하기 위한 수단을 포함한다. 상기 의사난수 스트링 생성기는 상기 m 다항식들의 계수들이 매 반복마다 재생되는 점에서 주목할만하다.
따라서, 본 발명은 적은 개수의 파라미터들에 기초하여 매 반복마다 다항식들의 계수들을 생성(예컨대 재생)하며, 그리하여 본 발명의 생성기가 동작하는데 요구되는 메모리 사이즈가 매우 적당해진다.
발명자들은, 나이브하게(naively) 예상될 수 있는 것과 대조적으로, 본 발명이 수반하는 추가 계산 부하가 전체 계산 시간에 대해 거의 영향을 끼치지 않도록 구현했다. 상대적으로 높은 차수의 다항식들에 대한 계산 시간이 상대적으로 짧기 때문에, 잘 알려진 바와 같이, 많은 다항식들이 있고 다항식들이 많은 변수들의 함수임에도, 본 발명은 고속(및 그에 따라 예컨대 스트림 암호화를 위해 사용될 수 있음)이면서도, 저렴한 계산 장치들에 적합한 의사난수 생성기를 제공하며, 이러한 장점들은 앞서 언급된 증가된 보안성에 추가적인 것이다.
높은 속도가 주요 요구사항일 경우, 연립방정식을 형성하는 상기 다항식들의 각각은 유용하게도 기껏해야 이차다항식이다.
특정한 특징들에 따르면, 의사난수 스트링 생성기는 선형 시프트 레지스터 형태의 계수 생성기 모듈을 포함한다.
대안적으로, 계수 생성기 모듈은 비선형 시프트 레지스터 또는 유한상태유한상태머신 형태를 취할 수 있다.
이러한 특징들을 통해, 많은 수의 계수들이 작은 전자 메모리를 이용하여 생성될 수 있다.
특정한 특징들에 따르면, 주어진 n-튜플의 변수들
Figure 112008077246019-pct00017
에 대해서, 다항식들의 전역 차수 전부가 D 이하인 연립방정식(
Figure 112008077246019-pct00018
)의 m 다항식들에 의해 취해지는 m-튜플의 변수들
Figure 112008077246019-pct00019
을 계산하기 위하여, 생성기는:
ㆍ차수 D의 n 변수들을 갖는 일반 다항식의 주어진 세트의 항들에 대하여 프로세싱 오더를 선택하기 위한 수단;
ㆍ상기 프로세싱된 항들에 대하여, 동일한 오더로 상기 변수들에 대한 단항식을 계산하고, 그런 다음에 후속하여 m 다항식들에 대하여, 상기 항의 계수를 생성하고 상기 계수를 상기 단항식과 곱하여 상기 항의 값을 획득하기 위한 수단을 포함한다.
이러한 특징들을 통해, 변수들에 대한 각각의 인자가 m번이 아니라 단 한 번 계산된다.
상관적인 방식으로, 본 발명은 암호화 절차에서 사용되도록 의도되는 기수(cardinal) q≥2의 유한체(K)에 속하는 항들의 의사난수 스트링을 생성하는 방법에 관한 것으로, 상기 방법은 유한체(K)에 속하는 n 변수들을 갖는 m 다항식들의 연립방정식(
Figure 112008077246019-pct00020
)을 반복적으로 계산한다. 상기 의사난수 스트링을 생성하는 방법은 m 다항식들의 계수들이 매 반복마다 재생된다는 점에서 주목할만하다.
특정한 특징들에 따르면, 상기 다항식들의 각각은 기껏해야 이차다항식이다.
특정한 특징들에 따르면, 주어진 n-튜플의 변수들
Figure 112008077246019-pct00021
에 대해서, 다항식들의 전역 차수 전부가 D 이하인 연립방정식(
Figure 112008077246019-pct00022
)의 m 다항식들에 의해 취해지는 m-튜플의 변수들
Figure 112008077246019-pct00023
을 계산하기 위하여, 상기 방법은:
ㆍ차수 D의 n 변수들을 갖는 일반 다항식의 주어진 세트의 항들에 대하여 프로세싱 오더를 선택하는 단계;
ㆍ상기 프로세싱된 항들에 대하여, 동일한 오더로 상기 변수들에 대한 단항식을 계산하고, 그런 다음에 후속하여 m 다항식들에 대하여, 상기 항의 계수를 생성하고 상기 계수를 상기 단항식과 곱하여 상기 항의 값을 획득하는 단계를 포함한다.
이러한 방법들의 장점들은 간략하게 전술된 상관된 의사난수 시퀀스 생성기들의 장점들과 본질적으로 동일하다.
본 발명은 또한:
ㆍ간략하게 전술된 의사난수 스트링 생성기들 중 어떤 것도 포함하는 전자 회로, 특히 배선 논리칩;
ㆍ간략하게 전술된 의사난수 스트링을 생성하는 방법들 중 어떠한 방법의 단계들도 실행하기 위한 컴퓨터 프로그램 코드 명령어들을 포함하는 제거 불가능 데이터 저장 수단;
ㆍ간략하게 전술된 의사난수 스트링을 생성하는 방법들 중 어떠한 방법의 단계들도 실행하기 위한 컴퓨터 프로그램 코드 명령어들을 포함하는 부분적으로 또는 완전히 제거 가능한 데이터 저장 수단; 및
ㆍ프로그램이 프로그램 가능 데이터 프로세싱 장치를 제어할 때, 명령어들이 상기 데이터 프로세싱 장치가 간략하게 전술된 의사난수 스트링을 생성하는 방법들 중 어떠한 것도 실행하도록 유발하기 위하여 상기 명령어들을 포함하는 상기 컴퓨터 프로그램에 관한 것이다.
상기 전자 회로, 상기 데이터 저장 수단 및 상기 컴퓨터 프로그램의 장점들은 상기 방법들의 장점들과 본질적으로 동일하다.
본 발명의 다른 측면들 및 장점들은 비제한적인 예시로서 제공되는 특정한 실시예들에 대한 하기의 상세한 설명을 읽음에 따라 명백하게 될 것이다. 상세한 설명은 동반되는 도면들을 참조한다.
도 1은 의사난수 스트링을 생성하기 위한 본 발명의 일실시예의 방법을 나타내는 블록도, 및
도 2는 본 발명의 일실시예의 의사난수 생성기를 나타내는 블록도.
상기 설명한 바와 같이, 본 발명의 의사난수 스트링 생성기의 보안성(즉, " 해커"가 제1 i 항들로부터의 출력에서 스트링의 (i+1)번째 항을 계산하는 것에 관한 불가능성)은 유한체(K) 상에서 n이 알려지지 않은 m 방정식들을 해결하는 문제점의 난점에 기초한다.
일실시예에서, 이러한 방정식들은 프랑스 특허 출원 05 06041에서와 같이 전부 이차방정식들일 수 있다(설명의 단순성을 위해, "이차방정식" 및 "이차다항식"의 표현들은 일부 방정식들, 각각 일부 다항식들이 선형일 때에도 사용된다 - 이는 연립방정식의 적어도 한 방정식, 각각 적어도 한 다항식이 실제로 이차다항식인 것으로 이해된다). 상기 문제점은 하기와 같이 정확하게 공식화될 수 있다:
ㆍ유한체(K)에 속하는, n이 알려지지 않은 x1 내지 xn의 m 이차방정식의 연립방정식(
Figure 112008077246019-pct00024
)이 제공될 때, 공식은
Figure 112008077246019-pct00025
이때, 계수들
Figure 112008077246019-pct00026
,
Figure 112008077246019-pct00027
Figure 112008077246019-pct00028
은 K에 속하고, 양들 yk도 K에 속한다;
ㆍ솔루션
Figure 112008077246019-pct00029
을 발견한다.
연립방정식(
Figure 112008077246019-pct00030
)에 의해 기술된 "
Figure 112008077246019-pct00031
"은 함수이며, 상기 함수는 입력 값들의 n-튜플
Figure 112008077246019-pct00032
및 출력 값들의 m-튜플
Figure 112008077246019-pct00033
을 연관시킨다.
의사난수 생성기는 적어도 하나의 변수
Figure 112008077246019-pct00034
(k=1,2,...,m) 및 n 변수들
Figure 112008077246019-pct00035
(j=1,2,...,n)을 연관시키는 하나 이상의 이차식(들)을 반복적으로 호출한다. 전술된 바와 같이, 파라미터들 q, m 및 n은 바람직하게:
ㆍm 및 n의 값들이 충분히 높고 그들의 차수가 충분히 근접(예컨대 qn 및 qm 모두가 280 및 2400 사이)한 것을 요구하는, K 상에서 n이 알려지지 않은 m 이차방정식들의 연립방정식을 해결하는 것이 어려운 것으로 고려될 수 있도록; 및
ㆍq,m 및 n의 값들이 충분이 작을 것(예컨대, q가 100 미만이고, m 및 n이 수백 미만)을 요구하는 계산들이 효율적으로 수행될 수 있도록, 선택된다.
또한, 본 발명에 따르면, 상기 이차식들의 계수들은 매 반복마다 재생(예컨대 재계산)된다.
0 계수들의 개수가 클수록 계산들이 더 빨라지는 것은 명백하다; 그러나, (하기에서
Figure 112008077246019-pct00036
으로 지시되는) 이차항들의 계수의 충분한 개수가 실제로 불가능한 방정식들의 연립방정식을 해결하기 위해 0이 되는 것에 대한 주의가 이루어져야 한다; 실행 속도를 높이기 위해 일부 방정식들(그러나, 명백하게 방정식들 모두는 아님)이 변수들 전부에 대해 선형일 경우, (이론적으로) 상기 연립방정식을 더 용이하게 해결하는 사실을 보상하기 위하여, 계수들을 생성하는 방법이 비밀로 유지되는 것이 권고된다.
의사난수 스트링을 생성하기 위한 본 발명의 방법의 상관적인 실시예가 도 1에서 도시된다. 이 실시예에서, i의 각각의 값에 대하여, m-튜플
Figure 112008077246019-pct00037
의 모든 성분들이 K 내의 계수들을 갖는 이차식들을 n-튜플
Figure 112008077246019-pct00038
의 성분들에 적용시킴으로써 계산된다.
무엇보다도, 초기화 단계 동안에, n-튜플 X(0)이 구성된다. 생성기의 의도된 사용에 따라, X(0)은 공용 시드, 비밀 키, 초기화 벡터 또는 이러한 요소들의 조합에 따라 좌우될 수 있다; 초기화 벡터는 추가 파라미터이고, 일반적으로는 비밀이 아니며, 다수의 상이한 의사난수 스트링들을 생성하기 위해 동일한 비밀 키가 한번 이상 사용되는 것을 가능하게 한다.
그런 다음에 반복적 단계들이, 초기 상태 X(0)으로부터 및 하기에서 기술되는 방법에 의해, 의사난수 스트링 Z(i)(i=1,2,...)을 생성하도록 실행되며, 상기 의사난수 스트링은 K의 t-튜플들의 요소들로 구성되는데, t는 1 내지 m 사이의 상수이다. 반복들의 총 횟수는 예컨대 1 내지 250 사이에 있을 수 있다.
t번째 반복마다, K의 n-튜플의 요소들로 구성된 현재 상태
Figure 112013101535272-pct00039
이 하기의 하위단계들을 실행하기 위한 입력 값으로서 취해진다:
1) K의 m-튜플 Y(i)의 값들이 상기 정의된 함수
Figure 112008077246019-pct00040
, 즉
Figure 112008077246019-pct00041
를 이용하여 X(i-1)로부터 차감된다;
2) 출력 값 Z(i)가 쌍
Figure 112008077246019-pct00042
에 선택된 출력 함수 S, 즉
Figure 112008077246019-pct00043
을 적용시킴으로써 획득된다; 및
3) K의 n-튜플의 값들로 구성된 새로운 현재 상태 X(i)가 쌍
Figure 112008077246019-pct00044
에 선택된 피드백 함수 F, 즉
Figure 112008077246019-pct00045
를 적용시킴으로써 획득된다.
상기 방법은 (두 개의 연속적인 반복들을 커버링하는) 도 1에서 순차적 방식으로 도시되나, 루프 방식으로도 동등하게 표현될 수 있다. 여기에서 지적해야할 중요한 점ㆍ은, 방법의 연속적인 단계들이 하나의 전자 회로에 의해 구현될 수 있다는 점이다.
피드백 함수 F 및 출력 함수 S에 대한 가능한 선택들의 예시들로서 전술된 프랑스 특허 출원 05 06041을 참고할 수 있다. 또한, 적어도 스트링 Z(i)에 기초하여, 출력에서 심볼들(예컨대 이진 심볼들)의 다양한 의사난수 스트링들을 구성하기 위한 수단의 예시로서 상기 출원을 참고할 수 있다.
도 2는 본 발명의 의사난수 스트링 생성기의 일실시예를 나타낸 도면이다. 상기 생성기는 하기의 모듈들을 포함한다:
ㆍ계산될 다항식들의 연립방정식의 입력 변수들의 값들을 저장하기 위한 메모리(100);
ㆍ계산의 끝에서, 계산될 다항식들 중 하나 이상에 의해 취해지는 변수를 저장하고, 중간 값 저장 유닛으로서 동시에 제공되도록 의도되는 메모리(500);
ㆍ계산될 다항식들의 연립방정식에 동반되는 다양한 단항식들의 값들을 (미리 결정된 오더로) 생성하기 위한 모듈(200) - 상기 단항식 생성기 모듈(200)은 선택적으로 자신의 고유 메모리를 가짐;
ㆍ계산될 다항식들의 연립방정식을 정의하는 계수들의 시퀀스를 생성하기 위 한 모듈(300) - 상기 모듈(300)은 자신의 고유 메모리를 가짐; 및
ㆍ다항식들의 값들을 저장하고 있는 상기 메모리(500)를 갱신하기 위하여 단항식들의 값들과 상기 계수들을 곱하기 위한 합성 모듈(400).
상기 계수 생성기 모듈(300)의 특히 유용한 일실시예가 하기에서 기술된다.
본 발명의 의사난수 생성기의 정확한 동작을 위해, 매 반복에 동일한 함수
Figure 112008077246019-pct00046
를 적용할 필요가 없다는 것을 알아둬야 한다; 즉, m 다항식들의 각각의 계수 값이 반복마다 가변하는 것을 방지하는 것이, 이러한 것이 편리한 것으로 증명되는 한, 아무것도 없다. 본 실시예는 이것을 능숙하게 사용한다.
계수 생성기 모듈(300)의 제1 실시예는 선형 피드백 시프트 레지스터(LFSR) 형태를 취한다.
LFSR은, 선행 클록 펄스를 통해 다양한 메모리들에 저장되는 값들의 주어진 선형 합성에 의해 교체되는 메모리 al에 저장되는 값을 제외하고서, 각각의 메모리 ai 내에 저장된 값을 메모리 ai+1에 저장된 값으로 교체함으로써, 각각이 클록 펄스마다 리프레쉬되는 l 메모리들 a1,a2,...al의 세트로 구성된다.
선형 시프트 레지스터들로부터의 출력 비트들은 전통적으로 의사난수 비트 스트링들로서 사용된다.
본 발명에 따르면, LFSR 출력 데이터는 출력 값들 Z(i)를 바로 생성하기 위해서가 아니라 m 다항식들의 계수들을 생성하기 위해서 유용하게 사용된다. LFSR은 메모리 내 r 비트들만으로부터 및 r 오더의 논리 게이트들만을 포함하는 전자 회로 를 사용하여 길이 (2r-1)의 의사난수 스트링을 생성한다.
예컨대, 이진체 GF(2) 상에서 n=80의 변수들을 갖는 m=80의 다변수 다항식들을 포함하는 연립방정식(
Figure 112008077246019-pct00047
)에서, 상기 연립방정식의 mㆍN
Figure 112008077246019-pct00048
259200 계수들은 나이브(naive) 구현의 259200 비트들이 아니라 r=18 비트들을 갖는 선형 시프트 레지스터로부터 생성될 수 있다.
제2 실시예에서, 계수 생성기 모듈(300)은 비선형 피드백 시프트 레지스터(NLFSR) 형태를 취한다. 선형 피드백 시프트 레지스터와 비교하여, 비선형 피드백 시프트 레지스터는 전자 게이트들의 개수에 있어서 아주 약간 더 비싸지만, 생성기의 출력에서 생성되는 항들의 스트링의 무작위 성향을 크게 향상시킨다.
제3 실시예에서, 계수 생성기 모듈(300)은 하기를 포함하는 유한상태유한상태머신 형태를 취한다:
ㆍ매 클록 펄스마다 갱신되는 메모리;
ㆍ상기 메모리를 갱신하기 위한 회로; 및
ㆍ상기 메모리에 저장된 데이터를 확장하기 위한 확장 회로.
"확장 회로"란 표현은 메모리 내 g 비트들로부터 f 비트들을 생성하도록 적응된 회로를 일컬으며, f>g이다. 예컨대, f가 h의 배수일 경우, f 비트들의 세트는 하위세트들로 분할될 수 있고, 그 이후에 h 비트들의 상기 하위세트들의 각각은 믹서들의 스트링으로 통과되며, 비트들의 결과적 스트링들이 최종적으로 연결된다.
유한상태머신에서, 모든 메모리 값들(확장 전)은 매 클록 펄스마다 리프레쉬되는 반면에, 시프트 레지스터에서는, 메모리 내 한 개의 값만이 매 클록 펄스마다 리프레쉬된다. 그러므로, 유한상태머신은 시프트 레지스터보다 더 빠른 계산들을 수행하지만, 전자 게이트들의 개수에 있어서 비용에서의 일정한 증가가 있다.
그러나, 상기 실시예들은 매 반복마다 신속하게 그리고 소수의 전자 게이트들을 사용하여 연립방정식(
Figure 112008077246019-pct00049
)의 계수들을 생성한다.
단항식 값 생성기 모듈(200)의 상이한 실시예들이 또한 구상될 수 있다. 단순한 기술을 위해, (i 및 j가 1 내지 n에서 가변할 때, xixj 타입의) 이차항들의 계산만이 여기에서는 고려된다.
"나이브" 구현은 교대로 변수들의 모든 쌍들을 고려한다; 그러므로 계산은 n2 클록 펄스들을 요구한다.
그러나, 단항식들은 대신에 하기와 같이 계산될 수 있다: 변수들
Figure 112008077246019-pct00050
의 값들의 현재 스트링의 두 개의 복사본들이 메모리에 저장된다.
"페이싱(facing)" 항들을 계산하는 것은 먼저 n 제곱들 xi 2를 생성한다. 한자리씩 원순열이 그런 다음에 상기 변수들
Figure 112008077246019-pct00051
의 값들의 스트링들 중 하나에 적용된다; "페이싱" 항들을 계산하는 것은 다시 n 프로덕트들 x1x2, x2x3,..., xnxl을 생성한다. n 곱하기 n의 단항식들을 계산하는 상기 과정은 n2 프로덕트들이 획득되기 전까지 지속된다. 결국, 곱셈이 교환적이면서 단지 n/2 클록 펄스들인 것이 요구되지만, 이 장치는 "나이브" 구현의 두 배만큼 큰 메모리를 요구한다.
마지막으로, 다음 차례 항으로 넘어가기에 앞서, "병렬적인" 모든 다항식들에 대하여 동일한 타입의 각각의 항을 계산하기 위하여, 모듈(300) 내 계수들의 생성 및 모듈(200) 내 단항식들의 생성을 결합시킴으로써, 속도가 증가될 수 있고 메모리 용량이 절약될 수 있다. 예컨대, 이차다항식들의 연립방정식에서, (각각의 타입 xixj, xj, 또는 1의) 대응하는 변수들에 대한 대응하는 단항식이 계산되고, 그 이후에, 잇달아 m 다항식들에 대하여, (각각 타입
Figure 112008077246019-pct00052
,
Figure 112008077246019-pct00053
또는
Figure 112008077246019-pct00054
의) 상기 항의 계수가 생성되고 그런 다음에 상기 항의 값을 얻기 위해 상기 단항식과 곱해진다.

Claims (14)

  1. 암호화 절차에서 사용되기 위한, 기수(cardinal) q≥2의 유한체(K)에 속하는 항들의 의사난수 스트링 생성기로서,
    상기 생성기는 유한체(K)에 속하는 n 개의 변수들을 갖는 m 개의 다항식들의 연립방정식(
    Figure 112013101535272-pct00055
    )을 반복적으로 계산하기 위한 수단을 포함하고,
    상기 m 개의 다항식들의 계수들이 매 반복마다 재생성되는,
    의사난수 스트링 생성기.
  2. 제 1 항에 있어서,
    상기 연립방정식(
    Figure 112013101535272-pct00056
    )을 형성하는 상기 다항식들의 각각은 기껏해야 이차 다항식인,
    의사난수 스트링 생성기.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 생성기는 선형 시프트 레지스터 형태의 계수 생성기 모듈(300)을 포함하는,
    의사난수 스트링 생성기.
  4. 제 1 항 또는 제 2 항에 있어서,
    상기 생성기는 비선형 시프트 레지스터 형태의 계수 생성기 모듈(300)을 포함하는,
    의사난수 스트링 생성기.
  5. 제 1 항 또는 제 2 항에 있어서,
    상기 생성기는 유한 상태 머신 형태의 계수 생성기 모듈(300)을 포함하는,
    의사난수 스트링 생성기.
  6. 제 1 항 또는 제 2 항에 있어서,
    주어진 n-튜플(tuple)의 변수들
    Figure 112013101535272-pct00057
    에 대해서, 연립방정식(
    Figure 112013101535272-pct00058
    )의 m 개의 다항식들에 의해 취해지는 m-튜플의 값들
    Figure 112013101535272-pct00059
    을 계산하기 위하여 ― 상기 연립방정식(
    Figure 112013101535272-pct00068
    )에서 다항식들은 모두 전역 차수 D 이하임 ―, 상기 생성기는:
    ㆍ차수 D의 n 개의 변수들을 갖는 일반 다항식의 주어진 세트의 항들에 대하여 프로세싱 오더를 선택하기 위한 수단; 및
    ㆍ프로세싱된 항들에 대하여, 동일한 오더로 상기 변수들에 대한 단항식을 계산하고, 그런 다음에 후속하여 m 개의 다항식들에 대하여, 항의 계수를 생성하고, 상기 계수를 상기 단항식과 곱하여 상기 항의 값을 획득하기 위한 수단을 포함하는,
    의사난수 스트링 생성기.
  7. 전자 회로로서,
    제 1 항 또는 제 2 항에 따른 의사난수 스트링 생성기를 포함하는,
    전자 회로.
  8. 제 7 항에 있어서,
    상기 전자 회로는 고정 배선 논리 칩(hard-wired logic chip)으로 이루어지는,
    전자 회로.
  9. 암호화 절차에서 사용되기 위한, 기수(cardinal) q≥2의 유한체(K)에 속하는 항들의 의사난수 스트링을 생성하는 방법으로서,
    상기 방법은 상기 유한체(K)에 속하는 n 개의 변수들을 갖는 m 개의 다항식들의 연립방정식(
    Figure 112013101535272-pct00060
    )을 반복적으로 계산하는 단계를 포함하고,
    상기 m 개의 다항식들의 계수들이 매 반복마다 재생성되는,
    의사난수 스트링 생성 방법.
  10. 제 9 항에 있어서,
    상기 연립방정식(
    Figure 112013101535272-pct00061
    )을 형성하는 상기 다항식들의 각각은 기껏해야 이차 다항식인,
    의사난수 스트링 생성 방법.
  11. 제 9 항 또는 제 10 항에 있어서,
    주어진 n-튜플의 변수들
    Figure 112013101535272-pct00062
    에 대해서, 연립방정식(
    Figure 112013101535272-pct00063
    )의 m 개의 다항식들에 의해 취해지는 m-튜플의 값들
    Figure 112013101535272-pct00064
    을 계산하기 위하여 ― 상기 연립방정식(
    Figure 112013101535272-pct00069
    )에서 다항식들은 모두 전역 차수 D 이하임 ―, 상기 방법은:
    ㆍ차수 D의 n 개의 변수들을 갖는 일반 다항식의 주어진 세트의 항들에 대하여 프로세싱 오더를 선택하는 단계; 및
    ㆍ프로세싱된 항들에 대하여, 동일한 오더로 상기 변수들에 대한 단항식을 계산하고, 그런 다음에 후속하여 m 개의 다항식들에 대하여, 항의 계수를 생성하고, 상기 계수를 상기 단항식과 곱하여 상기 항의 값을 획득하는 단계를 포함하는,
    의사난수 스트링 생성 방법.
  12. 제 9 항 또는 제 10 항에 따른 방법의 단계들을 실행하기 위한 컴퓨터 프로그램 코드 명령어들을 포함하는 컴퓨터 판독가능 매체.
  13. 제 11 항에 따른 방법의 단계들을 실행하기 위한 컴퓨터 프로그램 코드 명령어들을 포함하는 컴퓨터 판독가능 매체.
  14. 삭제
KR1020087027363A 2006-04-10 2007-04-02 의사난수 스트링을 생성하기 위한 방법 및 장치 KR101389483B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0651292A FR2899702A1 (fr) 2006-04-10 2006-04-10 Procede et dispositif pour engendrer une suite pseudo-aleatoire
FR0651292 2006-04-10
PCT/FR2007/051052 WO2007116171A2 (fr) 2006-04-10 2007-04-02 Procede et dispositif pour engendrer une suite pseudo-aleatoire

Publications (2)

Publication Number Publication Date
KR20090031505A KR20090031505A (ko) 2009-03-26
KR101389483B1 true KR101389483B1 (ko) 2014-04-28

Family

ID=37101612

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087027363A KR101389483B1 (ko) 2006-04-10 2007-04-02 의사난수 스트링을 생성하기 위한 방법 및 장치

Country Status (9)

Country Link
US (1) US8416951B2 (ko)
EP (1) EP2005290B1 (ko)
JP (1) JP5312318B2 (ko)
KR (1) KR101389483B1 (ko)
CN (1) CN101467127B (ko)
AT (1) ATE493700T1 (ko)
DE (1) DE602007011589D1 (ko)
FR (1) FR2899702A1 (ko)
WO (1) WO2007116171A2 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2918525A1 (fr) * 2007-07-06 2009-01-09 France Telecom Procede asymetrique de chiffrement ou de verification de signature.
WO2009122095A2 (fr) * 2008-03-21 2009-10-08 France Telecom Protection en boite-blanche d'algorithmes cryptographiques comprenant le calcul d'une forme quadratique
JP5736816B2 (ja) * 2010-05-31 2015-06-17 ソニー株式会社 認証装置、認証方法、プログラム、及び署名生成装置
JP5593850B2 (ja) * 2010-05-31 2014-09-24 ソニー株式会社 認証装置、認証方法、プログラム、及び署名生成装置
JP5790288B2 (ja) * 2011-08-12 2015-10-07 ソニー株式会社 情報処理装置、及び情報処理方法
JP6069852B2 (ja) * 2011-08-29 2017-02-01 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム
CN106688204B (zh) * 2014-08-19 2020-04-24 瑞典爱立信有限公司 生成加密校验和的方法、认证消息的方法及其设备
JP6942601B2 (ja) 2017-10-18 2021-09-29 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム
WO2020018454A1 (en) * 2018-07-16 2020-01-23 Islamov Rustam Cryptography operations for secure post-quantum communications

Citations (1)

* 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

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR506041A (fr) 1919-11-14 1920-08-12 Ray Trautman Perfectionnements apportés aux membres artificiels
US4745568A (en) * 1986-12-16 1988-05-17 Onyszchuk Ivan M Computational method and apparatus for finite field multiplication
JPH04218832A (ja) * 1990-04-25 1992-08-10 Ricoh Co Ltd 乱数発生回路自動生成方式
EP0620518B1 (en) * 1993-04-06 1999-10-06 Hewlett-Packard Company Methods and apparatus for generating linear-feedback-shift-register sequences
US5363448A (en) * 1993-06-30 1994-11-08 United Technologies Automotive, Inc. Pseudorandom number generation and cryptographic authentication
JPH07271849A (ja) * 1994-02-10 1995-10-20 Ricoh Co Ltd Cadシステム
JPH09130214A (ja) * 1995-11-01 1997-05-16 Nec Corp Pn符号生成回路
JP3491422B2 (ja) * 1996-01-10 2004-01-26 ソニー株式会社 ディジタル信号変換装置及びパラレル線形帰還形シフトレジスタ形成方法
JP3672282B2 (ja) * 1997-07-25 2005-07-20 株式会社エルイーテック 遊技機用乱数発生装置
US6286022B1 (en) * 1997-11-18 2001-09-04 Rsa Security Inc. Efficient finite field basis conversion involving a dual basis
KR20010012192A (ko) * 1998-03-05 2001-02-15 요트.게.아. 롤페즈 유사-랜덤 잡음 생성기를 위한 마스크 생성 다항식
US6339645B2 (en) * 1998-03-06 2002-01-15 Telefonaktiebolaget Lm Ericsson (Publ) Pseudo-random sequence generator and associated method
DE69933108T2 (de) * 1998-06-25 2007-04-12 Koninklijke Philips Electronics N.V. Synchrone bitstromverschlüsselung
JP2001237826A (ja) * 2000-02-23 2001-08-31 Nec Corp パラレルランダムパタン生成回路及びそれを用いたスクランブル回路並びにデスクランブル回路
EP1599002B1 (en) * 2000-04-26 2007-06-13 Alcatel Lucent Method to generate a pseudo random sequence of multi carrier data symbols, and related transmitter and receiver
US7599981B2 (en) * 2001-02-21 2009-10-06 Mips Technologies, Inc. Binary polynomial multiplier
US20060010430A1 (en) * 2001-05-04 2006-01-12 Thales Device and process for the signature, the marking and the authentication of computer programs
US7240084B2 (en) * 2002-05-01 2007-07-03 Sun Microsystems, Inc. Generic implementations of elliptic curve cryptography using partial reduction
EP1616405A1 (en) * 2003-04-24 2006-01-18 Matsushita Electric Industrial Co., Ltd. Apparatus to generate parameter for ntru, ntru decryption and encryption system, apparatus, method and program implementing said parameter generating unit
JP4418713B2 (ja) * 2004-06-11 2010-02-24 キヤノン株式会社 乱数発生方法及び乱数発生装置
JP2006145945A (ja) * 2004-11-22 2006-06-08 Sony Corp 暗号処理演算方法、および暗号処理装置、並びにコンピュータ・プログラム
US7389316B1 (en) * 2004-11-24 2008-06-17 Xilinx, Inc. Method and apparatus for true random number generation
DE102005028662B4 (de) * 2005-03-04 2022-06-02 Ihp Gmbh - Innovations For High Performance Microelectronics / Leibniz-Institut Für Innovative Mikroelektronik Verfahren und Vorrichtung zum Berechnen einer Polynom-Multiplikation, insbesondere für die elliptische Kurven-Kryptographie
US7945784B1 (en) * 2005-08-19 2011-05-17 Adobe Systems Incorporated Method and system to perform secret sharing

Patent Citations (1)

* 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

Also Published As

Publication number Publication date
JP5312318B2 (ja) 2013-10-09
EP2005290A2 (fr) 2008-12-24
DE602007011589D1 (de) 2011-02-10
EP2005290B1 (fr) 2010-12-29
CN101467127A (zh) 2009-06-24
CN101467127B (zh) 2010-11-17
KR20090031505A (ko) 2009-03-26
US8416951B2 (en) 2013-04-09
WO2007116171A3 (fr) 2007-12-21
US20090279693A1 (en) 2009-11-12
FR2899702A1 (fr) 2007-10-12
ATE493700T1 (de) 2011-01-15
WO2007116171A2 (fr) 2007-10-18
JP2009533705A (ja) 2009-09-17

Similar Documents

Publication Publication Date Title
KR101389483B1 (ko) 의사난수 스트링을 생성하기 위한 방법 및 장치
JP4866389B2 (ja) 閉ガロア体組合せ
JPH04250490A (ja) ケーオス論に基づく暗号化システム
US20130129088A1 (en) Method and system for generating unpredictable pseudo-random numbers
Tuncer et al. Random number generation with LFSR based stream cipher algorithms
Cardell et al. Linear Models for the Self-Shrinking Generator Based on CA.
JP2010531018A (ja) 有限体演算を用いる暗号学的乱数発生器
Rahimov et al. Cryptographic PRNG based on combination of LFSR and chaotic logistic map
Sadkhan et al. Proposed Enhancement of A5/1 stream cipher
Hobincu et al. A novel chaos based prng targeting secret communication
Braeken et al. SFINKS: A synchronous stream cipher for restricted hardware environments
Rose KISS: A bit too simple
Sadkhan et al. Investigation of the best structure for the nonlinear combining function
JP2001066987A (ja) 代数曲線暗号における安全なパラメータの生成装置、生成方法、および記録媒体
US8601041B2 (en) Method and device for generating a pseudorandom sequence
JP2007287079A (ja) 擬似乱数生成装置、擬似乱数生成方法および擬似乱数生成プログラム並びに暗号化装置および復号化装置
JP2004038020A (ja) 暗号学的擬似乱数発生装置及びプログラム
Yerukala et al. LFL-A New Stream Cipher for Secure Communications
US20240187213A1 (en) Galois extension field-based block cipher
Yerukala et al. Alternating step generator using FCSR and LFSRs: A new stream cipher
Ghosh The Improvement of Period of Pseudo Random Number Sequence: an Algebraic Approach
JP5268011B2 (ja) 暗号化システム及び復号化システム
Siddavaatam et al. A novel architecture with scalable security having expandable computational complexity for stream ciphers
Stănică et al. Reversible cellular automata encryption algorithm implemented on FPGA
Jilna et al. FPGA implementation of an elliptic curve based integrated system for encryption and authentication

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190401

Year of fee payment: 6