데이터 반출 없는 다기관 연합 인공지능 학습 플랫폼

전체 글 205

ECC-04. 타원 곡선 디지털 서명 알고리즘(ECDSA)

타원 곡선 암호에서 디지털 서명은 타원 곡선 디지털 서명 알고리즘(ECDSA)을 통해 이루어집니다. 이는 메시지를 보낸 사람이 정말 본인인지(인증), 메시지가 위변조되지 않았는지(무결성), 그리고 서명한 사실을 부인할 수 없도록(부인 방지) 보장하는 기술입니다. ​핵심 원리는 공개 키로는 할 수 없지만 개인 키(비밀 키)로만 쉽게 할 수 있는 수학적 연산을 이용하는 것입니다. 즉, 개인 키 소유자만이 유효한 서명을 생성할 수 있고, 다른 사람들은 해당 개인 키와 쌍을 이루는 공개 키를 이용해 그 서명이 올바른지 검증할 수 있습니다. 앨리스가 밥에게 메시지를 서명하여 보낸다고 가정해 보겠습니다.​1. 키 생성​먼저, 앨리스는 서명과 검증에 사용할 한 쌍의 키를 생성해야 합니다.공통 정보 공유: 서명자와 검..

ECC-03. 타원 곡선 디피-헬만(ECDH) 키 교환

타원 곡선 디피-헬만(ECDH) 키 교환은 타원 곡선 암호(ECC)를 이용하여 안전하게 비밀 키를 공유하는 방법입니다. 이 과정의 보안은 '타원 곡선 이산 로그 문제(Elliptic Curve Discrete Logarithm Problem, ECDLP)'라는 수학적 난제에 기반을 둡니다.​쉽게 말해, 타원 곡선 위의 한 점에서 특정 연산을 반복하여 다른 점을 찾는 것은 쉽지만, 결과 점만 가지고 몇 번의 연산을 했는지 알아내는 것은 계산적으로 매우 어렵다는 원리입니다.​ECDH 키 교환 과정앨리스와 밥이 안전하지 않은 통신 채널을 통해 비밀 키를 공유하려는 상황을 가정해 보겠습니다.초기 설정 공유: 먼저, 앨리스와 밥은 모두가 알아도 되는 공개된 정보 두 가지를 사전에 합의합니다.타원 곡선 (E): 사..

CMATH-11. 암호학에서 유한체를 정의할 때 소수를 사용하는 이유

암호학에서 유한체를 정의할 때 소수($p$)를 사용하는 이유는 단순히 숫자가 커서가 아니라, 수학적으로 '체(Field)'라는 완벽한 대수 구조를 형성하기 위한 필수 조건이기 때문입니다. 물리학에서 계(system)가 붕괴하지 않기 위해 보존 법칙이 필요하듯, 암호 연산이 성립하기 위해서는 모든 원소에 대해 역원(Inverse)이 존재해야 합니다.1. 모든 원소의 역원 존재 (나눗셈의 가능성)가장 핵심적인 이유는 '0을 제외한 모든 원소로 나눌 수 있어야 한다'는 것입니다.합성수($n$)를 사용할 때: 예를 들어 $\pmod 6$의 세계를 가정해 봅시다.$2 \times 3 = 6 \equiv 0 \pmod 6$ 입니다.여기서 $2$에 무엇을 곱해도 $1$이 될 수 없습니다. 즉, 2의 역원($1/2$)..

CMATH-10. 로그 문제, 이산 로그 문제, 타원 곡선 이산 로그 문제

수학적 원리에서 현대 암호학의 정수까지, 로그(Logarithm)라는 개념이 어떻게 진화하며 난이도를 쌓아왔는지 핵심 위주로 정리합니다.1. 로그 문제 (Logarithm Problem)우리가 흔히 아는 실수 체계에서의 로그입니다. 연속적인 공간에서의 연산을 다룹니다.정의: $b^x = y$ 일 때, 지수 $x$를 찾는 문제입니다 ($x = \log_b y$).특징: 공간이 연속적입니다.난이도: 매우 쉬움. 수치 해석적인 방법(Newton's method 등)이나 테일러 급수 전개를 통해 소수점 아래 수만 자리까지도 순식간에 계산할 수 있습니다.비유: 매끄러운 오르막길에서 특정 높이에 도달하기 위해 몇 미터를 걸어야 하는지 찾는 것과 같습니다.2. 이산 로그 문제 (Discrete Logarithm Pr..

ECC-02. 타원 곡선 암호 키 생성

타원 곡선 암호(Elliptic Curve Cryptography, ECC)에서 키 생성은 공개 키 암호 방식의 핵심적인 부분으로, 개인 키와 공개 키라는 한 쌍의 키를 만드는 과정입니다. 이 과정은 타원 곡선 위의 점들을 이용한 수학적 연산을 기반으로 합니다.핵심 개념키 생성 과정을 이해하기 위해서는 몇 가지 기본적인 개념을 알아야 합니다.타원 곡선: 특정 수학 방정식($y^2=x^3+ax+b$ 형태)을 만족하는 점들의 집합입니다. 암호학에서는 유한체(finite field) 상에서 정의된 타원 곡선을 사용합니다.기저점 (G): 타원 곡선 위에 미리 정해진 기준이 되는 점입니다. 이 점은 모든 참여자에게 공개되어 있습니다.개인 키 (d): 사용자가 비밀리에 선택하는 매우 큰 정수입니다. 이 키는 절대로..