Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Chain Commit gives first Entry exclusivity for 1 hour #368

Closed
carryforward opened this issue May 9, 2015 · 1 comment
Closed

Chain Commit gives first Entry exclusivity for 1 hour #368

carryforward opened this issue May 9, 2015 · 1 comment
Assignees
Labels

Comments

@carryforward
Copy link
Contributor

When the federated server first sees a chain commit, it should add it to a list and start a countdown. It should keep track of all the Chain Commits for each ChainID hash. multiple different commits of a single ChainID hash are allowed, however only one first Entry will be allowed.

When a chain/entry reveal appears, the ChainID which the Entry is tagged with should be checked against the list of pre-existing chains. If a chain does not exist, the ChainID hash should be checked to see if a Chain Commit for it exists. The ChainID will have been revealed at this point. All the Chain Commits of this can be checked for validity.

To check for validity, the Commit Weld must be be a SHA256d result of the Entry Hash concatenated with the ChainID. Any commit welds that fail will invalidate that Chain Commit and it should be ignored. The first valid commit seen (not as timestamped by the user) within the past hour should have the Entry Hash it commit be the first entry. If there is a valid reveal with a valid commit, but a different valid unrevealed commit was seen earlier, but less than an hour prior, then the reveal cannot be made into a first entry. The federated server must wait for the reveal of the first valid commit, or wait for an hour to pass from the first valid commit.

An attacker who knows your ChainID can delay a chain creation for an hour.

See the attached diagram.

img_2745

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants