Remix.run Logo
A1kmm 2 days ago

> No. With dummy messages you are guaranteed that traffic analysis will not be possible.

I don't think that's true.

There are two possibilities: If you're proposing that dummy messages are in addition to normal messages, then dummy messages add noise to the signal, but over a long enough time, for known noise distribution, it is possible for the signal to be statistically significant. That depends on there being enough signal, but then things depend on signal traffic patterns, there are no guarantees.

The second possible design is that the node-to-node communication volumes for any pair of nodes is truly independent of the signal - i.e. the statistical model decides how much traffic flows from a node to another node, and that fixed amount of flow is either used for signal or for noise, and if there is more signal, it's dropped or waits. Encryption makes it impossible to distinguish signal from noise without the key known between the pair of nodes. That is secure against a passive adversary who doesn't participate in the network. However, if network users are anonymous and mutually untrusting, then the adversary can use active methods without much risk (i.e. lots of users and nodes can actually be the adversary). Every packet/message delayed or dropped also allows inference about network traffic by other users.

These methods can harden a network and make analysis harder, but they don't guarantee it is not possible.

impossiblefork 2 days ago | parent [-]

No, you always send a dummy message the appointed time.

If you have a real message, or a network maintenance message, that substitutes for a dummy message. You never send messages other than at the appointed time.

Delayed or dropped messages won't matter, since you only send a message at the appointed time. So the network is literally indistinguishable from one where you have sent no messages to all participants and to even someone with complete control of the network.

mafuy 2 days ago | parent [-]

Do messages have a visible receiver address of any kind? In that case, you're out of luck. The only way to do make this statistically sound would involve an insane amount of messages, rendering it impossible.

impossiblefork a day ago | parent [-]

No, of course there isn't a visible receiver address.

You have a list of peers, P1,...,PN, every second, at a specific pre-decided time, slightly fuzzed to avoid timing stuff, you send a message to each of them. If you don't put one in, it's a dummy message chosen at random and encrypted. But if you have a message, you send that at the appointed time.

Consequently, from the outside of the system, from the PoV of someone who does not have the keys, its behaviour is indistinguishable from a system where no one is sending any messagess at all.