in server/signedcontainer/internal/convert/convert.go [28:41]
func unmarshalPEMToPublicKey(pemBytes []byte) (crypto.PublicKey, error) {
block, _ := pem.Decode(pemBytes)
if block == nil {
return nil, errors.New("no PEM data found, failed to decode PEM-encoded byte slice")
}
switch block.Type {
case "PUBLIC KEY":
return x509.ParsePKIXPublicKey(block.Bytes)
case "RSA PUBLIC KEY":
return x509.ParsePKCS1PublicKey(block.Bytes)
default:
return nil, fmt.Errorf("unsupported public key type: %v", block.Type)
}
}