package md5
import "crypto/md5"
Package md5 implements the MD5 hash algorithm as defined in RFC 1321.
MD5 is cryptographically broken and should not be used for secure applications.
Index
Examples
Constants
const BlockSize = 64
The blocksize of MD5 in bytes.
const Size = 16
The size of an MD5 checksum in bytes.
Functions
func New
func New() hash.Hash
New returns a new hash.Hash computing the MD5 checksum. The Hash also
implements encoding.BinaryMarshaler and encoding.BinaryUnmarshaler to
marshal and unmarshal the internal state of the hash.
Output:Example
package main
import (
"crypto/md5"
"fmt"
"io"
)
func main() {
h := md5.New()
io.WriteString(h, "The fog is getting thicker!")
io.WriteString(h, "And Leon's getting laaarger!")
fmt.Printf("%x", h.Sum(nil))
}
e2c569be17396eca2a2e3c11578123ed
Example (File)
package main
import (
"crypto/md5"
"fmt"
"io"
"log"
"os"
)
func main() {
f, err := os.Open("file.txt")
if err != nil {
log.Fatal(err)
}
defer f.Close()
h := md5.New()
if _, err := io.Copy(h, f); err != nil {
log.Fatal(err)
}
fmt.Printf("%x", h.Sum(nil))
}
func Sum
func Sum(data []byte) [Size]byte
Sum returns the MD5 checksum of the data.
Output:Example
package main
import (
"crypto/md5"
"fmt"
)
func main() {
data := []byte("These pretzels are making me thirsty.")
fmt.Printf("%x", md5.Sum(data))
}
b0804ec967f48520697662a204f5fe72