1package c2patypes 2 3import ( 4 "crypto" 5 "crypto/rand" 6 "crypto/sha256" 7) 8 9type CallbackSigner struct { 10 signer crypto.Signer 11} 12 13func (c *CallbackSigner) Sign(data []byte) ([]byte, error) { 14 digest := sha256.New().Sum(data) 15 16 return c.signer.Sign(rand.Reader, digest, nil) 17}