Encrypt and decrypt Samsung Pass .spass files. Convert passwords between .spass and CSV formats.
- Quick Start
- Exporting from Samsung Pass
- Usage
- Importing into Samsung Pass
- CSV Format
- .spass Format Reference
- Troubleshooting
- Contributing
- Acknowledgments
- License
- Python 3.8+ (check "Add to PATH" during install on Windows)
git clone https://github.com/VictorLavalle/spass-tools.git
cd spass-toolsOr download as ZIP from the releases page.
-
Open the Samsung Wallet app on your phone
-
Tap the ⋮ (three dots) button in the top-right corner
-
Tap Settings
-
Tap Import and export Samsung Pass data
-
Select Export and set a password — this generates the
.spassfile -
Transfer the
.spassfile to your computer
Run the unified tool:
./spass_tools.shOr run encrypt/decrypt directly:
./decrypt.sh # .spass → CSV
./encrypt.sh # CSV → .spassDouble-click spass_tools.bat
Or run individually: decrypt.bat / encrypt.bat
- Check that Python is installed
- Auto-install dependencies if needed
- Auto-detect files in the current folder
- Open a file browser if you need to pick a different file
- Ask for the password securely (hidden input)
pip3 install -r requirements.txt
python3 spass_to_csv.py backup.spass passwords.csv "mypassword"
python3 csv_to_spass.py passwords.csv backup.spass "mypassword"If you omit the password argument, it will be prompted interactively.
- Transfer the generated
.spassfile to your phone - Open the Samsung Wallet app
- Tap the ⋮ (three dots) button in the top-right corner
- Tap Settings
- Tap Import and export Samsung Pass data
- Select Import and choose the
.spassfile - Enter the password you used during encryption
The tool auto-detects columns from the most common password managers:
| Source | Columns |
|---|---|
| Apple Passwords (Mac) | Title,URL,Username,Password,Notes,OTPAuth |
| Google Passwords | name,url,username,password,note |
| Chrome / Brave | name,url,username,password,note |
| LastPass | url,username,password,extra,name,grouping,fav |
| Bitwarden | folder,favorite,type,name,notes,fields,reprompt,login_uri,login_username,login_password,login_totp |
| 1Password | Title,Url,Username,Password,Notes,Type |
Any CSV with similar column names will work — the tool matches columns case-insensitively.
See docs/FORMAT.md for the full .spass file format specification, including encryption parameters, internal structure, and all 35 password record fields.
| Problem | Solution |
|---|---|
Wrong password or corrupted file |
Double-check the password. It must match exactly what was used during export/encryption. |
Python not found |
Install Python 3.8+. On Windows, check "Add to PATH" during install. |
No module named 'cryptography' |
Run pip3 install -r requirements.txt or let the scripts auto-install dependencies. |
No .spass/.csv files found |
Place the file in the same folder as the scripts, or use the file browser when prompted. |
Password must include at least 3 of... |
Samsung Pass requires 8+ characters with at least 3 of: uppercase, lowercase, numbers, special characters. |
See CONTRIBUTING.md for guidelines on how to contribute, report bugs, and submit pull requests.
For security vulnerabilities, see SECURITY.md.
This project follows a Code of Conduct.
Huge thanks to 0xdeb7ef and their spass-manager project. Their reverse engineering of the .spass format and decryption logic was essential to building these tools. Without their work, this project wouldn't exist.

