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

feat: identity state transition validation fixes #1786

Merged
merged 25 commits into from
Mar 19, 2024

Conversation

QuantumExplorer
Copy link
Member

@QuantumExplorer QuantumExplorer commented Mar 18, 2024

Issue being fixed or feature implemented / What was done

This PR fixes many issues discovered in identity state transition review:

  • Withdrawal keys were not being used, they are not called Transfer keys and are meant to act like authentication keys but only for withdrawals and transfer of funds.
  • There was an issue where we could not insert a withdrawal/transfer key, fixed.
  • Transfer keys were not searchable, now they are.
  • Error codes were updated
  • Some consensus errors were being returned as protocol errors allowing for attacks on the system.
  • Only one master key can be active at a time, if you wish to disable one, you must add one, if you wish to add one, you must disable the current key. You can not add more than 1 at a time.
  • Moved identity key proof of possession on identity update to a later part of validation. If it fails validation users will still need to pay for the processing of the state transition.

How Has This Been Tested?

Test suite is still passing, updated some strategy tests.

Breaking Changes

Multiple breaking changes.

Checklist:

  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have added or updated relevant unit/integration/functional/e2e tests
  • I have added "!" to the title and described breaking changes in the corresponding section if my code contains any
  • I have made corresponding changes to the documentation if needed

For repository code-owners and collaborators only

  • I have assigned this pull request to a milestone

shumkov
shumkov previously approved these changes Mar 18, 2024
shumkov
shumkov previously approved these changes Mar 19, 2024
Copy link
Member

@shumkov shumkov left a comment

Choose a reason for hiding this comment

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

👍

@shumkov shumkov merged commit 807942e into v1.0-dev Mar 19, 2024
75 checks passed
@shumkov shumkov deleted the feat/identityStateTransitionValidationFixes branch March 19, 2024 11:46
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.

4 participants