This is an automated archive made by the Lemmit Bot.
The original was posted on /r/selfhosted by /u/hurray-rethink on 2025-04-15 09:40:28+00:00.
Hello all,
For some time already i was thinking to have dead-man-switch, but all available open source solutions were missing something.
So DMH was created -
Features:
- Privacy focused - even with access to
DMH
you will not be able to see action details. - Tested - almost 100% code covered by unit tests and integration tests.
- Small footprint
- Multiple action execution methods (
json_post
,bulksms
,mail
) - Multiple alive probe methods (
json_post
,bulksms
,mail
)
What makes DMH different from other solutions is privacy. DMH consists of two main components - dmh itself and vault.
Data is always stored in encrypted form and encryption keys are stored in vault (Vault should be running on different physical server or cloud!).
This architecture ensures that even with access to DMH, you would not be able to decrypt stored actions.
How this works:
- User creates action
- DMH encrypt action with age
- DMH uploads encryption private key to Vault
- Vault encrypts private key with own key and saves it (Vault will
release
encryption private key when user will be considered dead) - DMH saves encrypted action, discards plaintext action, discards private key (from now, nobody is able to see unencrypted action, even DMH)
- DMH will sent alive probes to user
- When user will ignore N probes (configured per action), she/he would be considered dead.
- When both DMH and Vault will decide that user is dead, Vault secrets will be released, actions would be decrypted and executed.
- After execution, DMH will remove encryption private key from Vault - to ensure that action will remain confidential
You must log in or register to comment.