If disk encryption is enabled and the users wallet password is stored in the login keychain, isn't that superfluous? The wallet is encrypted on disk by the OS and the disk decryption password is supplied when the user unlocks their screen or logs in. At that point encrypting the wallet again just adds complexity.
Must normal uses don't have a encrypted filesystem.
That's why i thought it maybe a good idea to encrypt the wallet with a random passphrase and store the passphase in the keychain. User won't recognize.
But it would make sure, even when the user has not an encrypted filesystem, the wallet is encrypted.
What do you think about that?
OTP doesn't work how you think it works. Smartphone apps or hardware tokens that generate codes are synchronized with a server. The server checks that the code is what it's supposed to be. But, the server guards the secrets and is assumed to be secure. That's why OTPs are used for login but not for protecting client-side secrets - if the client is compromised, OTPs don't help you.
I just thought maybe theres a way of holding a private key in your smartphone app and go over some challenge/response so that you can get a one-time password which then will give you the 3rd part of the passphrase.
But as you said. OTP needs three players: users-computer, users-smartphone (oder key-device) and a server/login-page.