基于密码加密

基于密码加密

ID:38214884

大小:83.00 KB

页数:5页

时间:2019-05-25

基于密码加密_第1页
基于密码加密_第2页
基于密码加密_第3页
基于密码加密_第4页
基于密码加密_第5页
资源描述:

《基于密码加密》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、基于密码加密原创作者:snowolf  阅读:35次  评论:0条  更新时间:前天       除了DES,我们还知道有DESede(TripleDES,就是3DES)、AES、Blowfish、RC2、RC4(ARCFOUR)等多种对称加密方式,其实现方式大同小异,这里介绍对称加密的另一个算法——PBEPBE   PBE——Password-basedencryption(基于密码加密)。其特点在于口令由用户自己掌管,不借助任何物理媒体;采用随机数(这里我们叫做盐)杂凑多重加密等方法保证数据的安全性。是一种简便的加密方式。通过java代码实现如下:Coder类见

2、单向加密Java代码1.import java.security.Key;  2.import java.util.Random;  3.  4.import javax.crypto.Cipher;  5.import javax.crypto.SecretKey;  6.import javax.crypto.SecretKeyFactory;  7.import javax.crypto.spec.PBEKeySpec;  8.import javax.crypto.spec.PBEParameterSpec;  1.  2./** 3. * PBE安全编码组

3、件 4. *  5. * @author 梁栋 6. * @version 1.0 7. * @since 1.0 8. */  9.public abstract class PBECoder extends Coder {  10.    /** 11.     * 支持以下任意一种算法 12.     *  13.     * 

 14.     * PBEWithMD5AndDES  15.     * PBEWithMD5AndTripleDES  16.     * PBEWithSHA1AndDESede 17.     * PBEWithSH

4、A1AndRC2_40 18.     * 

 19.     */  20.    public static final String ALGORITHM = "PBEWITHMD5andDES";  21.  22.    /** 23.     * 盐初始化 24.     *  25.     * @return 26.     * @throws Exception 27.     */  28.    public static byte[] initSalt() throws Exception {  29.        byte[] s

5、alt = new byte[8];  30.        Random random = new Random();  31.        random.nextBytes(salt);  32.        return salt;  33.    }  34.  35.    /** 36.     * 转换密钥
 37.     *  38.     * @param password 39.     * @return 40.     * @throws Exception 41.     */  1.    private static Ke

6、y toKey(String password) throws Exception {  2.        PBEKeySpec keySpec = new PBEKeySpec(password.toCharArray());  3.        SecretKeyFactory keyFactory = SecretKeyFactory.getInstance(ALGORITHM);  4.        SecretKey secretKey = keyFactory.generateSecret(keySpec);  5.  6.        retu

7、rn secretKey;  7.    }  8.  9.    /** 10.     * 加密 11.     *  12.     * @param data 13.     *            数据 14.     * @param password 15.     *            密码 16.     * @param salt 17.     *            盐 18.     * @return 19.     * @throws Exception 20.     */  21.    public static by

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。