]> Cypherpunks repositories - keks.git/commitdiff
Hasher field must be publicly accessible
authorSergey Matveev <stargrave@stargrave.org>
Mon, 9 Dec 2024 12:28:13 +0000 (15:28 +0300)
committerSergey Matveev <stargrave@stargrave.org>
Mon, 9 Dec 2024 12:28:20 +0000 (15:28 +0300)
So external library users can use its GOSTSigner.

gyac/yacpki/gost.go
gyac/yacpki/prv.go

index bf0b66b8a0420a32605ad25a3fa77d37719248a1fc2d274fd985f28f27fef7b5..f6e00e637fd289aa9f5bb21c1cd7710679c0a36a6ed617c374acc7ad624b9fae 100644 (file)
@@ -11,7 +11,7 @@ import (
 
 type GOSTSigner struct {
        Prv    *gost3410.PrivateKey
-       hasher func() hash.Hash
+       Hasher func() hash.Hash
 }
 
 func (s *GOSTSigner) Public() crypto.PublicKey {
@@ -23,7 +23,7 @@ func (s *GOSTSigner) Sign(
        msg []byte,
        opts crypto.SignerOpts,
 ) (signature []byte, err error) {
-       h := s.hasher()
+       h := s.Hasher()
        h.Write(msg)
        dgst := h.Sum(nil)
        signature, err = s.Prv.Sign(rand, dgst, opts)
index d560f1d4d028fb40dd82f079079864b566343048f32bb8df0981d847df357ebb..48b73c1505c8e2745b0fb69da8c9b707e6448ed214fe7bdb1708f709282a5697 100644 (file)
@@ -31,13 +31,13 @@ func PrvParse(data []byte) (prv crypto.Signer, err error) {
                        return
                }
        case AlgoGOST3410256A:
-               signer := &GOSTSigner{hasher: gost34112012256.New}
+               signer := &GOSTSigner{Hasher: gost34112012256.New}
                signer.Prv, err = gost3410.NewPrivateKeyBE(
                        gost3410.CurveIdtc26gost341012256paramSetA(), av.V,
                )
                prv = signer
        case AlgoGOST3410512C:
-               signer := &GOSTSigner{hasher: gost34112012512.New}
+               signer := &GOSTSigner{Hasher: gost34112012512.New}
                signer.Prv, err = gost3410.NewPrivateKeyBE(
                        gost3410.CurveIdtc26gost341012512paramSetC(), av.V,
                )