KR20220030527A - 키 의존적 레이어를 이용한 암호 생성 장치 및 방법, 컴퓨터 판독 가능한 기록 매체 및 컴퓨터 프로그램 - Google Patents
키 의존적 레이어를 이용한 암호 생성 장치 및 방법, 컴퓨터 판독 가능한 기록 매체 및 컴퓨터 프로그램 Download PDFInfo
- Publication number
- KR20220030527A KR20220030527A KR1020200112004A KR20200112004A KR20220030527A KR 20220030527 A KR20220030527 A KR 20220030527A KR 1020200112004 A KR1020200112004 A KR 1020200112004A KR 20200112004 A KR20200112004 A KR 20200112004A KR 20220030527 A KR20220030527 A KR 20220030527A
- Authority
- KR
- South Korea
- Prior art keywords
- key
- data
- encrypted data
- outputting
- inputting
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/12—Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/002—Countermeasures against attacks on cryptographic mechanisms
- H04L9/003—Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/04—Masking or blinding
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S40/00—Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
- Y04S40/20—Information technology specific aspects, e.g. CAD, simulation, modelling, system security
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
실시예에 따른 키 의존적 레이어를 이용한 암호 생성 장치는 데이터를 입력으로 하여 상기 데이터의 중간값을 출력하는 제1 키 의존적 레이어와, 상기 데이터의 중간값을 입력으로 하여 암호화 데이터를 출력하는 암호화 부와, 상기 암호화된 데이터를 입력으로 하여 보호된 암호화 데이터를 출력하는 제2 키 의존적 레이어와, 상기 제1 키 의존적 레이어, 상기 암호화 부 및 상기 제2 키 의존적 레이어에 라운드 키 값을 제공하는 키 스케쥴러를 포함할 수 있다.
Description
실시예는 암호화 장비에 부채널 공격이 가능한 상황에서 공격자가 중간 값을 추측할 수 없도록 하는 기술에 관한 것이다.
일반적으로, 암호를 생성하는 기술은 아래와 같은 기법들이 사용될 수 있다.
마스킹(Masking)
마스킹 기법은 전력 분석 공격의 여러가지 대응 기법들 중 하나이다. 마스킹 기법은 평문 x에 대하여 암호문 y를 얻기 위해 마스킹 난수 m을 이용하여 의 암호문 을 구한 후, 최종적으로 y를 얻기 위해 의 연산을 수행한다. (경우에 따라 마스킹 기법은 다르게 구성한다.) 따라서 암호화 중 중간 값을 알 수 없기 때문에 일반적인 전력 분석 공격은 성공할 수 없다.
선형 연산의 Branch Number
선형 연산의 Branch Number는 선형 연산의 확산 정도를 수치화 한 값을 나타내는 것으로, 해당 값이 클수록 높은 확산 효과가 있음을 보장할 수 있다. 주어진 선형 연산 의 s 비트 크기의 워드에 대한 Branch Number 는 다음과 같이 정의된다.
MDS(Maximum Distance Separable) 행렬
MDS 행렬은 MDS 코드의 행렬을 지칭한다. 유한체(Finite field) GF(2s) 에서 정의된 [n,k,d] 코드가 d=n-k+1 을 만족할 때 MDS 코드라고 한다. 여기서, d는 [n,k,d] 코드에 포함된 서로 다른 코드 워드의 거리(distance)의 최소값을 나타낼 수 있다. 따라서 체계적(Systermatic) [2k,k,k+1] 코드의 생성자(Generator) k by 2k 행렬 의 입, 출력의 거리 는 항상 k+1 보다 크거나 같음을 만족한다. 암호에서는 이와 같은 [2k,k,k+1] 코드의 MDS 행렬 P를 사용하여 최대 확산성을 보장할 수 있다. 이와 같이, MDS 행렬 곱을 선형 연산으로 갖는 경우 해당 선형 연산의 Branch Number가 k+1 임을 보장할 수 있다. 다양한 행렬을 이용하여 암호의 선형 연산으로 사용되나, 행렬 곱을 통해 구성한 선형 연산의 이론적인 최대 Branch Number가 k+1 임이 알려져 있어 행렬 곱을 이용한 확산 효과를 k+1을 기준으로 평가하기도 한다.
상술한 문제점을 해결하기 위해, 실시예는 암호 기능을 탑재한 장치에 구현된 암호 알고리즘이 부채널 공격에 노출될 수 있는 점을 방지하기 위한 키 의존적 레이어를 이용한 암호 생성 장치 및 방법을 제공하는 것을 그 목적으로 한다.
이를 해결하기 위해 실시예는 부채널 대응기법(마스킹 기법) 적용이 용이한 키 의존적 레이어(Key Dependent Layer)의 연산으로 사용함으로써 비교적 효율적인 연산으로 부채널 공격자에게 중간 값을 알 수 없도록 만들어 줄 수 있다.
실시예에 따른 키 의존적 레이어를 이용한 암호 생성 장치는 데이터를 입력으로 하여 상기 데이터의 중간값을 출력하는 제1 키 의존적 레이어와, 상기 데이터의 중간값을 입력으로 하여 암호화 데이터를 출력하는 암호화 부와, 상기 암호화된 데이터를 입력으로 하여 보호된 암호화 데이터를 출력하는 제2 키 의존적 레이어와, 상기 제1 키 의존적 레이어, 상기 암호화 부 및 상기 제2 키 의존적 레이어에 라운드 키 값을 제공하는 키 스케쥴러를 포함할 수 있다.
상기 제1 키 의존적 레이어 및 상기 제2 키 의존적 레이어는 키 의존적 함수와 Key XOR 연산을 포함할 수 있다.
상기 키 의존적 함수는 행렬 곱 연산을 포함하고, 상기 행렬 곱 연산은 16비트의 마스터 키 값으로부터 결정될 수 있다.
상기 행렬 곱 연산은 4개의 상태값 워드와 16비트의 키를 입력받아 4개의 워드를 출력할 수 있다.
상기 키 의존적 함수는 마스킹 기법에 적용된 키 의존적 함수일 수 있다.
또한, 실시예에 따른 키 의존적 레이어를 이용한 암호 생성 방법은 데이터를 입력으로 하여 상기 데이터의 중간값을 출력하는 단계와, 상기 데이터의 중간값을 입력으로 하여 암호화 데이터를 출력하는 단계와, 상기 암호화된 데이터를 입력으로 하여 보호된 암호화 데이터를 출력하는 단계를 포함할 수 있다.
실시예에 의하면, 암호 알고리즘에 키 의존적 레이어(Key Dependent Layer)가 포함되어 있을 경우, 부채널 공격을 방지할 수 있는 효과가 있다.
또한, 실시예는 Key가 암호화 과정의 초기 및 후기의 Key Dependent Layer 연산을 결정하면서 부채널 공격 대응을 용이하게 해주는 효과가 있다.
또한, 실시예의 키 의존적 레이어 연산은 비교적 연산 비용이 적은 Companion Matrix의 행렬 곱(Matrix Multiplication) 연산을 활용하기 때문에 연산의 경량성을 최대화 할 수 있는 효과가 있다.
또한, 실시예는 기존의 부채널 대응기법(마스킹 기법)도 해당 연산에 적용하기 용이하기 때문에 부가적인 부채널 대응 기법도 효율적으로 추가 적용시킬 수 있는 효과가 있다.
도 1은 실시예에 따른 암호 생성 장치를 나타낸 블록도이다.
도 2는 키 의존적 레이어의 구성 요소를 표현한 도면이다.
도 3은 키 의존적 함수의 구성요소를 표현한 도면이다.
도 4는 마스킹이 적용된 마스킹된 키 의존적 레이어를 나타내는 도면이다.
도 5는 키 의존적 함수의 알고리즘을 나타내는 도면이다.
도 6은 Key Dependent Matrix Multiplication 알고리즘을 나타내는 도면이다.
도 7은 Key Dependent Matrix Multiplication 알고리즘에서 02와 03의 Galois Field 곱연산을 나타내는 도면이다.
도 8는 마스킹된 키 의존적 함수의 알고리즘을 나타내는 도면이다.
도 9은 Masked Key Dependent Matrix Multiplication 알고리즘을 나타내는 도면이다.
도 10은 Masked Key Dependent Matrix Multiplication 알고리즘에서 마스킹된 02와 03의 Galois Field 곱연산 결과 및 해당 출력 마스킹 값을 출력하는 알고리즘을 나타내는 도면이다.
도 11은 실시예에 따른 암호 생성 방법을 나타낸 순서도이다.
도 2는 키 의존적 레이어의 구성 요소를 표현한 도면이다.
도 3은 키 의존적 함수의 구성요소를 표현한 도면이다.
도 4는 마스킹이 적용된 마스킹된 키 의존적 레이어를 나타내는 도면이다.
도 5는 키 의존적 함수의 알고리즘을 나타내는 도면이다.
도 6은 Key Dependent Matrix Multiplication 알고리즘을 나타내는 도면이다.
도 7은 Key Dependent Matrix Multiplication 알고리즘에서 02와 03의 Galois Field 곱연산을 나타내는 도면이다.
도 8는 마스킹된 키 의존적 함수의 알고리즘을 나타내는 도면이다.
도 9은 Masked Key Dependent Matrix Multiplication 알고리즘을 나타내는 도면이다.
도 10은 Masked Key Dependent Matrix Multiplication 알고리즘에서 마스킹된 02와 03의 Galois Field 곱연산 결과 및 해당 출력 마스킹 값을 출력하는 알고리즘을 나타내는 도면이다.
도 11은 실시예에 따른 암호 생성 방법을 나타낸 순서도이다.
이하, 도면을 참조하여 실시예를 상세히 설명하기로 한다.
도 1은 실시예에 따른 암호 생성 장치를 나타낸 블록도이고, 도 2는 키 의존적 레이어의 구성 요소를 표현한 도면이고, 도 3은 키 의존적 함수의 구성요소를 표현한 도면이고, 도 4는 마스킹이 적용된 마스킹된 키 의존적 레이어를 나타내는 도면이고, 도 5는 키 의존적 함수의 알고리즘을 나타내는 도면이고, 도 6은 Key Dependent Matrix Multiplication 알고리즘을 나타내는 도면이고, 도 7은 Key Dependent Matrix Multiplication 알고리즘에서 02와 03의 Galois Field 곱연산을 나타내는 도면이고, 도 8는 마스킹된 키 의존적 함수의 알고리즘을 나타내는 도면이고, 도 9은 Masked Key Dependent Matrix Multiplication 알고리즘을 나타내는 도면이고, 도 10은 Masked Key Dependent Matrix Multiplication 알고리즘에서 마스킹된 02와 03의 Galois Field 곱연산 결과 및 해당 출력 마스킹 값을 출력하는 알고리즘을 나타내는 도면이다.
도 1을 참조하면, 실시예에 따른 암호 생성 장치(1000)는 제1 키 의존적 레이어(100)와 암호화 부(200)와 제2 키 의존적 레이어(300)와 키 스케쥴러(400)를 포함할 수 있다. 여기서, 키 스케줄러(400)는 마스터 키(MK)를 입력받고, 생성된 라운드 키(도 2의 RKi ll Ki)를 제1 키 의존적 레이어(100)와 암호화 부(200)와 제2 키 의존적 레이어(300)에 제공할 수 있다.
제1 키 의존적 레이어(100, Key Dependent Layer)는 데이터를 암호화하기 전에 적용될 수 있다. 여기서, 데이터(P)는 워드(word)를 포함할 수 있다. 제1 키 의존적 레이어(100)는 데이터(P)와 라운드 키(RKi ll Ki)를 입력으로 하여 연산할 수 있다. 제1 키 의존적 레이어(100)는 입력된 데이터(P)를 중간값(P')으로 출력할 수 있다. 여기서, 라운드 키(RKi ll Ki)는 마스터 키(MK)를 입력받은 키 스케쥴러(400)로부터 제공될 수 있다.
암호화 부(200, Encryption Body)는 제1 키 의존적 레이어(100)로부터 출력된 데이터의 중간값(P')을 입력으로 하여 암호화 데이터(C')를 출력할 수 있다.
암호화 부(200)은 길이가 정형화된 데이터를 암호화시킬 수 있는 암호화 장치를 사용할 수 있으며, 보다 상세하게 상용 블록암호 및 신규로 설계된 블록암호 사용이 가능하다. 따라서 일반적으로 해당 암호화 장치는 마스터 키(MK)로부터 제공 받은 라운드 키로부터 암호화 및 복호화가 가능한 것을 지칭한다.
제2 키 의존적 레이어(300)는 암호화된 데이터(C')를 입력으로 하여 보호된 암호화 데이터(C)를 출력할 수 있다. 제2 키 의존적 레이어(300)는 제1 키 의존적 레이어(100)와 동일하게 구성될 수 있다.
마스터 키(MK)를 알수 없는 공격자는 제1 및 제2 키 의존적 레이어(100, 300)의 연산을 결정할 수 없기 때문에 데이터 혹은 보호화된 암호화 데이터(P, C)로부터 중간값(P', C')를 알아 낼수 없다. 이에 공격자가 획득한 부채널 정보와 연관성이 존재하는 중간값을 구할 수 없는 공격자는 일반적인 부채널 공격 시행을 수행하기 어렵다. 이에 비교적 효율적인 연산으로 구성된 키 의존적 레이어(Key Dependent Layer)를 사용하여 해당 보호 기법을 데이터(P, C)에 적용할 수 있다.
이하에서는 키 의존적 레이어에 대한 구성을 살펴본다. 여기서, 키 의존적 레이어는 제1 키 의존적 레이어 또는 제2 키 의존적 레이어일 수 있으며, 제1 키 의존적 레이어와 제2 키 의존적 레이어는 동일한 구성을 가질 수 있다.
Key Dependent Layer의 구성
도 2에 도시된 바와 같이, 키 의존적 레이어(100)는 키 의존적 함수(110, Key Dependent Function, 이하 'KDF 함수'라 칭함)와 key(130) XOR 연산으로 이루어질 수 있다.
Key Dependent Function - KDF
도 3에 도시된 바와 같이, KDF 함수의 내부는 행렬 곱 연산을 포함할 수 있으며, 도 5에 도시된 바와 같이, 4개의 상태 값 워드와 16 비트의 키 값을 입력받고, 4개의 워드를 출력할 수 있다. 여기서, 행렬 곱 연산에 사용된 행렬은 16 비트의 키 Kj 로부터 결정된 행렬 M(Kj)의 곱을 통해 구성될 수 있다. 여기서, M(Kj)는 수학식 1과 같이 결정될 수 있다.
[수학식 1]
도 5는 Companoin 행렬 곱을 4번 시행하는 알고리즘을 나타내며, 행렬 곱 시행 시 상대적으로 적은 연산량을 갖는 02, 03을 사용하여 키에 대한 정보로 입력 워드값을 섞을 수 있다.
KDF 의 확산 효과
실시예에서 사용하는 선형 연산은 키 정보로부터 생성된 행렬 M(K) 곱 연산으로 구성될 수 있다. M(K)는 16 비트의 키 K로부터 결정될 수 있다. K를 구성하는 4개의 4비트 키 값 가 각각 하나의 Companion 행렬을 결정하여 서로 곱한 결과를 M(K)로 한다. 16비트의 키 K로부터 결정되는 216 개의 행렬 M(K)는 GF(24)(즉, s=4), GF(28)(즉, s=8) 상에서 모두 다르고, GF(24) 상에서의 행렬 M(K)의 Branch Number는 표 1과 같이 분포되어 있다.
[표 1]
위의 결과로부터 4 X 4의 행렬 곱 연산의 최대 확산성이 Branch Number = 5임을 고려해 보았을 때, 실시예에서 사용하는 행렬 M(K)이 상대적으로 높은 Branch Number를 갖는다고 할 수 있다.
마스킹을 적용한 KDL
실시예에서 사용하는 KDL은 XOR 연산에 대해 선형 성질을 갖고 있는 KDF를 라운드 함수로 가지고 있는 페이스텔(Feistel) 구조 기반이기 때문에 마스킹 기법의 적용이 용이하다. 마스킹 기법이 적용된 KDL을 MKDL으로 표기할 수 있다. MKDL가 6번의 MKDF로 구성된 예시로 도 4와 같이 나타낼 수 있다.
MKDF는 마스킹이 적용된 KDF로서, 입력받은 마스킹 값에 해당하는 출력 마스킹 값을 추가적인 결과값으로 도출할 수 있다.
도 8 내지 도 10은 MKDF와 MKDF의 구성요소를 나타내는 알고리즘이다. MKDL는 도 4에서 확인할 수 있듯이 입력 마스킹 값 m과 동일한 값으로 마스킹 된 출력값 , 을 출력함을 알 수 있다.
도 11은 실시예에 따른 암호 생성 방법을 나타낸 순서도이다.
도 11에 도시된 바와 같이, 실시예에 따른 암호 생성 방법은 데이터를 입력으로 하여 상기 데이터의 중간값을 출력하는 단계(S100)와, 상기 데이터의 중간값을 입력으로 하여 암호화 데이터를 출력하는 단계(S200)와, 상기 암호화된 데이터를 입력으로 하여 보호된 암호화 데이터를 출력하는 단계(S300)를 포함할 수 있다. 여기서, 암호 생성 방법은 암호 생성 장치에서 수행될 수 있다.
데이터를 입력으로 하여 상기 데이터의 중간값을 출력하는 단계(S100)는 제1 키 의존적 레이어에서 수행될 수 있다.
데이터의 중간값을 입력으로 하여 암호화 데이터를 출력하는 단계(S200)는 암호화부에서 수행될 수 있다.
암호화된 데이터를 입력으로 하여 보호된 암호화 데이터를 출력하는 단계(S300)는 제2 키 의존적 레이어에서 수행될 수 있다.
본 문서의 다양한 실시예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media)(예: 메모리(내장 메모리 또는 외장 메모리))에 저장된 명령어를 포함하는 소프트웨어(예: 프로그램)로 구현될 수 있다. 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시예들에 따른 전자 장치를 포함할 수 있다. 상기 명령이 제어부에 의해 실행될 경우, 제어부가 직접, 또는 상기 제어부의 제어하에 다른 구성요소들을 이용하여 상기 명령에 해당하는 기능을 수행할 수 있다. 명령은 컴파일러 또는 인터프리터에 의해 생성 또는 실행되는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, 비일시적은 저장매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.
실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다.
일 실시예에 따르면, 컴퓨터 프로그램을 저장하고 있는 컴퓨터 판독 가능 기록매체로서, 데이터를 입력으로 하여 상기 데이터의 중간값을 출력하는 단계와, 상기 데이터의 중간값을 입력으로 하여 암호화 데이터를 출력하는 단계와, 상기 암호화된 데이터를 입력으로 하여 보호된 암호화 데이터를 출력하는 단계를 수행하기 위한 동작을 포함하는 방법을 프로세서가 수행하도록 하기 위한 명령어를 포함할 수 있다.
일 실시예에 따르면, 컴퓨터 판독 가능한 기록매체에 저장되어 있는 컴퓨터 프로그램으로서, 데이터를 입력으로 하여 상기 데이터의 중간값을 출력하는 단계와, 상기 데이터의 중간값을 입력으로 하여 암호화 데이터를 출력하는 단계와, 상기 암호화된 데이터를 입력으로 하여 보호된 암호화 데이터를 출력하는 단계를 수행하기 위한 동작을 포함하는 방법을 프로세서가 수행하도록 하기 위한 명령어를 포함할 수 있다.
상기에서는 도면 및 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허청구범위에 기재된 실시예의 기술적 사상으로부터 벗어나지 않는 범위 내에서 실시예는 다양하게 수정 및 변경시킬 수 있음은 이해할 수 있을 것이다.
100: 제1 키 의존적 레이어
200: 암호화 부
300: 제2 키 의존적 레이어
400: 키 스케줄러
200: 암호화 부
300: 제2 키 의존적 레이어
400: 키 스케줄러
Claims (8)
- 데이터를 입력으로 하여 상기 데이터의 중간값을 출력하는 제1 키 의존적 레이어(Key Dependent Layer);
상기 데이터의 중간값을 입력으로 하여 암호화 데이터를 출력하는 암호화 부;
상기 암호화된 데이터를 입력으로 하여 보호된 암호화 데이터를 출력하는 제2 키 의존적 레이어; 및
상기 제1 키 의존적 레이어, 상기 암호화 부 및 상기 제2 키 의존적 레이어에 라운드 키 값을 제공하는 키 스케쥴러;
를 포함하는 암호 생성 장치. - 제1항에 있어서,
상기 제1 키 의존적 레이어 및 상기 제2 키 의존적 레이어는 키 의존적 함수와 Key XOR 연산을 포함하는 암호 생성 장치. - 제2항에 있어서,
상기 키 의존적 함수는 행렬 곱 연산을 포함하고, 상기 행렬 곱 연산은 16비트의 마스터 키 값으로부터 결정되는 암호 생성 장치. - 제3항에 있어서,
상기 행렬 곱 연산은 4개의 상태값 워드와 16비트의 키를 입력받아 4개의 워드를 출력하는 암호 생성 장치. - 제2항에 있어서,
상기 키 의존적 함수는 마스킹 기법에 적용된 키 의존적 함수인 암호 생성 장치. - 데이터를 입력으로 하여 상기 데이터의 중간값을 출력하는 단계;
상기 데이터의 중간값을 입력으로 하여 암호화 데이터를 출력하는 단계; 및
상기 암호화된 데이터를 입력으로 하여 보호된 암호화 데이터를 출력하는 단계;
를 포함하는 암호 생성 방법. - 컴퓨터 프로그램을 저장하고 있는 컴퓨터 판독 가능 기록매체로서,
상기 컴퓨터 프로그램은,
데이터를 입력으로 하여 상기 데이터의 중간값을 출력하는 단계;
상기 데이터의 중간값을 입력으로 하여 암호화 데이터를 출력하는 단계; 및
상기 암호화된 데이터를 입력으로 하여 보호된 암호화 데이터를 출력하는 단계;
를 프로세서가 수행하도록 하기 위한 명령어를 포함하는 컴퓨터 판독 가능한 기록매체. - 컴퓨터 판독 가능한 기록매체에 저장되어 있는 컴퓨터 프로그램으로서,
상기 컴퓨터 프로그램은,
데이터를 입력으로 하여 상기 데이터의 중간값을 출력하는 단계;
상기 데이터의 중간값을 입력으로 하여 암호화 데이터를 출력하는 단계; 및
상기 암호화된 데이터를 입력으로 하여 보호된 암호화 데이터를 출력하는 단계;
를 프로세서가 수행하도록 하기 위한 명령어를 포함하는 컴퓨터 프로그램.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200112004A KR102404223B1 (ko) | 2020-09-03 | 2020-09-03 | 키 의존적 레이어를 이용한 암호 생성 장치 및 방법, 컴퓨터 판독 가능한 기록 매체 및 컴퓨터 프로그램 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200112004A KR102404223B1 (ko) | 2020-09-03 | 2020-09-03 | 키 의존적 레이어를 이용한 암호 생성 장치 및 방법, 컴퓨터 판독 가능한 기록 매체 및 컴퓨터 프로그램 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220030527A true KR20220030527A (ko) | 2022-03-11 |
KR102404223B1 KR102404223B1 (ko) | 2022-06-02 |
Family
ID=80814539
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200112004A KR102404223B1 (ko) | 2020-09-03 | 2020-09-03 | 키 의존적 레이어를 이용한 암호 생성 장치 및 방법, 컴퓨터 판독 가능한 기록 매체 및 컴퓨터 프로그램 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102404223B1 (ko) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180110550A (ko) * | 2017-03-29 | 2018-10-10 | 한국전자통신연구원 | 부채널 분석 방지를 위한 화이트박스 암호 방법 및 장치 |
-
2020
- 2020-09-03 KR KR1020200112004A patent/KR102404223B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180110550A (ko) * | 2017-03-29 | 2018-10-10 | 한국전자통신연구원 | 부채널 분석 방지를 위한 화이트박스 암호 방법 및 장치 |
Non-Patent Citations (2)
Title |
---|
Kranz, Thorsten 외 2명. "Linear cryptanalysis: Key schedules and tweakable block ciphers." IACR Transactions on Symmetric Cryptology (2017.)* * |
Lisitskaya, I. V. 외 2명. "Importance of S-Blocks in Modern Block Ciphers." International Journal of Computer Network &Information Security 4.10 (2012.)* * |
Also Published As
Publication number | Publication date |
---|---|
KR102404223B1 (ko) | 2022-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12101415B2 (en) | Method of RSA signature or decryption protected using a homomorphic encryption | |
EP3154217B1 (en) | Scrambled tweak mode of block ciphers for differential power analysis resistant encryption | |
US8199909B2 (en) | Method and device for carrying out a cryptographic calculation | |
US9898623B2 (en) | Method for performing an encryption with look-up tables, and corresponding encryption apparatus and computer program product | |
US8504845B2 (en) | Protecting states of a cryptographic process using group automorphisms | |
US20060023875A1 (en) | Enhanced stream cipher combining function | |
KR102397579B1 (ko) | 부채널 분석 방지를 위한 화이트박스 암호 방법 및 장치 | |
CN111404952B (zh) | 变电站数据加密传输方法、装置、计算机设备和存储介质 | |
WO2014136386A1 (ja) | タグ生成装置、タグ生成方法およびタグ生成プログラム | |
CN113904808B (zh) | 一种私钥分发、解密方法、装置、设备及介质 | |
CN111010266B (zh) | 消息的加解密、读写方法、装置、计算机设备和存储介质 | |
US11870913B2 (en) | Method for generating a digital signature of an input message | |
KR102315632B1 (ko) | 신뢰 서버의 준동형 암호 기반 확장 가능한 그룹 키 생성 방법 및 시스템 | |
US10075290B2 (en) | Operator lifting in cryptographic algorithm | |
EP0996250A2 (en) | Efficient block cipher method | |
EP3832945A1 (en) | System and method for protecting memory encryption against template attacks | |
KR102404223B1 (ko) | 키 의존적 레이어를 이용한 암호 생성 장치 및 방법, 컴퓨터 판독 가능한 기록 매체 및 컴퓨터 프로그램 | |
CN115766244A (zh) | 车联网信息加密方法、装置、计算机设备和存储介质 | |
US7142673B1 (en) | Method for the cryptographic conversion of L-bit input blocks of digital data into L-bit output blocks | |
US20240113871A1 (en) | Encryption processing apparatus, encryption processing method for encryption processing apparatus, and storage medium | |
KR102407204B1 (ko) | 보안이 개선된 암호압축 장치 및 방법 | |
WO2023227894A1 (en) | Secure processing system and method | |
CN115842628A (zh) | 实现密钥处理的方法、装置、计算机存储介质及固态硬盘 | |
KR20230087983A (ko) | Dghv 기반 완전 동형암호 시스템 및 이를 이용한 연산 방법 | |
CN114362934A (zh) | 密钥生成方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right |