-
SMTP Vulnerability Analysis
Intro 링크에 따르면 메일의 약 85%가 스팸 메일이라고 합니다. 이렇게 스팸 메일이 많은 이유는 2가지가 있습니다. 첫 번째는 클라이언트가 smtp 서버로 메일을 전송하는 것과 메일을 relay하는 구조가 같은 구조이기 때문입니다. 두 번째는 클라이언트가 smtp 서버로 메일을 전송할 때 클라이언트를 인증하는 절차가 없기 때문입니다. 이렇게 스팸 메일의 원인이되는 smtp의 취약점에 대해서 한번 정리해보고자 합니다. 나아가 그 해결 방안까지도 생각해보겠습니다. Vulnerability 1: No authentication smtp는 수신자나 송신자에 대한 인증을 하지 않습니다. 이러한 특성은 스팸 메일의 양을 증가시키는...
-
Combinatorial Nullstellensatz
1. 서론 그래프와 같은 여러 조합적인 대상의 수학적 성질은 이론 전산학 등의 분야에서 여러 방향으로 응용될 수 있다. Combinatorial Nullstellensatz는 그래프를 포함한 여러 조합적인 대상의 성질을 증명하는데에 응용될 수 있다. 이 글에서는 Combinatorial Nullstellensatz을 증명하고, 이후 여러 조합적인 대상에 이를 적용해본다. 2. Combinatorial Nullstellensatz Theorem. (Combinatorial Nullstellensatz) 체 $\mathbb{F}$와 다항식 $f \in \mathbb{F}[x_1, x_2, \cdots, x_n]$ 이 있다고 하자. $\deg(f) = d = \sum_{i=1}^n d_i$ 이고, $\prod_{i=1}^n x_i^{d_i} \neq 0$ 라면, $\lvert L_i \rvert >...
-
Caulk : Lookup Arguments in Sublinear Time
논문은 https://eprint.iacr.org/2022/621 입니다. 선행지식 https://github.com/rkm0959/rkm0959_presents/blob/main/TornadoCash.pdf https://www.secmem.org/blog/2022/05/15/KZG-ASVC/ 정확히는, Powers of Tau 및 KZG Commitment 계열 이론, ZK 계열 이론 기초 Membership Proofs in Zero Knowledge 우리의 목표는 집합 $S$가 있을 때, 어떤 $v$가 $v \in S$를 만족한다는 사실을 영지식으로 증명하는 겁니다. 이를 위해서 사용된 대표적인 방법이 두 가지가 있는데, 하나는 Tornado Cash에서 사용하고 있는 것과 같은 Merkle Tree + zkSNARKS입니다. 적당한 hash function을 기반으로 한 Merkle Tree를 만들고, 자신이 갖고 있는 원소가 leaf 중 하나임을 Merkle...
-
Congestion Balancing
Congestion Balancing 일반적인 그래프에서 효율적으로 해결할 수 있는 문제들을, 간선이 추가되고 제거되는 등의 업데이트가 가해질 때도 효율적으로 해결할 수 있는지를 연구하는 분야를 Dynamic Graph Algorithm이라고 부른다. 이 분야에 대해서는 최근 많은 연구가 진행되고 있으며, 여러 차례의 멤버십 글로도 이 분야의 다양한 최신 기술과 테크닉을 소개한 바 있다. 이 글에서 소개할 주제는 Decremental Graph Algorithm을 얻을 수 있는 프레임워크 중 하나인 Congestion Balancing 이다. 어떠한 알고리즘이 decremental하다는 것은, 간선 추가 쿼리는 처리할 수 없으나 제거 쿼리는...
-
Large S-box의 암호학적 성질 및 대수적 공격
1. Introduction 대칭키 암호화 시스템은 선형 연산과 비선형 연산을 반복적으로 적용해 키와 암호문 혹은 평문과 암호문의 관계를 가립니다. 이 때 S-box는 비선형 성질을 제공하는 중요한 역할을 합니다. DES에서는 6비트의 입력을 받아 4비트를 출력하는 S-box가 사용되었고 AES에서는 8비트의 입력을 받아 8비트를 출력하는 S-box가 사용되었습니다. 암호가 안전하기 위해서는 S-box가 편향되지 않고 잘 정의되어야 합니다. 예를 들어 S-box의 차분 성질이나 선형 성질의 편향이 클 경우 이를 이용한 차분 공격 혹은 선형 공격이 가능할 수 있습니다. 직관적으로 생각했을 때...