Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

8 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

JKS.Recover

English | ไธญๆ–‡

Browser-side Android JKS / Keystore password recovery. Deploy anywhere static hosting works โ€” especially Cloudflare Pages.

Project JKS.Recover
Page title Chinese JKSๅฏ†็ ๆ‰พๅ›ž / English JKS Recover (switchable; site UI defaults to Chinese)
Live site jks.awads.cc
License GPL-3.0

Pure static frontend: JKS integrity checks (SHA-1 + UTF-16BE) run entirely in the browser. Nothing is uploaded. No backend.

Features

  • Local only โ€” the keystore never leaves your browser
  • zh / en UI โ€” language toggle in the header (UI default: Chinese)
  • Three recovery modes (smart wordlist first):
    • Smart wordlist (permutations + capitalization + numeric suffixes)
    • Dictionary recovery
    • Brute-force recovery (short passwords only, ~4โ€“6 chars)
  • When found โ€” click to copy password + one-click export key info (.txt)
  • Multi-threaded โ€” Web Workers + navigator.hardwareConcurrency
  • Easy deploy โ€” Cloudflare Pages / GitHub Pages / Netlify, etc.

Note: Browser CPU is limited. Best for quick checks, partially remembered passwords, and a lightweight always-on tool.

Project structure

.
โ”œโ”€โ”€ index.html          # Main page
โ”œโ”€โ”€ favicon.ico         # Favicon
โ”œโ”€โ”€ css/
โ”‚   โ””โ”€โ”€ style.css       # Green terminal / geek theme
โ”œโ”€โ”€ js/
โ”‚   โ”œโ”€โ”€ app.js          # UI, i18n, recovery orchestration
โ”‚   โ”œโ”€โ”€ i18n.js         # English / Chinese strings
โ”‚   โ”œโ”€โ”€ keystore.js     # JKS password verification core
โ”‚   โ””โ”€โ”€ worker.js       # Web Worker (parallel candidate checks)
โ”œโ”€โ”€ package.json        # No-op build script for Cloudflare Pages
โ”œโ”€โ”€ LICENSE             # GPL-3.0
โ”œโ”€โ”€ README.md           # English
โ””โ”€โ”€ README_zh-CN.md     # Chinese

App code does not need node_modules. package.json only provides a no-op build so Cloudflare Pages has a build command to run.

Local preview

Serve over HTTP (file:// often breaks Web Workers / ES modules):

# Recommended (Node.js)
npx --yes serve . -l 8080

# Or project script
npm run preview

# If you have Python
python -m http.server 8080

Open: http://localhost:8080

Deploy to Cloudflare Pages

Option 1: Connect Git (recommended)

  1. Push this repo to GitHub: https://github.com/TG-Twilight/JKS.Recover
  2. Open the Cloudflare dashboard (UI language can be Chinese or English)
  3. Workers & Pages โ†’ Create โ†’ Pages โ†’ Connect to Git
  4. Select JKS.Recover and use:
Setting Value
Framework preset None
Build command npm run build
Build output directory /
Root directory / (repo root; leave default)
  1. Save and Deploy

You will get a *.pages.dev URL; bind a custom domain (e.g. jks.awads.cc) in project settings if needed.

This repo is fully static. npm run build does not compile assets โ€” it only satisfies Pagesโ€™ required build command and prints a log line. You may also use echo ok as the build command.

Option 2: Wrangler upload

npm install -g wrangler
wrangler login
wrangler pages deploy . --project-name=jks-recover

Option 3: Direct upload

Zip the repo root (must include index.html) and use Direct Upload / Upload assets in Cloudflare Pages.

No Cloudflare Workers or Pages Functions required.

Algorithm

JKS outer integrity check:

SHA-1( UTF-16BE(password) + "Mighty Aphrodite" + keystore_body )

Compare the digest with the last 20 bytes of the file. Cheap enough for bulk tries in the browser.

License

Released under the GNU General Public License v3.0 (GPL-3.0). Full text: LICENSE.

Redistribution and modification must follow GPL-3.0.


JKS.Recover ยท ็ง‹้ฃŽๅกฌไธŠ ยท ็ง‹้ฃŽใฎใจใŠใ‚Š้“

Built with Grok Build and Grok 4.5 โ€” ridiculously fast ๐Ÿ˜

About

๐Ÿš€ A fully client-side Android JKS password recovery tool that leverages your local CPU in the browser. Your keystore never leaves your device.

Resources

Stars

7 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages