Android Question Backup confidential files (best solution?)

Fab117

Member
Licensed User
Longtime User
Hi,

My app is saving pictures and a database on my SD-Card.

With the help of Klaus, the app can perform a backup of those files in my DropBox.

However, I am not comfortable to let those data's unencrypted in the Cloud.

The solution I thought:
  1. Each file is zipped (with password protection) and then send to my DropBox
  2. The files are transferred by FTP on a safe drive (and not to the DropBox)
  3. The files are transferred on my personal computer (Windows 7) (which is on line backed up on a safe external drive)

I haven't seen anything on the forum for solution 1).
It seems that FTP transfer is quite complex (I am definitely not fluent with B4A).
If I correctly understood, solution 3) could be performed using AsyncStreams


Is there someone that could help me to know:
  • first: if I missed an easiest way to backup those files (in a safe way)?
  • then: is it correct that solution 3 would be easier to implement than the 2 first ones?
  • finally: is there a tuto on how to implement AsyncStreams in my code and on my PC?

Thank you in advance for your support.

Fab
 

Roycefer

Well-Known Member
Licensed User
Longtime User
Is your intention that this backing up can be performed even if your phone and Windows computer are not on the same local network? If so, I think you'll find it easier to implement a rudimentary B4J server and use multi-part POST to upload files from the phone to the http server running on your Windows computer. There's a little set-up you'll have to do to get your server visible from the outside: https://www.b4x.com/android/forum/t...p-to-your-b4j-server-over-the-internet.37201/ but once you get it running, it's quite reliable and easy to manage. You can also zip and/or encrypt your files before uploading, for extra paranoia.
 
Upvote 0

JohnK

Active Member
Licensed User
Longtime User
Using RAID (above 0) will increase the stability/reliability of the files themselves on your computer drive. Using HTTPS or SFTP will increase the security of the transfer itself.
 
Upvote 0

Erel

B4X founder
Staff member
Licensed User
Longtime User
Is your intention that this backing up can be performed even if your phone and Windows computer are not on the same local network? If so, I think you'll find it easier to implement a rudimentary B4J server and use multi-part POST to upload files from the phone to the http server running on your Windows computer. There's a little set-up you'll have to do to get your server visible from the outside: https://www.b4x.com/android/forum/th...p-to-your-b4j-server-over-the-internet.37201/ but once you get it running, it's quite reliable and easy to manage. You can also zip and/or encrypt your files before uploading, for extra paranoia.
Note that this B4J example doesn't use the multi-part protocol (there is no good reason to use this protocol unless you want to upload files from the browser).
 
Upvote 0

KMatle

Expert
Licensed User
Longtime User
If you do it for customers I would get a own Server (5-10€ a month) and use B4x-Encryption with RSA and store it on this server.

My solution (no zip):

- create a unique pw for each file (50-100 chars Long)
- encrypt the pw with RSA
- upload the file to your server
- store the pw in a MySQL-DB (decrypted)
- each Client must give a userid & pw

If you do it for your own privacy I would just copy the files to my pc and zip-encrypt it...
 
Upvote 0

Fab117

Member
Licensed User
Longtime User
Hi everyone.

Thank you very much for all your answers.

But I am still a little bit confused.

@Roycefer: No my purpose (for solution 3 => backup on my personal computer) would be to perform the backup when both (my Android device and my PC) are connected to my private network.

@Erel: Which solution would you recommend (for a B4A novice)

@KMatle: I like this solution (even if I have to pay 5-10 € a month), but is there a tuto to explain how to proceed? I take a look to the RSA one attached to your signature, but it seems a little bit complicated for me.


Thank again for your support.


Fab
 
Upvote 0

Fab117

Member
Licensed User
Longtime User
Hi Erel,
Thank you for the answer and the link to the tuto.

I installed B4J without any issue.
Then I created an account at Duck DNS. But before using it, I have a question (I am not familiar with network).
I alreay have an account at no-IP that I use for my camera. Could I use it ?
Otherwise, I don't know if with my router (FritzBox 7490) I can create a second DNS account:


=>
1) Do you know if I can have 2 dyn DNS on my routeur?
2) If it is not possible, can I configure your example file with my no-IP account?

Regards,

Fab
 
Upvote 0

Fab117

Member
Licensed User
Longtime User
Hi Erel,
Thank you for the answer.
I am a little lost with it. But I will think about it and come back in a new thread when it will be clearer.

Merry Christmas.

Fab
 
Upvote 0
Top