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

ECIP-1097 Checkpointing for 51% Attack Resistance #347

Conversation

bpmckenna
Copy link
Contributor

@bpmckenna bpmckenna commented Aug 26, 2020

@bpmckenna bpmckenna force-pushed the 51-percent-attack-prevention branch from 0f4fd34 to b23eaf1 Compare August 27, 2020 11:29
@q9f q9f changed the title 51% Attack resistance proposal ECIP-1097 Checkpointing for 51% Attack Resistance Aug 28, 2020
Copy link
Contributor

@q9f q9f left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGMT, just a few minor comments.

@@ -0,0 +1,282 @@
---
ecip: <ECIP number>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
ecip: <ECIP number>
ecip: 1097

Please rename the file to ecip-1097.md, thanks!

@@ -0,0 +1,282 @@
---
ecip: <ECIP number>
title: 51% Attack Resistance
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please give this a less generic title, i.e., Checkpointing and Timestamping.

ecip: <ECIP number>
title: 51% Attack Resistance
lang: en
author: Dimitris Karakostas, Radek Tkaczyk, Romain Pellerin, Brian McKenna
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you add contact information here? either a <mail@address> or a (@github) handle?

title: 51% Attack Resistance
lang: en
author: Dimitris Karakostas, Radek Tkaczyk, Romain Pellerin, Brian McKenna
discussions-to: https://github.com/ethereumclassic/ECIPs/issues/348 | https://github.com/input-output-hk/ECIPs/issues/1
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this will render on the ECIPs website. Can you decide which link you prefer? It doesn't really matter on which repository the discussion happens. Important is the reader knows where to go.

"id": 1
}
```

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This proposal lacks a license, please add one or waive rights via CC-0.

- Draft solution and the secure algorithm, or equivalent, needs to be formalised
- It may not be possible to prove a satisfactory level of security with this scheme, also to make such a scheme secure will likely increase implementation complexity

##### Option 3: Auxiliary Security from an External Blockchain
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What does an attacker prevent from creating valid timestamping transactions on Bitcoin?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Timestamping does not try to prevent anyone from timestamping blocks, it only ensures that a single chain is (irreversibly) accepted as canonical. Once the first block of a specific height is timestamped, then it acts as a checkpoint (regardless of who created it) and no party that follows the timestamping mechanism will revert it in the future (thus preventing deep chain reorgs). In other words, allowing an attacker to timestamp blocks is acceptable under this model; what is not acceptable is reorganizing a block that has been timestamped and has been adopted as the local chain.

@q9f q9f added editor:5 needs-review This contribution needs a careful review. status:0 wip ECIP is still work in progress and shall not be merged. type: std-core ECIPs of the type "Core" - changing the Classic protocol. labels Aug 28, 2020
@q9f
Copy link
Contributor

q9f commented Aug 28, 2020

Could you attend the public call later today to champion your ECIP? ref #333

@bpmckenna bpmckenna force-pushed the 51-percent-attack-prevention branch from f6079d9 to 76e5828 Compare August 28, 2020 21:47
@gitr0n1n
Copy link
Contributor

gitr0n1n commented Aug 31, 2020

Could you attend the public call later today to champion your ECIP? ref #333

On this 8/28 CDC call it was noted that IOG will be holding a call to specifically talk about this ECIP in detail to the community.

Copy link
Member

@mikeyb mikeyb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@realcodywburns
Copy link
Member

merging as draft

@realcodywburns realcodywburns merged commit c016abb into ethereumclassic:master Sep 2, 2020
@q9f
Copy link
Contributor

q9f commented Sep 3, 2020

This proposal lacks a license, please add one or waive rights via CC-0.

Still lacks a license.... what do we do now?

@q9f q9f added editor:7 looks-good This contribution is well reviewed and good to be merged. and removed editor:5 needs-review This contribution needs a careful review. labels Sep 3, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
editor:7 looks-good This contribution is well reviewed and good to be merged. status:0 wip ECIP is still work in progress and shall not be merged. type: std-core ECIPs of the type "Core" - changing the Classic protocol.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants