在GO中處理的話,比較方便。python
func main() { fmt.Println(md5Str("woGo")) fmt.Println(sha512Str("woGo")) fmt.Println(base64DecodeStr(base64EncodeStr("fd"))) } //md5驗證 func md5Str(src string) string { h := md5.New() h.Write([]byte(src)) // //fmt.Printf("%s\n", hex.EncodeToString(h.Sum(nil))) // 輸出加密結果 return hex.EncodeToString(h.Sum(nil)) } //sha512驗證 func sha512Str(src string) string { h := sha512.New() h.Write([]byte(src)) // //fmt.Printf("%s\n", hex.EncodeToString(h.Sum(nil))) // 輸出加密結果 return hex.EncodeToString(h.Sum(nil)) } //base編碼 func base64EncodeStr(src string) string { return string(base64.StdEncoding.EncodeToString([]byte(src))) } //base解碼 func base64DecodeStr(src string) string { a, err := (base64.StdEncoding.DecodeString(src)) if err != nil { return "error" } return string(a) }
而在python中的話,也就是短短几句代碼編碼
import hashlib,base64 src =b"woGo" m= hashlib.md5() m.update(src) print (m.hexdigest()) print(hashlib.sha512(src).hexdigest()) 其實來講不管是GO語言仍是python,在解碼的時候,須要加個異常處理。 print(base64.b64encode(b"fd")) print(base64.b64decode(base64.b64encode(b"fd")))