> On May 26, 2026, at 5:19 PM, kpcyrd <[email protected]> wrote:
> 
> On 5/23/26 12:02 AM, brian m. carlson wrote:
>> We'd need Sequoia to provide some way to provide deterministic
>> signatures for at least v4 signatures, and probably v6 signatures as
>> well.  I realize that v6 does not intend to allow this, but it is
>> functionally required for testsuites as well as some cases with
>> reproducible builds[0].
>> [...]
>> [0] While this might not be useful for _Debian_ reproducible builds, it
>> is useful for _general_ reproducible builds where a trusted authority
>> signs their builds in a reproducible way or includes a signature inside
>> an archive which must be bit-for-bit identical.
> The trend regarding signatures in Reproducible Builds is towards "signatures 
> are build inputs", meaning:
> 
> - you build an unsigned artifact
> - sign it with your private key out-of-band
> - declare a 2nd build, with your signatures and unsigned artifact as build 
> input
> - the 2nd build merges them together, without private key access
> 
> This is necessary or the independent verifier would not be able to reproduce 
> anything, unless you share your private key with them - either by permanently 
> revealing the secret number, or letting them borrow your hardware signing key.

It's actually worse than that. Several cryptographic signing algorithms require 
nonces (long random values); to get the same signature result, you'd need the 
same artifact, same private key, *and* same nonce.

However, in several algorithms, if you *ever* reuse a nonce for a differen 
artifact and a given private key, you reveal the private key. So if you retain 
a nonce, generate something but it turns out to be different, and sign, you've 
exposed the private key. This footgun will happen sooner or later if you try to 
re-sign with the same private key in a way that reproduces the final signature.

Things also get weird when you have hardware keys where the secret key *cannot* 
be extracted. When (not if) the key dies, does that mean that you can't 
reproduce the artifact? The correct answer is obviously no.

Signatures should *not* be considered part of the item you're reproducing. 
Signatures attest something about an artifact; added signatures of attestation 
do not change the artifact being attested.

--- David A. Wheeler

Reply via email to