4 ms·
It's impossible. You can send a message to someone else over an unreliable channel with a very good assurance that it hasn't been corrupted unintentionally, wi
by fluoridation 4y ago
It's impossible.
You can send a message to someone else over an unreliable channel with a very good assurance that it hasn't been corrupted unintentionally, without needing a reliable channel.
You can send a message to yourself in the future over an untrusted channel with a very good assurance that it hasn't been tampered with without needing a trusted channel, because you trust yourself and can thus remember trustable information.
There's no way to send a message to someone else over an untrusted channel with a very good assurance that it hasn't been tampered with, without a trusted channel. You need some way to convey trustable information.
- wongarsu 4y agoYou can somewhat improve your odds by using many unreliable channels, requiring an attacker to compromise all of them. Not sure how to do that over 500 years though? Pass down the data as an heirloom, burry a SHA3 hash in a plaque below a building foundation, put a Blake3 hash on a granite tablet buried in the desert, write a SHA512 hash on the back of a Banksy painting. Put a BLAKE2b hash in your diary and get it accepted in a museum collection. The more you add, the more difficult it becomes for an attacker to find and alter all of them.
- fluoridation 4y agoIf you're hiding the hash where no one can find it, how are people going to check it? If you tell people where you're hiding it, what's the point of hiding it?
- wongarsu 4y agoHiding it can make sense as long as you are sure it's eventually found by chance, and the finder will recognize its significance. At some point the building foundation will be torn up, and precisely at that point the hash will be revealed. Any modification before that requires knowledge of it and a somewhat sophisticated plan to modify or destroy it. But really, you don't have to make those locations secret, you already get a lot of security by requiring an attacker to drive out into a desert to change that tablet, access a building foundation and tamper a Banksy painting. None of these are secure in the cryptographic sense, but even without secrecy that raises the bar for an attack substantially, and makes it more likely to be detected.
- fluoridation 4y ago>Hiding it can make sense as long as you are sure it's eventually found by chance, and the finder will recognize its significance. At some point the building foundation will be torn up, and precisely at that point the hash will be revealed. The hash could be revealed after the tampered message was found, and therefore after it would have been necessary. Imagine some critical decision was taken based on incorrect information, for example. >you already get a lot of security by requiring an attacker to drive out into a desert to change that tablet If you think remoteness is sufficient protection then there's no need for hashes or anything like that. Just do what 9gag did and etch your message onto stone and bury it wherever. They found the approximate location of that slab fairly quickly, but who's going to go digging in Spain just to smash a limestone slab with some memes on it? If someone is willing to do that once, doing it one or more times again is not a lot more effort.
- lazide 4y agoThe key factor here too is - will anyone care. If it’s some random alphanumeric symbols of no significance because no one cares or recognizes the connection to what anyone cares, you’re going to have more impact on humanity literally etching a bunch of random memes here and there. At least one of them might be a Rosetta Stone for some future Society that way.
- fluoridation 4y agoPretty much. It's just unfeasible to defend against intentional tampering over long periods of time with a one-time energy input.
- lazide 4y agoI think my point is, ‘why would anyone want to care?’. If someone cares and it matters to them, it is not infeasible. If no one cares, then it may be feasible, but is pointless. No one would ever bother to check, even if said etched-in-glass checksum was still around and findable. The Bible isn’t vastly different from it’s original writings - or one of the most printed works ever- due to time alone. it’s because each generation finds it’s own reason for propagating what they want (and not propagating what they don’t), and that’s a necessary property for it to exist in a way anyone cares about at all after this amount of time. Otherwise it would just be (at best) some rotten parchment in a language no one can read, and of at most academic interest in some caves in the Middle East. If someone came up with a checksum on such rotten parchment, the only people who would care would be math nerds - assuming anyone ever found it.
- zaphod420 4y ago"There's no way to send a message to someone else over an untrusted channel with a very good assurance that it hasn't been tampered with, without a trusted channel. You need some way to convey trustable information. " This is kind of what real p2p, open, permissionless, decentralized blockchains are good for...
- fluoridation 4y agoBlockchains are not trusted channels. They don't permit secure communication between any node. That is to say, I can't send you a secret tamper-proof message over a blockchain if we haven't exchanged information over some other channel previously.
- a1369209993 4y ago> I can't send you a secret tamper-proof message over a blockchain if we haven't exchanged information over some other channel previously ... Of course you can? If we're interacting via blockchain we both have mutually-known cryptographic public keys used to sign transactions. Assume without loss of generality they can't be used directly for public-key encryption (eg they're Lamport keys). I generate a McElice public encryption key and include it in a transaction signed with my signing key. You use that to encrypt your message and include the encrypted message in a transaction signed with your signing key. I decrypt the message; it's secret and tamper-proof. If, as in londons_explore's comment, we're worried about any specific algorithm being broken, we can use a bunch of different signing keys, and a bunch of different encryption keys, such that a attack would have have to break all the signature algorithms or all the encryption algorithms to compromise the message.
- fluoridation 4y agoIf your only method of communication is a blockchain, you can't know who owns which public key. To know that you would need to talk directly to that person and have them tell you "key such-and-such is mine". You still need that trusted channel. Since you can't know who controls the public key your messaging over the blockchain and they can't know the public key that's messaging them is controlled by you, an impersonation attack is trivial. Someone else can send that public key a message saying "hello, I am a1369209993, let's agree on a symmetric key". So, no, a blockchain is not a trusted channel. For the purposes of communication, it offers no more security than the public Internet. It doesn't even guarantee delivery of messages.
- Perseids 4y agoLet's get creative! There is no need to secrecy of the hash. Pay celebrities to wear a dress with the hash printed on it. Influence a publisher to print the hash in all books for a year. Create a mystery about what the hash is about, so it is mentioned in lots of articles. Who is this eccentric billionaire that pays truckloads of money to spread these apparently useless 64 digits?!? (Disclaimer: Method not applicable to normal people.)
- fluoridation 4y agoYeah, making many copies makes sense. But if you're doing that, it's way easier to just make many copies of the original message. In other words, just publish it as a book and be done with it. Broadcasting the hash would make sense if the message should stay secret for some time. Although 500 years is rather a long time for a zero-knowledge proof.