This is interesting, but runs contrary to my understanding of how Etherium works. I'm clearly missing something, any chance you (or anyone else) could elaborate more?<p>My understanding was that the decentralization of Etherium would mean that everyone watching the contract would need a copy of the decryption key. If that's the case, what prevents someone from publishing keys early? Or is it that the key isn't stored in Etherium, and Etherium is only being used as the consent to publish?<p>If the key is being stored somewhere else and just waiting for the contract to validate, how do we prevent a censor from just attacking that system?<p>If the key is being stored somewhere else and just waiting for the contract to validate, why not also store the contract on the same machine and do checkins directly into that? Would that be significantly less secure/reliable?
Hey Gang. Author of killcord here. I'm honored and humbled this was submitted to HN and I'll be reading through the comments to answer questions and respond to feedback. I started this project after a thought experiment in using newer decentralized tech for internet activism.
Given that the trusted party is required for this to work, is there any point at all in having it depend on the Etherium blockchain, other than perhaps a weak form of anonymity network?
As far as I can tell, Ethereum isn't actually doing anything interesting here - it's just being used to transmit pings to the server, which could just as easily be done with, for example, tcp/ip.
Anyone who would think of using it you need to consider at least 2 threat models.<p>1) The key castodian can decrypt your Information either willingly or through coercion.
If you use the same key to sign and encrypt the message or if you do not sign it then they may also be able to impersonate you.<p>2) A third party who would gain from the information being disclosed can force its release through a denial attack.<p>Never use a deadman switch as a bargaining or as an insurance policy if you do not intend the information to be released to the public and if you are not comfortable with the information being released the moment the switch is set up rather than when it would be activated.<p>The only manner in which this or any simmilar setup does not expose you to additional risk is if you only use it to ensure the release of said information in a timely manner and there is no adversarial motive to release it sooner.<p>@the creators you might want to look at the possibility of implementing <a href="https://en.m.wikipedia.org/wiki/Chaffing_and_winnowing" rel="nofollow">https://en.m.wikipedia.org/wiki/Chaffing_and_winnowing</a> over a blockchain.
There is a lot of hate for the trusted party set up of this, which seems reasonable.<p>It seems like you could create a dead man's switch using arbitrary participants. You distribute a secret to every participant and then to attempt to activate the dead man's switch they raise k to the power s mod p and pass it to the next participant. As long as you act as a participant each time and raise the passed value to some invalid s then the answer that is arrived at won't be the final secret.<p>As long as you participate every round the wrong answer will be arrived at, but as soon as you don't participate the right answer will be arrived at.<p>Any singular party refusing to cooperate would destroy the deadman's switch so malicious activation would be tough.<p>Designing it so it can tolerate failures would be the hard part.<p>EDIT: I am wrong, this isn't that great. It's really hard to hide information that can be recovered without a secret being revealed.
So a lot of these comments seem to be criticisms of potential vulnerabilities (which is par for hacker news really). I'm curious if there are better alternatives out there that aren't vulnerable to the same issues, like a single point of failure or attack?
Have any legal systems weighed in on a dead man's switch?<p>I get the premise, where typically it's illegal to take an action that releases confidential or censored information.<p>But, to governments, especially ones that want to keep information secret or censored, I'm not sure that negating that sequence and failing to stop the release of information (that you willingly put in a dead man's switch) will get you out of trouble.<p>Unless you're dead of course. But, I've seen this process promoted for living people to release information and I'm not sure it's any better than just posting the content anonymously, but with the added risk of accidentally releasing the information.
Better and simpler solution: Create a Bitcoin address and send one Satoshi to yourself every month.<p>When the transactions stop, people know you are dead.<p>This way you need no trusted third party, no special software, no special contract.