golang 使用RSA签名和验签

golang 使用RSA签名和验签
当前主要有两种形式base64和hex:

  • base64
    1.rsa类型签名

    import (
        "crypto/rsa"
        "crypto/rand"
    )
    signature, err := rsa.SignPKCS1v15(rand.Reader, privateKey.(*rsa.PrivateKey), crypto.SHA1, hash[:])
    if err != nil {
    	fmt.Printf("Error from signing: %s\n", err)
    	return "", err
    }
    encoded := base64.StdEncoding.EncodeToString(signature)
    
    

    2.rsa类型验签

    import (
        "crypto/rsa"
    )
     
    rsa.VerifyPKCS1v15(pub *PublicKey, hash crypto.Hash, hashed []byte, sig []byte) error
    
    
  • hex

hex.DecodeString(s string)//解密
hex.EncodeToString(src []byte) string//加密

猜你喜欢

转载自blog.csdn.net/quanqxj/article/details/102728481
今日推荐