waLLLnut Private Policy Evaluation
Pre-decision SDK that hides both user data and server screening criteria사용자 데이터와 서버 심사 기준을 둘 다 숨기는 사전결정 SDK
FHE16 apps split into server-side FHE (the server computes on ciphertext) and browser-side FHE (the browser computes on ciphertext and sends only the result to the server). This page is a browser-side private policy demo, but location search and ad/offer matching fit server-side FHE better.FHE16 앱은 서버가 암호문을 계산하는 server-side FHE와 브라우저가 암호문을 계산한 뒤 결과를 서버에 보내는 browser-side FHE로 나뉩니다. 이 페이지는 browser-side private policy demo지만, 위치 검색과 광고/offer matching은 server-side FHE가 더 맞습니다.
Both parties keep a secret: the applicant sends no raw financial data, and the lender's threshold stays hidden. Only a pre-approval bit and limit bucket are returned.양쪽이 각자 비밀을 유지합니다. 신청자는 raw 금융 데이터를 보내지 않고, lender threshold는 숨겨집니다. 사전승인 bit와 한도 bucket만 반환됩니다.
Endpoint telemetry bits stay encrypted and the vendor's detection rule pack stays hidden; only an alert/severity bucket is returned. Agent-side integration is the main cost.endpoint telemetry bit는 암호화된 채로, 벤더 탐지 rule pack은 숨겨진 채로 평가되어 alert/severity bucket만 반환됩니다. agent 통합이 주된 비용입니다.
Lab/diagnosis predicate bits are matched against private inclusion criteria, returning only a match bit — no PHI is collected up front. IRB/HIPAA/DUA review cycles are long.lab/diagnosis predicate bit를 private inclusion criteria와 대조해 match bit만 반환하며, PHI를 먼저 수집하지 않습니다. IRB/HIPAA/DUA 검토 사이클이 깁니다.
FHE16 app mode classificationFHE16 앱 모드 분류
The product story becomes clearest when you categorize apps by where computation happens. If the server holds the catalog/model/ranking, use server-side FHE. If the browser evaluates policy and sends only the result, use browser-side FHE.앱을 계산 위치로 나눠야 제품 이야기가 선명해집니다. 서버가 catalog/model/ranking을 갖고 있으면 server-side FHE, 사용자의 브라우저에서 policy를 평가하고 결과만 서버가 받아야 하면 browser-side FHE입니다.
Server-side FHE
- Compute
- Server, GPU/FPGA, cloud worker, or FHE coprocessor computes on ciphertext.서버, GPU/FPGA, cloud worker, FHE coprocessor가 암호문을 계산합니다.
- Apps
- Nearby restaurant/shop search without location sharing, privacy-preserving ads, offer eligibility, private ranking/recommendation.위치 공유 없이 주변 음식점/매장 찾기, privacy-preserving ads, offer eligibility, private ranking/recommendation.
- Why
- The server holds catalog, campaign, inventory, and ranking rules, so the browser only needs to encrypt and send location/query/profile.서버가 catalog, campaign, inventory, ranking rule을 갖고 있으므로 브라우저는 위치/query/profile만 암호화해 보내면 됩니다.
Browser-side FHE
- Compute
- Browser worker combines encrypted policy and user predicate.브라우저 worker가 encrypted policy와 user predicate를 조합합니다.
- Apps
- Finance/insurance prequalification, clinical trial/HR self-check, consent-gated eligibility, endpoint local rule evaluation.금융/보험 사전심사, 임상시험/HR self-check, consent-gated eligibility, endpoint local rule evaluation.
- Why
- Server receives no raw user data, browser never sees server thresholds in plaintext, server receives only enc_result for decrypt/sign.서버는 raw user data를 받지 않고, 브라우저는 서버 threshold를 평문으로 보지 않으며, 서버는 enc_result만 받아 decrypt/sign합니다.
Outsourced FHE / MPC hybrid
- Compute
- Baseline is FHE outsourcing: external pool computes on ciphertext and public/template circuit without SK.기본형은 외부 pool이 SK 없이 ciphertext와 공개/템플릿 circuit을 계산하는 FHE outsourcing입니다.
- MPC line
- When the circuit itself or both inputs need stronger hiding, escalate to MPC, 2PC, PFE, or FHE+MPC hybrid.회로 자체나 양쪽 입력을 더 강하게 숨겨야 하면 MPC, 2PC, PFE 또는 FHE+MPC hybrid로 넘어갑니다.
- Apps
- Heavy EDR/private rule evaluation, batch risk scoring, blockchain confidential execution, third-party audit compute.무거운 EDR/private rule evaluation, batch risk scoring, blockchain confidential execution, third-party audit compute.
The boundary between FHE outsourcing and MPC hybridFHE outsourcing과 MPC hybrid의 경계
Using an external compute pool does not make something MPC. The protocol depends on what needs to be hidden.외부 compute pool을 쓴다고 전부 MPC는 아닙니다. 무엇을 숨기는지에 따라 프로토콜이 달라집니다.
The external worker sees only ciphertext, evaluation key, and a public or template circuit. It never sees the SK or plaintext input/policy, and returns only enc_result.외부 worker는 ciphertext, evaluation key, 공개 또는 템플릿 circuit만 봅니다. SK와 plaintext input/policy는 보지 못하고 enc_result만 반환합니다.
Required when the server's private circuit/function itself or both inputs need stronger hiding. The private circuit provider model is closer to this family than simple FHE outsourcing.서버의 private circuit/function 자체나 양쪽 입력을 더 강하게 숨겨야 할 때 필요합니다. private circuit provider 모델은 단순 FHE outsourcing보다 이 계열에 가깝습니다.
FHE handles ciphertext evaluation; MPC handles private circuit labels, threshold decryption, key custody, verifiable receipt, and parts of settlement. Cost increases but trust separation is stronger.FHE가 암호문 평가를 맡고, MPC는 private circuit labels, threshold decrypt, key custody, verifiable receipt, settlement 일부를 맡습니다. 비용은 늘지만 신뢰 분리가 강해집니다.
Production topology실제 운영 토폴로지
Blockchain is best used as a commitment/audit/settlement layer, not a compute engine. Heavy FHE computation is handled by an external compute pool or coprocessor; only the server holds the SK and plaintext policy. Note: this baseline is FHE outsourcing, not MPC.블록체인은 계산 엔진이 아니라 commitment/audit/settlement layer로 쓰는 편이 맞습니다. 무거운 FHE 연산은 외부 compute pool 또는 coprocessor가 수행하고, SK와 평문 policy는 서버만 보유합니다. 단, 이 baseline은 MPC가 아니라 FHE outsourcing입니다.
- user input encrypt
- generate ciphertext bundleciphertext bundle 생성
- raw input not sentraw input 미전송
- holds SKSK 보관
- holds plaintext threshold/rule평문 threshold/rule 보관
- distributes encrypted policy blobencrypted policy blob 배포
- receives ciphertext + circuitciphertext + circuit 수신
- no SKSK 없음
- returns enc_result onlyenc_result만 반환
- decrypts enc_resultenc_result 복호화
- returns bit/bucket onlybit/bucket만 반환
- issues server signatureserver signature 발급
- outsourced to external ZK stacks외부 ZK 스택에 위임
- RISC Zero / SP1 / Halo2
- not built in-house자체 구현 아님
When it fits, and its limits적합한 경우와 제약
This is a private-decisioning SDK, not a general-purpose browser FHE platform. Computation is limited to small predicate circuits.이것은 범용 브라우저 FHE 플랫폼이 아니라 private decisioning SDK입니다. 계산은 작은 predicate circuit으로 제한됩니다.
Fits well when적합한 경우
- Data minimization or model-IP exposure is a hard requirement데이터 최소수집이나 모델 IP 비노출이 필수 요건일 때
- The result is small: yes/no, risk bucket, limit bucket결과가 yes/no, risk bucket, limit bucket처럼 작을 때
- The policy fits within 10–50 predicates정책이 10-50개 predicate 안에 들어올 때
- Inputs arrive as signed claims or telemetry bits from an issuer/API/device입력이 issuer/API/device의 signed claim 또는 telemetry bit로 들어올 때
Does not fit when맞지 않는 경우
- 32-bit multiplication, division, or full model inference must run in the browser32-bit 곱셈, 나눗셈, full model inference를 브라우저에서 돌려야 할 때
- Level 3 PFE (the server must fully hide the whole circuit) is requiredLevel 3 PFE(서버가 회로 전체를 완전히 숨김)가 필요할 때
- The architecture must trust user-entered values directly사용자가 직접 입력한 값을 그대로 믿어야 하는 구조일 때
Information only the server knows in production운영 시 서버만 아는 정보
This page is a demo — the worker simulates the server role. In actual production, this information never leaves the server process and HSM/secret store.현재 페이지는 데모라 worker 안에서 서버 역할을 흉내냅니다. 실제 운영에서는 이 정보가 서버 프로세스와 HSM/secret store 밖으로 나가지 않습니다.
Server-only
- FHE secret key
- plaintext threshold, weight, detection rule평문 threshold, weight, detection rule
- policy compiler source and versioned rule packpolicy compiler source와 versioned rule pack
- decrypt API result, query budget, audit log
Browser-visible
- public/evaluation key
- encrypted policy blob
- encrypted user predicate labels
- final result bit/bucket and server-signed receipt최종 result bit/bucket과 서버 서명 receipt
How it works technically기술적 동작 원리
Plain local JS exposes server rules. The FHE16 server-key structure treats both user input and server thresholds as ciphertext while keeping the secret key and plaintext policy on the server. Full circuit hiding is deferred to a 2PC/PFE phase.단순 local JS는 서버 rule을 노출합니다. FHE16 server-key 구조는 사용자 입력과 서버 threshold를 모두 암호문으로 다루면서, 서버가 secret key와 평문 policy를 계속 보관합니다. full circuit hiding은 2PC/PFE 단계로 분리합니다.
User private input
- income/debt buckets
- endpoint telemetry bits
- PHI/lab result buckets
FHE16 server-key runtime
- public/evaluation key in browser
- encrypted policy blob
- server-only SK and plaintext rules
Minimum result
- prequalified yes/no
- limit or severity bucket
- policy version receipt
Technical Demo
The current WASM runtime demonstrates that encrypted predicate bit combinations run stably in the browser. In the production product the server holds the SK, plaintext thresholds, and policy compiler, and deploys only the encrypted policy blob and evaluation key to the browser. 2PC/PFE is added as phase 2 when circuit topology also needs to be hidden.현재 WASM runtime은 encrypted predicate bit 조합이 브라우저에서 안정적으로 실행되는지를 시연합니다. production 제품은 서버가 SK, 평문 threshold, policy compiler를 보관하고 브라우저에는 encrypted policy blob과 evaluation key만 배포합니다. 2PC/PFE는 circuit topology까지 숨겨야 할 때 phase 2로 붙입니다.
Private financial buckets
The user selects a bucket; the demo runtime normalizes it to a browser-safe predicate bit and encrypts it. In a real product an issuer/API would issue signed predicates, or 2PC/PFE would handle threshold comparison.사용자는 bucket을 고르고, 데모 runtime은 이를 browser-safe predicate bit로 정규화해 암호화합니다. 실제 제품에서는 issuer/API가 signed predicate를 발급하거나 2PC/PFE가 threshold 비교까지 처리합니다.
Private endpoint telemetry
The endpoint provides telemetry bits as private input; the security vendor supplies a rule pack as private policy. The demo encrypts count predicate bits instead of integer counter comparisons, leaving only alert and severity buckets.endpoint는 telemetry bits를 private input으로 넣고, 보안 벤더는 rule pack을 private policy로 제공합니다. 데모는 integer counter comparison 대신 count predicate bit를 암호화해 alert와 severity bucket만 남깁니다.
The building block is FHE16 server-key private thresholds plus encrypted predicate composition — not full PFE or general-purpose FHE. Operating envelope: p95 ≤ 5 s in-browser, 10–50 predicates, no encrypted integer comparison, no 32-bit multiplication.구성 요소는 FHE16 server-key 기반 private thresholds와 encrypted predicate composition이며, full PFE나 범용 FHE가 아닙니다. 동작 범위: 브라우저 p95 5초 이하, predicate 10-50개, encrypted integer 비교 없음, 32-bit 곱셈 없음.
- + User input and server thresholds are both ciphertext; SK and plaintext policy stay server-only+ 사용자 입력과 서버 threshold가 모두 암호문, SK와 평문 policy는 서버에만 상주
- + Only a small result bit/bucket and a signed receipt leave the browser+ 작은 result bit/bucket과 서명 receipt만 브라우저 밖으로 나감
- − Circuit topology is not hidden without a 2PC/PFE phase− circuit topology는 2PC/PFE 단계 없이는 숨겨지지 않음
- − Heavy integer arithmetic must be reduced to predicate bits− 무거운 정수 연산은 predicate bit로 축약해야 함