Skip to content

Commit afdad84

Browse files
committed
Use Hash for Signer/Verifier as an option
1 parent b7c5930 commit afdad84

File tree

9 files changed

+72
-39
lines changed

9 files changed

+72
-39
lines changed

cmd/cosign/cli/sign/sign.go

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,12 @@ func SignCmd(ro *options.RootOptions, ko options.KeyOpts, signOpts options.SignO
138138
ctx, cancel := context.WithTimeout(context.Background(), ro.Timeout)
139139
defer cancel()
140140

141-
sv, err := signerFromKeyOptsWithSVOpts(ctx, "", "", ko, signature.WithED25519ph())
141+
svOptions := []signature.SignerVerifierOption{
142+
signature.WithHash(crypto.SHA256),
143+
signature.WithED25519ph(),
144+
}
145+
146+
sv, err := signerFromKeyOptsWithSVOpts(ctx, "", "", ko, svOptions...)
142147
if err != nil {
143148
return fmt.Errorf("getting signer: %w", err)
144149
}
@@ -526,12 +531,12 @@ func signerFromKeyRef(ctx context.Context, certPath, certChainPath, keyRef strin
526531
return certSigner, nil
527532
}
528533

529-
func signerFromNewKey() (*SignerVerifier, error) {
534+
func signerFromNewKey(svOpts ...signature.SignerVerifierOption) (*SignerVerifier, error) {
530535
privKey, err := cosign.GeneratePrivateKey()
531536
if err != nil {
532537
return nil, fmt.Errorf("generating cert: %w", err)
533538
}
534-
sv, err := signature.LoadECDSASignerVerifier(privKey, crypto.SHA256)
539+
sv, err := signature.LoadSignerVerifierWithOpts(privKey, svOpts...)
535540
if err != nil {
536541
return nil, err
537542
}
@@ -576,7 +581,7 @@ func signerFromKeyOptsWithSVOpts(ctx context.Context, certPath string, certChain
576581
default:
577582
genKey = true
578583
ui.Infof(ctx, "Generating ephemeral keys...")
579-
sv, err = signerFromNewKey()
584+
sv, err = signerFromNewKey(svOpts...)
580585
}
581586
if err != nil {
582587
return nil, err

cmd/cosign/cli/sign/sign_blob.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,12 @@ func SignBlobCmd(ro *options.RootOptions, ko options.KeyOpts, payloadPath string
6666
ctx, cancel := context.WithTimeout(context.Background(), ro.Timeout)
6767
defer cancel()
6868

69-
sv, err := signerFromKeyOptsWithSVOpts(ctx, "", "", ko, signature.WithED25519ph())
69+
svOptions := []signature.SignerVerifierOption{
70+
signature.WithHash(crypto.SHA256),
71+
signature.WithED25519ph(),
72+
}
73+
74+
sv, err := signerFromKeyOptsWithSVOpts(ctx, "", "", ko, svOptions...)
7075
if err != nil {
7176
return nil, err
7277
}

cmd/cosign/cli/verify/verify.go

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -214,11 +214,16 @@ func (c *VerifyCommand) Exec(ctx context.Context, images []string) (err error) {
214214
}
215215
}
216216

217+
svOpts := []signature.SignerVerifierOption{
218+
signature.WithHash(crypto.SHA256),
219+
signature.WithED25519ph(),
220+
}
221+
217222
// Keys are optional!
218223
var pubKey signature.Verifier
219224
switch {
220225
case keyRef != "":
221-
pubKey, err = sigs.PublicKeyFromKeyRefWithOpts(ctx, keyRef, c.HashAlgorithm, signature.WithED25519ph())
226+
pubKey, err = sigs.PublicKeyFromKeyRefWithOpts(ctx, keyRef, svOpts...)
222227
if err != nil {
223228
return fmt.Errorf("loading public key: %w", err)
224229
}
@@ -251,7 +256,7 @@ func (c *VerifyCommand) Exec(ctx context.Context, images []string) (err error) {
251256
if err != nil {
252257
return fmt.Errorf("getting Fulcio intermediates: %w", err)
253258
}
254-
pubKey, err = cosign.ValidateAndUnpackCertWithOpts(cert, co, cosign.WithSignerVerifierOptions(signature.WithED25519ph()))
259+
pubKey, err = cosign.ValidateAndUnpackCertWithOpts(cert, co, cosign.WithSignerVerifierOptions(svOpts...))
255260
if err != nil {
256261
return err
257262
}
@@ -261,7 +266,7 @@ func (c *VerifyCommand) Exec(ctx context.Context, images []string) (err error) {
261266
if err != nil {
262267
return err
263268
}
264-
pubKey, err = cosign.ValidateAndUnpackCertWithOpts(cert, co, cosign.WithChain(chain), cosign.WithSignerVerifierOptions(signature.WithED25519ph()))
269+
pubKey, err = cosign.ValidateAndUnpackCertWithOpts(cert, co, cosign.WithChain(chain), cosign.WithSignerVerifierOptions(svOpts...))
265270
if err != nil {
266271
return err
267272
}
@@ -302,7 +307,7 @@ func (c *VerifyCommand) Exec(ctx context.Context, images []string) (err error) {
302307
return fmt.Errorf("resolving attachment type %s for image %s: %w", c.Attachment, img, err)
303308
}
304309

305-
verified, bundleVerified, err := cosign.VerifyImageSignatures(ctx, ref, co)
310+
verified, bundleVerified, err := cosign.VerifyImageSignaturesWithOpts(ctx, ref, co, svOpts...)
306311
if err != nil {
307312
return cosignError.WrapError(err)
308313
}

cmd/cosign/cli/verify/verify_blob.go

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -171,10 +171,15 @@ func (c *VerifyBlobCmd) Exec(ctx context.Context, blobRef string) error {
171171
}
172172
}
173173

174+
svOpts := []signature.SignerVerifierOption{
175+
signature.WithHash(crypto.SHA256),
176+
signature.WithED25519ph(),
177+
}
178+
174179
// Keys are optional!
175180
switch {
176181
case c.KeyRef != "":
177-
co.SigVerifier, err = sigs.PublicKeyFromKeyRefWithOpts(ctx, c.KeyRef, crypto.SHA256, signature.WithED25519ph())
182+
co.SigVerifier, err = sigs.PublicKeyFromKeyRefWithOpts(ctx, c.KeyRef, svOpts...)
178183
if err != nil {
179184
return fmt.Errorf("loading public key: %w", err)
180185
}
@@ -219,7 +224,7 @@ func (c *VerifyBlobCmd) Exec(ctx context.Context, blobRef string) error {
219224
bundleCert, err := loadCertFromPEM(certBytes)
220225
if err != nil {
221226
// check if cert is actually a public key
222-
co.SigVerifier, err = sigs.LoadPublicKeyRawWithOpts(certBytes, crypto.SHA256, signature.WithED25519ph())
227+
co.SigVerifier, err = sigs.LoadPublicKeyRawWithOpts(certBytes, svOpts...)
223228
if err != nil {
224229
return fmt.Errorf("loading verifier from bundle: %w", err)
225230
}
@@ -298,7 +303,7 @@ func (c *VerifyBlobCmd) Exec(ctx context.Context, blobRef string) error {
298303
if err != nil {
299304
return err
300305
}
301-
if _, err = cosign.VerifyBlobSignature(ctx, signature, co); err != nil {
306+
if _, err = cosign.VerifyBlobSignatureWithOpts(ctx, signature, co, svOpts...); err != nil {
302307
return err
303308
}
304309

go.mod

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ require (
3131
github.com/pkg/errors v0.9.1
3232
github.com/secure-systems-lab/go-securesystemslib v0.8.0
3333
github.com/sigstore/fulcio v1.4.3
34+
github.com/sigstore/protobuf-specs v0.2.2-0.20240118022641-cea4265fd6c5
3435
github.com/sigstore/rekor v1.3.4
3536
github.com/sigstore/sigstore v1.8.0
3637
github.com/sigstore/sigstore/pkg/signature/kms/aws v1.8.0
@@ -277,6 +278,6 @@ require (
277278
sigs.k8s.io/yaml v1.4.0 // indirect
278279
)
279280

280-
replace github.com/sigstore/sigstore => github.com/trail-of-forks/sigstore v0.0.0-20240117103256-3095d93bafe8
281+
replace github.com/sigstore/sigstore => /Users/ret2libc/projects/sigstore/sigstore
281282

282-
replace github.com/sigstore/rekor => github.com/trail-of-forks/rekor v0.0.0-20240117141752-51caf324f906
283+
replace github.com/sigstore/rekor => /Users/ret2libc/projects/sigstore/rekor

go.sum

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -608,6 +608,8 @@ github.com/shibumi/go-pathspec v1.3.0 h1:QUyMZhFo0Md5B8zV8x2tesohbb5kfbpTi9rBnKh
608608
github.com/shibumi/go-pathspec v1.3.0/go.mod h1:Xutfslp817l2I1cZvgcfeMQJG5QnU2lh5tVaaMCl3jE=
609609
github.com/sigstore/fulcio v1.4.3 h1:9JcUCZjjVhRF9fmhVuz6i1RyhCc/EGCD7MOl+iqCJLQ=
610610
github.com/sigstore/fulcio v1.4.3/go.mod h1:BQPWo7cfxmJwgaHlphUHUpFkp5+YxeJes82oo39m5og=
611+
github.com/sigstore/protobuf-specs v0.2.2-0.20240118022641-cea4265fd6c5 h1:zd0WcTFjKmp50qey4orR4Xzmyt5lxyyPQOEeyWa24xU=
612+
github.com/sigstore/protobuf-specs v0.2.2-0.20240118022641-cea4265fd6c5/go.mod h1:ynKzXpqr3dUj2Xk9O/5ZUhjnpi0F53DNi5AdH6pS3jc=
611613
github.com/sigstore/sigstore/pkg/signature/kms/aws v1.8.0 h1:nLaaOX85YjBKQOQHWY2UlDkbx+je8ozTEM+t1ySAb78=
612614
github.com/sigstore/sigstore/pkg/signature/kms/aws v1.8.0/go.mod h1:fLxrKqPP9lIz/B3UBD4ZK6j6984eX2czu/0zxm99fkE=
613615
github.com/sigstore/sigstore/pkg/signature/kms/azure v1.8.0 h1:Txd7Fjei2NVb/sjBNYybrl+FcZGptO6FXXH4pVNBQMs=
@@ -672,10 +674,6 @@ github.com/titanous/rocacheck v0.0.0-20171023193734-afe73141d399/go.mod h1:LdwHT
672674
github.com/tjfoc/gmsm v1.3.2/go.mod h1:HaUcFuY0auTiaHB9MHFGCPx5IaLhTUd2atbCFBQXn9w=
673675
github.com/tjfoc/gmsm v1.4.1 h1:aMe1GlZb+0bLjn+cKTPEvvn9oUEBlJitaZiiBwsbgho=
674676
github.com/tjfoc/gmsm v1.4.1/go.mod h1:j4INPkHWMrhJb38G+J6W4Tw0AbuN8Thu3PbdVYhVcTE=
675-
github.com/trail-of-forks/rekor v0.0.0-20240117141752-51caf324f906 h1:xiHDiDcZ3yeBikoG6RZvjkDqwWQnmslPQqvZxueZV3E=
676-
github.com/trail-of-forks/rekor v0.0.0-20240117141752-51caf324f906/go.mod h1:20v68aaBb2C/sUjSluGGhhL+eR8G9+Vd4SLX5F1u/cU=
677-
github.com/trail-of-forks/sigstore v0.0.0-20240117103256-3095d93bafe8 h1:0tnfVIeZPhbzIOmpHJrrOKH4Fb1W1rmIAJsgkwnc2TU=
678-
github.com/trail-of-forks/sigstore v0.0.0-20240117103256-3095d93bafe8/go.mod h1:l12B1gFlLIpBIVeqk/q1Lb+6YSOGNuN3xLExIjYH+qc=
679677
github.com/transparency-dev/merkle v0.0.2 h1:Q9nBoQcZcgPamMkGn7ghV8XiTZ/kRxn1yCG81+twTK4=
680678
github.com/transparency-dev/merkle v0.0.2/go.mod h1:pqSy+OXefQ1EDUVmAJ8MUhHB9TXGuzVAT58PqBoHz1A=
681679
github.com/urfave/negroni v1.0.0 h1:kIimOitoypq34K7TG7DUaJ9kq/N4Ofuwi1sjz0KipXc=

pkg/cosign/keys.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -228,5 +228,5 @@ func LoadPrivateKeyWithOpts(key []byte, pass []byte, opts ...signature.SignerVer
228228
if err != nil {
229229
return nil, fmt.Errorf("parsing private key: %w", err)
230230
}
231-
return signature.LoadSignerVerifierWithOpts(pk, crypto.SHA256, opts...)
231+
return signature.LoadSignerVerifierWithOpts(pk, opts...)
232232
}

pkg/cosign/verify.go

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -305,7 +305,7 @@ func ValidateAndUnpackCertWithOpts(cert *x509.Certificate, co *CheckOpts, opts .
305305
co.IntermediateCerts = subPool
306306
}
307307

308-
verifier, err := signature.LoadVerifierWithOpts(cert.PublicKey, crypto.SHA256, o.svOpts...)
308+
verifier, err := signature.LoadVerifierWithOpts(cert.PublicKey, o.svOpts...)
309309
if err != nil {
310310
return nil, fmt.Errorf("invalid certificate found on signature: %w", err)
311311
}
@@ -543,6 +543,10 @@ func (fos *fakeOCISignatures) Get() ([]oci.Signature, error) {
543543
// Note that if co.ExperimentlOCI11 is set, we will attempt to verify
544544
// signatures using the experimental OCI 1.1 behavior.
545545
func VerifyImageSignatures(ctx context.Context, signedImgRef name.Reference, co *CheckOpts) (checkedSignatures []oci.Signature, bundleVerified bool, err error) {
546+
return VerifyImageSignaturesWithOpts(ctx, signedImgRef, co)
547+
}
548+
549+
func VerifyImageSignaturesWithOpts(ctx context.Context, signedImgRef name.Reference, co *CheckOpts, svOpts ...signature.SignerVerifierOption) (checkedSignatures []oci.Signature, bundleVerified bool, err error) {
546550
// Try first using OCI 1.1 behavior if experimental flag is set.
547551
if co.ExperimentalOCI11 {
548552
verified, bundleVerified, err := verifyImageSignaturesExperimentalOCI(ctx, signedImgRef, co)
@@ -642,7 +646,7 @@ func VerifyLocalImageSignatures(ctx context.Context, path string, co *CheckOpts)
642646
return verifySignatures(ctx, sigs, h, co)
643647
}
644648

645-
func verifySignatures(ctx context.Context, sigs oci.Signatures, h v1.Hash, co *CheckOpts) (checkedSignatures []oci.Signature, bundleVerified bool, err error) {
649+
func verifySignatures(ctx context.Context, sigs oci.Signatures, h v1.Hash, co *CheckOpts, svOpts ...signature.SignerVerifierOption) (checkedSignatures []oci.Signature, bundleVerified bool, err error) {
646650
sl, err := sigs.Get()
647651
if err != nil {
648652
return nil, false, err
@@ -670,7 +674,7 @@ func verifySignatures(ctx context.Context, sigs oci.Signatures, h v1.Hash, co *C
670674
return
671675
}
672676

673-
verified, err := VerifyImageSignature(ctx, sig, h, co)
677+
verified, err := VerifyImageSignatureWithOpts(ctx, sig, h, co, svOpts...)
674678
bundlesVerified[index] = verified
675679
if err != nil {
676680
t.Done(err)
@@ -876,13 +880,23 @@ func keyBytes(sig oci.Signature, co *CheckOpts) ([]byte, error) {
876880

877881
// VerifyBlobSignature verifies a blob signature.
878882
func VerifyBlobSignature(ctx context.Context, sig oci.Signature, co *CheckOpts) (bundleVerified bool, err error) {
883+
return VerifyBlobSignatureWithOpts(ctx, sig, co)
884+
}
885+
886+
// VerifyBlobSignature verifies a blob signature.
887+
func VerifyBlobSignatureWithOpts(ctx context.Context, sig oci.Signature, co *CheckOpts, svOpts ...signature.SignerVerifierOption) (bundleVerified bool, err error) {
879888
// The hash of the artifact is unused.
880-
return verifyInternal(ctx, sig, v1.Hash{}, verifyOCISignature, co, signature.WithED25519ph())
889+
return verifyInternal(ctx, sig, v1.Hash{}, verifyOCISignature, co, svOpts...)
881890
}
882891

883892
// VerifyImageSignature verifies a signature
884893
func VerifyImageSignature(ctx context.Context, sig oci.Signature, h v1.Hash, co *CheckOpts) (bundleVerified bool, err error) {
885-
return verifyInternal(ctx, sig, h, verifyOCISignature, co, signature.WithED25519ph())
894+
return VerifyImageSignatureWithOpts(ctx, sig, h, co)
895+
}
896+
897+
// VerifyImageSignature verifies a signature
898+
func VerifyImageSignatureWithOpts(ctx context.Context, sig oci.Signature, h v1.Hash, co *CheckOpts, svOpts ...signature.SignerVerifierOption) (bundleVerified bool, err error) {
899+
return verifyInternal(ctx, sig, h, verifyOCISignature, co, svOpts...)
886900
}
887901

888902
func loadSignatureFromFile(ctx context.Context, sigRef string, signedImgRef name.Reference, co *CheckOpts) (oci.Signatures, error) {
@@ -1433,7 +1447,7 @@ func correctAnnotations(wanted, have map[string]interface{}) bool {
14331447

14341448
// verifyImageSignaturesExperimentalOCI does all the main cosign checks in a loop, returning the verified signatures.
14351449
// If there were no valid signatures, we return an error, using OCI 1.1+ behavior.
1436-
func verifyImageSignaturesExperimentalOCI(ctx context.Context, signedImgRef name.Reference, co *CheckOpts) (checkedSignatures []oci.Signature, bundleVerified bool, err error) {
1450+
func verifyImageSignaturesExperimentalOCI(ctx context.Context, signedImgRef name.Reference, co *CheckOpts, svOpts ...signature.SignerVerifierOption) (checkedSignatures []oci.Signature, bundleVerified bool, err error) {
14371451
// Enforce this up front.
14381452
if co.RootCerts == nil && co.SigVerifier == nil {
14391453
return nil, false, errors.New("one of verifier or root certs is required")
@@ -1486,5 +1500,5 @@ func verifyImageSignaturesExperimentalOCI(ctx context.Context, signedImgRef name
14861500
}
14871501
}
14881502

1489-
return verifySignatures(ctx, sigs, h, co)
1503+
return verifySignatures(ctx, sigs, h, co, svOpts...)
14901504
}

pkg/signature/keys.go

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -41,15 +41,15 @@ func LoadPublicKey(ctx context.Context, keyRef string) (verifier signature.Verif
4141
// VerifierForKeyRef parses the given keyRef, loads the key and returns an appropriate
4242
// verifier using the provided hash algorithm
4343
func VerifierForKeyRef(ctx context.Context, keyRef string, hashAlgorithm crypto.Hash) (verifier signature.Verifier, err error) {
44-
return VerifierForKeyRefWithOpts(ctx, keyRef, hashAlgorithm)
44+
return VerifierForKeyRefWithOpts(ctx, keyRef, signature.WithHash(hashAlgorithm))
4545
}
4646

4747
// VerifierForKeyRefWithOpts parses the given keyRef, loads the key and returns an appropriate
4848
// verifier using the provided hash algorithm and options
49-
func VerifierForKeyRefWithOpts(ctx context.Context, keyRef string, hashAlgorithm crypto.Hash, opts ...signature.SignerVerifierOption) (verifier signature.Verifier, err error) {
49+
func VerifierForKeyRefWithOpts(ctx context.Context, keyRef string, opts ...signature.SignerVerifierOption) (verifier signature.Verifier, err error) {
5050
// The key could be plaintext, in a file, at a URL, or in KMS.
5151
var perr *kms.ProviderNotFoundError
52-
kmsKey, err := kms.Get(ctx, keyRef, hashAlgorithm)
52+
kmsKey, err := kms.Get(ctx, keyRef, signature.GetSignerVerifierOptionHash(opts...))
5353
switch {
5454
case err == nil:
5555
// KMS specified
@@ -75,7 +75,7 @@ func VerifierForKeyRefWithOpts(ctx context.Context, keyRef string, hashAlgorithm
7575
return nil, fmt.Errorf("pem to public key: %w", err)
7676
}
7777

78-
return signature.LoadVerifierWithOpts(pubKey, hashAlgorithm, opts...)
78+
return signature.LoadVerifierWithOpts(pubKey, opts...)
7979
}
8080

8181
func loadKey(keyPath string, pf cosign.PassFunc, opts ...signature.SignerVerifierOption) (signature.SignerVerifier, error) {
@@ -95,16 +95,16 @@ func loadKey(keyPath string, pf cosign.PassFunc, opts ...signature.SignerVerifie
9595

9696
// LoadPublicKeyRaw loads a verifier from a PEM-encoded public key
9797
func LoadPublicKeyRaw(raw []byte, hashAlgorithm crypto.Hash) (signature.Verifier, error) {
98-
return LoadPublicKeyRawWithOpts(raw, hashAlgorithm)
98+
return LoadPublicKeyRawWithOpts(raw, signature.WithHash(hashAlgorithm))
9999
}
100100

101101
// LoadPublicKeyRawWithOpts loads a verifier from a PEM-encoded public key with options
102-
func LoadPublicKeyRawWithOpts(raw []byte, hashAlgorithm crypto.Hash, opts ...signature.SignerVerifierOption) (signature.Verifier, error) {
102+
func LoadPublicKeyRawWithOpts(raw []byte, opts ...signature.SignerVerifierOption) (signature.Verifier, error) {
103103
pub, err := cryptoutils.UnmarshalPEMToPublicKey(raw)
104104
if err != nil {
105105
return nil, err
106106
}
107-
return signature.LoadVerifierWithOpts(pub, hashAlgorithm, opts...)
107+
return signature.LoadVerifierWithOpts(pub, opts...)
108108
}
109109

110110
func SignerFromKeyRef(ctx context.Context, keyRef string, pf cosign.PassFunc) (signature.Signer, error) {
@@ -184,22 +184,22 @@ func SignerVerifierFromKeyRefWithOpts(ctx context.Context, keyRef string, pf cos
184184
}
185185

186186
func PublicKeyFromKeyRef(ctx context.Context, keyRef string) (signature.Verifier, error) {
187-
return PublicKeyFromKeyRefWithOpts(ctx, keyRef, crypto.SHA256)
187+
return PublicKeyFromKeyRefWithOpts(ctx, keyRef, signature.WithHash(crypto.SHA256))
188188
}
189189

190190
func PublicKeyFromKeyRefWithHashAlgo(ctx context.Context, keyRef string, hashAlgorithm crypto.Hash) (signature.Verifier, error) {
191-
return PublicKeyFromKeyRefWithOpts(ctx, keyRef, hashAlgorithm)
191+
return PublicKeyFromKeyRefWithOpts(ctx, keyRef, signature.WithHash(hashAlgorithm))
192192
}
193193

194-
func PublicKeyFromKeyRefWithOpts(ctx context.Context, keyRef string, hashAlgorithm crypto.Hash, opts ...signature.SignerVerifierOption) (signature.Verifier, error) {
194+
func PublicKeyFromKeyRefWithOpts(ctx context.Context, keyRef string, opts ...signature.SignerVerifierOption) (signature.Verifier, error) {
195195
if strings.HasPrefix(keyRef, kubernetes.KeyReference) {
196196
s, err := kubernetes.GetKeyPairSecret(ctx, keyRef)
197197
if err != nil {
198198
return nil, err
199199
}
200200

201201
if len(s.Data) > 0 {
202-
return LoadPublicKeyRawWithOpts(s.Data["cosign.pub"], hashAlgorithm, opts...)
202+
return LoadPublicKeyRawWithOpts(s.Data["cosign.pub"], opts...)
203203
}
204204
}
205205

@@ -238,11 +238,11 @@ func PublicKeyFromKeyRefWithOpts(ctx context.Context, keyRef string, hashAlgorit
238238
}
239239

240240
if len(pubKey) > 0 {
241-
return LoadPublicKeyRawWithOpts([]byte(pubKey), hashAlgorithm, opts...)
241+
return LoadPublicKeyRawWithOpts([]byte(pubKey), opts...)
242242
}
243243
}
244244

245-
return VerifierForKeyRefWithOpts(ctx, keyRef, hashAlgorithm, opts...)
245+
return VerifierForKeyRefWithOpts(ctx, keyRef, opts...)
246246
}
247247

248248
func PublicKeyPem(key signature.PublicKeyProvider, pkOpts ...signature.PublicKeyOption) ([]byte, error) {

0 commit comments

Comments
 (0)