A secure, client-side web application for converting Samsung Pass export files (.spass) to Chrome-compatible CSV format. All processing happens locally in your browser - no data is ever transmitted to servers.
Samsung Pass exports are encrypted files that can't be directly imported into other password managers. This tool decrypts these files and converts them to a format that can be imported into Chrome, Firefox, or other password managers.
- π 100% Client-Side Processing: All decryption and conversion happens in your browser
- π« Zero Data Transmission: No files or passwords are sent to any servers
- π± Modern UI: Clean, responsive interface built with React and Material-UI
- π Secure Decryption: Uses Web Crypto API for AES-CBC decryption with PBKDF2 key derivation
- π Chrome CSV Format: Outputs standard CSV format compatible with Chrome password import
- β‘ Fast Processing: Efficient decryption and conversion algorithms
- π± Mobile Friendly: Responsive design that works on all devices
- Offline Processing: All data processing occurs exclusively in your browser
- No Server Communication: Zero network requests during conversion
- Local Storage Only: Files are never uploaded or stored on servers
- Immediate Cleanup: Decrypted data is not persisted after conversion
- Web Crypto API: Uses modern browser cryptography standards
- PBKDF2 Key Derivation: 70,000 iterations for secure key generation
- AES-CBC Decryption: Industry-standard encryption algorithm
- Secure Memory Handling: Decrypted data is processed in memory only
Visit the live application at: https://fck-spass.kobel.click/
-
Clone the repository
git clone https://github.com/ArifKobel/spass-decryptor.git cd spass-decryptor -
Install dependencies
npm install
-
Start development server
npm run dev
-
Open your browser Navigate to
http://localhost:5173
-
Export from Samsung Pass
- Open Samsung Pass on your device
- Go to Settings β Export passwords
- Choose a password for the export file
- Save the
.spassfile
-
Convert with SPASS Decryptor
- Open the web application
- Click "Select Samsung Pass Export File" and choose your
.spassfile - Enter the password you used during export
- Click "Convert Securely & Download"
-
Import to Chrome
- Open Chrome and go to Settings β Passwords
- Click the three dots β Import passwords
- Select the downloaded CSV file
- Your passwords will be imported
- Frontend: React 19 with TypeScript
- UI Framework: Material-UI (MUI) with Tailwind CSS
- Build Tool: Vite
- Cryptography: Web Crypto API (PBKDF2 + AES-CBC)
The application handles Samsung Pass export files with the following structure:
- Encryption: AES-CBC with PBKDF2 key derivation
- Iterations: 70,000 PBKDF2 iterations
- Salt: 20 bytes
- IV: 16 bytes
- Data Format: Base64 encoded with CSV-like structure
Output CSV files contain the following columns:
name: Website/service nameurl: Website URLusername: Login usernamepassword: Login passwordnote: Additional notes
spass-decryptor/
βββ src/
β βββ App.tsx # Main application component
β βββ SpassFileConverter.tsx # File conversion interface
β βββ utils/
β β βββ spassDecryptor.ts # Core decryption logic
β βββ main.tsx # Application entry point
βββ public/ # Static assets
βββ package.json # Dependencies and scripts
βββ vite.config.ts # Build configuration
npm run dev- Start development servernpm run build- Build for productionnpm run preview- Preview production buildnpm run lint- Run ESLint
convertSpassToChromeCSV()- Main conversion functiondecryptSpassData()- Decrypts SPASS file contentparseSpassData()- Parses decrypted data into recordsrecordsToCSV()- Converts records to Chrome CSV format
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- The downloaded CSV file contains passwords in plain text
- Keep the CSV file secure and delete it after importing
- Never share the CSV file with others
- Consider using a password manager's direct import feature when possible
- Requires a modern browser with Web Crypto API support
- Tested on Chrome, Firefox, Safari, and Edge
- Not compatible with Internet Explorer
- Only supports Samsung Pass export files (
.spassformat) - Requires the correct password used during export
- Output is limited to Chrome CSV format
This project was inspired by the excellent work of 0xdeb7ef/spass-manager, a Go-based command-line tool for decrypting .spass files. Their reverse engineering of the Samsung Pass format made this web application possible. Check out their project for a command-line alternative!
If you encounter any issues or have questions:
- Open an issue on GitHub
- Check the browser console for error messages
- Ensure your browser supports Web Crypto API
Remember: This tool processes sensitive password data. Always use it responsibly and ensure you're on a secure, private connection when handling password files.