KR102067065B1 - 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치, 이를 이용한 암호화 장치 및 방법 - Google Patents

전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치, 이를 이용한 암호화 장치 및 방법 Download PDF

Info

Publication number
KR102067065B1
KR102067065B1 KR1020180146443A KR20180146443A KR102067065B1 KR 102067065 B1 KR102067065 B1 KR 102067065B1 KR 1020180146443 A KR1020180146443 A KR 1020180146443A KR 20180146443 A KR20180146443 A KR 20180146443A KR 102067065 B1 KR102067065 B1 KR 102067065B1
Authority
KR
South Korea
Prior art keywords
message
matrix
irregularity
affine transformation
attack response
Prior art date
Application number
KR1020180146443A
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 국민대학교산학협력단
Application granted granted Critical
Publication of KR102067065B1 publication Critical patent/KR102067065B1/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/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/003Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Algebra (AREA)
  • Computational Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치, 이를 이용한 암호화 장치 및 방법에 관한 것으로, 암호화 장치는 메시지에 관한 불규칙성을 증가시켜 부채널 공격에 대응하는 부채널 공격 대응 메시지를 생성하는 부채널 공격 대응 처리부, 상기 부채널 공격 대응 메시지에 관해 제1 아핀 변환(Affine Transformation)을 수행하고 상기 불규칙성을 제거하여 중간 메시지를 생성하는 아핀 변환 처리부 및 상기 중간 메시지에 관해 제2 아핀 변환을 수행하여 상기 메시지에 관한 서명 값을 생성하는 서명 값 생성부를 포함한다. 따라서, 본 발명은 행렬-벡터 곱 연산의 부채널 분석 취약점을 방어하기 위한 것으로 행렬-벡터 곱 연산이 사용되는 모든 암호에 사용될 수 있다.

Description

전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치, 이를 이용한 암호화 장치 및 방법{A MATRIX-VECTOR MULTIPLICATION APPARATUS BASED ON MESSAGE RANDOMIZATION WHICH IS SAFE FOR POWER ANALYSIS AND ELECTROMAGNETIC ANALYSIS, AND AN ENCRYPTION APPARATUS AND METHOD USING THE SAME}
본 발명은 행렬-벡터 곱 연산 및 이를 이용한 암호화 기술에 관한 것으로, 보다 상세하게는 행렬-벡터 곱 연산의 부채널 분석 취약점을 방어할 수 있는 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치, 이를 이용한 암호화 장치 및 방법에 관한 것이다.
스마트 카드 및 IC(integrated circuit) 카드는 사용자에 관한 보안 정보를 포함한다. 사물인터넷(Internet of Thing, IoT) 환경 하에서 다수의 사물들이 서로 연결되고 사용자 정보를 공유할 수 있다. 또한 사용자 인증을 통하여 다수의 타인에게 자신을 인증하는 과정이 포함될 수 있다. 따라서, 사용자의 보안 정보가 해킹에 의하여 유출되는 것을 방지하기 위하여, 전송되는 보안 정보를 암호문으로 만들어서 전송할 필요가 있으며, 부인 방지 및 문서 위변조 감지 목적을 위해 전자 서명과 함께 문서를 전송할 필요가 있다.
암호화 기술은 송신측(transmission side)에서 평문(plaintext)을 암호화(encrypt)하고, 수신측(receiving side)에서 암호문(ciphertext)을 해독(decrypt)하는데 사용될 수 있다. 즉, 암호화 기술은 평문의 암호화 및 암호문의 복호화 하는 기술에 해당할 수 있다. 전자 서명 기술은 암호화 기술과 유사하지만 송신측에서 개인키를 이용해 메시지(또는 문서)의 서명(Signature)을 생성하고 수신측에서 공개키를 이용해 서명 값이 올바른지 확인하는데 사용될 수 있다.
공개키 암호시스템에서 암호화 또는 복호화에 있어서 가장 중요한 요소 중 하나는 부채널 공격(side channel attack)에 대한 방지 기술을 적용하는 것으로, 부채널 공격 방지 기술로는 부채널을 통해 수집하는 정보인 전력, 전자기파를 랜덤하게 나타나도록 하거나 균일하게 나타나게 하는 방법이 사용될 수 있다.
다변수 다항식 기반 암호시스템은 유한체 위에서 비선형(일반적으로 2차) 방정식의 해를 구하는 것이 NP-hard 문제임을 기반으로 하는 공개키 암호시스템에 해당할 수 있다. 다변수 다항식 기반 서명 스킴(scheme)은 서명 생성이 매우 효율적이기 때문에 포스트 양자 암호의 중요한 후보에 해당한다.
한국등록특허 제10-0561847(2006.03.10)호
본 발명의 일 실시예는 행렬-벡터 곱 연산의 부채널 분석 취약점을 방어할 수 있는 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치, 이를 이용한 암호화 장치 및 방법을 제공하고자 한다.
본 발명의 일 실시예는 2m 번의 필드 곱셈 및 1번의 역연산의 추가로 소비 전력과 중간 값과의 연관성을 줄일 수 있는 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치, 이를 이용한 암호화 장치 및 방법을 제공하고자 한다.
본 발명의 일 실시예는 행렬-벡터 곱 연산을 포함하는 모든 암호에 적용할 수 있고 첫 번째 아핀 변환에 메시지 랜덤화 기법을 적용하여 서명 스킴의 안전성을 향상시킬 수 있는 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치, 이를 이용한 암호화 장치 및 방법을 제공하고자 한다.
실시예들 중에서, 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 암호화 장치는 메시지에 관한 불규칙성을 증가시켜 부채널 공격에 대응하는 부채널 공격 대응 메시지를 생성하는 부채널 공격 대응 처리부, 상기 부채널 공격 대응 메시지에 관해 제1 아핀 변환(Affine Transformation)을 수행하고 상기 불규칙성을 제거하여 중간 메시지를 생성하는 아핀 변환 처리부 및 상기 중간 메시지에 관해 제2 아핀 변환을 수행하여 상기 메시지에 관한 서명 값을 생성하는 서명 값 생성부를 포함한다.
상기 부채널 공격 대응 처리부는 상기 메시지에 해시 함수를 적용하여 변환된 메시지를 기초로 상기 부채널 공격 대응 메시지를 생성할 수 있다.
상기 부채널 공격 대응 처리부는 난수 생성기로부터 수신한 난수와 상기 메시지와의 곱 연산을 통해 상기 불규칙성을 증가시킬 수 있다.
상기 아핀 변환 처리부는 상기 부채널 공격 대응 메시지에 변환 행렬 S의 역변환 행렬 S-1을 적용하여 상기 제1 아핀 변환을 수행할 수 있다.
상기 아핀 변환 처리부는 상기 제1 아핀 변환을 수행한 결과와 상기 난수의 역원과의 곱 연산을 통해 상기 불규칙성을 제거할 수 있다.
상기 서명 값 생성부는 상기 중간 메시지에 관해 적어도 하나의 변환 행렬에 관한 역변환 행렬을 연속하여 적용함으로써 상기 제2 아핀 변환을 수행할 수 있다.
실시예들 중에서, 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 암호화 방법은 메시지에 관한 불규칙성을 증가시켜 부채널 공격에 대응하는 부채널 공격 대응 메시지를 생성하는 단계, 상기 부채널 공격 대응 메시지에 관해 제1 아핀 변환을 수행하고 상기 불규칙성을 제거하여 중간 메시지를 생성하는 단계 및 상기 중간 메시지에 관해 제2 아핀 변환을 수행하여 상기 메시지에 관한 서명 값을 생성하는 단계를 포함한다.
실시예들 중에서, 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치는 메시지에 관한 불규칙성을 증가시켜 랜덤 메시지를 생성하는 랜덤 메시지 생성 모듈, 변환 행렬과 상기 랜덤 메시지 간의 행렬-벡터 곱 연산을 수행하는 행렬-벡터 곱 연산 수행 모듈 및 상기 행렬-벡터 곱 연산의 결과 메시지로부터 상기 불규칙성을 제거하는 불규칙성 제거 모듈을 포함한다.
상기 랜덤 메시지 생성 모듈은 난수 생성기로부터 수신한 난수와 상기 메시지와의 곱 연산을 통해 상기 불규칙성을 증가시킬 수 있다.
상기 불규칙성 제거 모듈은 상기 결과 메시지와 상기 난수의 역원과의 곱 연산을 통해 상기 불규칙성을 제거할 수 있다.
개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
본 발명의 일 실시예에 따른 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치, 이를 이용한 암호화 장치 및 방법은 2m 번의 필드 곱셈 및 1번의 역연산의 추가로 소비 전력과 중간 값과의 연관성을 줄일 수 있다.
본 발명의 일 실시예에 따른 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치, 이를 이용한 암호화 장치 및 방법은 행렬-벡터 곱 연산을 포함하는 모든 암호에 적용할 수 있고 첫 번째 아핀 변환에 메시지 랜덤화 기법을 적용하여 서명 스킴의 안전성을 향상시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 암호화 시스템을 설명하는 도면이다.
도 2는 도 1에 있는 암호화 장치를 설명하는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치를 설명하는 블록도이다.
도 4는 도 1에 있는 암호화 장치에서 수행되는 암호화 과정을 설명하는 순서도이다.
도 5는 도 3의 행렬-벡터 곱 연산 장치에서 수행되는 행렬-벡터 곱 연산 과정을 설명하는 순서도이다.
도 6은 도 1에 있는 암호화 장치에서 수행되는 행렬-벡터 곱 연산을 설명하는 예시도이다.
도 7은 도 3의 행렬-벡터 곱 연산 장치에서 수행되는 메시지 랜덤화 기반의 행렬-벡터 곱 연산을 구현한 알고리즘을 설명하는 예시도이다.
본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.
"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.
본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.
1) 전력 분석 공격 - 1차 DPA(CPA)
DPA(Differential Power Analysis)는 비트 상태와 전력 소비가 유관하다는 점을 이용한 분석 방법에 해당할 수 있다. DPA는 전력 소비 모델인 해밍 웨이트(Hemming Weight) 또는 해밍 디스턴스(Hemming Distance)를 적용할 수 있고, 이를 전력 소비 패턴과의 관계를 파악하여 암호를 공격하는 방법에 해당할 수 있다. DPA 중 CPA(Correlation Power Analysis)는 전력 소비 패턴과 예상 중간 값의 상관도 계산을 이용하여 암호에 대한 공격을 수행할 수 있고, 상관도는 다음의 수학식과 같이 정의될 수 있다.
[수학식]
Figure 112018117240952-pat00001
2) 마스킹 기법
DPA는 전력 소비 패턴과 계산한 중간 값의 상관 관계를 이용한 공격 방법이다. 이 공격의 기본 가정으로, 공격 대상의 전력 소비 패턴을 측정할 수 있으며 암호 알고리즘의 중간 값을 계산할 수 있어야 한다. 마스킹 기법은 중간 값 계산을 어렵게 하는 기법으로 알고리즘 중간에 랜덤 값을 혼합할 수 있다. 이 경우 1차 DPA(CPA)에서 공격자는 원하는 중간 값 계산이 불가능하여 공격을 수행할 수 없다. 마스킹 기법에 대해 공격하기 위해서는 하나의 파형에서 다수의 파형 패턴 지점을 혼합하여 공격하는 High Order DPA(CPA)를 수행해야 한다. 그러나, High Order DPA(CPA)는 필요 전력 소비 패턴 수가 많고 계산해야 할 지점이 증가하여 공격 시간이 증가하게 된다. 또한, High Order DPA(CPA)에 대응하기 위해 다수의 랜덤 값을 이용하는 High Order Masking 기법을 적용할 수 있다. 고차로 갈수록 하나의 파형에서 필요로 하는 구간이 늘어나며, 이에 따라 공격 시간 및 필요한 파형 수가 늘어나기 때문에 공격자의 공격 복잡도가 상승할 수 있다.
도 1은 본 발명의 일 실시예에 따른 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 암호화 시스템을 설명하는 도면이다.
도 1을 참조하면, 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 암호화 시스템(100)은 사용자 단말(110), 암호화 장치(130) 및 데이터베이스(150)을 포함할 수 있다.
사용자 단말(110)은 암호화 대상이 되는 메시지를 제공하고 서명 값을 수신하여 확인할 수 있는 컴퓨팅 장치에 해당할 수 있다. 사용자 단말(110)은 스마트폰, 노트북 또는 컴퓨터로 구현될 수 있으며, 반드시 이에 한정되지 않고, 태블릿 PC 등 다양한 디바이스로도 구현될 수 있다. 사용자 단말(110)은 암호화 장치(130)와 네트워크를 통해 연결될 수 있고, 복수의 사용자 단말(110)들은 암호화 장치(130)와 동시에 연결될 수 있다.
암호화 장치(130)는 메시지에 대한 서명 값을 생성하는 암호화 과정에서 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기법을 적용할 수 있는 컴퓨터 또는 프로그램에 해당하는 서버로 구현될 수 있다. 암호화 장치(130)는 사용자 단말(110)과 유선 네트워크 또는 블루투스, WiFi 등과 같은 무선 네트워크로 연결될 수 있고, 유선 또는 무선 네트워크를 통해 사용자 단말(110)과 통신을 수행할 수 있다. 일 실시예에서, 암호화 장치(130)는 데이터베이스(150)와 연동하여 메시지 랜덤화 및 암호화에 필요한 다양한 정보들을 저장할 수 있다. 한편, 암호화 장치(130)는 도 1과 달리, 데이터베이스(150)를 내부에 포함하여 구현될 수 있다.
일 실시예에서, 암호화 장치(130)는 암호 알고리즘, 특히 행렬-벡터 곱 연산이 포함된 서명 스킴을 이용하여 암호화 과정을 수행할 수 있다. 또한, 암호화 장치(130)는 메시지 랜덤화 기법이 적용된 행렬-벡터 곱 연산을 암호화 과정에 적용함으로써 다변수 2차 다항식 기반의 서명 기법이 가지고 있는 취약점을 극복할 수 있다. 따라서, 암호화 장치(130)는 포스트 양자 암호를 이용하는 전자서명, 사용자 인증, 사물인터넷, 금융보안 등 다양한 분야에서 활용될 수 있다.
데이터베이스(150)는 암호화 장치(130)가 메시지의 랜덤화 및 암호화를 수행하는 과정에서 필요한 다양한 정보들을 저장할 수 있다. 예를 들어, 데이터베이스(150)는 사용자 단말(110)로부터 수신한 메시지를 저장할 수 있고, 랜덤화 또는 암호화에 사용할 난수 발생기와 서명 스킴에 관한 정보들을 저장할 수 있으며, 반드시 이에 한정되지 않고, 메시지의 랜덤화 또는 암호화 과정에서 다양한 형태로 수집 또는 가공된 정보들을 저장할 수 있다.
도 2는 도 1에 있는 암호화 장치를 설명하는 블록도이다.
도 2를 참조하면, 암호화 장치(130)는 부채널 공격 대응 처리부(210), 아핀 변환 처리부(230), 서명 값 생성부(250) 및 제어부(270)를 포함할 수 있다.
부채널 공격 대응 처리부(210)는 메시지에 관한 불규칙성을 증가시켜 부채널 공격에 대응하는 부채널 공격 대응 메시지를 생성할 수 있다. 부채널 공격 대응 처리부(210)는 사용자 단말(110)로부터 수신되거나 또는 데이터베이스(150)에 저장된 메시지를 기초로 부채널 공격 대응 메시지를 생성할 수 있다. 부채널 공격 대응 메시지는 부채널 공격에 대응하기 위하여 메시지 원본에 불규칙성을 주입한 결과 생성된 메시지에 해당할 수 있다. 특히, 대표적인 부채널 공격인 전력 분석은 암호 장치의 소비 전력이 암호화 알고리즘 동작 시 연산되는 중간 값에 의존한다는 사실을 이용하는 공격 방법이기 때문에 부채널 공격 대응 처리부(210)는 암호화 과정에서 사용되는 메시지를 랜덤하게 이용하는 메시지 랜덤 기법을 적용함으로써 메시지의 불규칙성을 증가시킬 수 있다.
일 실시예에서, 부채널 공격 대응 처리부(210)는 메시지에 해시 함수를 적용하여 변환된 메시지를 기초로 부채널 공격 대응 메시지를 생성할 수 있다. 본 발명의 일 실시예에 따른 암호화 장치(130)는 원본 메시지를 그대로 이용하여 암호화를 수행할 수 있고 원본 메시지에 해시 함수를 적용하여 메시지를 변환한 후 부채널 공격 대응 메시지를 생성할 수 있다. 해시 함수는 임의의 길이를 갖는 메시지를 입력 받아 고정된 길이의 해시값을 출력하는 함수에 해당할 수 있고, 특히 전자 서명과 함께 사용되어 효율적인 서명 생성을 가능하게 할 수 있다. 예를 들어, 긴 메시지(또는 문서)에 해당하는 서명을 생성하는 경우 전체 메시지에 대해 직접 서명을 하는 대신 짧은 해시값으로 변환 후 이를 기초로 서명을 함으로써 효율적인 서명 생성이 가능하다.
일 실시예에서, 부채널 공격 대응 처리부(210)는 난수 생성기로부터 수신한 난수와 부채널 공격 대응 메시지와의 곱 연산을 통해 불규칙성을 증가시킬 수 있다. 보다 구체적으로, 부채널 공격 대응 처리부(210)는 암호화에 사용되는 메시지 Y를 그대로 아핀 변환 처리부(230)에 전달하는 대신 랜덤한 값 r과의 곱 연산을 통해 생성된 메시지 Y * r(여기에서, *는 벡터-스칼라 곱으로 Y * r = (ry1, ry2, ..., rym)을 의미한다.)을 전달할 수 있다. 메시지 Y * r은 랜덤한 값 r과의 곱 연산에 의해 불규칙성이 증가됨에 따라 이를 이용한 암호화 과정에 대한 전력 분석 시 비밀키 노출 가능성을 낮추는 원인이 될 수 있다.
아핀 변환 처리부(230)는 부채널 공격 대응 메시지에 관해 제1 아핀 변환(Affine Transformation)을 수행하고 불규칙성을 제거하여 중간 메시지를 생성할 수 있다. 여기에서, 아핀 변환(Affine Transformation)은 아핀 공간 사이의 변환으로서 직선 및 직선 위의 점들의 분비를 보존할 수 있다. 예를 들어, 선분과 그의 중점은 아핀 변환 후에도 여전히 선분과 중점에 해당할 수 있다. 또한, 중간 메시지는 제1 아핀 변환 결과로 생성된 메시지로서 암호화 과정에서 생성되는 중간 값에 해당할 수 있다. 제1 아핀 변환(Affine Transformation)은 행렬- 벡터 곱 연산을 포함하는 다변수 2차 다항식 기반의 서명 스킴에 있어서 비밀키 복구 공격 대상이 되는 첫 번째 아핀 변환에 해당할 수 있고, 레인보우(Rainbow) 서명 알고리즘의 경우 아핀 변환 S의 역변환에 해당할 수 있다.
보다 구체적으로, 아핀 변환 처리부(230)는 난수 r과의 곱 연산을 통해 불규칙성이 증가한 부채널 공격 대응 메시지를 기초로 제1 아핀 변환을 수행할 수 있고 제1 아핀 변환의 결과로서 도출된 메시지로부터 불규칙성을 제거함으로써 원본 메시지에 대한 아핀 변환과 동일한 결과를 중간 메시지로서 획득할 수 있다. 결과적으로, 암호화 장치(130)는 암호화 과정에서 아핀 변환 수행시 사용되는 메시지에 불규칙성을 주입시키고 아핀 변환 후 이를 복원함으로써 암호화 과정에 대한 변경 없이도 소비전력과 중간 값 간의 연관성을 효과적으로 줄일 수 있다.
일 실시예에서, 아핀 변환 처리부(230)는 부채널 공격 대응 메시지에 변환 행렬 S의 역변환 행렬 S-1을 적용하여 제1 아핀 변환을 수행할 수 있다. 예를 들어, 레인보우 서명 스킴을 사용하여 암호화를 수행하는 경우 아핀 변환 처리부(230)는 불규칙성이 증가된 부채널 공격 대응 메시지 (Y * r)T와 변환 행렬 S의 역변환 행렬 S-1 간의 곱 연산, 즉 S-1(Y * r)T를 수행함으로써 제1 아핀 변환을 수행할 수 있다. 다변수 2차 다항식 기반의 서명 스킴에 있어서, 첫 번째 아핀 변환 S는 비밀키 복구 공격의 주요 타깃(target)에 해당할 수 있고 S의 복구가 불가능할 경우 전체 비밀키 복구도 불가능할 수 있다. 따라서, 암호화 장치(130)는 아핀 변환 처리부(230)를 통해 첫 번째 아핀 변환인 제1 아핀 변환에 대해 메시지 랜덤 기법을 적용함으로써 전력 분석 및 전자파 분석에 안전한 암호화를 수행할 수 있다.
일 실시예에서, 아핀 변환 처리부(230)는 제1 아핀 변환을 수행한 결과와 난수의 역원과의 곱 연산을 통해 불규칙성을 제거할 수 있다. 예를 들어, 레인보우 서명 스킴을 사용하여 암호화를 수행하는 경우 아핀 변환 처리부(230)는 제1 아핀 변환을 수행한 결과인 S-1(Y * r)T와 난수 r의 역원인 r-1 간의 곱 연산, 즉 (S-1(Y * r)T) * r-1를 수행함으로써 불규칙성을 제거할 수 있다. 여기에서, 난수 r은 제1 아핀 변환에 사용된 부채널 공격 대응 메시지를 생성하는 과정에서 사용된 난수에 해당할 수 있고, (S-1(Y * r)T) * r-1은 원본 메시지 Y에 대한 제1 아핀 변환을 적용한 결과인 S-1YT와 동일할 수 있다.
서명 값 생성부(250)는 중간 메시지에 관해 제2 아핀 변환(Affine Transformation)을 수행하여 메시지에 관한 서명 값을 생성할 수 있다. 제2 아핀 변환(Affine Transformation)은 암호화 과정에서 사용되는 아핀 변환으로서 제1 아핀 변환에 해당하는 첫 번째 아핀 변환을 제외한 나머지 아핀 변환에 해당할 수 있고, 복수의 아핀 변환들의 조합에 해당할 수 있다. 서명 값 생성부(250)는 첫 번째 아핀 변환에 대해 메시지 랜덤화 기법을 적용한 후 제2 아핀 변환을 순차적으로 수행하여 메시지에 관한 서명 값 생성을 진행할 수 있다. 이 경우 서명 값 생성 결과로서 생성되는 서명 값은 해당 과정에 사용된 메시지의 형태, 서명 스킴의 종류 등에 따라 다양한 형태로 구현될 수 있다.
일 실시예에서, 서명 값 생성부(250)는 제2 아핀 변환 과정에서 수행되는 적어도 하나의 아핀 변환에 사용되는 메시지에 대해 제1 아핀 변환과 동일한 메시지 랜덤 기법을 적용할 수 있다. 행렬-벡터 곱 연산을 포함하는 암호 알고리즘, 특히 다변수 2차 다항식 기반의 서명 스킴에 대해 주요 공격 대상은 첫 번째 아핀 변환 S에 해당할 수 있어 메시지 랜덤화 기법을 적용하는 것이 필수적이지만 나머지 아핀 변환에 대한 메시지 랜덤화 기법은 선택적일 수 있다.
일 실시예에서, 서명 값 생성부(250)는 중간 메시지에 관해 적어도 하나의 변환 행렬에 관한 역변환 행렬을 연속하여 적용함으로써 제2 아핀 변환을 수행할 수 있다. 예를 들어, 레인보우 서명 스킴을 사용하여 서명 값 생성을 수행하는 경우 서명 값 생성부(250)는 아핀 변환 F 및 T의 역변환인 F-1 및 T-1을 중간 메시지 M에 차례대로 적용하여 제2 아핀 변환을 수행할 수 있으며, T-1(F-1M)으로 표현될 수 있다. 서명 값 생성부(250)는 중간 메시지에 대한 제2 아핀 변환의 결과를 메시지에 관한 서명 값으로써 생성할 수 있다. 서명 값 생성부(250)에 의해 수행되는 제2 아핀 변환은, 반드시 이에 한정되지 않고, 서명 스킴에 따라 다양한 형태로 구현될 수 있다.
제어부(270)는 암호화 장치(130)의 전체적인 동작을 제어하고, 부채널 공격 대응 처리부(210), 아핀 변환 처리부(230) 간의 서명 값 생성부(250) 간의 제어 흐름 또는 데이터 흐름을 관리할 수 있다.
도 3은 본 발명의 일 실시예에 따른 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치를 설명하는 블록도이다.
도 3을 참조하면, 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치(이하, 행렬-벡터 곱 연산 장치라 한다.)(300)은 랜덤 메시지 생성 모듈(310), 행렬-벡터 곱 연산 수행 모듈(330), 불규칙성 제거 모듈(350) 및 제어 모듈(370)을 포함할 수 있다.
행렬-벡터 곱 연산 장치(300)는 비밀정보 행렬과 공개정보 벡터 간의 곱 연산에 관한 부채널 분석 취약점을 방어하기 위한 목적으로 1차 전력 분석 및 전자파 분석에 안전한 행렬-벡터 곱 연산을 수행할 수 있다. 행렬-벡터 곱 연산 장치(300)는 행렬-벡터 곱 연산이 사용되는 서명 스킴을 수행하는 모든 암호화 디바이스에 포함되어 구현될 수 있고, 본 발명에 따른 암호화 장치(130)에 포함되어 구현되는 경우 암호화 장치(130)와 독립적인 장치로 구현되거나 또는 일부 기능을 수행하는 모듈 형태로 구현될 수 있다.
행렬-벡터 곱 연산 장치(300)는 행렬-벡터 곱 연산에 메시지 랜덤화 기법을 적용할 수 있다. 여기에서, 메시지 랜덤화 기법은 RSA에 대한 DPA(Differential Power Analysis)를 방지하는데 널리 사용되는 방법에 해당할 수 있고, 다음과 같이 표현될 수 있다.
Figure 112018117240952-pat00002
여기에서, r과 m은 각각 랜덤한 수와 메시지에 해당할 수 있다. N은 공용 계수이고, 공개키(public key) e와 비밀키(private key) d는
Figure 112018117240952-pat00003
(여기에서,
Figure 112018117240952-pat00004
는 오일러의 함수(Euler's function)에 해당한다.)에 의해 서로 연결될 수 있다.
행렬-벡터 곱 연산 장치(300)에 의해 수행되는 메시지 랜덤화 기법이 적용된 행렬-벡터 곱 연산은 m2+2m 번의 필드 곱셈과 m2 번의 필드 덧셈 및 1번의 필드 역연산을 수행할 수 있다. 반면, 일반적인 행렬-벡터 곱 연산(도 6의 알고리즘(Algorithm 1)에 해당할 수 있다.)은 m2 번의 필드 곱셈과 m2 번의 필드 덧셈을 수행할 수 있고, 필드 역연산을 수행하지 않을 수 있다. 결과적으로, 행렬-벡터 곱 연산 장치(300)는 2m 번의 필드 곱셈 및 1 번의 역연산의 추가로 1차 전력 분석 및 전자파 분석에 안전한 행렬-벡터 곱 연산이 가능하다.
랜덤 메시지 생성 모듈(310)은 메시지에 관한 불규칙성을 증가시켜 랜덤 메시지를 생성할 수 있다. 랜덤 메시지는 원본 메시지에 불규칙성을 증가시켜 생성된 메시지에 해당할 수 있다. 일 실시예에서, 랜덤 메시지 생성 모듈(310)은 난수 생성기로부터 수신한 난수와 메시지와의 곱 연산을 통해 불규칙성을 증가시킬 수 있다. 행렬-벡터 곱 연산 장치(300)가 암호화 장치(130)에 포함되어 구현되는 경우 랜덤 메시지 생성 모듈(310)은 부채널 공격 대응 처리부(210)의 역할을 수행할 수 있다. 이 경우, 랜덤 메시지 생성 모듈(310)에 의해 생성된 랜덤 메시지는 부채널 공격 대응 처리부(210)에 의해 생성된 부채널 공격 대응 메시지에 해당할 수 있다.
행렬-벡터 곱 연산 수행 모듈(330)은 변환 행렬과 랜덤 메시지 간의 행렬-벡터 곱 연산을 수행할 수 있다. 행렬-벡터 곱 연산 장치(300)가 암호화 장치(130)에 포함되어 구현되는 경우 행렬-벡터 곱 연산 수행 모듈(330)은 아핀 변환 처리부(230)의 일부 역할을 수행할 수 있다. 이 경우, 행렬-벡터 곱 연산 수행 모듈(330)에 의해 수행된 행렬-벡터 곱 연산 결과는 아핀 변환 처리부(230)에 의해 수행된 제1 아핀 변환 결과에 해당할 수 있다. 행렬-벡터 곱 연산 수행 모듈(330)에 의해 수행되는 행렬-벡터 곱 연산에 대해서는 도 6에서 보다 자세히 설명한다.
불규칙성 제거 모듈(350)은 행렬-벡터 곱 연산의 결과 메시지로부터 불규칙성을 제거할 수 있다. 일 실시예에서, 불규칙성 제거 모듈(350)은 결과 메시지로부터 난수의 역원과의 곱 연산을 통해 불규칙성을 제거할 수 있다. 행렬-벡터 곱 연산 장치(300)가 암호화 장치(130)에 포함되어 구현되는 경우 불규칙성 제거 모듈(350)은 아핀 변환 처리부(230)의 일부 역할을 수행할 수 있다. 이 경우, 불규칙성 제거 모듈(350)에 의해 불규칙성 제거 결과는 아핀 변환 처리부(230)에 의해 생성된 중간 메시지에 해당할 수 있다.
제어 모듈(370)은 행렬-벡터 곱 연산 장치(300)의 전체적인 동작을 제어하고, 랜덤 메시지 생성 모듈(310), 행렬-벡터 곱 연산 수행 모듈(330), 불규칙성 제거 모듈(350) 간의 제어 흐름 또는 데이터 흐름을 관리할 수 있다.
도 4는 도 1에 있는 암호화 장치에서 수행되는 암호화 과정을 설명하는 순서도이다.
도 4를 참조하면, 암호화 장치(130)는 부채널 공격 대응 처리부(210)를 통해 메시지에 관한 불규칙성을 증가시켜 부채널 공격에 대응하는 부채널 공격 대응 메시지를 생성할 수 있다(단계 S410). 암호화 장치(130)는 아핀 변환 처리부(230)를 통해 부채널 공격 대응 메시지에 관해 제1 아핀 변환을 수행하고 불규칙성을 제거하여 중간 메시지를 생성할 수 있다(단계 S430). 암호화 장치(130)는 서명 값 생성부(250)를 통해 중간 메시지에 관해 제2 아핀 변환을 수행하여 메시지에 관한 서명 값을 생성할 수 있다(단계 S450).
도 5는 도 3의 행렬-벡터 곱 연산 장치에서 수행되는 행렬-벡터 곱 연산 과정을 설명하는 순서도이다.
도 5를 참조하면, 행렬-벡터 곱 연산 장치(300)는 랜덤 메시지 생성 모듈(310)을 통해 메시지에 관한 불규칙성을 증가시켜 랜덤 메시지를 생성할 수 있다(단계 S510). 행렬-벡터 곱 연산 장치(300)는 행렬-벡터 곱 연산 수행 모듈(330)을 통해 변환 행렬과 랜덤 메시지 간의 행렬-벡터 곱 연산을 수행할 수 있다(단계 S530). 행렬-벡터 곱 연산 장치(300)는 불규칙성 제거 모듈(350)을 통해 행렬-벡터 곱 연산의 결과 메시지로부터 불규칙성을 제거할 수 있다(단계 S550).
도 6은 도 1에 있는 암호화 장치에서 수행되는 행렬-벡터 곱 연산을 설명하는 예시도이다.
도 6을 참조하면, 암호화 장치(130)는 아핀 변환 처리부(230) 또는 서명 값 생성부(250)를 통해 아핀 변환을 수행할 수 있고, 아핀 변환은 행렬-벡터 곱 연산을 통해 수행될 수 있다. 본 발명의 일 실시예에 따른 암호화 장치(130)가 내부에 행렬-벡터 곱 연산 장치(300)를 독립 별개로 포함하여 구현된 경우 행렬-벡터 곱 연산은 행렬-벡터 곱 연산 수행 모듈(330)을 통해 수행될 수 있다.
도 6에서, 행렬-벡터 곱 연산은 고정된 비밀정보인 행렬과 랜덤한 공개정보인 벡터 간의 곱 연산에 해당할 수 있다. 일반적으로 체(field) 위에서 연산되는 행렬-벡터 곱은 그림 (a)와 같이 표현될 수 있고, 대체로 실제 구현에서는 yi가 s'ki (1 ≤ k ≤ m)와 매번 곱해지기 때문에 yi를 불러오는 시간을 단축하기 위해 그림 (b)의 알고리즘(Algorithm 1)이 널리 사용되고 있다. 여기에서, 행렬 및 벡터의 모든 원소는 동일한 체 위의 원소에 해당할 수 있고, 연산의 결과 값도 체 위의 원소에 해당할 수 있다. 즉, sij, yi, y'i ∈ Fq 일 수 있다.
도 7은 도 3의 행렬-벡터 곱 연산 장치에서 수행되는 메시지 랜덤화 기반의 행렬-벡터 곱 연산을 구현한 알고리즘을 설명하는 예시도이다.
도 7을 참조하면, 행렬-벡터 곱 연산 장치(300)에 의해 수행되는 메시지 랜덤화 기반의 행렬-벡터 곱 연산은 도 7의 알고리즘과 같이 동작할 수 있다. 행렬-벡터 곱 연산 장치(300)는 step 1에서 랜덤한 수 r을 선택한 후 step 2-4에서 메시지 Y에 r을 곱하여 랜덤한 메시지를 생성할 수 있다((a)단계). 이후, 행렬-벡터 곱 연산 장치(300)는 step 5-12에서 도 6의 그림 (b)의 알고리즘(Algorithm 1)과 동일한 연산을 수행할 수 있다. 행렬-벡터 곱 연산 장치(300)는 step 13-15에서 도 6의 그림 (b)의 알고리즘(Algorithm 1)과 동일한 출력값을 계산하기 위하여 랜덤한 수 r의 역수를 곱하는 과정을 수행할 수 있다((b)단계). 결과적으로, 행렬-벡터 곱 연산 장치(300)는 2m 번의 필드 곱셈 및 1번의 역연산의 추가로 1차 전력 분석 및 전자파 분석에 안전한 행렬-벡터 곱 연산을 수행할 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
100: 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 암호화 시스템
110: 사용자 단말 130: 암호화 장치
150: 데이터베이스
210: 부채널 공격 대응 처리부 230: 아핀 변환 처리부
250: 서명 값 생성부 270: 제어부
300: 행렬-벡터 곱 연산 장치
310: 랜덤 메시지 생성 모듈 330: 행렬-벡터 곱 연산 수행 모듈
350: 불규칙성 제거 모듈 370: 제어 모듈

Claims (10)

  1. 행렬-벡터 곱 연산의 전 단계에서 메시지에 관한 불규칙성을 증가시켜 부채널 공격에 대응하는 부채널 공격 대응 메시지를 생성하는 부채널 공격 대응 처리부;
    상기 부채널 공격 대응 메시지에 관해 상기 행렬-벡터 곱 연산을 포함하는 제1 아핀 변환(Affine Transformation)을 수행하고 상기 불규칙성을 제거하여 중간 메시지를 생성하는 아핀 변환 처리부; 및
    상기 중간 메시지에 관해 제2 아핀 변환을 수행하여 상기 메시지에 관한 서명 값을 생성하는 서명 값 생성부를 포함하되,
    상기 부채널 공격 대응 처리부는 난수 생성기로부터 수신한 난수와 상기 메시지와의 곱 연산을 통해 상기 불규칙성을 증가시키는 것을 특징으로 하는 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 암호화 장치.
  2. 제1항에 있어서, 상기 부채널 공격 대응 처리부는
    상기 메시지에 해시 함수를 적용하여 변환된 메시지를 기초로 상기 부채널 공격 대응 메시지를 생성하는 것을 특징으로 하는 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 암호화 장치.
  3. 삭제
  4. 제1항에 있어서, 상기 아핀 변환 처리부는
    상기 부채널 공격 대응 메시지에 변환 행렬 S의 역변환 행렬 S-1을 적용하여 상기 제1 아핀 변환을 수행하는 것을 특징으로 하는 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 암호화 장치.
  5. 제1항에 있어서, 상기 아핀 변환 처리부는
    상기 제1 아핀 변환을 수행한 결과와 상기 난수의 역원과의 곱 연산을 통해 상기 불규칙성을 제거하는 것을 특징으로 하는 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 암호화 장치.
  6. 제1항에 있어서, 상기 서명 값 생성부는
    상기 중간 메시지에 관해 적어도 하나의 변환 행렬에 관한 역변환 행렬을 연속하여 적용함으로써 상기 제2 아핀 변환을 수행하는 것을 특징으로 하는 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 암호화 장치.
  7. 암호화 장치에서 수행되는 암호화 방법에 있어서,
    행렬-벡터 곱 연산의 전 단계에서 메시지에 관한 불규칙성을 증가시켜 부채널 공격에 대응하는 부채널 공격 대응 메시지를 생성하는 단계;
    상기 부채널 공격 대응 메시지에 관해 상기 행렬-벡터 곱 연산을 포함하는 제1 아핀 변환을 수행하고 상기 불규칙성을 제거하여 중간 메시지를 생성하는 단계; 및
    상기 중간 메시지에 관해 제2 아핀 변환을 수행하여 상기 메시지에 관한 서명 값을 생성하는 단계를 포함하되,
    상기 부채널 공격 대응 메시지를 생성하는 단계는 난수 생성기로부터 수신한 난수와 상기 메시지와의 곱 연산을 통해 상기 불규칙성을 증가시키는 단계를 포함하는 것을 특징으로 하는 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 암호화 방법.
  8. 행렬-벡터 곱 연산의 전 단계에서 메시지에 관한 불규칙성을 증가시켜 랜덤 메시지를 생성하는 랜덤 메시지 생성 모듈;
    변환 행렬과 상기 랜덤 메시지 간의 상기 행렬-벡터 곱 연산을 수행하는 행렬-벡터 곱 연산 수행 모듈; 및
    상기 행렬-벡터 곱 연산의 결과 메시지로부터 상기 불규칙성을 제거하는 불규칙성 제거 모듈을 포함하되,
    상기 랜덤 메시지 생성 모듈은 난수 생성기로부터 수신한 난수와 상기 메시지와의 곱 연산을 통해 상기 불규칙성을 증가시키는 것을 특징으로 하는 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치.
  9. 삭제
  10. 제8항에 있어서, 상기 불규칙성 제거 모듈은
    상기 결과 메시지와 상기 난수의 역원과의 곱 연산을 통해 상기 불규칙성을 제거하는 것을 특징으로 하는 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치.

KR1020180146443A 2018-09-10 2018-11-23 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치, 이를 이용한 암호화 장치 및 방법 KR102067065B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180107502 2018-09-10
KR20180107502 2018-09-10

Publications (1)

Publication Number Publication Date
KR102067065B1 true KR102067065B1 (ko) 2020-01-16

Family

ID=69369025

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180146443A KR102067065B1 (ko) 2018-09-10 2018-11-23 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치, 이를 이용한 암호화 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102067065B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102375031B1 (ko) * 2020-10-19 2022-03-17 국방과학연구소 전자서명 알고리즘의 부채널 분석 방법 및 그 장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100561847B1 (ko) 2003-10-08 2006-03-16 삼성전자주식회사 공개키를 이용한 데이터 암호화 및 복호화 방법
KR100737171B1 (ko) * 2006-05-04 2007-07-10 경북대학교 산학협력단 아리아에 대한 전력분석공격에 대응하는 저메모리형 마스킹방법
KR101768641B1 (ko) * 2017-04-04 2017-08-30 기초과학연구원 짧은 키 길이를 갖는 다변수 이차 서명 스킴을 수행하는 전자 장치와 그 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100561847B1 (ko) 2003-10-08 2006-03-16 삼성전자주식회사 공개키를 이용한 데이터 암호화 및 복호화 방법
KR100737171B1 (ko) * 2006-05-04 2007-07-10 경북대학교 산학협력단 아리아에 대한 전력분석공격에 대응하는 저메모리형 마스킹방법
KR101768641B1 (ko) * 2017-04-04 2017-08-30 기초과학연구원 짧은 키 길이를 갖는 다변수 이차 서명 스킴을 수행하는 전자 장치와 그 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102375031B1 (ko) * 2020-10-19 2022-03-17 국방과학연구소 전자서명 알고리즘의 부채널 분석 방법 및 그 장치

Similar Documents

Publication Publication Date Title
CN110235409B (zh) 使用同态加密被保护的rsa签名或解密的方法
US9350543B2 (en) Method and system for homomorphicly randomizing an input
EP2553866B1 (en) System and method for protecting cryptographic assets from a white-box attack
Hsiao et al. Color image encryption using chaotic nonlinear adaptive filter
KR20020025630A (ko) 비밀 정보의 처리 장치, 프로그램 또는 시스템
JP2008252299A (ja) 暗号処理システム及び暗号処理方法
WO2021231087A1 (en) Constructing a distributed ledger transaction on a cold hardware wallet
EP2742644B1 (en) Encryption and decryption method
Gafsi et al. Efficient encryption system for numerical image safe transmission
RU2579990C2 (ru) Защита от пассивного сниффинга
CN110663215A (zh) 在白盒场景中的椭圆曲线点乘设备和方法
Agrawal et al. Elliptic curve cryptography with hill cipher generation for secure text cryptosystem
US10567155B2 (en) Securing a cryptographic device
Kaaniche et al. A novel zero-knowledge scheme for proof of data possession in cloud storage applications
Huang et al. A secure communication over wireless environments by using a data connection core
EP3698262B1 (en) Protecting modular inversion operation from external monitoring attacks
WO2017114739A1 (en) System and method for hiding a cryptographic secret using expansion
CN107465508B (zh) 一种软硬件结合构造真随机数的方法、系统和设备
Fanfara et al. Usage of asymmetric encryption algorithms to enhance the security of sensitive data in secure communication
KR102067065B1 (ko) 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치, 이를 이용한 암호화 장치 및 방법
Nagaraj et al. Image security using ECC approach
KR102067053B1 (ko) 다변수 2차 다항식 기반 포스트 양자 서명 스킴의 안전성 검증 장치 및 방법
Puneeth et al. Preserving Confidentiality against Factorization Attacks using Fake Modulus ($\zeta $) Approach in RSA and its Security Analysis
US10305678B2 (en) Imbalanced montgomery ladder
Gupta et al. A hybrid authenticated image encryption scheme using elliptic curves for enhanced security

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant