dedis / cothority

Scalable collective authority
Other
426 stars 106 forks source link

Make timestamp service (again) #554

Closed ineiti closed 8 years ago

ineiti commented 8 years ago

Have a modular possibility of including data in the timestamp.

nikkolasg commented 8 years ago

Have a modular possibility of including data in the timestamp.

? Well, generally, you submit any data, the timestamp service hash it and timestamp the hash, and returns you the hash + timestamp signed. What other thing you wanna add ?

liamsi commented 8 years ago

Have a modular possibility of including data in the timestamp.

Can you elaborate on that issue?

ineiti commented 8 years ago

Still confused about what we need to do and what the two different options from Friday's discussion are:

Timestamps A

Timestamps B

Loosely-coupled timestamp-services

liamsi commented 8 years ago

Ok, after discussing with @LefKok and @ineiti here is what we decided to do:

This writeup is a very drafty specification of the timestamp srevice:

We will (first) go with a simplified version where not all nodes of the cothority can take client requests (only the root node can). We will start with a binary tree.

Client = external clients

Client perspective

Remarks: epoch will be sth like 10s

Cothority (root node's) perspective

liamsi commented 8 years ago

Any comments, corrections, additions? /cc @LefKok @nikkolasg @ineiti ?

nikkolasg commented 8 years ago

Clients send hashes of data to the root node; for "swups" the data will be some client generated random number

hashES ? For me a generic timestamp service take one slice of byte, and do the timestamp on it. The client should be responsible for hashing the multiple documents together and then send the hash to the timestamp server. If we are going on with this, the timestamp server should only accept hashes, i.e. fixed size array of bytes.

liamsi commented 8 years ago

hashES ?

@nikkolasg Because the server collects multiple client requests (each containing one hash) from multiple clients. The cothority collects these requests and releases the signature when the epoch has passed. Is that more clear, now? Or still doesn't make sense?

Update: discussed offline with @nikkolasg. It was a misunderstanding (it's one hash per request but still several hashes per epoch).