golang实现RSA加密解密算法

  • 前言
  • 一、生成密钥对(公钥私钥)
  • 二、根据公钥加密
  • 二、根据私钥解密
  • 总结

前言

直接看正文吧!


一、生成密钥对(公钥私钥)

代码如下(示例):

 //生成私钥privateKey, err := rsa.GenerateKey(rand.Reader, 2048)if err != nil {panic(err)}//生成公钥publicKey := privateKey.PublicKey

二、根据公钥加密

代码如下(示例):

 encryptedBytes, err := rsa.EncryptOAEP(sha256.New(),rand.Reader,&publicKey,[]byte("测试哈哈哈"),//需要加密的字符串nil)

二、根据私钥解密

代码如下(示例):

 decryptedBytes, err := privateKey.Decrypt(nil, encryptedBytes, &rsa.OAEPOptions{Hash: crypto.SHA256})

总结

完整代码如下(示例):

//RSA加密和解密
package mainimport ("crypto""crypto/rand""crypto/rsa""crypto/sha256""fmt"
)func main() {//生成私钥privateKey, err := rsa.GenerateKey(rand.Reader, 2048)if err != nil {panic(err)}//生成公钥publicKey := privateKey.PublicKey//根据公钥加密encryptedBytes, err := rsa.EncryptOAEP(sha256.New(),rand.Reader,&publicKey,[]byte("测试哈哈哈"),//需要加密的字符串nil)if err != nil {panic(err)}fmt.Println("encrypted bytes: ", encryptedBytes)//根据私钥解密decryptedBytes, err := privateKey.Decrypt(nil, encryptedBytes, &rsa.OAEPOptions{Hash: crypto.SHA256})if err != nil {panic(err)}fmt.Println("decrypted message: ", string(decryptedBytes))
}

golang实现RSA加密解密算法相关推荐

  1. rsa加解密算法报告c语言,RSA加密解密算法c语言程序Word版

    <RSA加密解密算法c语言程序Word版>由会员分享,可在线阅读,更多相关<RSA加密解密算法c语言程序Word版(5页珍藏版)>请在人人文库网上搜索. 1.传播优秀Word版 ...

  2. python实现rsa加密源代码_python实现RSA加密(解密)算法

    RSA是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的绝大多数密码攻击,已被ISO推荐为公钥数据加密标准. 今天只有短的RSA钥匙才可能被强力方式解破.到2008年为止,世界上还没有任何可靠 ...

  3. RSA加密解密算法的java实现

    最近有一个外部合作项目要求在数据传输过程中使用RSA加密算法对数据进行加密,所以需要编写一个加解密的工具类,因为对方不是java语言,所以是各自实现的这个工具,本文主要讨论实现以及双方调试过程中的一些 ...

  4. 用实例给新手讲解易懂的RSA加密解密算法

    用实例给新手讲解易懂的RSA加密算法 RSA加密算法是最常用的非对称加密算法,CFCA在证书服务中离不了它.我查过论坛上很少这方面的介绍,恰好看到一本书中作者用实例对它进行了简化而生动的描述,使得高深 ...

  5. RSA加密解密算法代码实现【scalajava】

    1. 什么是RSA加密算法? 1.1 对称加密和非对称加密 对称加密:对称加密指的就是加密和解密使用同一个秘钥,所以叫做对称加密.对称加密只有一个秘钥,作为私钥.常见的对称加密算法:DES,AES,3 ...

  6. RSA 加密解密算法实现(简单,易懂)!!!

    目录 一.什么是RSA算法 1.对称加密 2.非对称加密 3.非对称加密的应用 二.RSA算法的基础操作步骤 1.生成公钥和私钥 2.用公钥加密信息 3.用私钥解密信息 三.AC代码 六.RSA算法的 ...

  7. java php rsa加密解密算法_PHP rsa加密解密算法原理解析

    php服务端与客户端交互.提供开放api时,通常需要对敏感的部分api数据传输进行数据加密,这时候rsa非对称加密就能派上用处了,下面通过一个例子来说明如何用php来实现数据的加密解密 1.加密解密的 ...

  8. RSA加密解密算法工具_JAVA

    这个版本绝对能用,本人亲测 注意:需要下载两个jar包 [commons-codec-1.11-bin.zip]下载地址如下: http://commons.apache.org/proper/com ...

  9. RSA、MD5加密解密算法全套解析安装教程

    第一部分介绍加密解密算法, 第二部分介绍我小组成功应用的RSA.MD5两种加密解密算法,以及心得体会. 1.加密解密算法介绍 应用的开发中安全很重要,所以信息加密技术显得尤为重要.我们需要对应用中的多 ...

最新文章

  1. oracle数据库 export,转:Oracle数据库的备份方法——使用export作为备份
  2. mysql中如何设置过滤器_mysql – 使用计数器实现过滤器
  3. 计算机网络谢希仁第七版课后答案第二章 物理层
  4. 在windowService用Process.Start()启动程序没有界面-记录
  5. 2022年第一个线上问题,被领导骂惨了!
  6. svn的备份还原(一)
  7. php无限评论回复_php如何制作无限级评论功能?
  8. 在线文本差集计算工具
  9. Java通过微信公众号获取地理位置信息
  10. android arial字体,Arial字体大小
  11. List转Map的几种方式
  12. ECSHOP二次开发之给商品增加新字段
  13. JavaScript字符串的长度
  14. 双线性函数的紧凑超平面散列(Compact Hyperplane Hashing with Bilinear Functions)阅读笔记
  15. 初中数学抽象教学的案例_初中数学教学案例分析-初中数学教学案例分析100例...
  16. Excel技能培训之六-定位功能,隔行插入删除空行,分组插入空行,高亮行列间差异,复制筛选后的数据
  17. 苹果风波不断,Siri语音助手面临隐私诉讼
  18. 什么是跨境电商ERP?
  19. sqlserver相关资料
  20. 用计算机对音频信息进行处理 要将模拟信号,[电脑基础知识]大学计算机第五章.ppt...

热门文章

  1. java8特性快速对list集合的筛选过滤和计算
  2. 生成订单php setinc,TP 数字字段 增加减少 setInc() 和 setDec() 使用说明
  3. Preference的使用(2) --- PreferenceCategory PreferenceScreen
  4. python dcf估值_估值方法梳理 把CFA二级书本中提及的企业估值方法在白板上全列了一遍。 一、 静心思考,绝对估值法(DCF、FCFF、FCFE、RI)... - 雪球...
  5. Microsoft Defender防病毒扫描添加排除项
  6. 在ROS中使用Xbox360手柄控制小车运动
  7. Hadoop safemode 安全模式
  8. GIT学习0基础到入门(附图)
  9. Opencv之视频入门
  10. 软浮点硬浮点不配套问题(error:uses VFP register arguments)