잔액, 금액, 컨트랙트 상태가 프로토콜 수준의 임계 FHE 아래에 놓이는 EVM 동등 레이어 1입니다. 구조적으로 기밀이며 누구나 검증할 수 있고, 신뢰가 필요 없는 프라이버시를 위해 ZK 실드 풀을 제공합니다.
Celar의 프라이버시는 덧붙인 컨트랙트가 아니라 프로토콜의 데이터 평면 그 자체입니다. 모든 계층은 명시된 공격자 유형을 기준으로 규정되며, 형용사 대신 공개된 누출 매트릭스로 설명합니다.
금액, 잔액, 컨트랙트 값은 TFHE 암호문이며, 프로그래머블 부트스트래핑을 통해 온체인에서 연산됩니다. ConfidentialERC20를 기본 제공합니다.
이중 키 스텔스 주소(ERC-5564 방식)는 모든 결제에 새로운 일회용 주소를 부여하며, 담보를 예치한 릴레이어가 송신자를 가립니다.
BLS12-381 위의 Groth16 실드 풀: 검증자 전원이 담합하더라도 송신자·수취인·금액의 프라이버시가 유지됩니다.
표준 EVM 시맨틱, Solidity 도구 체계, 주소 모델, JSON-RPC를 그대로 사용합니다. 기밀 기능은 오직 프리컴파일을 통해서만 들어오므로 기존 컨트랙트, 지갑, 도구가 수정 없이 동작합니다.
euint8…euint64 및 ebool 는 TFHE.sol 표준 라이브러리로 제공됩니다. 스토리지에는 핸들이, FHE 데이터 평면에는 암호문이 놓입니다.import {TFHE, euint64, ebool} from "celar/TFHE.sol"; contract ConfidentialVault { mapping(address => euint64) private bal; function transfer(address to, euint64 amt) external { ebool ok = TFHE.and( TFHE.le(amt, bal[msg.sender]), // funds check TFHE.le(amt, TFHE.sub(MAX, bal[to])) // overflow guard ); euint64 m = TFHE.select(ok, amt, ZERO); bal[msg.sender] = TFHE.sub(bal[msg.sender], m); bal[to] = TFHE.add(bal[to], m); // no revert, no branch, no leakage — // outcome visible only to the owner via re-encryption } }
모든 기밀 전송은 성공 여부와 무관하게 합의상 유효합니다. 동일한 가스 등급, revert 없음, 이벤트 차이 없음 — 외부 관찰자는 결과로부터 아무것도 알 수 없습니다.
암호화된 비교: 송신자에게 잔액이 충분한가? 그 답 자체가 암호화된 상태로 남습니다.
두 번째 암호화 검사가 수취인 잔액을 보호합니다. ok = ok₁ ∧ ok₂.
이동하는 금액은 해당 값이거나 암호화된 0입니다. 어떤 분기도 실행되지 않습니다.
두 경우 모두 잔액은 동일하게 갱신됩니다. 결과를 아는 것은 자기 재암호화를 통한 송신자뿐입니다.
TFHE 비밀키는 100개 위원회 좌석에 분산된 지분 형태로만 존재합니다. 복호화와 재암호화에는 그 좌석들의 정족수가 필요하며, 모든 동작은 귀속 가능하고 슬래싱 대상입니다. 장악 한계는 헌법적 지위를 가지므로 거버넌스가 약화시킬 수 없습니다. 키 위원회의 기밀성 임계값은 배포된 구성에서 100석 중 24석 이며, 이는 실제 운영 의식에서 측정된 값입니다. 임의의 24석은 아무것도 알지 못하며, 재구성에는 그보다 엄격히 더 많은 수가 필요합니다. c = 100에서 진행한 개발용 키 생성 실행은 임계값 33을 사용했습니다. 설계 목표는 79/100이며, 그 격차는 설계가 아니라 현재 사용 중인 전처리 엔진의 특성에서 비롯됩니다. 분산 차수를 세션 임계값에서 분리하는 방법은 문헌에 나와 있고 다른 임계 FHE 라이브러리에 구현되어 있으며, Celar가 지금 진행 중인 엔지니어링 과제입니다. 백서 §7.1에 두 수치와 그 경로가 모두 기재되어 있습니다.
기록이 공개되고 이의 제기가 온체인에서 해소되는 견고한 분산 키 생성 절차가 선형 지분과 입력 증명용 공통 참조 문자열을 만들어 냅니다. 부정 행위를 한 참여자는 제네시스 이전에 배제됩니다.
허가된 공개는 t개의 부분 복호화를 결합하며, 각각에 보정된 잡음을 주입합니다. 덕분에 공격자가 영향을 준 암호문(IND-CPA-D) 환경에서도 반복 복호화가 안전하게 유지되며, 에포크별 질의 예산이 함께 적용됩니다.
지분은 에포크마다 갱신되고 이전 지분은 무용지물이 됩니다. 공격자는 단일 에포크 안에 복호화 정족수 전체를 장악해야 합니다. 위원회 좌석은 도메인 분리된 VRF 비컨을 통해 25에포크의 엇갈린 임기로 교체됩니다.
모든 부분 복호화는 서명된 자족적 부정 증명이며, 허가 없는 서비스 제공에는 강력한 슬래싱이 따릅니다. 재해 복구는 온체인 타임락 활성화 조건 뒤에 놓인, 지분 재분배만 가능한 봉인된 정족수로 이루어집니다. 구조적으로 공개되며 결코 은밀하지 않습니다.
대부분의 프라이버시 체인은 형용사를 판매합니다. Celar는 명시된 공격자 유형을 기준으로 통합 누출 매트릭스를 공개하며, v1에서 목표로 삼지 않는다고 선언한 항목까지 함께 밝힙니다.
| 데이터 항목 | 공개 계층 | FHE 계층(v1) | ZK 풀(v2) |
|---|---|---|---|
| 금액 | 노출 | 숨김* | 숨김 |
| 잔액 / 상태 | 노출 | 숨김* | 해당 없음 — 노트 방식 |
| 송신자 신원 | 노출 | 릴레이어가 가림 | 숨김 |
| 수취인 신원 | 노출 | 일회용 스텔스 주소 | 숨김 |
| 전송 성공 / 실패 | 노출 | 숨김 — 분기 없음 | 내용 숨김 |
| 컨트랙트 호출 대상 | 노출 | 노출 — v1.x 로드맵 | 해당 없음 — 풀 프리컴파일 |
포스트 양자 기밀성, 고전적 익명성 및 인증. Celar의 기밀성은 타원곡선이 아니라 격자 문제의 난해성에 기반합니다. 오늘 기록된 금액, 잔액, 컨트랙트 상태는 암호학적으로 유의미한 양자 컴퓨터가 등장할 때까지 이를 보관하는 공격자에 대해서도 기밀로 유지됩니다. 반면 익명성과 인증 계층은 고전적이며, 저희는 이를 그대로 밝힙니다.
| 계층 | 사용 기술 | 포스트 양자 |
|---|---|---|
| 금액, 잔액, 컨트랙트 상태 | TFHE / CGGI (LWE / RLWE) | 안전 — 이미 격자 기반 |
| 임계 복호화 및 재암호화 | LWE 기반 임계 방식 | 안전 |
| 입력 증명 | (R)LWE ZKPoK | 안전 |
| 해싱 | Poseidon2, Keccak-256 | 안전 — 2배 여유 |
| 신원 및 서명 | secp256k1 ECDSA | 쇼어 알고리즘에 취약 → ML-DSA로 전환 |
| 스텔스 주소 | secp256k1 ECDH | 쇼어 알고리즘에 취약 → 격자 기반 KEM |
| 재암호화 대상 | X25519 | 쇼어 알고리즘에 취약 → 포스트 양자 KEM |
| 실드 풀 증명 | Groth16 / BLS12-381 | 쇼어 알고리즘에 취약 → STARK / 격자 기반 SNARK |
신원·서명·ZK 계층의 전환은 NIST 포스트 양자 암호 표준의 성숙도에 따라 진행되는 계획된 하드포크 경로이며, 출시 시점의 결과물이 아닙니다. 암호 민첩성은 꼭 필요한 곳에 설계되어 있습니다. 버전이 부여된 증명 포장은 곡선을 되돌리지 않고도 포스트 양자 증명 체계를 수용하며, 핸들 기반 프리컴파일 ABI는 특정 방식에 의존하지 않습니다. 계층별 전체 분석 보기 →
발행, 스테이킹, 프라이버시 보장은 공개된 건전성 규칙으로 묶여 있습니다. 복호화 정족수를 매수하는 비용은 온체인에서 보호되는 가치의 최소 2배 이상을 유지해야 하며, 이는 지속적으로 재계산되고 헌법적으로 강제됩니다.
f < n/3 조건에서의 BFT 안전성과 즉시 확정성. 발행량 불변식은 블록마다 기계적으로 검증됩니다.
복호화 정족수에 미치지 못하는 어떤 연합에 대해서도 금액, 잔액, 컨트랙트 상태는 숨겨진 채로 유지됩니다.
스텔스 주소와 릴레이어 경유로 인해 관찰자가 볼 수 있는 것은 릴레이어, 일회용 주소, 계층, 시각뿐입니다.
실드 풀의 익명성은 검증자 전원이 담합해도 유지됩니다. 위원회에 대한 신뢰가 아니라 암호학에 기반하기 때문입니다.
총 발행량은 언제나 공개적으로 검증 가능합니다. 암호화된 상태가 토큰을 새로 발행하거나 인플레이션을 숨길 수 없습니다.
모든 복호화에는 소유자나 컨트랙트의 허가가 필요합니다. 위반은 귀속 가능하고 슬래싱 대상이며, 유일한 복구 경로는 구조적으로 공개되어 있습니다.