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

Add EdDSA signature verification step to detect and avoid outputting faulty signatures #11

Merged

Conversation

larabr
Copy link

@larabr larabr commented Nov 22, 2023

Randomly occurring bitflips in specific parts of the EdDSA signature computation might in principle result in vulnerable faulty signatures being generated, hence we add the option to verify the signatures before outputting them.

This change is made primarily to gather stats about whether such faulty signatures are generated by our web apps.
The flag checkEdDSAFaultySignatures has also been added to the global openpgp.config object to control its activation.

…gnatures

EdDSA is known to be vulnerable to fault attacks which can lead to secret key extraction if
two signatures over the same data can be collected.
Randomly occurring bitflips in specific parts of the computation might in principle result
in vulnerable faulty signatures being generated, hence we add the option to verify the signatures
before outputting them.
@larabr larabr force-pushed the protonmail/v5-eddsa-faulty-verify-stats branch from 19bd6f1 to 624debe Compare November 22, 2023 13:18
To be able to control the deployment of the eddsa check.
Support is limited to the global config object as the affected functions
currently don't take a config input, and we don't need to selectively enable
the option anyway, so we limit the scope of the changes.
@larabr larabr requested a review from twiss November 23, 2023 12:50
@larabr larabr merged commit eef3487 into ProtonMail:main Nov 27, 2023
12 of 13 checks passed
larabr added a commit that referenced this pull request Nov 29, 2023
…g faulty signatures (#11)

EdDSA is known to be vulnerable to fault attacks which can lead to secret key extraction if
two signatures over the same data can be collected.
Randomly occurring bitflips in specific parts of the computation might in principle result
in vulnerable faulty signatures being generated, hence we add the option to verify the signatures
before outputting them.

This commit also adds the `checkEdDSAFaultySignatures` flag to the global config
to be able to control the deployment of the eddsa check.
Support is limited to the global config object as the affected functions
currently don't take a config input, and we don't need to selectively enable
the option anyway, so we limit the scope of the changes.
larabr added a commit that referenced this pull request Mar 1, 2024
…g faulty signatures (#11)

EdDSA is known to be vulnerable to fault attacks which can lead to secret key extraction if
two signatures over the same data can be collected.
Randomly occurring bitflips in specific parts of the computation might in principle result
in vulnerable faulty signatures being generated, hence we add the option to verify the signatures
before outputting them.

This commit also adds the `checkEdDSAFaultySignatures` flag to the global config
to be able to control the deployment of the eddsa check.
Support is limited to the global config object as the affected functions
currently don't take a config input, and we don't need to selectively enable
the option anyway, so we limit the scope of the changes.
larabr added a commit that referenced this pull request Mar 1, 2024
…g faulty signatures (#11)

EdDSA is known to be vulnerable to fault attacks which can lead to secret key extraction if
two signatures over the same data can be collected.
Randomly occurring bitflips in specific parts of the computation might in principle result
in vulnerable faulty signatures being generated, hence we add the option to verify the signatures
before outputting them.

This commit also adds the `checkEdDSAFaultySignatures` flag to the global config
to be able to control the deployment of the eddsa check.
Support is limited to the global config object as the affected functions
currently don't take a config input, and we don't need to selectively enable
the option anyway, so we limit the scope of the changes.
larabr added a commit that referenced this pull request Apr 10, 2024
…faulty signatures (#11)

EdDSA is known to be vulnerable to fault attacks which can lead to secret key extraction if
two signatures over the same data can be collected.
Randomly occurring bitflips in specific parts of the computation might in principle result
in vulnerable faulty signatures being generated, hence we add the option to verify the signatures
before outputting them.

This commit also adds the `checkEdDSAFaultySignatures` flag to the global config
to be able to control the deployment of the eddsa check.
Support is limited to the global config object as the affected functions
currently don't take a config input, and we don't need to selectively enable
the option anyway, so we limit the scope of the changes.
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.

2 participants