This commit is contained in:
Neil Alexander 2021-08-06 14:59:13 +01:00
parent 0c131bf333
commit 6cc888289e
No known key found for this signature in database
GPG key ID: A02A2019A2BB0944

View file

@ -338,20 +338,18 @@ func (a *KeyInternalAPI) processSelfSignatures(
} }
for originKeyID, originSig := range forOriginUserID { for originKeyID, originSig := range forOriginUserID {
originDeviceKeyID := gomatrixserverlib.KeyID("ed25519:" + originKeyID)
var originKey gomatrixserverlib.DeviceKeys var originKey gomatrixserverlib.DeviceKeys
if err := json.Unmarshal(originDeviceKeys[string(originKeyID)], &originKey); err != nil { if err := json.Unmarshal(originDeviceKeys[string(originKeyID)], &originKey); err != nil {
return fmt.Errorf("json.Unmarshal: %w", err) return fmt.Errorf("json.Unmarshal: %w", err)
} }
originSigningKey, ok := originKey.Keys[originDeviceKeyID] originSigningKey, ok := originKey.Keys[originKeyID]
if !ok { if !ok {
return fmt.Errorf("missing origin signing key %q", originDeviceKeyID) return fmt.Errorf("missing origin signing key %q", originKeyID)
} }
originSigningKeyPublic := ed25519.PublicKey(originSigningKey) originSigningKeyPublic := ed25519.PublicKey(originSigningKey)
if err := gomatrixserverlib.VerifyJSON(originUserID, originDeviceKeyID, originSigningKeyPublic, j); err != nil { if err := gomatrixserverlib.VerifyJSON(originUserID, originKeyID, originSigningKeyPublic, j); err != nil {
return fmt.Errorf("gomatrixserverlib.VerifyJSON: %w", err) return fmt.Errorf("gomatrixserverlib.VerifyJSON: %w", err)
} }