I have a sized byte array that I got after doing md5.Sum()
.
data := []byte("testing")
var pass string
var b [16]byte
b = md5.Sum(data)
pass = string(b)
I get the error:
cannot convert b (type [16]byte) to type string
You can refer to it as a slice:
pass = string(b[:])
Make a slice of it:
pass = string(b[:])
A little late but keep in mind that using string(b[:])
will print mostly invalid characters.
If you're trying to get a hex representation of it like php you can use something like:
data := []byte("testing")
b := md5.Sum(data)
//this is mostly invalid characters
fmt.Println(string(b[:]))
pass := hex.EncodeToString(b[:])
fmt.Println(pass)
// or
pass = fmt.Sprintf("%x", b)
fmt.Println(pass)
it can be solved by this
pass = fmt.Sprintf("%x", b)
or
import "encoding/base64"
pass = base64.StdEncoding.EncodeToString(b[:])
this will encoding it to base64 string