// KeccakState는 sha3.state를 래핑합니다. 일반적인 해시 메서드 외에도, 해시 상태에서 가변 길이의 데이터를 얻는 데도 지원합니다.
// Read는 내부 상태를 복사하지 않기 때문에 Sum보다 빠르지만 내부 상태를 수정합니다.
type KeccakState interface {
hash.Hash
Read([]byte) (int, error)
}
// NewKeccakState는 새로운 KeccakState를 생성합니다.
func NewKeccakState() KeccakState {
return sha3.NewLegacyKeccak256().(KeccakState)
}