关于go:Go-快速入门指南-常用加解密方法

3次阅读

共计 968 个字符,预计需要花费 3 分钟才能阅读完成。

base64

调用 encoding/base64 包即可。

例子

package main

import (
    "encoding/base64"
    "fmt"
)

func main() {
    s := "hello world"
    sEncode := base64.StdEncoding.EncodeToString([]byte(s))
    fmt.Printf("encode(`hello world`) = %s\n", sEncode)

    sDecode, err := base64.StdEncoding.DecodeString(sEncode)
    if err != nil {panic(err)
    } else {fmt.Printf("decode(`%s`) = %s\n", sEncode, sDecode)
    }
}

// $ go run main.go
// 输入如下
/**
  encode(`hello world`) = aGVsbG8gd29ybGQ=
  decode(`aGVsbG8gd29ybGQ=`) = hello world
*/

sha256

调用 crypto/sha256 包即可。

例子

package main

import (
    "crypto/sha256"
    "fmt"
)

func main() {
    s := "hello world"
    h := sha256.New()
    h.Write([]byte(s))
    res := h.Sum(nil)
    fmt.Printf("sha245(`hello world`) = %x\n", res)
}

// $ go run main.go
// 输入如下
/**
  sha256(`hello world`) = b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9
*/

md5

调用 crypto/md5 包即可。

例子

package main

import (
    "crypto/md5"
    "fmt"
)

func main() {
    s := "hello world"
    h := md5.New()
    h.Write([]byte(s))
    res := h.Sum(nil)
    fmt.Printf("md5(`hello world`) = %x\n", res)
}

// $ go run main.go
// 输入如下
/**
  md5(`hello world`) = 5eb63bbbe01eeed093cb22bb8f5acdc3
*/

分割我

正文完
 0