crc64加密

  1. package main
  2.  
  3. import (
  4. "fmt"
  5. "hash/crc64"
  6. )
  7.  
  8. func main(){
  9. s:="打死udhanckhdkja"
  10. //先创建一个table
  11. table := crc64.MakeTable(crc64.ECMA)
  12. //传入字节切片和table,返回一个uint64
  13. fmt.Println(crc64.Checksum([]byte(s), table)) //4295263180068867775
  14.  
  15. }

  

md5加密

  1. package main
  2.  
  3. import (
  4. "crypto/md5"
  5. "encoding/hex"
  6. "fmt"
  7. )
  8.  
  9. func main(){
  10. //方法一:
  11. s:="udhanckhdkja"
  12. //返回字节切片,长度为16
  13. res := md5.Sum([]byte(s))
  14. //注意此时不可以使用string(res)来转化,会得到乱码
  15. //要使用hex.EncodeToString,但是要传入切片
  16. fmt.Println(hex.EncodeToString(res[:]))//538a7e42c664f84d1dba984976489311
  17.  
  18. //方法二:
  19. md5ctx := md5.New()
  20. md5ctx.Write([]byte(s))
  21. res1 := md5.Sum(nil)
  22. fmt.Println(hex.EncodeToString(res1[:]))//d41d8cd98f00b204e9800998ecf8427e
  23.  
  24. }

base64加密  

  1. package main
  2.  
  3. import (
  4. "encoding/base64"
  5. "fmt"
  6. )
  7.  
  8. func string_b64_encode(s string){
  9. encodeString := base64.StdEncoding.EncodeToString([]byte(s))
  10. fmt.Println(encodeString)
  11.  
  12. decodeString, err:= base64.StdEncoding.DecodeString(encodeString)
  13. if err!=nil{
  14. fmt.Println("err=",err)
  15. }
  16. fmt.Println(string(decodeString))
  17. }
  18.  
  19. func url_b64_encode(url string){
  20. encodeString := base64.URLEncoding.EncodeToString([]byte(url))
  21. fmt.Println(encodeString)
  22.  
  23. decodeString, err:= base64.URLEncoding.DecodeString(encodeString)
  24. if err!=nil{
  25. fmt.Println("err=",err)
  26. }
  27. fmt.Println(string(decodeString))
  28. }
  29.  
  30. func main(){
  31. string_b64_encode("satori")
  32. /*
  33. c2F0b3Jp
  34. satori
  35. */
  36. url_b64_encode("http://www.baidu.com")
  37. /*
  38. aHR0cDovL3d3dy5iYWlkdS5jb20=
  39. http://www.baidu.com
  40. */
  41. }

  

golang进行加密的更多相关文章

  1. golang md5加密和python md5加密比较

    python md5加密和golang md5加密各有不同,记录于此做备忘 Python 方法 md5 import base64 import hashlib def get_md5_data(bo ...

  2. [Golang] base64加密与解密

    首先解释以下什么是base64(来自百度百科): Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,大家可以查看RFC2045-RFC2049,上面有MIME的详细规范.Base64 ...

  3. golang 私钥"加密"公钥"解密"

    ---恢复内容开始---   之前工作主要使用C/C++与银行/第三方支付对接,但C/C++无法满足客户"当天给协议明天实盘上载"的开发速度以及现公司一些特殊情况,所以决定用go来 ...

  4. golang rc4加密

    package main import "crypto/rc4" import "fmt" func main() { key := []byte(" ...

  5. golang RSA2加密/解密

    $go get github.com/wenzhenxi/gorsa test.go文件的内容 运行: $go run test.go package main import ( "fmt& ...

  6. Golang AES加密

    package main import ( "crypto/aes" "crypto/cipher" "fmt" "os" ...

  7. golang 的md5加密

    先看实现代码: package main import (     "crypto/md5"     "encoding/hex"     "fmt& ...

  8. Golang 加密方法

    如果想直接使用我下列的库 可以直接go get 我的github go get -u github.com/hybpjx/InverseAlgorithm md5 加密--不可逆 MD5信息摘要算法是 ...

  9. 通过Go实现AES加密和解密工具

    本文包含如下两个内容: AES加密介绍及实现原理 Go实现AES加密和解密工具 AES加密介绍及实现原理 AES( advanced encryption standard)使用相同密钥进行加密和解密 ...

随机推荐

  1. kaldi GMM模型解码指令 gmm-latgen-faster详解

    目录 - 作用: - 用法: - 可选项及含义: - 使用实例: - 作用: Generate lattices using GMM-based model. 生成基于GMM模型的lattice词格) ...

  2. wutianqi 博客 母函数

    母函数(Generating function)详解 — Tanky Woo 在数学中,某个序列的母函数(Generating function,又称生成函数)是一种形式幂级数,其每一项的系数可以提供 ...

  3. iOS-tableViewCell创建时添加一些动画

    有时候因为项目的需要,给tableView添加一些动画: cell.layer.transform = CATransform3DMakeScale(); [UIView animateWithDur ...

  4. 【bzoj3813】奇数国 线段树

    题目描述 给出一个长度为n的序列,每个数都可以由前60个质数的乘积表示,初始每个数都是3.支持两种操作:(1)修改一个数 (2)查询一段区间内所有数的乘积的欧拉函数值模19961993. 输入 第一行 ...

  5. hdu DIY FLIGHT GAME (dfs)

    FLIGHT GAME Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 65535/32768K (Java/Other) Total S ...

  6. [洛谷P3567][POI2014]KUR-Couriers

    题目大意:给一个数列,每次询问一个区间内有没有一个数出现次数超过一半.有,输出这个数,否则输出$0$ 题解:主席树,查询区间第$\bigg\lfloor\dfrac{len+1}{2}\bigg\rf ...

  7. 洛谷P4589 [TJOI2018]智力竞赛 【floyd + 二分 + KM】

    题目链接 洛谷P4589 题意可能不清,就是给出一个带权有向图,选出\(n + 1\)条链,问能否全部点覆盖,如果不能,问不能覆盖的点权最小值最大是多少 题解 如果要问全部覆盖,就是经典的可重点的DA ...

  8. 【BZOJ 4565】 [Haoi2016]字符合并 区间dp+状压

    考试的时候由于总是搞这道题导致爆零~~~~~(神™倒序难度.....) 考试的时候想着想着想用状压,但是觉得不行又想用区间dp,然而正解是状压着搞区间,这充分说明了一件事,状压不是只是一种dp而是一种 ...

  9. 做一个所见即所得的CSS效果

    style 也是标签(在非ie内核的浏览器中支持),我们将style设置成 contenteditable的时候,那么那的内容就可以编辑了.仔细的体验下,如果我们将背景修改成红色的.那么只要书写完,立 ...

  10. HDU3038:How Many Answers Are Wrong(带权并查集)

    How Many Answers Are Wrong Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Ja ...