-
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* refactor: zk docs file structure * build: add content script enable content localhost by running the following script: npm run content * feat: disable i18n folder in explorer * feat: add language selector * feat: add translation page * translate basic algebra
- Loading branch information
Showing
31 changed files
with
413 additions
and
143 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
# Abelian Group의 정의 | ||
[[Group]] $(G, ∗)$가 $*$의 교환법칙을 만족하면, 즉 $*$가 교환적 (commutative)이라면, 이 group을 abelian 또는 commutative group이라고 정의한다. | ||
# Abelian Group | ||
A [[Group]] $(G, ∗)$ is defined as an abelian or commutative group if it satisfies the commutative property of $$, i.e., $$ is commutative. | ||
|
||
# 예시 | ||
1. $(\mathbb{Z}, +)$는 Abelian Group이다. 따라서 [[Monoid]]이기도 하다. | ||
# Example | ||
$(\mathbb{Z}, +)$ is an Abelian Group. Therefore, it is also a [[Monoid]]. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
# 정의 | ||
집합 $S$ 위의 binary operation은 $S \times S$ 의 원소들을 $S$ 로 매핑하는 것을 의미한다. 즉, 이는 함수 $f$ : $S \times S$ $\rightarrow$ $S$ 를 의미한다. Binary operation $*$ : $S \times S$ $\rightarrow$ $S$ 가 주어졌을 때, $*(a, b)$를 $a * b$로 표기한다. | ||
# Definition | ||
A binary operation on a set $S$ means mapping the elements of $S \times S$ to $S$. In other words, it refers to a function $f$ : $S \times S \rightarrow S$. Given a binary operation $*$ : $S \times S \rightarrow S$, $_(a, b)$ is denoted as $a * b$. | ||
|
||
# 예시 | ||
$Mat_{2 \times 2}(\mathbb{R})$가 2 × 2 실수 행렬의 집합이라고 하자. 이때, 행렬 곱셈 $(A, B) \mapsto AB$는 binary operation이다. | ||
# Example | ||
Let $Mat_{2 \times 2}(\mathbb{R})$ be the set of 2 × 2 real matrices. Then, the matrix multiplication $(A, B) \mapsto AB$ is a binary operation. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,9 @@ | ||
# 정의 | ||
주어진 집합 $A$에 대해 binary relation(이항 관계)는 $A \times A$ 의 부분집합이 되는 순서쌍들의 집합이다. 이항 관계 $R$의 순서쌍 $(x, y) \in R$ 의 $x$와 $y$사이에는 특정한 관계가 성립하는데, 이를 $xRy$, $R(x, y)$, $x \sim_R y$ 혹은 $x \sim y$와 같이 표기한다. | ||
# Definition | ||
A binary relation on a given set $A$ is a set of ordered pairs that is a subset of $A \times A$. For an ordered pair $(x, y) \in R$ in a binary relation $R$, there is a specific relationship between $x$ and $y$. This is denoted as $xRy$, $R(x, y)$, $x \sim_R y$, or $x \sim y$. | ||
|
||
# 예시 | ||
대표적인 이항 관계로 반사 관계, 대칭 관계, 전이 관계 등이 있다. | ||
1) Reflexive(반사 관계): $a \sim a$이다 | ||
2) Symmetric(대칭 관계): $a \sim b$ 인 경우 오직 그런 경우에만 $b \sim a$이다 | ||
3) Transitive(전이 관계): $a \sim b$이고 $b \sim a$이면 $a \sim c$이다 | ||
4) Anti-symmetric(반대칭 관계): $a \sim b$이고 $b \sim a$ 이면 $a = b$ | ||
# Example | ||
Typical examples of binary relations include reflexive, symmetric, and transitive relations. | ||
1. Reflexive: $a \sim a$ | ||
2. Symmetric: $a \sim b$ if and only if $b \sim a$ | ||
3. Transitive: $a \sim b$ and $b \sim c$ imply $a \sim c$ | ||
4. Anti-symmetric: $a \sim b$ and $b \sim a$ imply $a = b$ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,5 @@ | ||
일반적인 로그(Logarithm)란 지수 함수의 역함수, 어떤 수를 나타내기 위해 고정된 밑은 몇번 곱하여야 하는지를 나타낸다고 볼 수 있다. 즉, $a^x = b$를 만족하는 $x$를 가리킨다. | ||
이산 로그는 일반 로그와 같은 형태이지만 군론의 이산적인 대수 구조에서 정의된 연산이다. 이산 로그의 가장 단순한 형태는 $Z_p^*$ 에서 정의하는 것이다. $Z_p^*$의 집합이 $\{1, ..., p-1\}$이고 소수 $p$의 모듈로 곱셈에 대해 닫혀있다고 하자. $Z^*_p$의 어떤 수 $g$와 $y$가 주어졌을 때, $g^x \equiv y \mod p$ 를 만족하는 $x$, 즉, $\log_gy$를 구하는 문제가 이산 로그 문제(Discrete Logarithm Problem)이다. | ||
위 식에서 소수 $p$가 충분히 클 때 $g$와 $x$로부터 $y$를 구하는 것은 쉽지만, $g$와 $y$로부터 $x$를 구하는 것은 어렵다는 성질이 있다. 이러한 성질을 이용한 암호 시스템이 [[ElGamal]]과 [[Diffie-Hellman]]등이 있다. | ||
A general logarithm is the inverse function of an exponential function, representing the power to which a fixed base must be raised to obtain a given number. That is, it refers to the value $x$ that satisfies $a^x = b$. | ||
|
||
A discrete logarithm has the same form as a general logarithm but is defined in the discrete algebraic structure of group theory. The simplest form of a discrete logarithm is defined in $Z_p^*$. Let's consider the set $Z_p^* = {1, ..., p-1}$, which is closed under multiplication modulo a prime number $p$. Given an element $g$ and $y$ in $Z^*_p$, the discrete logarithm problem (DLP) is to find $x$ such that $g^x \equiv y \mod p$, i.e., to compute $\log_g y$. | ||
|
||
When the prime $p$ is sufficiently large, it is easy to compute $y$ from $g$ and $x$, but it is difficult to find $x$ from $g$ and $y$. Cryptographic systems such as [[ElGamal]] and [[Diffie-Hellman]] exploit this property. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
일반적인 로그(Logarithm)란 지수 함수의 역함수, 어떤 수를 나타내기 위해 고정된 밑은 몇번 곱하여야 하는지를 나타낸다고 볼 수 있다. 즉, $a^x = b$를 만족하는 $x$를 가리킨다. | ||
A general logarithm is the inverse function of an exponential function, representing the power to which a fixed base must be raised to obtain a given number. That is, it refers to the value $x$ that satisfies $a^x = b$. | ||
|
||
이산 로그는 일반 로그와 같은 형태이지만 군론의 이산적인 대수 구조에서 정의된 연산이다. 이산 로그의 가장 단순한 형태는 $Z_p^*$ 에서 정의하는 것이다. $Z^*_p$의 집합이 $\{1, ..., p-1\}$이고 소수 $p$의 모듈로 곱셈에 대해 닫혀있다고 하자. $Z^*_p$의 어떤 수 $g$와 $y$가 주어졌을 때, $g^x \equiv y \mod p$ 를 만족하는 $x$, 즉, $\log_gy$를 구하는 문제가 이산 로그 문제(Discrete Logarithm Problem)이다. | ||
A discrete logarithm has the same form as a general logarithm but is defined in the discrete algebraic structure of group theory. The simplest form of a discrete logarithm is defined in $Z_p^*$. Let's consider the set $Z_p^* = {1, ..., p-1}$, which is closed under multiplication modulo a prime number $p$. Given an element $g$ and $y$ in $Z^*_p$, the discrete logarithm problem (DLP) is to find $x$ such that $g^x \equiv y \mod p$, i.e., to compute $\log_g y$. | ||
|
||
위 식에서 소수 $p$가 충분히 클 때 $g$와 $x$로부터 $y$를 구하는 것은 쉽지만, $g$와 $y$로부터 $x$를 구하는 것은 어렵다는 성질이 있다. 이러한 성질을 이용한 암호 시스템이 [[ElGamal]], [[Diffie-Hellman]] 등이 있다. | ||
When the prime $p$ is sufficiently large, it is easy to compute $y$ from $g$ and $x$, but it is difficult to find $x$ from $g$ and $y$. Cryptographic systems such as [[ElGamal]] and [[Diffie-Hellman]] exploit this property. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,10 +1,10 @@ | ||
ECDLP(Elliptic Curve Discrete Logarithm Problem)는 $Z_p^*$에서의 [[Discrete logarithm problem]]와 같은 방식을 [[Elliptic Curves]](타원곡선) 상에서 정의한 문제이다. | ||
The Elliptic Curve Discrete Logarithm Problem (ECDLP) is defined similarly to the [[Discrete Logarithm Problem]] in $Z_p^*$ but on the structure of [[Elliptic Curves]]. | ||
|
||
- $E: y^2 = x^3 + ax + b$ 일때 $G \in E$ 를 generator로 하는 cyclic subgroup $H = <G>$ 라고하자. | ||
- $H$의 임의의 원소 $Q$에 대해, $aG = Q$ 인 $a$ $(0 \le a < |G| )$ 를 찾는 문제이다. | ||
- Given an elliptic curve $E: y^2 = x^3 + ax + b$ and a generator $G \in E$, we form a cyclic subgroup $H = <G>$. | ||
- For any element $Q$ in $H$, the problem is to find $a$ $(0 \le a < |G| )$ such that $aG = Q$. | ||
|
||
ECDLP를 사용하는 이유 | ||
Reasons to use ECDLP: | ||
|
||
- 일반적인 DLP보다 훨씬 짧은 키 사이즈로도 안전성을 확보할수 있다. | ||
- It provides security with much shorter key sizes compared to the general DLP. | ||
|
||
- $Z_p^*$ 에서 정의된 DLP의 해를 구하는 알고리즘(Index Calculus Algorithm)이 존재하는반면, EC-DLP의 경우 Generic 알고리즘만 알려져있고 ECDLP에 특화된 알고리즘은 현재까지 발견되지 않았다. (Baby-step Giant -step, Pollard $p$ → $O(\sqrt{p})$의 공격량이 필요) | ||
- While there are algorithms (like the Index Calculus Algorithm) to solve the DLP defined in $Z_p^*$, for ECDLP only generic algorithms are known. No specific algorithms for ECDLP have been discovered to date. Attacks like Baby-step Giant-step and Pollard's rho algorithm require $O(\sqrt{p})$ operations. |
Oops, something went wrong.