Ⅰ.서론
선형 피드백 쉬프트 레지스터(Linear Feed back Shift Register, LFSR)는 스트림 암호의 설계에 사용되는 중요한 구성 요소 중 하나이다. LFSR을 사용한 고전적인 스트림 암호 체계로 비선 형 필터 모델(Nonlinear Filter model, NF)과 비선형 조합 모델(Nonlinear Combiner model, NC)이 있다. 〔1, 2〕의 결과를 바탕으로 하여 Anderson은 NF의 경우 비선형 필터 함수의 입력으로 사용된 셀들이 서로 가까운 경우 출력 수열로부터 LFSR의 초기치에 대한 많은 정보를 얻을 수 있음을 보였다.⑶
Sarkar는 NF의 Anderson 정보누출을 막기 위하여 NF와 NC을 결합한 스트림 암호 시스템을 소개하였다.⑷ 이 모델은 LFSR 대신에 셀룰라 오토마타(Cellular Automata, CA)를 사용하여 An derson 정보누출을 막을 수 있다고 주장하고 있으나, 본 논문에서는 CA를 사용하는 것이 암호 시스 템의 안전성을 증가시키지 않음을 보인다.
CA는 선형 유한 상태 장치 (Linear Finite State Machine. LFSM)의 특별한 경우이다. 이는 셀들의 1차원 배열로 생각 할 수 있으며 시간의 진행에 따라 셀들의 상태는 선형 변환을 통하여 변하게 된다. 이러한 CA는 그 우수한 랜덤 특성에 의하여 여러 방면에 활용되었다. 안전성 관점으로 볼 때, CA가 LFSR보다 좋다고 알려졌으나 본 논문에서는 CA와 LFSR은 안전성 관점으로 차이가 없음을 밝히도록 한다.
선형대수의 쉬운 결과들을 사용하여 우리는 LFSM을 LFSR과 선형 변환의 조합으로 구현하는 방법을 제시한다. LFSR이 LFSM에 비하여 간단한 구조이므로, 이는 LFSM을 활용한 암호학적 시스템들의 안전성에 시사하는 바가 크다. 그 구체적인 예 를〔4〕의 결과를 분석하며 살펴보도록 한다.
본 논문은 다음과 같이 구성되었다. II 장에서는 이후 논의에 필요한 선형대수의 기초적인 이론을 살펴보고. CA와 LFSR 이라는 2종의 대표적인 LFSM 에 대하여 알아본다. 이장에서는 주어진 LFSM을 LFSR과 선형 변환을 결합하여 구현하는 방법을 제시한다. 이를 이용하여〔4〕에서 제안되었던 CA를 LFSR 대신 사용하여 안전성을 증가시키고자 한 시도가 의도한 바를 이루지 못했음을 IV 장에서 보이고, 실제 구체적인 예를 V장에서 제시한다. VI장에서는 주어진 비선형 필터 함수가 Ander son 정보누출이 일어날 수 있는 꼴로 변형이 가능한지 판별하는 방법을 기술하고, 마지막 vn장에서 결론을 맺는다.
Ⅱ.기초 지식 및 정의
2.1 선형 대수
를 원소의 개수가 2개인 유한체 {0, 1}이라고 하고, 크기 "의 항 등 행렬을 1로 표시하자. 주어진 정방행렬 M의 특성다항식은 다음과 같이 정의한다.
char(M) = det (xl— M) eF2[x],
모닉 다항식
#(1)
의 동반행렬은 다음의 행렬로 정의한다.
#(2)
그러면 다음의 정리는 일반적인 선형 대수의 교재에 소개되어 잘 알려져 있다.®畝
[정리 1] 정방행렬 〃의 특성다항식을》(x)라 하고, 》(*)의 동반행렬을 L로 표기흐]. 자. />G;)가 기약이 면, TMT t = L을 만족하는 가역인 (기저 변환) 행렬 T가 존재한다.
그런데 위〔정리 1〕의 식을 만족시키는 행렬 T가 유일한 것은 아니다. 정방행렬 必의 크기가 ”인 경우 최대 2 ”一1가지 가능성이 있다.
2.2 선형 유한 상태 장치
앞으로 £로 표기할 "-비트 선형 유한 상태 장치(linear finite state machine, LFSM)란, n^n 행렬 M으로 주어진 하나의 쌍 (F;, A/)을 말한다. LFSM £의 내부상태는 하나의 비트 벡터 “=(〃(), ..., 〃”顼后刊으로 표시한다. 음이 아닌 정수 시간 /의 진행에 따른 £의 내부상태 변화는 川+1)= 肠3을 만족하는 %-비트 벡터 v(0>, v(1), ...로 주어진다. 여기서 V는 초기 상태를 나타낸다. 시간 20에서의 상태를 좀 더 구체적으로 표현할 때는 〃(, )= (那, 评, 况幻)를 사용한다. 행렬 〃의 특성다항식이 尸2상에서 원시다항식인 경우 다음의 수열은 각각의 주기가 2"—1 이라는 사 실이 잘 알려져 있다.“°)
#(3)
이는 바로 LFSM의 내부상태로 주어진 이와 같은 수열로 얻을 수 있는 최대 주기이다. LFSM 중 많이 사용되는 것으로는 셀룰라 오토마타와 선형 피드백 쉬프트 레지스터를 들 수 있다.
2.3 셀뤁라 오토마타
셀룰라 오토마타(Cellular Automata, CA)는 LFSM의 한 종류로 그를 정의하는 행렬 心이 tri-diagonal인 경우를 말한다. 특별히 心의 대각 원 바로 윗쪽과 바로 아랫쪽이 모두 1인 경우를 90/150 CA라 부른다. 좀 더 구체적으로 말하면, 다음 형태의 행렬로 주어지는 LFSM을 90/150 CA라 한다.
#
여기서 각각의 C, 는 0 또는 1이다. 본 논문에서의 셀룰라 오토마타는 90/150 CA만을 다루도록 한다. 이러한 CA의 내부상태는 각 OMzM" —1와 会0에 대하여 관계식을 만족한다. 여기서 #이다.
2.3 선형 피드백 쉬프트 레지스터
식 (1) 로 주어진 모닉 다항식 /)伝)가 정의하는 선형 피드백 쉬프트 레지스터(linear feedback shift register, LFSR)란, 행렬 (2) 로 주어진 》愆)의 동반행렬로 정의된 LFSM을 말한다. 따라 서 LFSR의 시간 公0에서의 내부상태를 y(, ) = (元)", 刑护? J라 놓으면 각각의 OMz或一2 에 대하여 必尸»=舟1 이 성립하며 yV-i1)=«o z劳Qz"i临幻 또한 성립한다. 즉, LFSR을 이루는 각 셀의 내용물은 시간의 진행에 따라 한 칸씩 왼쪽으로 이동된다.
Ⅲ.LFSM의 LFSR으로의 단순화
이제 앞 장의 각 부분이 서로 어떻게 연관성을 가 지고 있는지를 살펴보도록 한다. 본 장에서는 LFSR 과 선형 변환을 결합하여 LFSM을 구현하는 방법을 제시한다. 행렬 心으로 정의된 LFSM £이 주어졌다고 하자. .物의 특성다항식을 》(x) 로 표기하고 力(X) 의 동반행렬을 乙이라 하자. 이때 행렬 乙은 하나의 LFSR을 정의할 수 있으므로 이렇게 정의되 는 LFSR을 LFSM £이 정의하는 LFSR이라고 정의한다.
특성다항식 力伝)가 기약이라 하자. 〔정리 1〕에 의하여 TMT i = L을 만족하는 가역행렬 7、가 존재한다. LFSM £의 초기 상태가 〃였다면, 시간 公0에서의 LFSM의 상태 는 다음과 같이 주어진다.
#
여기서 必'는 M을 £번 적용하였음을 의미한다. 마찬가지로, 행렬 乙이, 정의하는 LFSR의 초기 상 태가 的라면, 시간 会0에서의 LFSR의 상태 w(rt 는 다음과 같이 주어진다.
#
만일 두 초기 상태들이 관계식 3= 7初를 만족한다면, 7MZ、T = L의 관계식을 활용하여 우리는 다음의 등식이 사실임을 확인할 수 있다.
#
이는 LFSM과 LFSM이 정의하는 LFSR이 밀접히 연관되어 있음을 보여준다.
[정리 2] 초기 상태 z丿°)에서 출발한 LFSM의 시 간 f에서의 내부상태 는 같은 LFSM이 정의하 는 LFSR의 내부상태 也3를 활용하여 다음의 간단한 관계식을 통하여 구할 수 있다.
#(4)
여기서 LFSR의 초기상태는 犯 死로 놓으면 된다.
결론적으로 LFSM이 LFSR보다 복잡해 보이기는 하나. 둘의 차이는 결국 하나의 간단한 선형 관계 식에 지나지 않는다. 본 장에서 사용된 LFSM에 대 한 가정은 대응되는 특성다항식이 기약이라는 것뿐이 다. 그러나 LFSM의 암호학적 응용에서는 대부분의 경우에는 최대 주기를 보장하기 위하여 특성다항식이 원시 다항식이라는 더욱 강력한 조건이 사용된다. 따라서 LFSR에 비하여 LFSM이 복잡하다는 생각에 기반한 LFSM의 암호학적 활용은 제고되어야 할 것이다. 더불어, CA 또한 일종의 LFSM이므로 CA에 관하여도 같은 주장을 할 수 있다.
Ⅳ.셀룰라 오토마타 기반 비선형 필터 모델의 안전성
4.1 NF-CA
⑷에서, Sarkai는 필터-조합 모델 (Filter- Combiner, FC)이라는 스트림 암호를 제안하였다. 여기서는 FC 모델 전체를 다루지 않고 그 논문의 주된 논의 중 하나만을 설명하도록 한다.
X =(F么 M)으로 표시되는 CA가 하나 주어졌다고 하고 CA에 대응되는 특성 다항식 가원시다 항식이라 하자. 식 (3) 으로 주어진 각각의 笏개 수열 들이 모두 동일한 주기 수열임은 잘 알려져 있다. 다 만 각 수열의 시작점이 다를 뿐이다. 즉각 수열은 서로 서로의 상대적 쉬프트로 볼 수 있다.
주어진 CA에 좋은 특성을 가지는 비선형 필터 함 수 f를 적용하여 키스트림을 얻는다고 하자. 여기서 좋은 특성이란, 높은 resiliency와 비선형성 등을 말한다. 이렇게 주어진 시스템이 다음의 조건들을 만 족한다고 하자.⑷
1. 함수 /의 입력으로 사용된 셀의 수, 은 전체 CA의 크기 在에 비하여 작다. ( r<, log 2就)
2. 함수 /의 입력으로 사용된 셀들이 주는 (동일한) 주기 수열들의 시작점들은 전체 주기 안에서 (대 략적으로) 균일하게 분포한다.
3. 이 시스템을 사용하여 암호화되는 전체 비트의 양은 2 ”//에 비하여 상당히 적다.
우리는 이 (축소된) 모델을 NF-CA라 부르기로 한다. CA를 활용한 비선형 필터 모델이라는 뜻이다. 〔4〕는 위의 조건들을 만족하는 NF-CA는 Ander son 정보누출⑶에 저항성을 가진다고 주장하고 있다. Anderson 정보누출이란 스트림 암호의 일종인 비선형 필터 모델에 대한 결과이다. 사용된 비선형 필터 함수가 LFSR의 셀 중 서로 가까이 있는 것만을 사용할 경우 상당히 높은 확률로 키스트림으로부터 LFSR의 초기 상태에 대한 정보를 얻을 수 있다 는 결과이다, ⑶
Sarkar는 Anderson 정보누출의 근본적인 원인으로 같은 비트 정보를 필터 함수의 입력으로 여러 번 재사용하는 비선형 필터 모델의 특성을 지적했다. 이 같은 생각은〔3〕에도 어느 정도 드러나 있다. 따라서 위의 조건들의 기본적인 의도는 주기 수열의 어느 부분도 재사용되는 것을 막는 것이었다.
4.2 NF-CA의 정보 누출
NF-CA의 초기 상태, 좀 더 정확히는 사용된 CA, £ =(F^, M)의 초기 상태를 护°)로 표기하자. 필요하면 비선형 필터 함수 /의 입력으로 dummy 변수 들을 추가하여 /가 CA 전체 셀을 입력으로 하여 정의되었다고 보자. NF-CA의 £번째 키스트림 비트 c, 는 다음과 같이 주어진다.
#(5)
이제 IE 장의 내용을 따라가며 CA가 정의하는 LFSR을 구성하고 식 = L을 만족하는 T를 찾을 수 있다. 그리고 식 (4) 를 위의 식 (5) 에 적용하여 c广*。를 얻을 수 있다. 이때 LFSR의 초기치는 w^=Tvm5- 놓으면 된다. 여기서 는 간단한 선형 변환에 지나지 않음을 생각하면 g=f- 라는 함수가 또 다른 보통의 비선형 필터 함수라는 것을 볼 수 있다. 즉. 우리는 NF-CA의 키스트림을 c, = g(也3)꼴의 평범한 NF-LFSR 형태로 쓸 수 있는 것이다.
[정리 3] 비선형 필터 함수 顶를 사용하고 초기값이 V ⑴로 주어진 NF-CA는 CA가 정의하는 LFSR에 비선형 필터 함수 g=f- :T-‘를 적용하고 그 초기치를 w «»=* ("로 하여 구현할 수 있다.
아직 Anderson 정보누출에 대한 저항성을 측정 할 수 있는 일반적인 방법은 없다. 그리고 Ander- son의 논문〔3〕은 랜덤하게 선택한 NF-LFSR들은 상당히 많은 경우 정보를 누출한다고 주장하고 있다. 따라서 식 (5) 는 Anderson 정보누출의 위험성이 있 는 키스트림을 출력한 가능성을 여전히 가지고 있다.
Ⅴ.정보 누출을 보여주는 NF-GA의 예
IV 장의 결과를 확인하기 위하여 IV 장의 3가지 조건을 모두 만족하며 Anderson 정보누출을 보여주 는 구체적인 NF-CA를 구성하도록 한다.
5.1 CA 및 관련 LFSR
행렬 M이 식 2.3절의 90/150 CA의 형태로 주어지고 대각원이 (c0, c lt ..., c22) = (1, 1, 1, 0, 0, l, 0, 0, LLLLL0, 0, 1, 1, 1, 02, 1, 0, 0)라고 하자. A/의 특성 다항식 />(x) 는 다음과 같다.
#
이것은 원시다항식이므로 행렬 M으로 정의되는 CA의 23개 셀은 모두 주기 2 23 — I의 수열을 만든다.
다항식 />(力의 동반행렬을 乙이라 흐卜자. 이제 T 는 다음과 같이 정의한다.
7\ = (1, 0, 0, ..., ())을 丁의 첫 번째 행으로 하고, 순차적으로, 번째 행 T, 를 = (1<WM
23)으로 정의한다. 행렬 T의 전체 모습은 다음과 같다.
10000000000000000000000 11000000000000000000000 00100000000000000000000 01110000000000000000000 10111000000000000000000 10001100000000000000000 11011010000000000000000 00011001000000000000000 00111110100000000000000 01000110110000000000000 11101010001000000000000 01000001011100000000000 11100010001010000000000 01010101011011000000000 11000100000001100000000 00101110000011110000000 01101111000100001000000 10001101101110011100000 11011001000101101010000 00011110101101101001000 00110110100001101110100 01010010110011100110110 11001100001100111010011
이렇게 정의한 행렬 丁가 TMTf = L을 만족하 는 것은 쉽게 확인할 수 있다. 물론 이 식을 만족하 는 7、가 유일한 것은 아니다. 임의의 0이 아닌 초기 벡터 丁1으로 시작하여 위와 같은 방식을 통하여 정의한 가역인 행렬은 식 = L을 만족시킨다. 여기서 정한 7에 대한 역원 丁 7는 다음과 같다. 1 0 0
1 1 0 0 0 1 1 1 1 0 1 0 I 1 0 1 1 1 1 0 1 1 0 1 0 1 0 1 1 0 1 1 1 0 1 0 1 0 0 0 0 0 1 0 0 1 1 0 0 0 1 1 1 1 0 1 0 1 1 0 1 1 1 1 0 1
00000000000000000000 00000000000000000000 00000000000000000000 1 0000000000000000000 1 1000000000000000000 1 1100000000000000000 0 1010000000000000000 0 1001000000000000000 1 1110 100000000000000 0 100011 0000000000000 1 001000 1000000000000 1 001111 1100000000000 1 100000 1010000000000 0 0 11111 0011000000000 1 10 1111 0011100000000 0 101000 1010110000000 1 0 10 0 11 1100001000000 1 010010 1000111100000 1 1010000000101010000 0 100110 1000101001000 1 1110 11 0100111110100 1 1000000110001000110 0001011 0111111010111
5.2 CA 셀들 간의 쉬프트와 비선형 필터 함수
각각의 1MM23에 대하여 秫叫를 OA의 「번째 셀이 출력하는 (시점을 제외하고는 동일한) 주기 수 열이라 홍卜자. 彻曹와 m乎 사이의 상대적인 쉬프트 는 순서대로 다음과 같다.
0, 1988170, 8388605, 5964510, 4125305, 3763873, 6190462, 6778815, ...
이것은〔11〕의 내용을 구현한 프로그램으로 계산된 값이다. 이를 통하여 2, 3, 5, 7번째 셀의 출력 들 사이의 상대적인 쉬프트 값들이 모두 221이나 2 22에 가까움을 확인할 수 있다.
그림 1,3,5,7 번째 셀의 상대적 쉬프트
예를 들어 展')과 以。사이의 쉬프트는 1988170 - 8388605 = 1988172 mod 2 23- 1 = 2 20■92301 이다. 따라서 이 CA에 /= m 2®m 3©(m s , , 力 ?)로 주어진 비선형 필터 함수를 적용하면 4.1 절의 2번 규칙이 만족된다. 또한 함수 /가 i-resilient 하다는 것을 쉽게 보일 수 있어서 /는 그리 나쁘지 않은 비선형 필터 함수임을 받아들일 수 있다. 다음의 계산을 통하여 1번 규칙 또한 만족됨을 알 수 있다.
#
규칙 3은 2 幻보다 적은 개수의 비트를 사용하도록 권고하고 있으나, 우리는 대략 20비트의 키스트 림을 사용할 것이므로 이는 쉽게 만족하게 된다.
5.3 동치 NF-LFSR의 구성
穴〃 3)=/。T-1(^3)로부터 LFSR의 상태 (^, 成 …, 扁)에 대하여 비선형 필터 함수 g=f- 를 사전 계산된 了7의 2, 3. 5. 7번째 행의 구체적인 값을 활용하여 나타내면 다음과 같다.
#
NF-CA에 사용된 4개의 셀을 표현하는데 사용된 LFSR의 셀들은 왼쪽 7개 셀에 지나지 않음을 확인 할 수 있다.
5.4 Anderson 정보누출
LFSR의 7번째 비트가 출력 키스트림 7개 비트를 뽑는 동안 유효한 효과를 주므로, 우리는 위의 과정을 통하여 얻은 NF-LFSR을 가능한 모든 13-비트 입력에 대한 7비트 출력을 보도록 작동시킨다. 각각의 출력에 대응되는 가능한 13-비트 입력의 수 를〔표 1〕에 정리하였다.
표 1. 각각의 7-비트 출역에 대응하는 입력 상태의 수
7-비트 줄력은 16진수 표현을 사용하여 나타내었고, 개수는 해당 입력 개수를 나타낸다. 16진수 표현의 (8비트 중 첫 번째 0을 제외시킨) 가장 왼쪽 비트가 첫 번째 출력 비트이다. 이상적인 경우라면. 모든 입력 개수들이 26 = 64이거나 이에 가까워야 할 것이다.
그러나〔표 1〕의 결과는 우리가 시험하고 있는 NF-CA/LFSR이 그러하지 않다는 것을 보여준다. 103과 같은 큰 수도 있는 반면, 29와 같이 작은 수도 나타나고 있다. 이는 이 구조의 정보 유출 가능성이 높음을 나타낸다.
좀 더 구체적으로 7-비트 출력 수열 0x09 = 0001001을 주는 다음의 모든 13-비트 입력값을 살펴보자.〔표 1〕에 나오듯이 정확히 29개 초기값이 있다.
#
확률 28/29로 4, 5, 6번째 비트 중 하나만이 1 임을 알 수 있다. 즉, 이 3개 비트의 XOR은 확률 28/29로 1인 것이다. 이 시스템은 Anderson 정보 누출을 보이고 있다. 따라서〔4〕에 제시된 방법대로 좋은 암호학적 성질을 가진 비선형 필터 함수를 상대적인 쉬프트를 고려하여 CA에 적용하는 것으로는 Anderson 정보누출을 막을 수 없다.
Ⅵ.주어진 NF-LFSM의 정보누출 위험성 여부를 확인하는 방법
본 장에서는 주어진 NF-LFSM을 Anderson 정보 누출에 위험한 NF-LFSR로 동치 변형하는 것이 가능한지 확인하는 일반적인 방법을 알아본다. CA와 LFSR은 모두 LFSM의 일종이므로 이 방식은 특별히 NF-LFSR에도 적용된다. 즉, NF-LFSR에 사용된 비선형 필터 함수가 정보누줄을 줄 수 있는 함수로 변형될 수 있는지도 밝힐 수 있다는 것이다.
크기 〃의 정방행렬 M과 비선형 필터 함수 f로 정의된 NF-LFSM이 하나 주어졌다고 하자. 心의 동반행렬을 乙이라 표시하기로 하고 L의 centrali- zer 를 {Z(L) = 7左 GL( n)\ZL= LZ} 로 표시한다. 동반행렬 乙이 주어지면 Z(L)을 좀 더 구체적으로 표현하는 것이 가능하다. 다음의 보조정리는 관계식 ZL= LZ의 적용만으로도 증명할 수 있다.
[보조 정리 4] 식 (2)에 의하여 주어진 동반행렬 L에 대하여 그 centralizer Z(、L)은
#
을 만족하는 원소 # 으로 주어진다.
〔보조정리 4〕가 의미하는 중요한 결과는 ZeZ(L) 의 임의의 항을 일반적인 방식으로 그 첫 행에 나타 나는 항들의 선형 결합으로 표현할 수 있다는 것이다. 예를 들어, 위의 보조정리는
#
임을 알려준다.
이제 'TMT i = L을 만족시키는 임의의 행렬 官를 하나 고정하자. 식 TMT-'=L을 만족하는 임의의 T는 {Z(L)项 =Z万'iZeZCL)}로 주어짐은 쉽게 보일 수 있다. 그리고 ZvZ(L)과 Z-1eZ(L) 이 서로 동치이므로 우리는 다음의 정리를 얻게 된다.
[정리 5] 식 TMT-' = L을 만족하는 了一1의 집합은 勇"吃(乙) = 亍 TZ|ZvZ(L)}로 주어진다. 이 결과를 활용하여 주어진 임의의 NF-LFSM이 위험한 NF-LFSR로 변형 가능한지 확인하는 방법을 제시한다. 어떠한 LFSR에 적용된 비선형 필터 함수가 서로 가까이 놓인 셀들만을 사용한다면 그러한 NF-LFSR은 Anderson 정보누출의 위험성을 가지고 있다.
반대의 경우라면 Anderson 정보누출의 가능성이 적다고 할 수 있다. 따라서 우리의 문제는 주어진 NF-LFSM에 대하여 〔정리 5〕에 의한 필터 함수 g=f- T '가 가까이 몰려있는 셀들만을 사용하도록 하는 T가 존재하는지 확인하는 것과 동치이다. 우선 작은 수 s< 如을 고정한다. 「를 선택하여 대응되는 g가 사용하는 모든 변수들이 LFSR의 연속된 s개의 셀들로 주어지도록 할 수 있으면 Ander son 정보누출에 위험하다고 판단하고 그렇지 않으면 안전하고 판단하도록 하겠다.
Anderson 정보 누출의 판정 알고리즘
1. LFSM을 정의하는 크기 *의 정방행렬 M으로부터. 그 특성다항식을 계산하고 이로 정의된 LFSR 乙을구한다.
2. 관계식 五'M「亍-、= L을 만족하는 임의 의를亍를 하나 찾고 고정한다.
3. 〔보조 정리 4〕의 방식으로 Z(L)을 적는다. 즉 아래쪽 행의 모든 항들이 첫 번째 행에 나타나 는 항들의 선형 결합으로 표현되도록 한다. 첫 행의 항들을 Xo, 로 표기하기로 한다.
4. 전 단계에서 구한 Z(乙)의 일반적인 원소에 亍 t을 곱하고〔정리 5〕를 사용하여 丁7를 일반적으로 표현한다. 결국의 모든 항은 다시 %, 의 일차결합으로 나타난다. 함수 /가 사용한 행의 수를 7이라 표시하자. X, 의 일차 결합들의 n^n 배열인 丁7의 일반적인 꼴 중에서 비선형 필터 함수 /에 사용된 /.개의 행들 만이 우리의 관심이다.
5. 함수 /에 사용되지 않는 모든 행을 제거한다. 이제, 勺들의 어느 특정 자명하지 않은 구성에 대하여 (남아 있는 행들에 대하여) 처음 s개 열에 포함된 항들을 제외한 모든 항의 값이 0이 된다고 가정해보자. 그러한 경우에 g=f- T-1 는 그 특정 X, 들의 구성으로 주어진 에 대하여 s개 LFSR 셀만을 사용하게 될 것이다.
6. 의 남아있는 항들이 이루는 행렬에서 임시로 처음 s개의 열을 제거한다.
7. 남은 나머지 항들을 0으로 놓고 이 연립 방정식 이 자명하지 않은 해를 가지는지 확인한다.
8. 자명하지 않은 해가 발견되면 주어진 NF- LFSM은 위험한 NF-LFSR로의 변형이 가능하다고 결론 내린다.
9. 발견되지 않으면, 5단계에서 얻은 행렬을 다시 가져온다.
10. 가능한 모든 연속된 s개의 열을 시도한 것이 아 니라면 다음의 연속된 "1열을 (일시적으로) 제거하고 7단계로 돌아간다.
11. 자명하지 않은 해가 발견되지 않았으면 주어진 NF-LFSM는 Anderson 정보누출에 안전하다고 결론 내린다.
이 과정의 복잡도는 ”에 대한 다항식 정도에 지나지 않음을 쉽게 보일 수 있다.
Ⅶ.결론
본 논문에서는 우리는 LFSM(또는 CA)이 또 하나의 LFSR과 간단한 관계식을 통하여 밀접하게 연관되어 있음을 보았다. 이러한 구조는 LFSR과 선형 변환을 통하여 LFSM을 구현할 수 있음을 보여준다. LFSR이 LFSM에 비하여 상당히 간단한 구조이므로 이는 LFSM의 반복적 사용을 기반으로 한 암호학적 시스템의 안전성에 시사하는 바가 크다. 본 논문에서는 CA를 LFSR 대신 사용하여 비선형 필터 모델의 안전성을 높이고자 한 예가 목적한 바를 이루지 못했음을 살펴보았다. 또한 주어진 NF-LFSM이 Anderson 정보 누출의 위험성을 가진 NF-LFSR로 변환 가능한지 여부를 확인하는 방법을 보았다.
참고문헌
- Advances in Cryptology-Eurocrypt'92, LNCS 658 Correlation via linear sequential circuit approximation of combiners with memory Jovan Dj.Golic
- Journal of Cryptology v.1 Fast correlation attacks on certain stream ciphers W.Meier;O.Staffelbach
- Proceedings of FSE'94, LNCS 1008 Searching for the optimum correlation attack Ross Anderson
- Advances in Cryptology-CRYPTO 2002, LNCS 2442 The filter-combiner model for memoryless synchronous stream ciphers Palash Sarkar
- ACM Computing Surveys v.32 no.1 Brief History of Cellular Automata Palash Sarkar
- IEICE Trans, Fundamentals v.E82-A(a) A Family of Fast Dedicted One-Way Hash Functions Based on Linear Cellular Automata over GF(q) Miodrag Mihaljevic;Yuliang Zheng;Hideki Imai
- ICAR e-print 2003-014 Hiji-bij-bij:A New Stream Cipher with a Self-Synchronizing Mode of Operation Palash Sarkar
- GTM 73 Algebra T.W.Hungerford
- Algebra S.Lang
- Introduction to finite fields and their applications R.Lidl;H.Niederreiter
- Finite Fields and their Applications v.9 no.2 Computing shifts in 90/150 cellular automata sequences Palash Sarkar