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

做代购的流程 韩国网站无代码网站开发平台

做代购的流程 韩国网站,无代码网站开发平台,企业网络建站,主页设计序 本文主要研究一下PBE算法 PBE PBE即Password Based Encryption,基于口令的加密,它是一种组合算法,即一般是哈希对称算法,比如PBEWithMD5AndDES,就是用MD5做哈希,用DES做加解密,而其密钥则…

本文主要研究一下PBE算法

PBE

PBE即Password Based Encryption,基于口令的加密,它是一种组合算法,即一般是哈希+对称算法,比如PBEWithMD5AndDES,就是用MD5做哈希,用DES做加解密,而其密钥则是口令+salt基于哈希函数计算而来

java示例

    public void testPBEWithIvParameter() throws NoSuchPaddingException, NoSuchAlgorithmException, IllegalBlockSizeException, BadPaddingException, InvalidAlgorithmParameterException, InvalidKeyException, InvalidKeySpecException {String algorithm = "PBEWithMD5AndDES";char[] passwd = "123456".toCharArray();PBEKeySpec pbeKeySpec = new PBEKeySpec(passwd);SecretKeyFactory kf = SecretKeyFactory.getInstance(algorithm);SecretKey key = kf.generateSecret(pbeKeySpec);byte[] salt = new byte[8];Random random = new Random();random.nextBytes(salt);Cipher cp = Cipher.getInstance(algorithm);IvParameterSpec iv = new IvParameterSpec(RandomUtil.randomBytes(16));PBEParameterSpec pbeParameterSpec = new PBEParameterSpec(salt, 1000, iv);cp.init(Cipher.ENCRYPT_MODE, key, pbeParameterSpec);byte[] data = "helloworld".getBytes(StandardCharsets.UTF_8);byte[] encrypted = cp.doFinal(data);System.out.println(Base64.encode(encrypted));Cipher cpDecrypt = Cipher.getInstance(algorithm);cpDecrypt.init(Cipher.DECRYPT_MODE, key, pbeParameterSpec);byte[] decryptBytes = cpDecrypt.doFinal(encrypted);System.out.println(new String(decryptBytes));}

几个参数,一个是口令,即passwd,一个是salt,随机盐值,一个是ivParameter

golang示例

func Encrypt(message string, password string, salt []byte) (string, error) {keyObtentionIterations := 1000md5key, iv := getMd5DerivedKey(password, salt, keyObtentionIterations)encrypted, err := desEncrypt([]byte(message), md5key, iv)if err != nil {return "", err}result := encryptedif includePlainIvInEncryptionResults() {result = append(iv, result...)}if includePlainSaltInEncryptionResults() {result = append(salt, result...)}return base64.StdEncoding.EncodeToString(result), nil
}

小结

  • PBE即Password Based Encryption,基于口令的加密,它是一种组合算法,即一般是哈希+对称算法,比如PBEWithMD5AndDES,就是用MD5做哈希,用DES做加解密,而其密钥则是口令+salt基于哈希函数计算而来
  • 当使用固定salt和不使用ivParameter的DES的时候,同一个值,每次加密生成的密文是一样的,而使用随机salt和随机iv的时候,每次生成的密文是不一样的,这个时候密文会包含随机的salt和iv信息,在解密的时候能够正确解出明文
http://www.ds6.com.cn/news/89006.html

相关文章:

  • 网站建设报价清单内容石家庄自动seo
  • b2c网站开发核心技术移动端seo关键词优化
  • 政府网站前台模板手机制作网站的软件
  • 58网站怎么做才有客户问常见的搜索引擎
  • 医疗网站 seo怎么做seo关键词的选择步骤
  • 网站建设飠金手指科杰十五网站推广方案策划书2000
  • 江苏网站建设价格低地推公司
  • 自己做的网站怎么上传到网络成功的网络营销案例ppt
  • 政府采购网供应商注册网站seo优化检测
  • 目前做的最好的招聘网站seminar是什么意思
  • flash网站的制作seochinaz查询
  • 做彩票网站会被判死刑百度公司有哪些部门
  • app开发公司哪里做seo网络优化是什么意思
  • 二手车网站怎么做长春seo排名外包
  • 辽宁城乡建设网站seo实战技巧100例
  • 三级分销网站开发近期发生的重大新闻
  • 3建网站常用的seo查询工具有哪些
  • 网站配色绿色网络宣传的方法渠道
  • 园艺wordpress模板福州百度推广优化排名
  • 丰镇市网站丰镇高铁在哪个位置建设网络推广文案怎么写
  • 灯饰网站开发web前端培训费用大概多少
  • 必应网站提交入口营销培训课程ppt
  • 网页设计制作学校网页阿里巴巴关键词排名优化
  • 火车头wordpress4.7全面的seo网站优化排名
  • 做网站都有什么项目16种营销模型
  • wordpress jpseo公司推广
  • 国外服务器厂商长沙网站seo报价
  • html网站标题怎么做的百度竞价包年推广是怎么回事
  • 企业网站源码vue网络推广赚钱
  • 深圳网站建设工作利用搜索引擎营销成功的案例