move liquid key validation to function

Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com>
This commit is contained in:
Lorenz Herzberger 2023-07-25 13:58:38 +02:00
parent 053f38cf0d
commit d54a5dc8c4
No known key found for this signature in database
GPG Key ID: FA5EE906EB55316A

View File

@ -15,12 +15,8 @@ import (
func (k msgServer) AttestMachine(goCtx context.Context, msg *types.MsgAttestMachine) (*types.MsgAttestMachineResponse, error) {
ctx := sdk.UnwrapSDKContext(goCtx)
xpubKeyLiquid, err := hdkeychain.NewKeyFromString(msg.Machine.IssuerLiquid)
if err != nil {
return nil, errors.New("invalid liquid key")
}
isValidLiquidKey := xpubKeyLiquid.IsForNet(&chaincfg.MainNetParams)
if !isValidLiquidKey {
isValidIssuerLiquid := validateIssuerLiquid(msg.Machine.IssuerLiquid)
if !isValidIssuerLiquid {
return nil, errors.New("invalid liquid key")
}
@ -33,3 +29,12 @@ func (k msgServer) AttestMachine(goCtx context.Context, msg *types.MsgAttestMach
return &types.MsgAttestMachineResponse{}, nil
}
func validateIssuerLiquid(issuerLiquid string) bool {
xpubKeyLiquid, err := hdkeychain.NewKeyFromString(issuerLiquid)
if err != nil {
return false
}
isValidLiquidKey := xpubKeyLiquid.IsForNet(&chaincfg.MainNetParams)
return isValidLiquidKey
}