Is there an update on this? Even the ability to see the TOTP key stored in the pwsafe file so I can copy it to a TOTP authenticator would be helpful. Thanks.
I would suggest saving from the email to some location in your internal storage. The email will be subject to the email app providing the file attachment which could cause the inconstancy.
Hello, and thanks in advance for any advice you can offer. I'm trying to move my PasswdSafe file from one Android phone to another. I have email'd it to the new phone, and have been unable to consistently open it from within the app. Any suggestions for what I may be doing wrong? Thanks, -Gary Burkert-
Passwdsafe Sync: add WebDAV to allow many more online servers (Koofr, NectCloud et sl)
Thank you Jeff. I will check. and also make sure I back-up to my PC regularly.
The app only manages the backup files itself. They are in a private app directory that you shouldn't be able to access. The app doesn't do any special management for the user file. New files normally are created in the top directory of the internal storage, though the user can choose some other directory. I'd suggest opening and checking any file before deleting to make sure it's not one you need.
Have been using Passw(or)dSafe for a very long time on PC and now on android for the last few years. Today decided to move my default download storage to my phone's SD card and in the process discovered a 42KB pwsafe.psafe3 file (from Oct '23) "lurking" in the internal storage downloads folder, in a subfolder for my music app, Musicolet. That was a surprise. So, I searched my phone and found: ++ a second 11KB psafe3 file (from Dec '25) on the SD card's Android/.Trash/data/media/obb folder; and ++...
Unfortunately, there's no built-in backup of the full file. If you modified it before, there may be a backup you can restore. Check the top-left menu for the backups. If there's a file, you can open it and restore.
Database deleted
passwdsafe: LauncherRecordShortcuts: Cleanup file data view properly (#68)
passwdsafe: LauncherRecordShortcuts: Cleanup file data view properly
passwdsafe: Update to fragment results, menu provider, and viewpager2 (#67)
passwdsafe: Use ViewPager2 with PasswdSafeRecordFragment
passwdsafe: PasswdSafePolicyListFragment: Convert to MenuProvider
passwdsafe: Use fragment results with PasswdPolicyEditDialog
passwdsafe: Use fragment results with NewGroupDialog
passwdsafe: Use fragment results with TimePickerDialogFragment
project: Update extends code style to wrap all items
passwdsafe: Use fragment results with DatePickerDialogFragment
passwdsafe: Cleanup analyzer issues
passwdsafe: Use fragment results with ConfirmPromptDialog
lib: Utils: Add getEnum method for bundles
passwdsafe: PasswdSafeEditRecordFragment: Add TOTP config (#66)
passwdsafe: PasswdSafeEditRecordFragment: Show TOTP value
passwdsafe: PasswdSafeRecordTotpViewModel: Reset state values if TOTP not OK
passwdsafe: PasswdSafeRecordFragment: Show alias/shortcut TOTP from linked
passwdsafe: PasswdSafeRecordTotpViewModel: Add more steps to TOTP progress
passwdsafe: PasswdSafeEditRecordFragment: Add TOTP config
passwdsafe: Rename to PasswdSafeRecordTotpViewModel
passwdsafe: PasswdSafeRecordPasswordFragment: Show TOTP config
passwdsafe: file: Add TOTP tests from PC Password Safe
passwdsafe: file: Use lenient Base32 decoding for secret key
passwdsafe: file: Support same TOTP secret key characters as Password Safe
passwdsafe: file: Add Totp equals method
passwdsafe: file: Add accessors for Totp configuration fields
passwdsafe: PasswdSafeRecordBasicViewModel: Rename for TOTP state
passwdsafe: CloseableLiveData: Do not set value during finalize
project: Disable isEmpty inspection on CharSequence
Thanks. This was frustrating, but I think I figured it out. Mainly I did not understand using the Globe to switch to the keyboard (it was enabled but not selected), and then what constituted selecting an entry in Password Safe (long press calling the copy menu did not do it, I had to open the entry to the detail page). Once I figured those out, the unique keys (URL, User Name, Password...) work for easy and secure entry. Phew! Unsure if it is an Android or GOS thing, but in settings the default keyboard...
The warning is there to make sure you really want to copy the password. The clipboard is readable by all apps, typically, so it's not the best security to have passwords there. There's no clear Android call apps can make to clear the clipboard, and some devices have a clipboard history that can save the contents and such. The app tries to mark the password as secure, but it's not as good as the custom keyboard. From that warning dialog, there should be an option to got to the 'languages and input'...
I am a little confused here since new to Android, so bear with me. I installed the app and the pwsafe file locally on the phone. Opens fine, shows all the entries I loaded for this test. When I go to copy and paste to login somewhere, a warning pops up that "All apps can read the clipboard contents, and the clipboard cannot be reliably cleared. The PasswdSafe keyboard is a more secure method for entering passwords..." Am I then supposed to manually type the password every time, or is copy/paste fine...
Thanks. I will give it a try and report back. May be a month or so.
I've never tried Graphene, but I'd imagine PasswdSafe would work via the Play store install. The app doesn't require lots of special permissions. The github project has the signed apk files if you need to sideload it.
Does the app work on GrapheneOS? It would be downloaded from the sandboxed Google Playstore on GrapheneOS . (If you are not aware, the recommended app stores on GrapheneOS are Graphene's own app store, Accrescent and the sandboxed Google Playstore. The first two have only a very limited number of apps. (I am new to Android and GrapheneOS though I have used the Windows Desktop version of Password Safe for many years - thanks Rony!).
Add TOTP auth code to record basic tab (#65)
Add TOTP auth code to record basic tab (#65)
passwdsafe: Add auth code to PasswdSafeRecordBasicFragment menus
passwdsafe: file: Support two-factor key field for TOTP authentication code
passwdsafe: Refactor use of PasswdTimeoutPref in PasswdSafeRecordBasicFragment
passwdsafe: Add RFC 6238 TOTP generator
passwdsafe: file: Add PwsPassword equals method
passwdsafe: lib: Add nullability annotation to Util.clearArray
passwdsafe: CloseableLiveData: When inactive, close only if no observers
passwdsafe: CloseableLiveData: Close value before setting next
passwdsafe: CloseableLiveData: Add ctor with value
passwdsafe: Use AutoCloseable instead of Closeable
passwdsafe: Cleanup calls to finalize
passwdsafe: Use an async call to auto open the debug file
test: Add TOTP entry to test.psafe3
all: Update libraries
gradle: Update
lib,passwdsafe,sync: Convert to record classes (#64)
passwdsafe: Convert PasswdSafeOpenFileViewModelData.ResolveData to record class
passwdsafe: Convert PasswdSafeOpenFileFragment.OpenResult to record class
passwdsafe: Convert PasswdSafeListFragment ItemSection to record class
passwdsafe: Convert PasswdSafeIME.RefreshResult to record class
passwdsafe: Convert PasswdRecordListData to record class
passwdsafe: Convert RecordPolicyStrs and ParsedFields to record class
passwdsafe: Convert PasswdFileUri.FilePerms to record class
passwdsafe: Convert PasswdExpiration to record class
passwdsafe: Convert Pair to record class
passwdsafe: Convert EditRecordResult to record class
passwdsafe: Convert RecordInfo to record class
lib,passwdsafe,sync: Suppress record class conversion inspection
project: Disable record class inspection on Entity classes
project: Set code style for record classes
passwdsafe: file: Use typed fields for the header record (#63)
passwdsafe: test: Add test for ASCII time encoding in header
passwdsafe: file: Add non-default prefs and tree display V3 header fields
passwdsafe: test: Add V3 header field tests
passwdsafe: file: Use typed fields for the header record
passwdsafe: file: PwsTimeField: Add stored time format
passwdsafe: file: Add major and minor fields for PwsVersionField
passwdsafe: file: Use PwsVersionField class for version field
Thanks Jeff, that did it.
In the top-left menu, under Preferences -> File, there is an option for the default file to open. Check whether anything is selected.
passwdsafe: file: Refactor record type for headers
passwdsafe: file: Use field type to validate field updates; Add V3 file tests (#62)
passwdsafe: file: Normalize date of new PwsTimeField
passwdsafe: file: Rename PwsField fields
passwdsafe: test: Add low-level V3 file tests
passwdsafe: file: Use field type to validate field updates
passwdsafe: file: Add unknown V3 header type field
passwdsafe: file: Add V1 type to enum conversion
passwdsafe: file: Add field class to PwsFieldType
gradle: Update