FHE16 WASM

Gate & Arithmetic Playground

Run boolean gates, integer arithmetic, and floating-point operations on encrypted data — directly in your browser, powered by FHE16 WebAssembly.

불리언 게이트, 정수 산술, 부동소수 연산을 암호화된 데이터 위에서 — 브라우저에서 바로, FHE16 WebAssembly로 실행합니다.

UNSAFE demo artifact: the public builds intentionally use zero-error test parameters and provide no cryptographic security. Do not use sensitive data.

UNSAFE 데모 아티팩트: 공개 빌드는 의도적으로 오류 0 테스트 파라미터를 사용해 암호학적 보안이 전혀 없습니다. 민감한 데이터는 넣지 마세요.

How It Works

Fully Homomorphic Encryption (FHE) lets you compute on encrypted integers and floats without ever decrypting them. In a secure production build, the compute party operates on ciphertexts without the plaintext inputs. This public demo is not such a security build and decrypts results locally for verification. Results are bit-exact to ordinary plaintext arithmetic.

완전동형암호(FHE)는 암호화된 정수·실수를 한 번도 복호화하지 않고 그대로 계산하게 해줍니다. 실제 보안 빌드에서는 연산 주체가 평문 입력 없이 암호문만으로 계산합니다. 이 공개 데모는 그런 보안 빌드가 아니며, 검증을 위해 결과를 로컬에서 복호화해 보여줍니다. 결과는 일반 평문 산술과 bit-exact로 일치합니다.

  1. Load Module — select a build and click Load Module to fetch the WASM binary (~10 MB). Wait for "Module ready".
  2. Generate Keys — click Generate Keys to create the bootstrapping key set. This takes 10–30 seconds and only needs to be done once per session.
  3. Pick a tab — Boolean Gates for single-bit ops, Arithmetic for 32-bit integers, Float for IEEE-754 f32.
  4. Enter values and Run — inputs are encrypted on the fly, the operation runs over ciphertexts, and the decrypted result is shown alongside the expected plaintext value.
  1. 모듈 로드 — 빌드를 고르고 모듈 로드를 눌러 WASM 바이너리(~10 MB)를 받으세요. "Module ready"가 뜰 때까지 기다립니다.
  2. 키 생성 — 키 생성을 눌러 부트스트래핑 키셋을 만듭니다. 10~30초 걸리며 세션당 한 번만 하면 됩니다.
  3. 탭 선택 — 불리언 게이트는 단일 비트, 정수 산술은 32-bit 정수, 실수는 IEEE-754 f32.
  4. 값 입력 후 실행 — 입력은 즉석에서 암호화되고, 연산은 암호문 위에서 수행되며, 복호화된 결과가 기대 평문값과 함께 표시됩니다.

The Runtime Log below shows per-operation timings and any diagnostics.

아래 런타임 로그에 연산별 시간과 진단이 표시됩니다.

Idle

Signed 32-bit FHE integer (−2,147,483,648 … 2,147,483,647). enc = encrypted input, imm = plaintext constant, k = plaintext shift amount.

부호 있는 32-bit FHE 정수 (−2,147,483,648 … 2,147,483,647). enc = 암호화된 입력, imm = 평문 상수, k = 평문 시프트 양.

FHE16 bit-decomposed IEEE-754 single-precision (f32) over encrypted values: arithmetic (+ − × ÷, min/max/copysign), unary (abs/neg/floor/ceil/round/trunc), and compares (< > ≤ ≥ = ≠ → 0/1). Bit-exact to CPU float.

FHE16 비트분해 IEEE-754 단정밀도(f32) 암호문 연산: 산술(+ − × ÷, min/max/copysign), 단항(abs/neg/floor/ceil/round/trunc), 비교(< > ≤ ≥ = ≠ → 0/1). CPU float와 bit-exact.

Runtime Log