December 26th, 2017, 11:47 pm
Please forgive if this is a silly question on my part, but am I missing something regarding the comments about encrypting uploads to github?
git (regardless of whether hosted on github or elsewhere) depends upon SHA signatures to determine if a particular object or element within a repository has changed, and thereby needing to have the latest copy of that object uploaded to the repo server. SHA is effectively itself a form of encryption. Depending on your encryption scheme, if you re-encrypt all files every time you do a push, then you run the risk of most of your files needing to be uploaded for every push. That would explode your space consumption on whichever server is hosting you. To avoid that, you might need to create a makefile to only re-encrypt those files which have changed. You would also need to define your repository to keep the ciphertext & plaintext files in separate directories, or else explicitly configure the repo to exclude the plaintext files. To exclude the plaintext files from the repo, wouldn't you need to effectively hide them from the repo? If you do that, then aren't you giving up the ability to run commands like "git blame" ?
The point is not whether you trust the particular brand github. If you need ciphertext storage in a repo server then git would seem to be an inelegant platform.
Or, perhaps someone else has figured a solution for all these objections, and perhaps I'm a bit behind the times ?
All standard disclaimers apply, and then some.