저자: 컨덕션
출처: https://conduition.io/cryptography/isogenies-intro/
번역: 쿠르트 판
원문은 2026년 3월에 발표되었습니다.
오래된 기술, 새로운 암호화 기술
SQIsign, PRISM, SIDH의 작동 방식과 동족 암호화의 수학적 증명에 대해 자세히 살펴보는 데 상당한 시간을 할애할 수도 있겠지만, 이는 이 글의 핵심 논점과는 무관합니다. 제가 주장하려는 바는 비트코인 애호가들이 동족 암호화를 배우고 투자해야 한다는 것입니다. 이제 본론으로 들어가겠습니다.
이제 우리는 동일 출처 키 쌍과 서명 체계가 어떻게 작동하는지 어느 정도 이해하게 되었습니다. 또한 이를 공격하는 방법과 보안성을 입증하는 방법도 살펴보았습니다. 기본적인 규칙은 알고 있습니다.
이제 동일 출처 시스템이 비트코인에서 일반적으로 사용되는 기존 ECC 기법을 어떻게 대체할 수 있는지에 대해 논의할 수 있습니다.
재무작위화된 공개 키
놀랍게도 비트코인 생태계에서 사용되는 많은 고급 암호화 구조는 " 재무작위화된 공개 키 체계"라고 하는 더 간단한 구성 모듈 로 추상화될 수 있으며, 이는 IBC 체계를 사용하여 구현할 수 있습니다(이미 그러한 사례들이 있습니다).
재무작위화 공개키 체계 는 공개키 암호 시스템이며, 다음과 같은 알고리즘이 있습니다.
- $\text{KeyGen}(sk) \to pk$는 키 쌍을 생성합니다.
- $\text{RerandomizePublic}(pk, r) \to pk'$, 여기서 $r$은 무작위 솔트입니다.
- $\text{RerandomizeSecret}(sk, r) \to sk'$, 여기서 $r$은 무작위 솔트입니다.
$pk = \text{KeyGen}(sk)$가 주어졌을 때, 재무작위화된 공개 키 체계의 정확성을 위해서는 다음이 필요합니다.
$$\text{KeyGen}(\text{RerandomizeSecret}(sk, r)) = \text{RerandomizePublic}(pk, r)$$
쉽게 말해, 재무작위화된 개인 키는 공개 키의 재무작위화와 정확히 일치해야 합니다.
올바른 재랜덤화 공개 키 체계를 구성하는 것은 간단합니다. $sk$와 $r$로부터 파생된 임의의 개인 키를 출력하도록 $\text{RerandomizeSecret}(sk, r)$을 정의한 다음 $\text{RerandomizePublic}(pk, r) := \text{KeyGen}(\text{RerandomizeSecret}(sk, r))$을 정의합니다.
하지만 이는 분명히 안전하지 않습니다. $pk$와 $r$을 아는 공격자는 누구나 재무작위화된 개인 키를 다시 유도하여 메시지에 서명할 수 있습니다.
완전한 개인 정보 보호와 보안을 달성하기 위해서는 연결 불가능성과 위조 불가능성 이라는 속성도 필요합니다.
- "연결 불가능성"이란 키를 다시 무작위화하는 데 사용된 솔트 $r$을 알지 못하는 한, 다시 무작위화된 키가 독립적으로 생성된 난수 키와 구별할 수 없다는 것을 의미합니다.
- "위조 불가능성" 이란 공격자가 개인 키(이 또한 재무작위화되었을 수 있음)를 알지 못하는 한, 재무작위화된 공개 키에 대한 서명을 위조할 수 없다는 것을 의미합니다.
동기 부여
재무작위화는 비트코인에서 사용되는 많은 암호화 기술의 핵심을 담고 있습니다.
| 기술 | 재무작위화 등가물 |
|---|---|
| 주근 키 조정(BIP341) | $\text{RerandomizePublic}(pk, H(pk, m)) \to pk'$, 여기서 $m$은 머클 트리의 머클 루트입니다. 재랜덤화된 공개 키 $pk'$는 $m$에 대한 숨겨진 바인딩된 커밋먼트이며, $(pk, m)$을 공개함으로써 잠금 해제할 수 있습니다. |
| 향상된 (비밀) 서브키 파생 (BIP32) | $\text{RerandomizeSecret}(sk, H(sk, c, i)) \to sk'$, 여기서 $c$는 체인코드(의사 난수 솔트)이고 $i$는 32비트 정수입니다. 재난수화된 개인 키 $sk'$는 부모 개인 키 $sk$와 체인코드 $c$를 알아야만 유추할 수 있는 서브키입니다. |
| 향상되지 않은 (공개) 하위 키 파생(BIP32) | $\text{RerandomizePublic}(pk, H(pk, c, i)) \to pk'$, 여기서 $c$는 체인 코드(의사 난수 솔트)이고 $i$는 32비트 정수입니다. 재난수화된 공개 키 $pk'$는 자식 키이며, 부모 공개 키 $pk$와 체인 코드 $c$를 알아야만 얻을 수 있습니다. |
이 재무작위화된 공개 키 체계의 다재다능함을 통해 우리는 동종 시스템을 사용하여 올바르고, 연결 불가능하며, 위조 불가능한 재무작위화 시스템을 구현할 수 있는 한, BIP32, BIP341 키 조정 및 (일부 조건 하에) BIP352 무음 결제에 대한 양자 후 보안 후속 기술을 즉시 확보할 수 있다는 결론에 도달합니다.
이전 작업
기존 ECC 구현 방식(비트코인 포함)은 일반적으로 다음과 같이 재무작위를 구현합니다.
- $G$를 차수 $n$인 타원 곡선의 기저점이라고 하자.
- 임의의 입력을 $n$으로 나눈 나머지 정수로 매핑하는 충돌 방지 해시 함수 $H_n: {0, 1}^* \to \mathbb{Z}_n$을 구성하십시오.
- $sk \leftarrow \mathbb{Z}_n$이 주어졌을 때, $\text{KeyGen}(sk) := sk \cdot G$를 정의합니다.
- $pk = \text{KeyGen}(sk)$가 주어졌을 때
- $\text{RerandomizeSecret}(sk, r) := sk + H_n(r)$을 정의합니다.
- $\text{RerandomizePublic}(pk, r) := pk + H_n(r) \cdot G = (sk + H_n(r)) \cdot G$를 정의합니다.
양자 후 격자 암호화 맥락에서 재무작위 키에 대한 연구가 일부 진행되었지만, 이 기술은 격자 암호화 공개 키의 유연성이 부족한 구조로 인해 항상 제약을 받아왔습니다. 격자 암호화 키 쌍에 구조를 도입하려는 시도는 키와 서명의 간결성을 저해하는 것으로 보입니다. 예를 들어, 최근 발표된 이 논문 ( 관련 블로그 게시물 참조)에서는 재무작위 서명 방식을 제시하고 이를 사용하여 BIP32 키를 비강화 방식으로 유도했지만, 16KB의 공개 키와 20KB의 서명(ML-DSA보다 8배 이상 큼)을 생성해야 하는 단점이 있습니다.
격자 암호화의 경우, 키 재산란화는 보안에도 영향을 미치므로 사용 제한을 적용해야 합니다.
참고 2. Raccoon-G 구성은 공개 키 재산란을 허용하지만, 이로 인해 키 노이즈가 증가하고 서명 분포가 변경됩니다. 이는 서명 분포가 구별 불가능하다고 주장할 수 있는 최대 깊이에 영향을 미치며, 이는 연결 불가능성 논증의 일부입니다. $\text{DetKeyGen}$으로 생성된 각 공개 키에 대해 비강화 파생 횟수를 제한하는 "하이브리드" 접근 방식을 고려할 수 있습니다.
동종 재무작위화
호몰로지를 이용하면 효율적이고 안전한 양자 후 재산란화를 구현할 수 있습니다.
$\varphi: E_0 \to E$를 기본 곡선 $E_0$에서 공개 키 곡선 $E$로 매핑하는 비밀 호몰로지라고 하자.
$\mathcal{H}(E, r)$을 입력 곡선 $E$를 도메인으로 하는 균일하게 무작위화된 동질 소스를 반환하는 해시 함수라고 하자.
개인 키를 알지 못한 상태에서 공개 키 곡선 $E$를 무작위로 재구성하려면, 임의의 솔트 $r$을 사용하여 $E \to E'$이 되는 동형 곡선 $\psi = \mathcal{H}(E, r)$을 도출하고, 이 공역(출력) 곡선 $E'$을 업데이트된 공개 키로 사용합니다. 매우 간단합니다. 실제로 SQIsign은 서명 및 검증을 위한 Fiat-Shamir 변환에서 어려운 동형 곡선 $\phi_{\text{chl}}$을 생성할 때마다 거의 정확히 이와 같은 방식으로 작업을 수행합니다.
동일 출처 개인 키 $\varphi$를 다시 무작위화하는 것은 좀 더 미묘한 과정입니다. 솔트 $r$이 주어지면 동일 출처 $\psi = \mathcal{H}(E, r)$을 다시 유도할 수 있습니다. 공개 키와 동일 출처 $\psi: E \to E'$의 자기동형환 $\text{End}(E)$을 알고 있으므로 $\text{End}(E')$을 계산할 수 있습니다. 한편, 상식적으로 $\text{End}(E_0)$을 알고 있으므로 이제 비밀 동일 출처 $\varphi': E_0 \to E'$을 찾을 수 있으며, 이것이 바로 우리의 새로운 개인 키입니다.

호몰로지에 관한 유용한 일반적인 사실: 임의의 곡선 $E_1$에서 다른 곡선 $E_n$으로 가는 호몰로지 경로를 알고 있다면, 그 경로에 다른 곡선들 $E_2, E_3, E_4, \ldots$ 사이의 많은 중간 호몰로지 경로가 포함되어 있더라도, 경로상의 적어도 하나의 곡선(반드시 첫 번째 또는 마지막 곡선일 필요는 없음)의 자기 호몰로지 사이클을 알고 있는 한, $E_1$에서 $E_n$으로 직접 가는 새로운 간결한 호몰로지 경로를 비교적 쉽게 계산할 수 있습니다.
좀 더 구체적으로 말하자면:
- 정의 $\text{KeyGen}(\varphi) := \text{Codomain}(\varphi)$
- $\text{RerandomizePublic}(E, r)$을 정의합니다:
- $\psi = \mathcal{H}(E, r): E \to E'$를 계산하세요.
- $E' = \text{공역}(\psi)$를 반환합니다.
- $\text{RerandomizeSecret}(\varphi, r)$을 정의합니다.
- $E = \text{KeyGen}(\varphi)$를 계산합니다.
- $\text{End}(E)$와 $\varphi$를 사용하여 $\text{End}(E_0)$를 계산합니다.
- $\psi = \mathcal{H}(E, r): E \to E'$를 계산하세요.
- $\text{End}(E')$와 $\psi$를 사용하여 $\text{End}(E)$를 계산합니다.
- $\text{End}(E_0)$와 $\text{End}(E')$를 이용하여 $\varphi': E_0 \to E'$를 계산하시오.
- $\varphi'$를 반환하세요
그 정확성은 쉽게 확인할 수 있습니다. $\varphi$를 재무작위화하여 생성된 공개 키는 원래 공개 키 $E$를 재무작위화하여 얻은 곡선 $E'$와 동일합니다.
$$\text{KeyGen}(\text{RerandomizeSecret}(\varphi, r)) = \text{RerandomizePublic}(E, r)$$
자연
공통 원점을 기반으로 하는 $\text{ReRandomizePublic}$ 알고리즘은 빠르고 구현이 간단합니다. 왜냐하면 의사 난수 공통 원점만 생성하면 되고, 나머지 도메인 계산은 이미 알려진 효율적인 알고리즘을 사용하여 쉽게 수행할 수 있기 때문입니다. 엄밀히 말하면, 공통 원점을 찾을 필요조차 없습니다.
$\text{ReRandomizeSecret}$ 함수는 더 복잡하고 계산 비용이 많이 들지만, 궁극적으로는 다항 시간 내에 완료됩니다. 정확한 속도는 알 수 없지만, SQIsign의 성능을 기준으로 볼 때 밀리초 단위일 가능성이 높습니다.
보안
이 기법은 이 논문 (3페이지)과 이 논문 (동일 출처에 대한 참조, 10페이지)을 비롯한 여러 논문에서 설명되었지만, 항상 서명 체계가 아닌 암호학적 맥락에서 다루어졌습니다. 그러나 이 개념은 서명 키에도 적용될 수 있습니다.
연결 불가능성을 증명하려면 $RerandomizePublic}(E, r)$에서 생성된 업데이트 곡선 $E'$가 초특이 타원 곡선의 균일 무작위 분포와 구별할 수 없음을 증명해야 합니다. 이때 사용되는 호몰로지 차수와 같은 세부 사항이 중요해집니다. 저는 암호학자는 아니지만, 초특이 호몰로지 그래프 이론의 사실을 활용하면 쉽게 증명할 수 있을 것이라고 생각합니다. SQIsign은 이미 챌린지 곡선의 분포와 관련하여 유사한 사실을 증명했습니다. 위조 불가능성을 증명하는 것은 선택하는 서명 방식에 따라 달라집니다.
그럼에도 불구하고, 이 기술의 참신성과 문헌에서의 상대적인 희소성을 고려할 때, 실제 환경에서 활용되기 위해서는 보안성을 입증하기 위한 추가적인 연구가 필요합니다. 사용 가능한 구현체가 없기 때문에 성능 평가 또한 불가능합니다. 이 모든 것은 향후 연구 과제입니다.
예
예를 들어, SQIsign 및/또는 PRISM 검증 알고리즘이 비트코인 합의 알고리즘에 표준화된 세상에 살고 있다고 상상해 보세요.
BIP32 HD 지갑
결정론적 계층형(HD) 지갑은 현재와 마찬가지로 사람이 읽을 수 있는 시드로부터 단일 마스터 시크릿 $\varphi_m: E_0 \to E_m$과 메인체인 코드 $cc_m$을 생성할 수 있습니다.
$$(\varphi_m, cc_m) = H(\text{seed})$$
강화된 하위 키는 BIP32의 CKDpriv 처럼 $cc_m$, 하위 인덱스 $i$, 그리고 개인 키 자체를 솔트로 사용하여 마스터 키를 다시 무작위화함으로써 얻을 수 있습니다.
$$(r, cc_i') = H(\varphi_m, cc_m, i)$$
$$\varphi_i' = \text{RerandomizeSecret}(\varphi_m, r)$$
강화되지 않은 하위 키는 BIP32의 경우 CKDpub 와 같이 $cc_m$, 하위 인덱스 $i$ 및 공개 키를 솔트로 사용하여 마스터 키를 다시 무작위화함으로써 얻을 수 있습니다.
$$(r, cc_i) = H(E_m, cc_m, i)$$
$$\varphi_i = \text{RerandomizeSecret}(\varphi_m, r)$$
확장된 공개 키 $(E_m, cc_m)$를 소유한 관찰자는 확장되지 않은 하위 공개 키를 도출할 수 있습니다.
$$(r, cc_i) = H(E_m, cc_m, i)$$
$$E_i = \text{RerandomizePublic}(E_m, r)$$
그 결과, 기존 BIP32 HD 지갑을 거의 완벽하게 대체할 수 있는 새로운 지갑이 탄생했으며, 이는 키 생성 속도가 느려지는 대신 양자 보안 기능을 제공합니다.
BIP341 키 조정
미래에 동일 출처 암호화에 대한 신뢰도가 더 높아지면, 현재 Taproot처럼 공개 키 출력에서 스크립트 트리에 대한 동일 출처 커밋먼트를 숨기는 업그레이드를 고려할 수 있을 것입니다.
온체인 게시되는 원시 공개 키는 타원 곡선 $E^\prime$(약 66바이트)입니다. 온체인$E^\prime$을 관찰하는 사람에게는 무작위로 선택되어 불투명하게 보입니다. 키 소유자는 PRISM, SQIsign 또는 당시 표준화된 다른 체계를 사용하여 $E^\prime$으로 검증된 서명을 게시함으로써 키 경로 지출을 실행할 수 있습니다.
또는 소비자는 원시 서명을 공개하지 않고 대신 두 번째 곡선 $E$(이를 특별히 내부 키 라고 부르겠습니다)와 머클 루트 $m$을 공개하는 것을 선택할 수 있습니다.
$$E' = \text{RerandomizePublic}(E, m)$$
이제 머클 루트 $m$을 사용하여 UTXO가 시간 잠금, 다중 서명 또는 제한 조항 스크립트와 같은 이전에 숨겨져 있던 특정 비용 조건(소위 스크립트 경로 비용) 을 준수한다는 것을 증명할 수 있습니다. 이 모든 것은 현재 BIP341 탭루트 주소가 작동하는 방식과 매우 유사합니다.
하지만 몇 가지 복잡한 문제가 있습니다. 현재로서는 키 경로 비용에 대한 "NUMS(Nothing-Up-My-Sleeve)" 지점을 비활성화하는 데 사용되는 특정 탭루트 주소를 대체할 수 있는 상동성 기반의 동등한 방법이 없습니다. 현재까지 알려지지 않은 상염색체 고리를 가진 초특이 타원 곡선, 즉 NUMS 곡선을 생성하는 투명한 알고리즘은 발견되지 않았습니다.
교정자 주: "Nothing-Up-My-Sleeve"의 문자 그대로의 의미는 마술사가 마술을 선보이기 전에 관객에게 소매를 보여주어 아무것도 숨기고 있지 않다는 것을 증명하는 것입니다. 암호학에서 이 표현은 "아무것도 숨기지 않는다"는 의미를 갖습니다. 즉, 값이 어떤 숨겨진 의도를 위해 의도적으로 구성된 것이 아니라 투명하게 생성된다는 뜻입니다. 예를 들어, BIP 341 탭루트 비용 검증 규칙은 x 좌표가 secp256k1 곡선 생성기 G의 압축되지 않은 해시값인 NUMS 포인트(공개 키)를 정의합니다.
관련 당사자들이 상호 작용할 수 있다면, 초기 곡선 $E_0$에서 최종 곡선 $E_n$으로 이동하는 NUMS 곡선을 생성하는 다자간 프로토콜을 실행할 수 있습니다. 각 $n$명의 참여자는 중간 동족 소스 $\phi_i: E_{i-1} \to E_i$를 제공하고, 보안을 위해 자신이 $\phi_i$를 알고 있다는 간단한 증명을 제공합니다. 각 참여자는 의식이 끝난 후 자신의 동족 소스 $\phi_i$를 잊어버리겠다고 약속합니다.
설정 의식에 참여하는 모든 정직한 에이전트는 결과 곡선이 실제로 비용 불변임을 확신할 수 있습니다. 왜냐하면 모든 참여자가 동일한 소스에서 자신의 기여도를 정직하게 삭제하는 한, $E_0$에서 $E_n$으로 가는 알려진 경로가 없으므로 $\text{End}(E_n)$ 또한 알 수 없기 때문입니다. 그러나 이 프로토콜은 모든 관련 당사자가 비동기적으로라도 설정 의식에 참여해야 하므로 실제로는 번거로울 수 있습니다.
비트코인 커뮤니티는 이더 커뮤니티와 유사하게, 지속적으로 진화하는 반신뢰성 NUMS 곡선 세트를 생성하고 이를 오픈타임스탬프와 비슷한 방식으로 주기적으로 온체인 에 커밋하는 영구적인 타우 파워(Powers -of-Tau) 의식을 개최할 수 있습니다. 하지만 이상적으로는 보다 투명하고 재현 가능한 해결책을 선호합니다.
다음은 임의의 입력을 무작위 (NUMS) 초특이 타원 곡선으로 해싱하려는 다양한 시도를 조사한 2024년 논문입니다 .
무음 결제
무음 결제는 개념적으로 다음과 같이 작동합니다.
- 밥은 공개 키 $B$가 포함된 고정된 결제 주소를 온라인 어딘가(소셜 미디어, GitHub 등)에 게시합니다.
- 앨리스는 $B$를 보고 밥과 직접 접촉하지 않고 그에게 돈을 보내고 싶어합니다.
- 앨리스는 공개 키 $A$를 사용하는 주소에 UTXO를 가지고 있습니다.
- 앨리스는 자신의 개인 키 $a$를 알고 있으므로, 자신의 키와 밥의 키 사이의 디피-헬만 키 교환을 사용하여 공유 키 $ss$를 계산합니다.
- Alice는 Bob의 공개 키 $B' = \text{RerandomizePublic}(B, ss)$를 다시 무작위화 하고 코인을 $B'$로 보냅니다.
- 밥은 무차별 대입 방식으로 블록체인을 스캔하여 자신의 비공개 결제 주소로 전송된 결제 내역을 찾아내고, 비공개 결제일 가능성이 있는 각 거래에 대한 공유 키를 계산합니다.
- 궁극적으로 Bob은 Alice의 거래를 테스트하고 동일한 공유 키 $ss$를 계산하고 파생 키 $B' = \text{RerandomizePublic}(B, ss)$가 Alice의 거래 출력 중 하나와 일치함을 확인합니다.
개념적으로는 공통 소스를 사용하여 이러한 효과를 달성하는 것이 가능하지만, 우리가 살펴본 다른 예시들보다 훨씬 더 어렵습니다. 앞서 살펴본 바와 같이 재산란화 자체는 가능하지만, 양측의 개인정보를 보호하면서 공유 키에 합의하는 것은 매우 어려운 과제입니다.
IBC 세계에는 CSIDH , POKE , QFESTA 등과 같은 안전한 키 교환 프로토콜이 많이 있지만, 이러한 키 교환 프로토콜 중 어느 것도 SQIsign 또는 PRISM 공개 키와 직접 호환되지 않습니다.
밥이 관리하는 난수 생성 키에 대해 합의하려면 앨리스와 밥은 정보를 교환해야 합니다. 밥은 먼저 자신의 비공개 결제 주소를 전달합니다. 이 과정은 오프체인에서 이루어지기 때문에 원하는 어떤 주소든 사용할 수 있으며, QR 코드에 들어갈 수 있는 한도 내에서 상당히 큰 주소도 가능합니다. 예를 들어, 66바이트의 PRISM 공개 키와 64바이트의 CSIDH-512 공개 키를 합쳐 총 130바이트의 주소를 사용할 수 있습니다.
앨리스는 밥의 CSIDH 키를 확인한 후 공유 키를 쉽게 계산할 수 있습니다. CSIDH 키 교환은 비대화형으로 이루어지기 때문입니다. 하지만 앨리스는 어떻게 자신의 CSIDH 공개 키를 밥에게 전달할까요? 공개 키가 없으면 밥은 공유 키를 계산하거나 앨리스의 결제 내역을 확인할 수 없습니다.
앨리스는 OP_RETURN이나 인스크립션 봉투 등을 통해 밥에게 보내는 결제 거래에 64바이트 CSIDH 공개 키를 온체인 첨부할 수 있습니다. 그러나 이는 양측의 개인정보 보호에 해롭습니다. 온체인 관찰자가 밥이 수신자임을 증명할 수 없더라도 앨리스의 결제를 익명 결제 거래로 쉽게 식별할 수 있기 때문입니다.
앨리스는 자신의 CSIDH 공개 키를 오프체인으로 밥에게 보낼 수 있지만, 앨리스가 오프체인으로 밥과 통신할 수 있다면 굳이 밥에게 자신이 원하는 새로운 IP 주소를 요청할 필요가 있을까요? 게다가 이는 앨리스의 네트워크 계층 개인정보 보호를 위협할 수도 있습니다. 앨리스는 밥이 IP 주소를 통해 자신을 추적할까 봐 인터넷을 통해 밥과 연결하는 것을 꺼릴 수도 있습니다.
이상적인 세상에서는 유효한 키 교환 공개 키 와 유효한 서명 공개 키를 동시에 인코딩하는 하이브리드 키 쌍을 생성하는 방법이 있어야 합니다. 그러한 시스템은 존재합니다. CSIDH 키와 상호 운용되는 서명 체계가 있지만, 이러한 체계는 일반적으로 성능이 떨어지고 SQIsign이나 PRISM보다 훨씬 큰 서명을 생성합니다. 이 분야의 최첨단 논문이 이러한 격차를 해소하는 데 도움이 될 수 있을 것입니다 . 또는 앨리스가 자신의 서명에 CSIDH 공개 키를 포함시켜 밥만이 클레임 할 수 있는 방법이 있을 수도 있습니다. 하지만 현재까지 이 문제는 해결되지 않은 채 남아 있습니다.
또 다른 문제는 성능입니다. 시스템이 완전히 작동하려면 Bob은 모든 블록의 모든 후보 거래를 스캔하여 결제를 식별할 수 있어야 합니다. CSIDH 키 교환에 대한 최적화 작업이 많이 진행되었지만 , 하드웨어에 따라 실행 시 여전히 수십에서 수백 밀리초가 소요됩니다. 이는 송금인인 Alice에게는 큰 문제가 되지 않습니다. 그녀는 키 교환을 한 번만 실행하면 되기 때문입니다. 하지만 Bob은 송금인이 추가적인 힌트를 제공하지 않는 한 결제를 식별하기 위해 이 키 교환을 수천 번 반복해야 할 수도 있습니다.
결점
기존 IBC 기술의 한계를 부인한다면 순진한 생각일 것입니다.
무엇보다도, SQIsign의 검증 성능은 그다지 좋지 않습니다. 최근 몇 년 동안 상당한 개선이 이루어졌지만, SQIsign의 검증 알고리즘은 여전히 상당한 연산 능력을 요구합니다. 최적화된 코드조차도 단일 서명을 검증하는 데 1밀리초 이상이 걸립니다. 병렬화를 통해 어느 정도 완화할 수 있지만, 이는 암호화 기술의 아킬레스건으로 남아 있습니다.
또 하나 주목할 만한 점은 SQIsign 서명이 변경 가능하다는 것입니다.
SQIsign은 강력한 위조 불가능성을 목표로 하지 않는다는 점에 유의하십시오. 실제로, 메시지에 대한 유효한 서명이 주어졌을 때, 보조 동형사상을 조작함으로써 동일한 메시지에 대한 두 번째 유효한 서명을 효율적으로 생성할 수 있습니다. 보조 동형사상을 동일한 차수의 다른 동형사상으로 대체하면 유효한 서명이 생성됩니다. 서명에서 보조 동형사상의 역할은 응답을 2차원적으로 표현할 수 있도록 하는 것뿐이며, 프로토콜의 보안에 기여하지 않습니다. 다시 말해, 2차원 표현 자체는 유일하지 않습니다. 이러한 표현이 주어지면 대부분의 경우 동일한 동형사상에 대한 다양한 표현을 쉽게 찾을 수 있습니다. 따라서 SQIsign은 강력한 위조 불가능성을 달성할 수 없습니다.
— SQIsign NIST 제출 문서 , 93페이지
PRISM도 마찬가지일 거라고 생각합니다. PRISM 서명 역시 간결성을 위해 2차원 동족 표현을 사용하기 때문입니다.
하지만 현재 서명은 증인 데이터에만 포함되고 TXID 계산에는 영향을 미치지 않으므로 라이트닝 네트워크와 같은 레이어 2 프로토콜에는 영향을 미치지 않습니다.
IBC 암호화 유연성의 가능성을 칭찬해 왔지만, IBC 환경에서 여전히 부족한 한 가지는 바로 효율적인 다중 서명 방식입니다. CSI-SharK 와 같은 동일 출처 기반 다중 서명 방식이 존재하기는 하지만, SQIsign이나 PRISM에 비해 공간 효율성이 훨씬 떨어집니다.
앞서 언급했듯이, 균일한 환경에서 유효한 NUMS 공개 키를 생성하는 것은 어려워 보입니다. 다자간 설정 절차를 수행할 수도 있지만, 현재 NUMS 곡선 점을 해싱을 통해 찾는 것처럼 NUMS 초특이 곡선을 해싱하는 것이 훨씬 쉬울 것입니다.
마지막으로, IBC의 학습 곡선을 인정해야 합니다. 해시 기반 서명과 같은 기본적인 개념과 비교했을 때, 동형 암호화는 수학 전공자가 아닌 사람들에게는 진입 장벽이 매우 높습니다. 저 자신도 경험이 풍부한 암호화 개발자이자 엔지니어이지만, 필요한 수학적 배경 지식이 부족하여 지난 몇 달 동안 IBC를 이해하는 데 어려움을 겪었습니다. 이에 비해 해시 기반 서명은 훨씬 쉽습니다.
이 문제는 초보자에게 친숙한 교육 자료가 부족한 데서 비롯된 것 같습니다. 제가 찾은 정보는 대부분 학술 논문이나 한 시간짜리 파워포인트 영상 프레젠테이션뿐이었습니다.
결론적으로
동형 암호학에 대한 정보는 대부분 수학계의 상아탑에 갇혀 있습니다. 이 글을 통해 보다 접근하기 쉽고 직관적인 시각으로 이 분야를 이해할 수 있기를 바랍니다.
상동성 분야의 전문 연구자 여러분께: 혹시라도 제가 의도치 않게 누락한 부분이 있다면 진심으로 사과드립니다. 장황함을 피하기 위해 일부 내용은 생략했습니다. 중대한 오류가 있다면 언제든지 연락 주시기 바랍니다! 기꺼이 함께 논의하겠습니다.
이제 동족 암호화의 가능성을 살펴보았으니, 제가 이 글의 제목을 이렇게 지은 이유를 이해하셨을 거라고 생각합니다. 대규모 양자 컴퓨터 시대가 도래한 후 비트코인의 미래에 관심이 있다면, 언젠가 기존 ECC를 대체할 수 있는 시스템이 무엇인지 알아보는 데 시간을 투자해야 할 것입니다. 그리고 저는 동족 암호화가 이 분야에서 가장 앞서 있다고 생각합니다.
좀 더 구체적으로 말하자면, 제 주장은 다음과 같습니다.
- 기존 ECC 속성에 의존하는 비트코인 관련 사업체는 이러한 속성을 양자 컴퓨팅에 안전한 대안으로 대체하는 방법을 연구하는 데 투자해야 합니다. 이를 동질화 할 수 있을까요?
- 비트코인 개발자들은 언젠가 동종 암호화를 사용하는 안전한 소프트웨어를 작성할 수 있도록 동종 암호화에 대해 배워야 합니다.
- 비트코인 레이어 2 프로토콜 엔지니어들은 더 멀리 내다봐야 합니다. 양자 컴퓨터가 10년이나 20년 안에 모든 ECC 기반 프로토콜을 무력화시킬 것을 예상하고 수년간 그 프로토콜을 개발하는 데 시간을 낭비하지 마십시오. 적어도 자신보다 오래 살아남을 가능성이 있는 것을 만들어야 합니다.
- 비트코인 코어 개발자들은 ECC가 사라진 후 온체인 지출의 장기적인 확장성과 표현력을 위한 기반으로 어떤 암호화 기술을 사용할지 고려해야 합니다. 많은 독자분들이 아시다시피 저는 SLH-DSA를 선호하며 좋은 백업 및 임시방편이라고 생각하지만, 장기적으로는 더 나은 방법이 있을 것입니다.
- 비트 리스크 투자자들은 투자하는 기업의 미래를 고려해야 합니다. 향후 몇 년 안에 설립될 스타트업들은 양자 컴퓨팅의 직접적인 영향을 받는 최초의 비상장 비트코인 기업들이 될 수도 있고, 적어도 양자 컴퓨팅에 대한 공포와 불확실성(FUD)으로 인해 심각한 타격을 입을 첫 번째 기업들이 될 수도 있습니다. CEO가 양자 컴퓨팅에 대처할 만한 확실한 계획을 제시하지 못한다면, 그 기업에 대해 회의적인 시각을 가져야 합니다.
- 코인베이스, 피델리티, 제미니, 앵커리지와 같은 비트코인 수탁기관들은 복잡한 오프라인 및 다중 서명 수탁 모델을 대체할 수 있는 안전한 양자 컴퓨팅 기술 연구에 투자해야 합니다. 만약 CRQC 보유자가 비트코인에 대한 공격을 감행한다면, 이들 기업의 지갑이 최우선 공격 대상이 될 것입니다. 이들은 가장 큰 손실을 입을 가능성이 높으며, 확장 가능하고 안전한 양자 컴퓨팅 지갑 구축에 투자할 강력한 동기를 갖고 있습니다.
- 비트코인 사용자들은 우리가 기존 ECC를 대체할 효율적인 대안이 될 수 있다는 가능성에 군침을 흘려야 할 것입니다. 우리는 수십억 달러에 달하는 양자 컴퓨팅 연구 개발 비용에 비하면 미미한 비용으로, 기존에 익숙해져 있던 장점들을 대부분 유지할 수 있습니다.
저는 프리랜서 비트코인 연구원으로, 기존 ECC 방식의 대안을 연구하고 있습니다. 마치 점심을 사달라는 것처럼 들릴 수도 있겠지만, 제 개인적인 이야기나 제 연구에 대한 이야기는 아닙니다. 물론 관심 있으시면 언제든 연락 주세요 .
저는 인간의 지성과 수많은 지적인 사람들이 노력을 집중하도록 동기를 부여하는 자금에 대해 이야기하고 있습니다. 오늘날 비트코인 산업은 무시할 수 없는 세력이며, 비록 커뮤니티가 분열되어 있을지라도 우리가 가진 자원은 막대합니다. 이러한 자원을 동원하고 가장 효과적인 곳에 압력을 가한다면, 비트코인은 다가올 암호 해독의 돌파구를 극복하고 살아남을 수 있을 것이라고 확신합니다.
새롭고 강력한 기술에 일찍 투자하는 사람들이 가장 큰 리스크 감수하지만 가장 큰 보상을 얻는다는 것은 잘 알려진 사실입니다.
같은 출처에 대한 기타 정보
- https://arxiv.org/pdf/1711.04062
- https://www.pdmi.ras.ru/~lowdimma/BSD/Silverman-Arithmetic_of_EC.pdf
- https://www.math.auckland.ac.nz/~sgal018/crypto-book/ch25.pdf
- https://ocw.mit.edu/courses/18-783-elliptic-curves-fall-2025/mit18_783_f25_lec04.pdf
- https://troll.iis.sinica.edu.tw/ecc24/slides/1-02-intro-isog.pdf
- https://math.mit.edu/classes/18.783/2019/LectureNotes5.pdf
- [ https://cs-uob.github.io/COMSM0042/assets/pdf/Isogeny-based%20Cryptography_Advanced%20Cryptology.pdf] ( https://cs-uob.github.io/COMSM0042/assets/pdf/Isogeny-based Cryptography_Advanced Cryptology.pdf)
- https://eprint.iacr.org/2023/671.pdf
- https://eprint.iacr.org/2024/1071.pdf
(위에)



