Describe the signature scheme in docs/FORMAT.md as the code builds it (closes #187)
check / check (push) Failing after 6s
check / check (push) Failing after 6s
The Signature Scheme section now states what signatureString builds: the magic, the outer uuid as lower-case hex with no hyphens, and the outer sha256 as the lower-case hex of its multihash, which starts 1220, with an example string taken from a run of the code. It says signer is the upper-case hex fingerprint of the signing primary key and that a signature is stored only in the manifest. The mf.proto comments on fields 201 to 203 say the same, and mf.pb.go is regenerated. A new test pins the example string. Nothing about what is signed or how changes. Model: opus-5-5
This commit was merged in pull request #188.
This commit is contained in:
+8
-6
@@ -32,15 +32,17 @@ message MFFileOuter {
|
||||
bytes uuid = 105;
|
||||
|
||||
bytes innerMessage = 199;
|
||||
// 2xx for optional manifest root attributes
|
||||
// think we might use gosignify instead of gpg:
|
||||
// github.com/frankbraun/gosignify
|
||||
|
||||
//detached signature, ascii or binary
|
||||
// 2xx for optional manifest root attributes
|
||||
|
||||
// one OpenPGP signature, armored or binary, over the canonical string
|
||||
// ZNAVSRFG-<uuid>-<sha256 as a multihash>, with the uuid as 32
|
||||
// lower-case hex digits and no hyphens, and the multihash in lower-case
|
||||
// hex (see docs/FORMAT.md). A signature is never stored anywhere else.
|
||||
optional bytes signature = 201;
|
||||
//full GPG key id
|
||||
// fingerprint of the signing primary key, in upper-case hex
|
||||
optional bytes signer = 202;
|
||||
//full GPG signing public key, ascii or binary
|
||||
// OpenPGP public key of the signer, one primary key, armored or binary
|
||||
optional bytes signingPubKey = 203;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user