1 package web 2 3 import ( 4 "encoding/json" 5 "os" 6 7 "gopkg.in/go-jose/go-jose.v2" 8 ) 9 10 // LoadJWK loads a JSON encoded JWK specified by filename or returns an error 11 func LoadJWK(filename string) (*jose.JSONWebKey, error) { 12 var jwk jose.JSONWebKey 13 if jsonBytes, err := os.ReadFile(filename); err != nil { 14 return nil, err 15 } else if err = json.Unmarshal(jsonBytes, &jwk); err != nil { 16 return nil, err 17 } 18 return &jwk, nil 19 } 20