I love the idea of having privacy in independence from all the tech giants' services. I have a server at home that hosts my storage, media, synchronization, and backups, along with some other random services. Since all these services are basically my life, I sometimes read about better security practices to replace whatever I do. Although sometimes, I feel like I can't figure out what practices are actually bad and really put me in a bad spot, and if they are good enough for me.
For example, I use a Keepass database to store my passwords. I want to sync them across all of my devices immediately. So I saved it in my VPS, and made the android client fetch it every time I sync. I also made a script that uploads the local database every time it is changed. However, I don't want it to override remote changes that I may have not saved on my local machine. To solve that, I made the script download the remote database and compare it to the local one before uploading. To compare, I made the script read from a PGP encrypted file that has the password to my database, and input that to keepass-diff. However, I read that using PGP is bad from this article. I can't say I completely understand what the author is saying, but I trust that they know their stuff. However, I feel like this is a bit nitpicky. Would using GPG make me exposed to massive risk as opposed to using any other service? I guess it's not that hard to move over to something like ccrypt or whatever, but why bother? Besides, I can tell GPG to keep my key in the session for a long time so that I don't have to input it every time. I don't know if ccrypt can do that.
Another example is using F-Droid. I came across this article and this one went way over my head since I'm not really well versed on android. But the gist I got is that F-Droid is not only insecure but is also bad for getting timely updates. I checked and some apps are something like 7 patches behind which is unacceptable for me.
One last example and this one is kinda petty no lie. The fact that RSA is trash. I read here and there that RSA is an old and deprecated encryption algorithm that no one should use this is another article that (surprise surprise) also went over my head. But what I could understand is that it is too easy to make mistakes using RSA and it should be in the history books. But I already made many SSH keys without choosing the encryption algorithm, so it's gonna be a bit inconvenient to change all of those.
So my question to yall is that, how do I find the line between using an acceptable albeit non optimal practice, and using an unacceptable practice for security?
Of course, I also have to put in mind the convenience, so I can't just change up my practices every 8 seconds when I find out that whatever program I'm using is a ticking time bomb.
It's a balance between convenience against privacy and security. The more private and secure you become, the more inconvenient. If something is too inconvenient, people will just work around it: writing passwords on a sticky note because the requirements were too high. It's impossible to strike the perfect balance. Threat modeling is important. Threat modeling is where you determine what is OK and what isn't. I have an Instagram account because my girlfriend likes to send me funny videos. I only use it to watch what she sends me, and I have it isolated from the rest of my apps. I could delete it, but my threat model allows it.
Side note: anything cryptography and computing is basically magic.