jwatson0 / gosha256

A sha256 implementation written in Go

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

gosha256

A sha256 implementation written in Go.

NOT FOR PRODUCTION USE

You probably want to use the standard Go crypto/sha256 package instead.

Written by @jwatson0 for my own exploration of the SHA2 algorithm. Primarily the FIPS 180-2 spec was used with very little examination of other implementations or comparison to the standard Go crypto/sha256 package (yet).

Installing

import "github.com/jwatson0/go/gosha256/sha2"

Running the tests

go get github.com/jwatson0/go/gosha256
cd $GOPATH/github.com/jwatson0/go/gosha256/sha2
go test

Caveats

  • There are currently a few test cases that are failing, but I haven't tracked down the issue.

  • No optimizations for speed or benchmarks have been done (yet).

  • This implementation works on whole byte boundaries. Lengths of bits not divisible by 8 are supported in the spec, but not this code (yet).

Authors

License

This project is licensed under the MIT License - see the LICENSE.md file for details

About

A sha256 implementation written in Go

License:MIT License


Languages

Language:Go 100.0%