피드로 돌아가기
Your auth server shouldn't cost more RAM than your entire app. So I wrote my own in Rust.
Dev.toDev.to
Security

Rust 기반 Zero-knowledge Auth 서버로 RAM 사용량 20MB 미만 달성

Your auth server shouldn't cost more RAM than your entire app. So I wrote my own in Rust.

Luis2026년 4월 28일4advanced

Context

Keycloak, Authentik 등 기존 Java/Go 기반 Auth 서버의 과도한 Memory Overhead로 인한 소규모 프로젝트의 인프라 비용 부담 발생. SaaS 대안의 경우 월정액 비용 지불 및 사용자 데이터 제어권 상실이라는 Trade-off 존재.

Technical Solution

  • Garbage Collector 부재 및 Ownership 모델 기반의 Rust 언어 채택을 통한 메모리 예측 가능성 확보 및 Runtime Overhead 제거
  • AES-256-GCM 및 Double-envelope key 모델 기반의 Zero-knowledge encryption 설계로 서버 내 평문 자격 증명 처리 원천 차단
  • PostgreSQL RLS(Row Level Security)를 활용한 DB 레벨의 Multi-tenancy 구현으로 애플리케이션 계층의 논리적 오류로 인한 데이터 유출 방지
  • Authorization Code flow 내 PKCE 강제 적용을 통한 Token interception attack 방어 체계 구축
  • Web UI를 배제하고 TUI(Terminal User Interface) 기반의 관리 도구를 설계하여 런타임 리소스 최소화 및 개발자 경험 최적화

1. 리소스 제한적 환경에서 Java/Go 대신 Rust/C++ 등 System Language 검토

2. Multi-tenancy 구현 시 App Layer가 아닌 DB Layer(RLS 등)에서의 격리 수준 검토

3. 보안 민감 데이터 처리 시 Zero-knowledge encryption 모델 적용 여부 확인

4. OAuth2 구현 시 PKCE 필수 적용을 통한 보안 강화

원문 읽기