2022-05-26 16:53:13 +02:00

28 lines
422 B
Go

package photosapi
import (
"crypto/sha256"
"encoding/base64"
"hash"
)
type Checksum struct {
s hash.Hash
}
func NewChecksum() *Checksum {
return &Checksum{sha256.New()}
}
func (c *Checksum) Write(b []byte) (int, error) {
return c.s.Write(b)
}
func (c *Checksum) String() string {
return base64.URLEncoding.EncodeToString(c.s.Sum(nil))
}
func (c *Checksum) Match(sha string) bool {
return c.String() == sha
}