Re: Recognising one's own messages on an anonymous broadcast channel?
- From: "vedaal" <vedaal@xxxxxxxxx>
- Date: 29 Jan 2007 12:18:55 -0800
bergstrom.henrik@xxxxxxxxx wrote:
Problem:
A user sends operations to our server on a private channel. The result
is broadcast to all users (cannot be sent on the private channel).
1. The result must be anonymous, i.e. no other client must be able to
identify which client that sent the operation to the system or that
two operations belongs to the same client.
2. The client that sent the operation must be able to identify the
result as his own.
3. No collisions! I.e. no client should mistakenly identify a result
as his own.
Prerequisites:
o It's ok to add "user id:s", "correlation id:s" etc. to the input
messages.
o It's ok for the server and client to share secrets, if necessary.
The input channel is a persistent connection.
o The algorithms have to be message-based rather than stream-based.
o The algorithms used have to be "fast" since a quite high number
(100k) of messages are processed per second by the common server.
gnupg can be used to easily accomplish this:
[1] each client is assigned a public and private keypair, known only
to the client,
and the public key known only to the client and the server,
(ideally. each client should generate his/her own key,
otherwise the client can 'claim' that the server 'forged' the message)
(all the keys should be of the same size and type, i.e. 4096 rsa)
[2] the message itself is signed by the client's key, and is
unidentifiable by anyone who does not have the public key
[3] the signatures should all be of the same type,
e.g. sha-512,
(or whatever wins the NIST contest ;-) )
[4] this results in each signed message for any given client being
different than any other one,
and impossible to link to any other signed message without knowing the
public key
[5] the messages can be sent signed and encrypted
(signed by the client, encrypted to the server, and simultaneously
encrypted to the client, using the --hidden-recipient self option,
or,
if the message is desired to be made 'public' to all clients,
signed by each client, and symmetrically encrypted using a passphrase
distributed to each client on a daily basis)
[6] the signatures have a certain measure of non-repudiation
(but only as long as the client generates the keypair,
as stores it securely)
gnupg is free software,
(and specifically, also free for commercial use)
vedaal
.
- References:
- Recognising one's own messages on an anonymous broadcast channel?
- From: bergstrom . henrik
- Recognising one's own messages on an anonymous broadcast channel?
- Prev by Date: Re: Recognising one's own messages on an anonymous broadcast channel?
- Next by Date: Re: Encrpytion software
- Previous by thread: Re: Recognising one's own messages on an anonymous broadcast channel?
- Next by thread: Recognising one's own messages on an anonymous broadcast channel?
- Index(es):
Relevant Pages
|
|