Skip to content

[DO NOT MERGE] crypto: torsion clearing for FCMP++#10342

Open
j-berman wants to merge 1 commit intomonero-project:masterfrom
j-berman:torsion-clear
Open

[DO NOT MERGE] crypto: torsion clearing for FCMP++#10342
j-berman wants to merge 1 commit intomonero-project:masterfrom
j-berman:torsion-clear

Conversation

@j-berman
Copy link
Collaborator

This introduces 4 new crypto functions used in the FCMP++ integration:

  • mul8_is_identity
    • Outputs that fail this check cannot enter the FCMP++ tree.
    • Such outputs are not spendable today.
  • clear_torsion
    • Outputs must have torsion cleared before they enter the FCMP++ tree.
  • get_valid_torsion_cleared_point
    • "valid" means that the point is able to be inserted to the FCMP++ tree.
    • If false, the point cannot enter the tree.
    • In addition to the point decompression and mul8_is_identity check, we also make sure the point is not equal to identity after clearing torsion.
  • rct::verPointsForTorsion
    • After the FCMP++ fork, we use this function to stop allowing outputs that fail get_valid_torsion_cleared_point OR have torsion from entering the chain.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment