Compare commits
1
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2ef7a4ab5d |
No files matched your search
+9
-6
@@ -175,12 +175,15 @@ secret key or subkey, since checking the self-signatures of a DSA key or the
|
|||||||
numbers of a secret key can take hours when those numbers are very large.
|
numbers of a secret key can take hours when those numbers are very large.
|
||||||
|
|
||||||
A signature is good only if the key that made it was valid at the signature's
|
A signature is good only if the key that made it was valid at the signature's
|
||||||
creation time, meaning the key had been made by then and neither it nor its
|
creation time. The primary key is judged by the newest self-signature on its
|
||||||
self-signature had expired. When a subkey made the signature, the same must hold
|
primary user ID, and a subkey by its newest binding signature. By the
|
||||||
of the primary key, and of the subkey and its binding signature. A key that has
|
signature's creation time the primary key and that self-signature must have been
|
||||||
expired since does not make the signature bad, because a manifest outlives its
|
made and neither may have expired, and when a subkey made the signature the same
|
||||||
key. A signature past its own expiry time is not good, whether or not the key
|
holds of the subkey and its binding signature. A signature made before that
|
||||||
has expired too.
|
self-signature or binding signature is not good, even if an older one made the
|
||||||
|
key valid at that time. A key that has expired since does not make the signature
|
||||||
|
bad, because a manifest outlives its key. A signature past its own expiry time
|
||||||
|
is not good, whether or not the key has expired too.
|
||||||
|
|
||||||
## Deterministic Serialization
|
## Deterministic Serialization
|
||||||
|
|
||||||
|
|||||||
+4
-1
@@ -288,7 +288,10 @@ func verifySignature(data, signature, pubKey []byte) (string, error) {
|
|||||||
// gives, which above is now. Verifying again as of the signature's
|
// gives, which above is now. Verifying again as of the signature's
|
||||||
// creation time refuses a signature made before the key or subkey that
|
// creation time refuses a signature made before the key or subkey that
|
||||||
// made it was made, after it expired, or after its self-signature or
|
// made it was made, after it expired, or after its self-signature or
|
||||||
// binding signature expired.
|
// binding signature expired. The library judges the primary key by the
|
||||||
|
// newest self-signature on its primary user ID and a subkey by its
|
||||||
|
// newest binding signature, so this also refuses a signature made
|
||||||
|
// before either of those, even if an older one was valid then.
|
||||||
signedAt := &packet.Config{
|
signedAt := &packet.Config{
|
||||||
Time: func() time.Time { return sig.CreationTime },
|
Time: func() time.Time { return sig.CreationTime },
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user