Merge branch 'fix/g09' into fix/integrated
This commit is contained in:
+16
-2
@@ -362,6 +362,12 @@ type Speaker struct {
|
||||
Name string `json:"name"`
|
||||
Enrolled time.Time `json:"enrolled"`
|
||||
Samples int `json:"samples"`
|
||||
// Damaged — the stored row's metadata did not read back cleanly. The
|
||||
// voiceprint is still there; the name, sample count or enrolment time is
|
||||
// not trustworthy. A surface should say so rather than render a corrupt
|
||||
// row as a profile enrolled from zero samples, which is what a real
|
||||
// minimal enrolment looks like.
|
||||
Damaged bool `json:"damaged,omitempty"`
|
||||
}
|
||||
|
||||
// EnrollSpeakerResp — the profile that was written.
|
||||
@@ -804,14 +810,22 @@ type DayPlan struct {
|
||||
}
|
||||
|
||||
// storeEncryptionKeyReq — the passkey-derived secret used to wrap the store
|
||||
// encryption key at enrollment time. Called by mavweb after RegisterFinish.
|
||||
// encryption key. Called by mavweb after a verified assertion.
|
||||
//
|
||||
// Secret is the 32-byte WebAuthn PRF output, NOT the credential public key.
|
||||
// The field used to carry the public key and that was the bug: a public key
|
||||
// sits in passkeys.json next to the wrapped blob, so the blob protected
|
||||
// nothing. See internal/webauthn/keywrap.go.
|
||||
//
|
||||
// Explicit says the operator asked for the cold-start key to be written, as
|
||||
// opposed to it being a side effect of asserting a passkey. Without the flag
|
||||
// the daemon writes only when no blob exists yet. Rewriting on every assertion
|
||||
// is what let a page-level compromise substitute its own PRF value and have
|
||||
// the daemon re-wrap the real database key under it, and what let a second
|
||||
// authenticator silently replace the first one's blob.
|
||||
type storeEncryptionKeyReq struct {
|
||||
Secret []byte `json:"secret"`
|
||||
Secret []byte `json:"secret"`
|
||||
Explicit bool `json:"explicit,omitempty"`
|
||||
}
|
||||
|
||||
// unlockReq — the passkey-derived secret for unwrapping the store encryption
|
||||
|
||||
Reference in New Issue
Block a user