VAULT
브라우저에서 비밀번호로 파일을 암호화·복호화하며 데이터는 절대 업로드되지 않습니다
AeroPad 로컬 우선 2FA 보안 작업대, 암호화 TOTP 볼트, QR, 백업, 셀프 호스팅
AeroPad is a local-first 2FA & security workbench with an encrypted-at-rest TOTP vault, QR import/generation, secure notes, encrypted .aeropad backups, strict WebCrypto validation, self-hosted/offline
보안HTML · JavaScriptGitHub @oaichu온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기AeroPad is a local-first 2FA & security workbench with an encrypted-at-rest TOTP vault, QR import/generation, secure notes, encrypted .aeropad backups, strict WebCrypto validation, self-hosted/offline-friendly runtime, and no account or telemetry.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Local-first 2FA & Security Workbench
Encrypted-at-rest TOTP, QR tools, secure notes, and portable recovery — in one browser workspace.
Secrets stay in your browser. Vault content is encrypted at rest. No account. No telemetry.
AeroPad is a static web application for people who want a focused, local-first place to work with TOTP credentials, QR codes, and private notes. It has no backend, account system, remote search index, or analytics pipeline.README 전문 보기 ↗Secrets stay in your browser. Vault content is encrypted at rest. No account. No telemetry.
AeroPad is a static web application for people who want a focused, local-first place to work with TOTP credentials, QR codes, and private notes. It has no backend, account system, remote search index, or analytics pipeline.
Most authenticator apps optimize for cloud sync. AeroPad optimizes for a different workflow: a small, inspectable, offline-friendly security workbench that can be opened locally, used during a migration or recovery session, and backed up as an encrypted portable file.
| Capability | What you get |
|---|---|
| Live TOTP vault | RFC 6238 codes with SHA-1, SHA-256, SHA-512, 6/8 digits, and per-account periods |
| QR studio | Generate QR codes and decode otpauth://totp/ imports in the browser |
| Encrypted vault | One versioned IndexedDB snapshot protected with AES-256-GCM and PBKDF2-HMAC-SHA256 |
| Encrypted recovery | Export and restore a versioned .aeropad backup; no plaintext secret export flow |
| Private notes | Markdown editor, local search, metrics, and text/Markdown export |
| Self-hosted runtime | Vendored fonts and QR libraries, self-only CSP, and a standalone HTML build |
AeroPad encrypts vault bytes before persistence and keeps the master-key material in the unlocked browser session. The vault is a web application, so plaintext necessarily exists in memory and selected DOM controls while it is open.
The practical boundary is important:
.aeropad backup somewhere you control and test restoring it.Read the complete threat model and data-handling policy in docs/SECURITY-AND-PRIVACY.md.
English, Tiếng Việt, 简体中文, 한국어, 日本語, Español, Bahasa Indonesia, العربية (RTL), हिन्दी, and Português.
Requirements: Node.js 20+ and npm.
git clone https://github.com/oaichu/aeropad.git
cd aeropad
npm ci
npm run verify
npm run build
Serve the repository over HTTP for local use, for example:
python3 -m http.server 4173
Then open http://127.0.0.1:4173/. Use HTTPS or localhost when testing browser APIs in a deployment-like environment.
src/ is the canonical source tree. The build produces the deployable root bundle, dist/, public/, and the standalone file.
src/ canonical application and security modules
tests/ unit and contract tests
scripts/e2e-verify.mjs browser-level regression suite
vendor/ self-hosted fonts and QR dependencies
docs/screenshots/ repository screenshots used above
dist/ Cloudflare Pages artifact
public/ Vercel/static artifact
aeropad-standalone.html single-file build
npm run verify runs the claim-policy check, unit tests, browser-level E2E checks, build, artifact parity checks, and dependency validation.
specs/.src/; do not duplicate production engines in generated bundles.npm run verify before opening a pull request.Please report security issues privately rather than publishing an exploit in a public issue. See docs/SECURITY-AND-PRIVACY.md for the current disclosure boundary.
AeroPad is 100% free, local-first, and open-source, with zero telemetry and zero server dependencies.
If AeroPad helps you protect your 2FA credentials or simplifies your offline security workflows, please consider supporting ongoing maintenance and updates:
AeroPad is released under the MIT License. Shipped third-party assets are documented in THIRD_PARTY_NOTICES.md.