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

algoradam commented Jun 26, 2019

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.

algoradam added 7 commits Jun 24, 2019
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 Jun 26, 2019
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"`

This comment has been minimized.

Copy link
@derbear

derbear Jun 26, 2019

Collaborator

@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
2 checks passed
2 checks passed
Travis CI - Pull Request Build Passed
Details
license/cla Contributor License Agreement is signed.
Details
@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
Projects
None yet
2 participants
You can’t perform that action at this time.