KR100889465B1 - 대칭-키 암호들을 위한 치환-박스 - Google Patents

대칭-키 암호들을 위한 치환-박스 Download PDF

Info

Publication number
KR100889465B1
KR100889465B1 KR1020027002896A KR20027002896A KR100889465B1 KR 100889465 B1 KR100889465 B1 KR 100889465B1 KR 1020027002896 A KR1020027002896 A KR 1020027002896A KR 20027002896 A KR20027002896 A KR 20027002896A KR 100889465 B1 KR100889465 B1 KR 100889465B1
Authority
KR
South Korea
Prior art keywords
permutations
permutation
box
round
probability
Prior art date
Application number
KR1020027002896A
Other languages
English (en)
Other versions
KR20020041810A (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 KR20020041810A publication Critical patent/KR20020041810A/ko
Application granted granted Critical
Publication of KR100889465B1 publication Critical patent/KR100889465B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0625Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Complex Calculations (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

입력 데이터 블록은 순열들에 기초한 S-박스를 사용하여 입력 데이터 블록에 비선형 연산을 실행함으로써 출력 데이터 블록으로 암호화 변환된다. S-박스는 적어도 두 개의 순열들의 세트와 관련된다. S-박스가 사용되기 이전에 매번, 순열들 중 하나가 순열들의 세트로부터 (의사) 랜덤식으로 선택되고, 변환을 위해 사용된다.
비선형 연산, 순열, 입력 데이터

Description

대칭-키 암호들을 위한 치환-박스{Substitution-box for symmetric-key ciphers}
본 발명은 한 세트의 순열들(permutation)에 기초한 치환 박스(S-box; Substitution-box) 형태의 비선형 연산을 사용하여 입력 데이터 블록을 출력 데이터 블록으로 암호화 변환하는 것에 관한 것이다.
디지털 오디오 및/또는 비디오의 저작권 보호의 영역에서 암호화의 응용분야들은 점진적으로 중요해지고 있다. 이들 응용분야들은 콘텐츠 암호/해독 및 액세스 관리 기능들을 포함한다. 이와 같은 응용분야들을 위하여, 널리 공지된 블록 암호 DES가 사용될 수 있다. DES는 16개의 라운드(round)들로 구성된 파이스텔 암호(Feistel cipher)이다. 각 라운드에서, 먼저 데이터의 우반부(right half)의 32비트가 48비트로 확장된다. 다음에, 스케쥴링 알고리즘으로 56 비트 DES 키로부터 연산된 48 비트 라운드 키(round key)가 이들 48 비트에 모듈러 2(modulo 2) 비트단위 가산된다. 그후, S-박스들의 층이 상기 데이터 상에 비선형 연산을 실행한다. DES에서, S-박스 층은 병렬의, 여덟 개의 6대4 비트 S-박스들로 구성, 즉, 각 S-박스들은 S-박스당 하나의 고정 맵핑 테이블을 사용하여 6비트 입력 블록을 4비트 출력 블록으로 변환한다. S-박스 층의 출력은 그위에 비트 치환이 실행되는 32 비트 데이터 블록이다. S-박스 치환은 DES 내에서만의 비선형 연산이고, 그 보안성에 크게 기여한다. DES의 단점은 56비트의 그 작은 키 사이즈이며, 이는 최근에는 고수준의 보안성을 제공하기 위해서는 불충분한 것으로 간주되고 있다. 그러나, 16개의 48 비트 라운드 키들을 연산하기 위한 차분 키 스케쥴링 알고리즘과 조합된 보다 긴 키를 사용함으로써 전수 키(exhaustive key) 조사가 회피될 수 있다. 공개된 문헌에 공고된 DES에 대한 두 가지 가장 강력한 공격들은 차분 및 선형 암호분석이며, 이들은 일반적으로 광범위한 블록 암호에 적용될 수 있는 일반적인 공격이다. 키 길이 및/또는 키 스케쥴링 알고리즘을 변형시킴으로써 DES가 이들 공격에 대하여 보다 강화될 수 없다는 것이 알려져 있다. 그러나, 알고리즘의 라운드 함수의 변화(예로서, S-박스내에서)는 이들 공격들에 대한 그 세기에 현저한 영향을 미칠 수 있다.
본 발명의 목적은 양호한 암호화 특성을 가진 S-박스들을 설계하는 것이다. 본 발명의 다른 목적은 이와 같은 S-박스들이 소비자 전자 응용 분야들 내에서의 광범위한 사용을 허용하는 하드웨어 및 소프트웨어에서 효과적으로 구현될 수 있게 하는 것이다.
본 발명의 목적에 부합되도록 S-박스를 위한 순열은 소정의 순열들의 세트로부터 동적으로 선택된다. 상기 세트내의 각 순열이 공지된 공격, 특히, 차분 및 선형 암호 분석에 대한 최적의 저항성을 제공하도록 선택되는 것이 바람직하다. 순열들을 (의사-)랜덤하게 선택함으로써, 시스템은 각 S-박스가 단 하나의 고정된 순열으로 구성되어 있는 시스템보다 암호적으로 강해질 수 있다. 세트로부터 순열을 선택하는 것은 신속히, 그리고, 비용 효율적으로 실행될 수 있다.
종속항 2의 수단에 정의되고, 종속항 3 및 6에서 보다 정교하게 되어 있는 바와 같이, 순열들 중 하나의 암호의 약점은 상기 세트의 나머지 순열들 중 적어도 하나의 대응하는 세기에 의해 보상된다. 상기 약점은 예로서, 논-트리비얼 차분 및/또는 소정 최대 확률을 가지는 선형 특성에 반영될 수 있다. 이 방법의 장점은 공격자가 알지 못하는(라운드) 키(들)에 대한 가정을 하지 않고서 이들 특성들에 기초하여 차분 또는 선형 공격(linear attack)을 할 수 없다는 것이다.
종속항 4의 수단에 정의된 바에 따라서, 약점은 완전히 보상된다.
종속항 10의 수단에 정의된 바에 따라서, 순열의 선택은 라운드 키의 제어하에 실행되는 것이 바람직하다. 라운드 키들을 발생시키는 알고리즘(즉, 키 스케쥴링 알고리즘)은 양호한 수준의 의사 임의성(pseudo-randomness)을 획득하도록 선택될 수 있다. 상기 선택을 위한 라운드 키들에 대한 장점은 라운드 키들의 연산 동안 상기 세트로부터 순열이 선택된다는 것이다. 효율성의 이유로, 각 키에 대해 한번 실행되고, 모든 데이터가 이 키로 처리(예로서, 암호화)되어야만 한다는 것은 통상적이며, 또한, 양호한 것이다. 이 방식에서, 암호화/복호화 알고리즘은 각 S-박스를 위해 단 하나의 고정 순열로 구성된 S-박스들에 기초한 시스템만큼 효율적이 될 수 있다.
본 발명의 이들 및 다른 특징들은 도면에 도시된 실시예를 참조함으로써 명확 및 명료해질 것이다.
도 1a 및 도 1b는 비선형 연산을 통합하고 있는 암호의 일 라운드를 도시하는 도면.
도 2는 라운드 함수의 단계들을 예시하는 도면.
도 3은 라운드 함수의 S-박스 층의 세부사항들을 도시하는 도면.
본 발명을 설명하기 위해서, 전자 코드북(ECB) 모드의 블록 암호로서 암호화 시스템이 설명된다. 본 기술 분야의 당업자들은 다른 모드의 시스템에도 마찬가지로 사용할 수 있을 것이다. 이들은 DES를 위한 연산의 표준 FIPS 모드들, 즉, 연산의 암호 블록 체이닝(CBC), 암호 피드백(CFB) 및 출력 피드백(OFB) 모드들을 포함한다. 부가적으로, 상기 시스템은 또한 의사 난수 발생기, 메시지 인증 코드(MAC)들 및 조작 검출 코드(MDC)들을 위한 널리 공지된 구조에 사용될 수도 있다.
상기 암호화 장치는 디지털 입력 블록을 획득하기 위한 입력을 포함한다. 디지털 입력 블록(M)은 소정의 적절한 사이즈일 수 있다. 상기 장치는 디지털 입력 블록을 디지털 출력 블록으로 변환하기 위한 암호화 프로세서를 추가로 포함한다. 디지털 출력 블록은 디지털 입력 블록과 실질적으로 동일한 길이를 가지는 것이 바람직하다. 상기 장치는 디지털 출력 블록을 출력하기 위한 출력을 포함한다. 양호한 실시예에서, 암호화 프로세서는 디지털 입력 블록을 키 비트들과 병합시킴으로써 디지털 입력 블록을 디지털 출력 블록으로 변환하여 비선형성이 입력 블록과 키에 의존하는 출력 블록을 생성한다. 키(또는, 키 스케쥴러에 공급하는 초기 키)를 얻기 위해서, 암호화 장치는 제 2 입력을 포함한다. 상기 암호화 장치는 PC 같은 종래의 컴퓨터를 사용하여 구현되거나, 전용 암호화/복호화 장치를 사용하여 구현될 수 있다. 상기 디지털 입력 블록은 통신망을 경유, 하드디스크 또는 플로피 디스크 같은 데이터 저장 매체로부터 또는 사용자에 의해 직접적으로 입력되는 것 같은 다양한 방식으로 얻어질 수 있다. 유사하게, 디지털 출력 블록은 통신망을 경유, 데이터 저장 매체상에 저장, 또는 사용자에게 디스플레이되는 것 같은 다양한 방식으로 출력될 수 있다. 이를 위해 보안 수단이 사용되는 것이 바람직하다. 암호화 프로세서는 예로서, 퍼스털 컴퓨터에 사용되는 것 같은 종래의 프로세서일 수 있지만, 또한, 전용 암호화 프로세서일 수도 있다. 상기 프로세서는 통상적으로 본 발명에 따른 알고리즘의 단계들을 실행하기 위해, 적절한 프로그램(펌 웨어)의 제어하에 동작된다. 이 컴퓨터 프로그램 제품은 통상적으로 하드 디스크나 ROM 같은 주변 기억장치로부터 로딩된다. 상기 컴퓨터 프로그램 제품은 CD-ROM 같은 저장 매체나 공중 인터넷 같은 네트워크를 경유하여 배포된 이후에, 주변 기억 장치상에 저장될 수 있다. 암호화 키 같은 민감성 정보는 보안식으로 배포 및 저장되는 것이 바람직하다. 이를 위한 기술들은 널리 공지되어 있으며, 부가적으로 설명하지 않는다. 상기 암호화 장치는 부분적으로, 또는 전체적으로, 스마트 카드상에 구현될 수 있다.
암호화 프로세서에 의해 실행되는 본 발명에 따른 S-박스의 비선형 연산이 예시적인 응용분야로서 블록 암호 내의 라운드 함수(f)의 형태로 설명된다. 본 기술 분야의 숙련자들은 자체적으로 다른 암호화 시스템들 및 후술된 것 이외의 다른 암호에도 마찬가지로 상기 비선형 함수를 사용할 수 있을 것이다.
표시법 및 정의들:
하기의 표시법이 예시적인 알고리즘의 설명에 사용된다. Z2 n은 좌표 단위 합산 모듈러 2(또한 익스클루시브-오어, 또는 XOR이라고도 지칭됨)로서 정의되는 합산
Figure 712007004084328-pct00001
: Z2 n×Z2 n→Z2 n을 가지는 길이 n(n≥1)의 모든 이진 벡터들의 세트라 한다. 예로서, (1,0,1,0)과 (0,1,1,0)은 Z2 4의 요소들이며, (1,0,1,0)
Figure 712007004084328-pct00002
(0,1,1,0)=(1,1,0,0)이다. n이 짝수이고, x∈Z2 n인 경우에, 이때, x(L)∈Z2 n/2 및 x(R)∈Z2 n/2이 각각 x의 좌반부 및 우반부로서 정의된다. 예로서, x=(1,0,1,1,0,0,1,0)∈Z2 8인 경우에, x(L)=(1,0,1,1)∈Z2 4이고, x(R)=(0,0,1,0)∈Z2 4이다. 부호 ∥는, 예를 들어, x=(x(L)∥x(R)) 같이, 벡터의 연속을 나타내기 위해 사용된다. 벡터 x∈Z2 n의 요소들(역시, 비트라 지칭됨)은 좌측으로부터 우측으로 0에서 n-1까지 번호가 매겨져 있다. 즉, x=:(x0, x1, x2, …,xn-1). 인프로덕트 ·: Z2 n×Z2 n→Z2는 모든 x,y∈Z2 n인 경우에 x·y=∑i=0,1,…,n-1xiyi∈Z2로 정의된다.
블록 암호 구조:
예시적인 블록 암호는 파이스텔 암호이며, 열여섯 개의 라운드들(DES와 같은)로 구성되어 있다. 블록 길이는 64비트와 같고, 키 길이는 128 비트와 같다. 키 K∈Z2 128에서 평문 X∈Z2 64의 그 암호 텍스트 C=Z2 64으로의 전자 코드북(ECB) 모드에서의 암호화는 C=E(K,X)로 표현된다.
라운드 함수는 f로 표시되며, Z2 40×Z2 32로부터 Z2 32로의 맵핑이다. 이 라운드 함수는 본 발명의 비선형 S-박스 연산을 통합하며, 보다 상세히 후술될 것이다. 라운드 함수의 제 1 입력 아규먼트(argument)는 라운드 키 Ki∈Z2 40이다(여기서, i는 라운드 넘버를 나타냄, i=1,2,…,16). 이들 라운드 키들은 소위 키 스케쥴링 알고리즘으로 128 비트 키 K로부터 연산된다. 어느 적절한 키 스케쥴링 알고리즘이 사용될 수 있으며, 이는 상세히 설명하지 않는다. 제 2 입력 아규먼트는 라운드 i 이후 중간 결과의 우반부이다. 이 중간 결과는 Xi∈Z2 64(i=0,1,…,16)으로 표시되며, X=:(X0 (R)∥X0 (L))이다.
이 표시법을 사용한, 암호 텍스트 C∈Z2 64의 연산은 도 1에 예시된 바와 같이 하기의 단계들로 구성된다.
1. Xi (R)=Xi-1 (L)
Figure 112002006341279-pct00003
f(Ki, Xi-1 (R))을 연산하고, i=1,2,…,15에 대하여 Xi (L) =Xi-1 (R) 을 설정한다.
2. X16 (L)=X15 (L)
Figure 112006044676692-pct00004
f(K16, X15 (R))을 연산하고, X16 (R)=X15 (R)을 설정한다. 암호 텍스트는 C:=(X16 (R)∥X16 (R))으로 정의된다.
도 1a는 제 1의 열다섯개의 라운드(i=1,2,…,15)들을 위해 사용되는 암호 구조를 도시하고 있다. 도 1b는 최종 16개의 라운드를 도시하고 있다. 도 1a의 이전 라운드들에 비교된 도 1b의 불규칙 교환을 주목하기 바란다. 이는 이 경우에 복호화 알고리즘(즉, X=E-1(KC)의 연산)이 암호화 알고리즘(역순의 라운드 키들을 가진)과 동일하기 때문에, 파이스텔 구조에서 통상적으로 이루어진다. 이는 암호화의 관점에서는 어떠한 의미도 없다.
라운드 함수:
도 2는 라운드 함수(f)의 양호한 실시예의 전체 블록도이다. 먼저, 예를 들어, 32 비트의 라운드 키의 일부가 스텝 210에서 데이터 비트에 추가된다. 다음에, 스텝 220에서, S-박스들이 비선형 치환을 실행하여, 바람직하게는 차분 및 선형 암호분석에 대한 최적의(로컬) 저항성을 제공한다. 부가적으로, 하기에 보다 상세히 설명될 바와 같이 (라운드)키에 의존하여 소정의 최대 확률을 가진 논-트리비얼(로컬) 특성들이 만들어진다. 마지막으로, 스텝 230에서, 선형 변환이 사용되어 다수의 라운드들에 걸친 높은 확산을 제공한다. 소정의 적절한 선형 변환이 사용될 수 있다. 선형 변환은 본 발명의 주제가 아니며, 상세히 설명하지 않는다.
파이스텔 구조는 라운드 함수의 전사성(surjectivity)에 제한을 부여하지 않는다. 그러나, 라운드 함수는 고정(라운드) 키에 대한 매 선택에 대하여 일대일 대응하는 것이 바람직하다. 이는 라운드 함수의 비균일성에 기초한 공격을 회피한다.
도 3은 본 발명에 따른 S-박스를 통합하는 양호한 배열을 보다 상세히 제공한다. 본 예시적인 시스템에서, 라운드 함수(f)는 Z2 40×Z2 32로부터 Z2 32로 맵핑된다. 제 1 입력 아규먼트는 라운드 키 Ki∈Z2 40이고, 두 번째 것은 중간 결과(X i-1)의 우반부이다. 출력은 f(Ki, Xi-1 (R))∈Z2 32로 표현된다. 이 도면에서, Ki (1)∈Z2 32와, Ki (2)∈Z 2 8은 Ki=:(Ki (1)∥Ki (2))이다. 스텝 210에서, 키 추가가 발생되며, 이어서, 스텝 220에서 키 의존 치환 박스(S-box) 층이 사용된다. 예로서, S-박스 층은 데이터 블록의 1/8상에서 각각 작동하는 8개의 보다 작은 S-박스들(S0,S1,S2,…,S7)로 구성된다. 상기 S-박스 변환은 Z2 8×Z2 32로부터 Z2 32로 맵핑되며, 라운드 i의 제 1 입력 아규먼트는 라운드 키 Ki (2)이고, 두 번째 것은 키 추가의 결과, 즉, Xi-1 (R)
Figure 112002006341279-pct00005
Ki (1)이다. 상기 S-박스 변환의 32 비트 출력은 S(Ki (2), Xi-1 (R)
Figure 112002006341279-pct00006
Ki (1))으로 표현된다. 이 맵핑의 상세한 설명은 후술될 것이다. 마지막으로, 스텝 230에서, Z2 32로부터 Z2 32 로의 적절한 선형 변환이 적용된다. 입력은 S(Ki (2), Xi-1 (R)
Figure 112002006341279-pct00007
Ki (1))이고, 그 출력은 L(S(Ki (2), Xi-1 (R)
Figure 112002006341279-pct00008
Ki (1)))로 표현된다. 이 표시법으로, 함수 f는 하기와 같이 주어진다.
f(Ki, Xi-1 (R))=L(S(Ki (2), Xi-1 (R)
Figure 112002006341279-pct00009
Ki (1)))
S-박스들:
본 발명에 따라서, S-박스는 데이터의 치환을 실행한다. 본 명세서에 설명된 양호한 실시예에서, S-박스는 4-비트 서브-블록상에 작용한다. 또한, 다른 크기의 서브-블록들도 사용될 수 있다. 본 발명에 따라, 각각의 S-박스에 대하여, 적어도 두 개의 미리 결정된 순열들의 세트가 사용되며, 여기서 S-박스를 사용하기 전에 매번 이들 순열들 중 하나는 (의사) 랜덤 방식으로 선택된다. 바람직하게, 이 선택을 위해 라운드 키가 사용된다. 바람직한 실시예에서, 각각의 S-박스는 두 개의 순열들과 연관되며, 여기서 상기 라운드 키의 하나의 미리 결정된 비트는 양 순열들 중 무엇이 사용되는지를 선택하기 위해 사용된다. 4-비트 서브 블록들 상에 작용하는 것 같은 상대적으로 작은 S-박스를 사용하는 것은 통상적으로, 각각이 적어도 두 개의 비선형 순열들의 각 세트와 관련되는 병렬 S-박스들의 열을 필요로한다. 32 비트 블록들상에 작용하며 4-비트 S-박스들을 사용하는 블록 암호의 양호한 실시예에서, 여덟 개의 S-박스들이 병렬로 사용되며, 이들 각각은 두 개의 순열들로 구성되어 있다. 본 실시예에 대하여, 하기의 표시법이 사용된다. S-박스 변환의 제 1 입력 아규먼트 Ki (2)의 비트를 kj (1)(j=0,1,…,7), 즉, Ki (2)=:(k0 (i),k1 (i),…,k7 (i))로 표시한다. 벡터 Nj (i)∈Z2 4(j=0,1,…,7)는 Xi-1 (R)
Figure 112007051696963-pct00010
Ki (1)=(N0 (i)∥N1 (i)∥…∥N7 (i))로서 정의된다. S-박스 맵핑은 여덟 개의 맵핑들 Sj:Z2×Z2 4→Z2 4(j=0,1,…,7)의 연속으로 구성된다. 제 1 입력 아규먼트는 키 비트 kj (i)이고, 이는 Sj를 위한 두 개의 순열들 중 어떤 것이 사용되었는지를 선택한다. 제 2 입력 아규먼트는 Nj (i)이고, 이는 Sj를 위한 선택된 4-비트 순열을 위한 입력이다. 이 순열의 대응하는 4-비트 출력도 S-박스의 출력이며, Sj(kj (i), Nj (i))로 표시된다. 이 표시법으로 함수 S는 하기와 같이 주어진다.
S(Ki (2),Xi-1 (R)
Figure 112002006341279-pct00011
Ki (1))=(S0(k0 (i),N0 (i))∥S 1(k1 (i),N1 (i))∥…∥S7(k7 (i),N7 (i)))
순열의 차분 및 선형 특성들:
하기의 설계 조건들이 개별 순열들에 대하여 사용되는 것이 적합하다.
1. 차분 암호분석에 대한 저항성 : XOR 분포표의 최대 논-트리비얼 값은 소정 최대값과 같다. 4-비트 순열이라 가정하면, 이 최대값은 4, 즉, 각 논-트리비얼 차분 특성은 최대 1/4의 확률을 갖는다. 차분 특성과 XOR 분포표의 개념은 널리 공지되어 있다. 이는 바이함(Biham)과 샤미어(Shamir)에 의해 1990년에 최초로 공개적으로 설명되었으며, 예로서, 1991년의 암호작성법 저널(Journal of Cryptology) 제 4(1)권 3 내지 72 페이지의 "DES-형 암호작성 시스템의 차분 암호분석(Differential Cryptoanalysis of DES-LIKE Cryptosystem)"에 공개적으로 개시되어 있다.
2. 선형 암호분석에 대한 저항성 : 선형 근사값표의 최대 논-트리비얼 절대값은 소정 최대값과 같다. 4-비트 순열을 가정하면, 이 최대값은 4, 즉, 각 논-트리비얼 선형 특성은 1/4 와 3/4 사이의 확률을 갖는다. 선형 특성 및 선형 근사값표는 널리 공지되어 있다. 마스이(Matsui)에 의해 최초로 공개적으로 설명되었다. 이는 1995년 이. 바이함(E. Biham)의 "마스이의 선형 암호분석에 관하여(On Matsui's Linear Cryptonanlysis; EURCRYPT'94, LNCS 950, Springer, 1995, pp. 341-355)"에 설명되어 있다.
각 순열이 이들 요구조건 양자 모두를 충족시키는 것이 적합하다. 상술한 조건들을 4-비트 비선형 순열들에 대하여 상세히 설명한다. 이들 조건들은 4-비트 순열들에 최적한 것으로 검증될 수 있다. 즉, 4 보다 작은 최대 논-트리비얼 XOR 분포를 가지는 4-비트 순열이 하나도 존재하지 않으며, 4 보다 큰 그 선형 근사값의 최대 논-트리비얼 절대값을 갖는 4-비트 순열이 존재하지 않는다.
상술한 조건들을 충족하는 순열들은 순열을 랜덤하게 발생시키고, 생성된 순열이 상기 조건들을 만족하는지 아닌지를 테스트함으로써, 생성될 수 있다. 또한, 적절한 순열이 발견될 때까지 전수조사를 하거나, (수학적) 구성 방법을 사용하는 등의 적절한 다른 기술들이 사용될 수도 있다. 구성 방법의 한가지 특정 예는 0이 그 자체로 맵핑되는 상태의 2n 요소들을 가진 유한 필드내의 전치 맵핑에 기초한 것이며, 이는 케이. 나이버그(K. Nyberg)의 "암호 작성을 위한 차분적으로 균일한 맵핑들(Differentially uniform mappings for cryptography; EUROCRYPT'93, LNCS 765, Springer, 1994, pp.55-64)"에서 발견할 수 있다. 이 방법에 따라 구성된 n-비트 S-박스에 의해 충족되는 대응하는 조건은 n이 짝수일 때, 하기와 같다.
1. 차분 암호 분석 대한 저항성 : XOR 분포표의 최대 논-트리비얼 값이 4와 같다. 즉, 각 논-트리비얼 차분 특성은 최대 4/2n의 확률을 가진다.
2. 선형 암호 분석에 대한 저항성 : 선형 근사값표의 최대 논-트리비얼 절대값은 2n/2와 같다. 즉, 각 논-트리비얼 선형 특성은 1/2 - 1/2n/2와 1/2+1/2n/2 사이의 확률을 갖는다.
이들 조건들이 4-비트 순열들에 대하여 상술한 것들을 일반화하는 것을 쉽게 알 수 있다. n-비트 S-박스의 모든 입력 요소들 및/또는 모든 출력 요소들상에 소정의 가역적인 아핀 맵핑(Z2 n에 걸쳐)을 적용하는 것은 그 최대 논-트리비얼 XOR 값 또는 그 선형 근사값 표내의 그 최대 논-트리비얼 절대 값에 영향을 미치지 않는 것으로 널리 알려져 있다. 이 방식으로, 상술한 조건들을 만족하는 다수의 S-박스들이 단일 S-박스로부터 구성될 수 있다.
본 발명에 따라서, S-박스는 적어도 두 개의 비선형 순열들과 관련된다. 상기 세트내의 순열들은 그들이 각각 다른 것의 약점을 보상하도록 선택된다. 이는 각 차분 및 선형 특성들에 대하여 보다 상세히 설명될 것이다. 부가적인 조건들은 예로서, 하기의 두 개의 순열들을 가진 S0 같은 S-박스를 사용하여 예시된다.
Figure 112002006341279-pct00012
열 0 및 1은 두 개의 순열들의 출력을 나타내며, 이는 행 숫자에 의해 정의된 입력에 대응한다. 이하, 이들 두 개의 순열들을 각각 P0 및 P1으로 표시한다. 양 입력 및 출력들은 16진수로 표시되어 있다. 예로서, 제 1 순열이 선택되고(즉, k0 (i)=0), N0 (i)=3인 경우에, 이때 출력은 9, 즉, S0(0,3)=9이다. 유사하게, S0(1,3)=f이다. 여덟 개의 평행한 S-박스들을 가정하면, 각각 그 박스를 위한 특정한 두 개의 순열들과 관련되어 있고, 총 16개의 순열들이 발생될 필요가 있다. 이들 순열들 각각은 위에 주어진 모든 조건들을 충족한다. 본 발명에 따라서, 순열들이 세트로서 하나의 S-박스에 소속되고, 또한 하기의 조건들 중 적어도 하나, 바람직하게는 양자 모두를 충족시킨다.
순열들의 세트의 차분 특성들:
하나의 S-박스를 위한 순열들의 세트는 하기의 조건을 만족한다.
상기 순열들 중 하나의 논-트리비얼 차분 특성이 최대 확률을 가지는 경우, 이때, 이 차분 특성은 다른 순열들 중 적어도 하나에서 보다 낮은 확률을 가진다.
이 방식으로 순열 중 하나의 약점이 다른 순열들 중 하나의 세기에 의해 보 상된다. 보다 낮은 확률은 0인 것이 바람직하며, 최적으로 약점을 보상한다. 따라서, 하나의 S-박스를 위한 한쌍의 4-비트 순열을 위한 양호한 조건은 : 두 순열들 중 하나의 논-트리비얼 차분 특성이 1/4의 확률을 가지는 경우, 이때 이 차분 특성은 나머지 순열에서 0의 확률을 가진다. 즉, S-박스의 각 논-트리비얼(라운드) 키-독립적 차분 특성은 최대 1/8의 확률을 갖는다.
상기 두 개의 설명된 순열들(P0 및 P1)이 이 조건을 충족시키는 것을 예시하기 위하여, 그 XOR 분포표가 하기에 주어져 있다. Pi(α,β∈Z2 4인)의 XOR 분포표에서 열(α)과 행(β)의 엔트리는 Xi α,β로 표시되며, 이는 하기와 같이 정의된다.
Xi α,β:=#{x∈Z2 4|Pi(x)
Figure 112006044676692-pct00013
Pi(x
Figure 112006044676692-pct00014
α)=β}, i=0,1
즉, Xi α,β는순열 Pi을 위한 대응하는 출력쌍내에 편차(β)를 유발하는 편차(α)를 가진 입력쌍들의 수와 같다.
P0의 XOR 분포표
Figure 112002006341279-pct00015
주어진(로컬) 차분 특성을 위한 확률, 즉, 입력 편차(α)가 출력 편차(β)를 유발하는 확률(α->β로 표기)은 주어진 입력 편차를 가진 입력쌍들의 총 수로 대응하는 엔트리를 나눔으로써 구해진다. 이 입력 쌍들의 총 수는 4-비트 순열에 대하여 16과 같고, 그래서, α→β인 상기 확률은 Xi α,β/16으로 주어진다. 이들 표들의 첫 번째 열과 행의 엔트리들은 순열들에 대해 항상 유지되는 확률을 가진 트리비얼 특성, 즉, 0 →0을 나타낸다. 모든 다른 엔트리들에 걸친 최대값이 양자 모두의 순열들에 대하여 4와 같기 때문에, 모든 다른(논-트리비얼) 차분 특성들이 1/4 이하의 확률을 가진다는 것을 쉽게 알 수 있다.
P1의 XOR 분포표
Figure 112002006341279-pct00016
보상 효과는 예로서, 순열들 양자 모두에 대해 특성 7→5를 고려함으로써 보여질 수 있다. P0에 대하여, 7→5인 확률은 X0 7,5/16=1/4와 같고, P1에 대하여, 이 확률은 X1 7,5/16=0로 주어진다. 이 보상은 가능한 많은 요소들에 대하여 이루어지는 것이 바람직하다. 본 실시예에서, 이는 4를 위한 최대 XOR 편차값을 가지는 모든 요소들에 대하여 이를 유지한다. 순열들을 발생시키고 테스트하는 널리 공지된 기술들을 사용하여, 본 기술분야의 숙련자들은 4-비트 순열들에 대하여 수일내에 여덟 개의 이와 같은 순열들의 쌍들을 만들어낼 수 있다. 대안적으로, 예로서, 이들 순열들 양자 모두의 출력상에 아핀 변환을 적용함으로써 상기 조건을 충족시키는 서로 다른 순열들의 쌍 P0* 및 P1*가 P0 및 P1으로부터 구성될 수 있다. 이는 Z2에 걸친 비특이 4×4 매트릭스(non-singular 4×4 matrix) A와, 벡터 b∈Z2 4를 선택하고, 모든 x∈Z2 4에 대하여 P0*(x):=P0(x)A
Figure 712007004084328-pct00017
b와 P1*(x):=P1(x)A
Figure 712007004084328-pct00018
b를 정의함으로써 이루어질 수 있다. 이 방식으로 순열들의 322560 차분(순서) 쌍들이 구성될 수 있고, 이들 각각은 모든 상술한 조건들을 만족하는 것이 쉽게 확인될 수 있다. 이들 변환들 중 하나는 Z2 4→Z2 4로부터의 일치성 맵핑(identity mapping), 즉, P0*=P0이고, P1*=P1이다.
순열들의 세트의 선형 특성들:
하나의 S-박스를 위한 순열들의 세트는 하기의 조건을 만족한다.
순열들 중 하나의 논-트리비얼 선형 특성이 1/2로부터 최대 절대 편차를 가질 확률을 가지는 경우, 이때 이 선형 특성은 다른 순열들 중 적어도 하나에서 1/2에 보다 근접할 확률을 가진다.
이 방식으로 순열들 중 하나의 약점이 다른 순열들 중 하나의 세기에 의해 보상된다. 다른 순열들 중 하나의 대응하는 확률은 1/2과 같은 것이 바람직하며, 최적으로 약점을 보상한다. 따라서, 하나의 S-박스를 위한 한 쌍의 4-비트 순열들을 위한 선택된 조건은, 두 순열들 중 하나의 선형 특성이 1/4 또는 3/4의 확률을 가지는 경우, 이때, 이 선형 특성은 다른 순열에서 1/2의 확률을 가진다. 즉, S-박스의 각(라운드)키-독립 선형 특성은 3/8과 5/8 사이의 확률을 가진다.
두 개의 상술된 순열들 P0와 P1이 이 조건을 충족시키는 것을 예시하기 위해서, 그 선형 근사값표가 하기에 주어진다. Pi(α,β∈Z2 4에서)의 선형 근사값표의 열(α)과 행(β)의 엔트리는 Li α,β로 표시되며, 이는 하기와 같이 정의된다.
Li α,β:=#{x∈Z2 4|x·α=Pi(x)·β}-8, i=0,1
즉, 순열 Pi, Li α,β는 α에 의해 정의된 입력 비트상의 선형 관계가 β-8에 의해 정의된 대응하는 출력 비트상의 선형 관계와 동일한 입력들의 수를 나타내며, 이는 4-비트 순열들의 이상적인 수이다(보다 일반적으로는 n-비트 순열들에 대하여 상기 이상값은 2n-1이다).
P0의 선형 근사값표
Figure 112002006341279-pct00019
주어진(로컬) 선형 특성을 위한 확률, 즉, α에 의해 정의된 입력 비트상의 선형 관계가 β에 의해 정의된 출력 비트상의 선형 관계와 동일한 확률(α→β로 표시됨)은 1/2+Li α,β/16과 같다. 이들 표의 제 1 열과 행의 엔트리들은 임의의 맵핑에 대해 유지되는 확률을 가지는 트리비얼 특성, 즉, 0→0을 나타낸다. 모든 다른(논-트리비얼) 차분 특성들은 모든 다른 엔트리들 전체에 걸친 최소 및 최대값이 순열들 양자 모두에 대하여 각각 -4와 4와 같기 때문에, 1/4와 3/4 사이의 확률을 가지고 있다는 것을 쉽게 알 수 있다.
P1의 선형 근사값표
Figure 112002006341279-pct00020
보상 효과는 예로서, 순열들 양자 모두에 대한 선형 특성 2→3을 고려함으로써 알 수 있다. P0에 대하여, 2→3인 확률은 1/2+L0 2,3/16=3/4와 같고, P1에 대해서, 이 확률은 1/2+L1 2,3/16=1/2로 주어진다. 이 보상은 가능한 많은 요소들에 대하여 이루어지는 것이 바람직하다. 본 실시예에서, 이는 4의 최대 절대값을 가지는 모든 요소들에 대하여 유지된다. 순열들을 제거하고 테스트하기 위한 널리 공지된 기술들을 사용하여, 본 기술 분야의 숙련자들은 4-비트 순열에 대하여, 수일내에 8개의 이와 같은 순열들의 쌍들을 생성할 수 있다. 대안적으로, 예로서, 이들 순열들 양자 모두의 출력상에 아핀 변환을 적용함으로써 상기 조건을 충족시키는 서로 다른 순열들의 쌍 P0* 및 P1*가 P0 및 P1으로부터 구성될 수 있다. 이는 Z2에 걸친 비특이 4×4 매트릭스 A와, 벡터 b∈Z2 4를 선택하고, 모든 x∈Z2 4에 대하여 P0*(x):=P0(x)A
Figure 712007004084328-pct00021
b와 P1*(x):=P1(x)A
Figure 712007004084328-pct00022
b를 정의함으로써 이루어질 수 있다. 이 방식으로 순열들의 322560 차분(순서) 쌍들이 구성될 수 있고, 이들 각각은 모든 상술한 조건들을 만족하는 것이 쉽게 확인될 수 있다. 이들 변환들 중 하나는 Z2 4→Z2 4로부터의 일치성 맵핑, 즉, P0*=P0이고, P1*=P1이다.

Claims (13)

  1. 다수의 라운드(round)들에서 입력 데이터 블록을 출력 데이터 블록으로 암호화 변환하는 방법으로서, 각각의 라운드는 암호화 키(encryption key)로부터 유도된 각각의 라운드 키를 사용하는, 상기 암호화 변환 방법에 있어서,
    상기 방법은 순열에 기초한 S-박스(S-box)를 사용하여 상기 입력 데이터 블록에 비선형 연산을 각각의 라운드에서 실행하는 단계를 포함하고, 상기 방법은 상기 S-박스를 사용하기 전에 상기 S-박스와 연관된 적어도 2개의 순열들의 미리 결정된 세트로부터 상기 순열을 랜덤식으로 또는 의사-랜덤식으로 선택하는 각각의 라운드를 포함하고, 상기 순열들의 세트는 상기 세트의 순열들 중 하나의 암호적 약점(cryptographic weakness)이 상기 세트의 나머지 순열들 중 적어도 하나의 대응하는 암호적 세기(cryptographic strength)에 의해 적어도 부분적으로 보상되도록 형성되는, 암호화 변환 방법.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 데이터 블록은 n개의 데이터 비트들로 구성되고, 상기 순열들의 세트의 각각의 요소는 Z2 n으로 표현되는, 2n개의 요소들의 세트에 대한 순열이며, 이 세트에서의 각각의 순열의 각각의 논-트리비얼 차분 특성(non-trivial differential characteristic)은 최대 Pdiff의 확률을 가지며, 상기 순열들의 세트는, 상기 순열들 중 어느 것에서 Pdiff의 확률을 가진 각각의 논-트리비얼 차분 특성에 대하여, 이 차분 특성이 상기 세트의 나머지 순열들 중 적어도 하나에서 Pdiff보다 더 낮은 확률을 가지도록 선택된 순열들에 의해 형성되는, 암호화 변환 방법.
  4. 제 3 항에 있어서,
    상기 차분 특성은 상기 순열들 중 적어도 하나에서 0인 확률을 갖는, 암호화 변환 방법.
  5. 제 4 항에 있어서,
    n=4이고, Pdiff=1/4인, 암호화 변환 방법.
  6. 제 1 항에 있어서,
    상기 데이터 블록은 n개의 데이터 비트들로 구성되고, 상기 순열들의 세트의 각각의 요소는 Z2 n으로 표현되는, 2n개의 요소들의 세트에 대한 순열이며, 이 세트에서의 각각의 순열의 각각의 논-트리비얼 선형 특성은 최소 1/2 - Plin 및 최대 1/2 + Plin의 확률을 가지며, 상기 순열들의 세트는, 상기 순열들 중 어느 것에서 1/2 - Plin 또는 1/2 + Plin의 확률을 가진 각각의 논-트리비얼 선형 특성에 대하여, 이 선형 특성이 상기 세트의 나머지 순열들 중 적어도 하나에서 1/2에 더 근접한 확률을 갖도록 선택된 순열들에 의해 형성되는, 암호화 변환 방법.
  7. 제 5 항에 있어서,
    상기 선형 특성은 상기 순열들 중 적어도 하나에서 1/2인 확률을 갖는, 암호화 변환 방법.
  8. 제 6 항에 있어서,
    n=4이고, Plin=1/4인, 암호화 변환 방법.
  9. 제 1 항에 있어서,
    상기 순열들의 세트는 2개의 순열들로 구성되는, 암호화 변환 방법.
  10. 제 1 항에 있어서,
    각각의 라운드에서 사용된 상기 각각의 라운드 키의 제어하에 상기 순열의 선택을 실행하는 단계를 포함하는, 암호화 변환 방법.
  11. 제 9 항 또는 제 10 항에 있어서,
    상기 순열의 선택은 상기 라운드 키의 1 비트의 제어하에 실행되는, 암호화 변환 방법.
  12. 삭제
  13. 다수의 라운드들에서 입력 데이터 블록을 출력 데이터 블록으로 암호화 변환하는 시스템으로서, 각각의 라운드는 암호화 키로부터 유도된 각각의 라운드 키를 사용하는, 상기 암호화 변환 시스템에 있어서,
    상기 입력 데이터 블록을 수신하는 입력;
    S-박스와 연관된 적어도 2개의 순열들의 미리 결정된 세트를 저장하는 저장소;
    순열에 기초한 S-박스를 사용하여 상기 입력 데이터 블록에 비선형 연산을 각각의 라운드에서 실행하는 암호화 프로세서로서, 상기 프로세서는 상기 S-박스를 사용하기 전에 매번, 상기 S-박스와 연관된 순열들의 상기 저장된 세트로부터 상기 순열을 랜덤식으로 또는 의사-랜덤식으로 선택하도록 동작하고, 상기 순열들의 세트는 상기 세트의 순열들 중 하나의 암호적 약점이 상기 세트의 나머지 순열들 중 적어도 하나의 대응하는 암호적 세기에 의해 적어도 부분적으로 보상되도록 형성되는, 상기 암호화 프로세서; 및
    처리된 입력 데이터 블록을 출력하는 출력을 포함하는, 암호화 변환 시스템.
KR1020027002896A 2000-07-04 2001-06-25 대칭-키 암호들을 위한 치환-박스 KR100889465B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP00202326 2000-07-04
EP00202326.5 2000-07-04

Publications (2)

Publication Number Publication Date
KR20020041810A KR20020041810A (ko) 2002-06-03
KR100889465B1 true KR100889465B1 (ko) 2009-03-20

Family

ID=8171736

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020027002896A KR100889465B1 (ko) 2000-07-04 2001-06-25 대칭-키 암호들을 위한 치환-박스

Country Status (8)

Country Link
US (1) US7043016B2 (ko)
EP (1) EP1303941B1 (ko)
JP (1) JP4828082B2 (ko)
KR (1) KR100889465B1 (ko)
CN (1) CN1193537C (ko)
AU (1) AU2001269086A1 (ko)
TW (1) TW527811B (ko)
WO (1) WO2002003605A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100973425B1 (ko) 2006-12-21 2010-08-03 팔로 알토 리서치 센터 인코포레이티드 서브-채널 식별자들의 순열에 기초한 동적 프레임 스케줄링

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7577250B2 (en) * 2004-08-12 2009-08-18 Cmla, Llc Key derivation functions to enhance security
US7564970B2 (en) * 2004-08-12 2009-07-21 Cmla, Llc Exponential data transform to enhance security
US8077861B2 (en) * 2004-08-12 2011-12-13 Cmla, Llc Permutation data transform to enhance security
GB2379587B (en) * 2001-09-10 2003-08-20 Simon Alan Spacey A method and apparatus for securing electronic information
US20030068038A1 (en) * 2001-09-28 2003-04-10 Bedros Hanounik Method and apparatus for encrypting data
DE10149191C2 (de) * 2001-10-05 2003-12-18 Infineon Technologies Ag Verfahren und Vorrichtung zum Ermitteln von Ursprungsausgangsdaten aus Ursprungseingangsdaten auf der Basis einer kryptographischen Operation
IL147287A0 (en) * 2001-12-25 2002-08-14 Yissum Res Dev Co Method and apparatus for controlling atmospheric conditions
JP2005527853A (ja) * 2002-05-23 2005-09-15 アトメル・コーポレイション 高度暗号化規格(aes)のハードウェア暗号法エンジン
JP2006510067A (ja) * 2002-12-13 2006-03-23 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ラインドールのサブバイトファンクションの小さなハードウェア実現
JP2004212828A (ja) * 2003-01-08 2004-07-29 Sony Corp 暗号処理装置、および暗号処理方法、並びにコンピュータ・プログラム
US7415616B2 (en) * 2004-01-21 2008-08-19 National Institute Of Information And Communications Technology Cipher strength evaluation apparatus
KR100800468B1 (ko) * 2004-01-29 2008-02-01 삼성전자주식회사 저전력 고속 동작을 위한 하드웨어 암호화/복호화 장치 및그 방법
KR20070093963A (ko) * 2004-09-24 2007-09-19 시냅틱 래버러토리즈 리미티드 대입 박스들
JP4622807B2 (ja) * 2005-03-25 2011-02-02 ソニー株式会社 暗号処理装置、および暗号処理方法、並びにコンピュータ・プログラム
JP2008058830A (ja) * 2006-09-01 2008-03-13 Sony Corp データ変換装置、およびデータ変換方法、並びにコンピュータ・プログラム
JP5050454B2 (ja) * 2006-09-01 2012-10-17 ソニー株式会社 暗号処理装置、および暗号処理方法、並びにコンピュータ・プログラム
US9296600B2 (en) * 2007-07-11 2016-03-29 Stokely-Van Camp, Inc. Active sterilization zone for container filling
EP2051387A1 (en) * 2007-10-15 2009-04-22 CoreOptics, Inc., c/o The Corporation Trust Center Receiver, interleaving and deinterleaving circuit and method
KR100969961B1 (ko) 2007-12-20 2010-07-15 한국전자통신연구원 블록 암호 아리아의 치환 연산 장치 및 방법
JP2011512726A (ja) * 2008-01-31 2011-04-21 イルデト・コーポレート・ビー・ヴイ スマートカードの保護
CA2717622C (en) * 2008-03-05 2017-10-17 Irdeto B.V. White-box implementation
CN101257383B (zh) * 2008-03-28 2010-06-09 中国科学院软件研究所 一种快速的s盒透明阶检测方法
US8098816B2 (en) * 2008-10-17 2012-01-17 Qualcomm Incorporated Apparatus and method for evaluating a cipher structure's resistance to cryptanalysis
JP4687775B2 (ja) * 2008-11-20 2011-05-25 ソニー株式会社 暗号処理装置
KR101186335B1 (ko) 2008-12-15 2012-09-27 한국전자통신연구원 하이브리드 방식의 치환박스 연산장치를 포함하는 아리아 암복호화 장치 및 방법.
FR2941342B1 (fr) * 2009-01-20 2011-05-20 Groupe Des Ecoles De Telecommunications Get Ecole Nat Superieure Des Telecommunications Enst Circuit de cryptographie protege contre les attaques en observation, notamment d'ordre eleve.
FR2949887B1 (fr) * 2009-09-04 2013-02-08 Oberthur Technologies Procede de traitement cryptographique de donnees
CN101719823B (zh) * 2009-10-30 2012-07-11 中国科学院软件研究所 一种实现密码算法中的s-盒线性变换的方法
KR101601684B1 (ko) * 2011-05-18 2016-03-09 한국전자통신연구원 부채널 공격에 대응하는 대칭키 암호 알고리즘 구현 방법
US9251374B2 (en) 2011-12-22 2016-02-02 Intel Corporation Instructions to perform JH cryptographic hashing
WO2013112118A2 (en) 2011-12-22 2013-08-01 Intel Corporation Instructions to perform jh cryptographic hashing in a 256 bit data path
CN103546282B (zh) * 2012-07-12 2016-10-05 黄宜豊 具有三维运算、反馈控制与动态替换盒设计的加密方法
CN103888245A (zh) * 2012-12-20 2014-06-25 北京握奇数据系统有限公司 一种智能卡的s盒随机化方法和系统
US20150222421A1 (en) * 2014-02-03 2015-08-06 Qualcomm Incorporated Countermeasures against side-channel attacks on cryptographic algorithms
US9602273B2 (en) * 2015-05-06 2017-03-21 Nxp B.V. Implementing key scheduling for white-box DES implementation
CN108370311A (zh) 2015-12-15 2018-08-03 皇家飞利浦有限公司 计算设备和方法
CN105610585A (zh) * 2016-03-14 2016-05-25 北京三未信安科技发展有限公司 一种支持密码运算的微处理器、方法及系统
US10404667B2 (en) 2016-11-17 2019-09-03 Bank Of America Corporation Secure, autonomous file encryption and decryption
CN108170203B (zh) * 2018-02-02 2020-06-16 清华大学 用于可重构处理系统的查表算子及其配置方法
US11575504B2 (en) 2019-06-29 2023-02-07 Intel Corporation Cryptographic computing engine for memory load and store units of a microarchitecture pipeline
US11580234B2 (en) 2019-06-29 2023-02-14 Intel Corporation Implicit integrity for cryptographic computing
US20200145187A1 (en) * 2019-12-20 2020-05-07 Intel Corporation Bit-length parameterizable cipher
CN110807438B (zh) * 2019-11-11 2020-10-30 电子科技大学 一种基于空排列的生理信号非线性特征提取方法
CN111756521B (zh) * 2020-06-25 2022-05-27 桂林电子科技大学 基于Feistel-SP结构的密码S盒设计方法
US11669625B2 (en) 2020-12-26 2023-06-06 Intel Corporation Data type based cryptographic computing
US11610004B2 (en) * 2021-04-14 2023-03-21 Bank Of America Corporation System for implementing enhanced file encryption technique

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4972476A (en) * 1989-05-11 1990-11-20 Nathans Robert L Counterfeit proof ID card having a scrambled facial image
US5511123A (en) * 1994-08-04 1996-04-23 Northern Telecom Limited Symmetric cryptographic system for data encryption
KR0153758B1 (ko) * 1995-12-26 1998-11-16 양승택 입출력 변화 공격과 선형 공격에 안전한 대치회로 생성기 및 생성방법
JPH10153955A (ja) * 1996-11-25 1998-06-09 Nippon Signal Co Ltd:The 暗号装置
KR100389902B1 (ko) * 1997-06-23 2003-09-22 삼성전자주식회사 차분해독법과선형해독법에대하여안전성을보장하는고속블럭암호화방법
US6182216B1 (en) * 1997-09-17 2001-01-30 Frank C. Luyster Block cipher method
GB2329557B (en) * 1997-09-19 2002-05-01 Motorola As Method and apparatus for viterbi decoding of punctured codes
US6038317A (en) * 1997-12-24 2000-03-14 Magliveras; Spyros S. Secret key cryptosystem and method utilizing factorizations of permutation groups of arbitrary order 2l
US6243470B1 (en) * 1998-02-04 2001-06-05 International Business Machines Corporation Method and apparatus for advanced symmetric key block cipher with variable length key and block
US6075865A (en) * 1998-07-01 2000-06-13 Tecsec Incorporated Cryptographic communication process and apparatus
US6334197B1 (en) * 1998-08-17 2001-12-25 Hughes Electronics Corporation Turbo code interleaver with near optimal performance
US7346161B2 (en) * 2000-01-26 2008-03-18 Fujitsu Limited Method and apparatus for designing cipher logic, and a computer product
EP1307993B1 (en) * 2000-08-03 2005-06-29 Koninklijke Philips Electronics N.V. Linear transformation for symmetric-key ciphers

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
How to Strengthen DES using Existing Hardware(1994)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100973425B1 (ko) 2006-12-21 2010-08-03 팔로 알토 리서치 센터 인코포레이티드 서브-채널 식별자들의 순열에 기초한 동적 프레임 스케줄링

Also Published As

Publication number Publication date
WO2002003605A1 (en) 2002-01-10
US20020027987A1 (en) 2002-03-07
EP1303941B1 (en) 2012-12-19
CN1193537C (zh) 2005-03-16
US7043016B2 (en) 2006-05-09
JP4828082B2 (ja) 2011-11-30
TW527811B (en) 2003-04-11
KR20020041810A (ko) 2002-06-03
CN1383648A (zh) 2002-12-04
EP1303941A1 (en) 2003-04-23
JP2004502965A (ja) 2004-01-29
AU2001269086A1 (en) 2002-01-14

Similar Documents

Publication Publication Date Title
KR100889465B1 (ko) 대칭-키 암호들을 위한 치환-박스
Jakimoski et al. Chaos and cryptography: block encryption ciphers based on chaotic maps
US5745577A (en) Symmetric cryptographic system for data encryption
US5511123A (en) Symmetric cryptographic system for data encryption
US7054445B2 (en) Authentication method and schemes for data integrity protection
JP5079204B2 (ja) 対称鍵暗号のための線形変換
US6031911A (en) Practical S box design
US7110539B1 (en) Method and apparatus for encrypting and decrypting data
US8605897B2 (en) Symmetric-key encryption method and cryptographic system employing the method
Manjula et al. Constructing key dependent dynamic S-Box for AES block cipher system
KR19990084419A (ko) 블록 데이터 암호화 장치
JP2002366029A (ja) Dpaに対して安全な暗号化
Joshy et al. Text to image encryption technique using RGB substitution and AES
Hoobi Efficient hybrid cryptography algorithm
Noura et al. Overview of efficient symmetric cryptography: dynamic vs static approaches
Arshad et al. New extension of data encryption standard over 128-bit key for digital images
Sakib Analysis of Fundamental Algebraic Concepts and Information Security System
Heys et al. On the security of the CAST encryption algorithm
Lu Cryptanalysis of block ciphers
Ooi et al. Cryptanalysis of s-des
Sharma et al. Cryptography Algorithms and approaches used for data security
Pramod et al. An advanced AES algorithm using swap and 400 bit data block with flexible S-Box in Cloud Computing
KUMAR et al. Secure and Efficient Diffusion Layers for Block Ciphers.
Hong et al. Improved preimage attacks on hash modes of 8-round AES-256
Salman New method for encryption using mixing advanced encryption standard and blowfish algorithms

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B601 Maintenance of original decision after re-examination before a trial
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20070910

Effective date: 20080502

S901 Examination by remand of revocation
E902 Notification of reason for refusal
GRNO Decision to grant (after opposition)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130307

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140310

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20150302

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20160308

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20170308

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20180228

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20190304

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20200228

Year of fee payment: 12