家用电器销售的网站开发,工信部网站备案查不到,网站设计制作推荐,动漫制作专业学校前十名Java 常用加密解密
常见的加密算法可以分成三类#xff0c;对称加密算法#xff0c;非对称加密算法和Hash算法。 对称加密
指加密和解密使用相同密钥的加密算法。对称加密算法的优点在于加解密的高速度和使用长密钥时的难破解性。假设两个用户需要使用对称加密方法加密然后…Java 常用加密解密
常见的加密算法可以分成三类对称加密算法非对称加密算法和Hash算法。 对称加密
指加密和解密使用相同密钥的加密算法。对称加密算法的优点在于加解密的高速度和使用长密钥时的难破解性。假设两个用户需要使用对称加密方法加密然后交换数据则用户最少需要2个密钥并交换使用如果企业内用户有n个则整个企业共需要n×(n-1) 个密钥密钥的生成和分发将成为企业信息部门的恶梦。对称加密算法的安全性取决于加密密钥的保存情况但要求企业中每一个持有密钥的人都保守秘密是不可能的他们通常会有意无意的把密钥泄漏出去——如果一个用户使用的密钥被入侵者所获得入侵者便可以读取该用户密钥加密的所有文档如果整个企业共用一个加密密钥那整个企业文档的保密性便无从谈起。常见的对称加密算法DES、3DES、DESX、Blowfish、IDEA、RC4、RC5、RC6和AES
非对称加密
指加密和解密使用不同密钥的加密算法也称为公私钥加密。假设两个用户要加密交换数据双方交换公钥使用时一方用对方的公钥加密另一方即可用自己的私钥解密。如果企业中有n个用户企业需要生成n对密钥并分发n个公钥。由于公钥是可以公开的用户只要保管好自己的私钥即可因此加密密钥的分发将变得十分简单。同时由于每个用户的私钥是唯一的其他用户除了可以可以通过信息发送者的公钥来验证信息的来源是否真实还可以确保发送者无法否认曾发送过该信息。非对称加密的缺点是加解密速度要远远慢于对称加密在某些极端情况下甚至能比非对称加密慢上1000倍。常见的非对称加密算法RSA、ECC移动设备用、Diffie-Hellman、El Gamal、DSA数字签名用
Hash算法
Hash算法特别的地方在于它是一种单向算法用户可以通过Hash算法对目标信息生成一段特定长度的唯一的Hash值却不能通过这个Hash值重新获得目标信息。因此Hash算法常用在不可还原的密码存储、信息完整性校验等。常见的Hash算法MD2、MD4、MD5、HAVAL、SHA、SHA-1、HMAC、HMAC-MD5、HMAC-SHA1
加密算法的效能通常可以按照算法本身的复杂程度、密钥长度密钥越长越安全、加解密速度等来衡量。上述的算法中除了DES密钥长度不够、MD2速度较慢已逐渐被淘汰外其他算法仍在目前的加密系统产品中使用。加密算法的选择
前面的章节已经介绍了对称解密算法和非对称加密算法有很多人疑惑那我们在实际使用的过程中究竟该使用哪一种比较好呢我们应该根据自己的使用特点来确定由于非对称加密算法的运行速度比对称加密算法的速度慢很多当我们需要加密大量的数据时建议采用对称加密算法提高加解密速度。对称加密算法不能实现签名因此签名只能非对称算法。
由于对称加密算法的密钥管理是一个复杂的过程密钥的管理直接决定着他的安全性因此当数据量很小时我们可以考虑采用非对称加密算法。
在实际的操作过程中我们通常采用的方式是采用非对称加密算法管理对称算法的密钥然后用对称加密算法加密数据这样我们就集成了两类加密算法的优点既实现了加密速度快的优点又实现了安全方便管理密钥的优点。如果在选定了加密算法后那采用多少位的密钥呢一般来说密钥越长运行的速度就越慢应该根据的我们实际需要的安全级别来选择一般来说RSA建议采用1024位的数字ECC建议采用160位AES采用128为即可。