funcNew() hash.Hash {
d :=new(digest)
d.Reset()return d
}
该对象实现了hash.Hash的Sum接口:计算出校验和。其函数原型 为:
type Hash interface{// Sum appends the current hash to b and returns the resulting slice.// It does not change the underlying hash state.Sum(b []byte)[]byte
…
}
Sum 函数是对hash.Hash对象内部存储的内容进行校验和 计算然后将其追加到data的后面形成一个新的byte切片。因此通常的使用方法就是将data置为nil。