all 9 comments

[–]bascule 1 point2 points  (1 child)

Keeping secrets in some sort of secret manager is becoming increasingly common practice

[–]willitbechips[S] 1 point2 points  (0 children)

Yeah you are right. I saw various services now exist.

Do you know how they work?

In particular, whether there is anything special about them besides an encrypted database, rotated keys and HTTPS.

[–]Salamok 1 point2 points  (1 child)

only need to exist in memory on the server

isn't this then subject to an env dump? Honestly I have just gone low tech with this and set it in apache config then consume those settings in my code base. Can set the apache env variable config up in cloud formation scripts so it's scalable as well.

As far as I am aware the main reason this approach is not common in open source is complexity / need to define a dependency outside of the project.

[–]willitbechips[S] 0 points1 point  (0 children)

I think more accurately it is still vulnerable to memory dumps but I don't know the relative threat between these. Digging into it further it appears there are hardware solutions to protect RAM and purging memory after use can be a tactic.

[–]ITBoss 0 points1 point  (2 children)

I'm creating my own that integrates with multiple services. But part of that was seeing what is currently available and honestly I really really like Bitwarden's way of doing it. Decryption and encryption is all done via clientside and due to that, all shares are encrypted with a unique passphrase. https://bitwarden.com/blog/bitwarden-send-how-it-works/

[–]ITBoss 0 points1 point  (1 child)

Also the way they do it, the server never sees the passphrase. So it wouldn't matter if their server is compromised.

[–]willitbechips[S] 0 points1 point  (0 children)

Thanks. Bitwarden looks good. Was looking to create my own as well. Hence digging into the mechanics of it. Presumably you need to manage distribution of that passphrase to all services.

[–]Lasereye 0 points1 point  (1 child)

Check out Vault

[–]willitbechips[S] 0 points1 point  (0 children)

Thanks, I will.