Fonta1n3 / FullyNoded

Self sovereign, secure, powerful, easy to use wallet that utilizes your own node as a backend. Powered by PSBT's and descriptors. Acts as an offline signer using your node as a watch-only wallet. C-Lightning compatible for instant, unfairly cheap payments.
https://fullynoded.app
Other
197 stars 37 forks source link

User encrypted iCloud backup and recovery #173

Closed Fonta1n3 closed 3 years ago

Fonta1n3 commented 3 years ago

This PR adds a flexible, powerful and highly secure means of backing up your critical data to the iCloud.

In order to use the feature the user must enter an "encryption password".

FN hashes the password once and uses the resulting hash to encrypt and decrypt your data. FN never stores this hash or the password, therefore all iCloud functionality is 100% manual and the user must initiate any action by going to settings and tapping the actions.

FN hashes the hash of your password, saving the double hash to the devices local keychain so that when you go to decrypt it we can again verify the hashes match before actually attempting to decrypt data. Otherwise the user could possibly input any password and decryption would fail or a single backup would be become partially bricked with multiple encryption keys.

To reset the double hash used for verification you need to delete the iCloud backup, no password required to do so.

For kill switch functionality of the iCloud back up just tap "Delete iCloud backup". You can then create a new backup with a new password.

It is recommended not to use the same password as your unlock password because FN remembers the hash of your unlock password which would then match the iCloud encryption key, reducing the security of your data.

Fonta1n3 commented 3 years ago

🔥