Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

RSA Verification - 2048 @ Local

You can check out here for an explanation of how we handle RSA in general.

Exponentiation Circuit

Private Inputs

InputType
modulusProvableBigint2048
signatureProvableBigint2048
exponentField
Poseidon-digest of SHA-digest of messageField

Exp2048_Output

FieldsType
resultProvableBigint2048
modulusProvableBigint2048
signatureProvableBigint2048
exponentField
Poseidon-digest of SHA-digest of messageField

Public Output

LeftRight
Poseidon-digest of SHA-digest of messagePoseidon-digest of Exp2048_Output

Padding & Verification Circuit - PSS

Private Inputs

InputType
expOutExp2048_Output
messageShaDigestBytes
encodedMessageBytes
encodedModulusBytes

Public Output

LeftRight
Poseidon-digest of Exp2048_OutputPoseidon-digest of uncompressed Pubkey and Contains.init

Implicit Variance

psspkcs
sha-224
sha-256✔️
sha-384
sha-512

Covering all of the variants is trivial.