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

Remove dead upgrades through v7 #101

Merged
merged 7 commits into from Jun 26, 2019

Conversation

algoradam
Copy link
Contributor

Remove backward-compatibility code for some of the upgrades that happened before Mainnet launch and thus can be removed without impacting catchup. This PR should be reviewed one commit at a time; each commit removes backward compatibility code for one protocol upgrade so will be easier to read in isolation.

This PR removes upgrades through (but not including) v7. Remaining dead upgrades will be removed in a future PR.

Remove backward-compatibility code for old-style ephemeral keys.
We switched to fine-grained ephemeral keys in consensus v3.
In particular, always support closeout transactions
In particular, always support explicit ephemeral-key parameters
In particular, always use the new "twin seeds" seed algorithm
@algoradam algoradam requested review from derbear and removed request for derbear June 26, 2019 19:45
crypto/onetimesig.go Outdated Show resolved Hide resolved
// TODO(adam): This should be safe to delete now, right?
// PKSigOld is unused; however, unfortunately we forgot to mark it
// `codec:omitempty` and so it appears (with zero value) in certs.
// This means we can't delete the field without breaking catchup.
PKSigOld ed25519Signature `codec:"ps"`
Copy link
Contributor

@derbear derbear Jun 26, 2019

Choose a reason for hiding this comment

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

@zeldovich Out of scope for this PR, but I was thinking of one way we can deprecate this field: Since signatures are never committed to in any way (they're part of the cert but they themselves are not signed), we could update all archival servers to supply certificates with this field missing. After all archives have updated, it should be safe to drop the field.

@algoradam algoradam merged commit 48dff1c into algorand:master Jun 26, 2019
@algoradam algoradam mentioned this pull request Jul 1, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants