当前位置: 首页 > news >正文

网站小程序定制公司c2c网站开发毕业设计

网站小程序定制公司,c2c网站开发毕业设计,应届毕业生招聘官网,辽宁网站建设企业定制公司这里为了使用方便#xff0c;实现代码不作为一个函数而是作为一个包#xff0c;这样在后面的代码中也可以进行复用。包和导入 package encryptimport (crypto/aes // 提供 AES 加密算法实现crypto/cipher // 提供加密算法接口和模式实现代码不作为一个函数而是作为一个包这样在后面的代码中也可以进行复用。包和导入 package encryptimport (crypto/aes // 提供 AES 加密算法实现crypto/cipher // 提供加密算法接口和模式如 CFBcrypto/rand // 提供生成随机数功能encoding/base64 // 提供 Base64 编码和解码fmt // 格式化 I/Oio // 基本 I/O 接口 )package encrypt: 定义该文件属于 encrypt 包。 各种导入用于提供不同功能如 AES 算法、CFB 模式、Base64 编码等。 Encrypt 函数 // Encrypt 对明文进行AES-CFB加密 func Encrypt(plaintext []byte, key string) (string, error) {block, err : aes.NewCipher([]byte(key))if err ! nil {return , err}iv : make([]byte, aes.BlockSize)if _, err : io.ReadFull(rand.Reader, iv); err ! nil {return , err}stream : cipher.NewCFBEncrypter(block, iv)ciphertext : make([]byte, len(plaintext))stream.XORKeyStream(ciphertext, plaintext)// 合并 IV 和密文result : append(iv, ciphertext...)// 使用 Base64 编码返回return base64.StdEncoding.EncodeToString(result), nil }Encrypt 函数接收明文和用于 AES 加密的密钥。aes.NewCipher([]byte(key)): 利用提供的密钥生成一个 AES 块密码。iv初始化向量是 AES 块大小16 字节的随机数确保同样的明文每次加密结果不同。使用 cipher.NewCFBEncrypter 创建 CFB 加密stream.XORKeyStream(ciphertext, plaintext): 用流加密对明文进行加密结果保存在 ciphertext 中。将 iv 和 ciphertext 合并为一个切片然后使用 Base64 编码生成字符串 。 Decrypt 函数 // Decrypt 对密文进行AES-CFB解密 func Decrypt(ciphertextBase64 string, key string) ([]byte, error) {ciphertext, err : base64.StdEncoding.DecodeString(ciphertextBase64)if err ! nil {return nil, err}block, err : aes.NewCipher([]byte(key))if err ! nil {return nil, err}if len(ciphertext) aes.BlockSize {return nil, fmt.Errorf(ciphertext too short)}iv : ciphertext[:aes.BlockSize]ciphertext ciphertext[aes.BlockSize:]stream : cipher.NewCFBDecrypter(block, iv)plaintext : make([]byte, len(ciphertext))stream.XORKeyStream(plaintext, ciphertext)return plaintext, nil }Decrypt 函数接收 Base64 编码的密文和密钥。 将 Base64 密文解码成字节切片。 类似加密过程生成 AES 块密码。验证密文长度确保其大于 AES 块大小。 从解码后的密文中提取 iv其余部分为实际密文。 使用cipher.NewCFBDecrypter 函数创建 CFB 解密流。 解密密文得出明文。 注意事项 使用 CFB 模式不需要明文填充。 密钥长度应为 16, 24 或 32 字节以匹配 AES-128, AES-192 或AES-256。 随机 iv 很重要每次加密都使用新的 iv 增强安全性。
http://www.zqtcl.cn/news/994964/

相关文章:

  • 华为做网站免费签名设计在线生成
  • 网站产品整合推广爱网聊的男人是什么心理
  • 武威市建设厅网站汕头seo外包公司
  • 酒泉网站怎么做seo东莞高明网站设计
  • 沧州网站建设联系电话杭州设计公司logo
  • 网站子站点是什么意思亚马逊国际站官网
  • 影视cms哪个好苏州关键词优化搜索排名
  • 杭州微信网站开发网站优化公司免费咨询
  • 宣武富阳网站建设南昌公众号开发公司
  • 免费的网站推荐下载wordpress %s
  • 网站的原理百度旧版本下载
  • 衡水网站建设地方新网域名证书下载
  • 自己做的创意的网站什么是淘宝seo
  • 网站开发包含哪些网站设计实例
  • 网站建设 核算棋牌源码论坛
  • 杭州网站建设案例网页设计程序
  • 网站建设的相关问题湛江网站开发
  • 网站开发作业wordpress用户角色
  • 品牌网站制作建设微信小程序开发需要什么技术
  • 新网站注册国内食品行业网站开发
  • 太原微商网站建设网站里面的视频功能怎么做的
  • 绿色做环保网站的好处网易企业邮箱登录登录入口
  • 卯兔科技网站建设网站验收时项目建设总结报告
  • 触摸网站手机wordpress建立模板下载
  • 做暧在线观看网站网站建设与管理工资
  • 横岗网站建设无锡网站seo外包
  • 房管局 网站做房查学做网站推广要多久时间
  • 电脑网站开发者模式田园综合体建设网站
  • 南宁广告公司网站建设自适应网站建设模板
  • 做北京电梯招标的网站衡阳县专业做淘宝网站