# Tag Info

If you are not limited to HMAC, blind signatures would meet your requirements. In RSA, you can do blind signatures as follows: Let $M$ be the message to be signed (probably the hash of a message) and let $e,N$ be A's public key, $d$ is A's private key. B computes $M' = M\cdot r^e \bmod{N}$ and sends $M'$ to A. A computes $S' = ... 3 I'm still a newbie in the field, but trying to learn something about it I ran into these two papers that you surely know, in case not I'll point them out: Blind signatures for untraceable payments, Chaum Provably secure blind signatures schemes, Pointcheval By the way if you look at the introduction of the second title it seems what your looking for. ... 3 As @CodesInChaos explains: It might refer to blind signatures. It also might refer to a method to harden (typically) RSA implementations against timing/side-channel attacks, by blinding the data before operating on it. Example: suppose you are writing code to decrypt data, i.e., to compute$y=x^d \bmod n$, given the input$x$. The naive way to do is just ... 2 The answer is correct, you don't need to unpad the message. When/if you verify the signature, simply check that$(\text{signature})^e == \text{pad}(\text{message})$Regarding the padding scheme, you can just use a full domain hash. Here's how you implement a full domain hash:$$\mathrm{cycles} = \frac{\text{(RSA key length)}}{\text{(SHA digest length)} ... 1 I'm not really familiar with blind signature schemes, so please take the following with a grain of salt, but what you describe looks like a really funny way to apply padding. Normally, one would pad the message (using a suitable padding scheme like RSA-PSS) before the first RSA operation, i.e.$\text{padded message = pad(message)}\text{blinded message ...