DES加解密

简介: DES加解密
@Test
public void test() throws Exception {
       String data = "lala";
        String key = "helloworld";
       String result = SystemUtil.encryptDES(data, key);
       Assert.assertEquals(SystemUtil.decryptDES(result, key), data);
       System.out.println(result);
  }
/**
     * DES
     *  加密
     * @param data
     * @param key
     * @return
     * @throws Exception
     */
    public static byte[] encryptDES(byte[] data, byte[] key) throws Exception {
       SecureRandom sr = new SecureRandom();
       DESKeySpec dks = new DESKeySpec(key);
       SecretKeyFactory keyFactory = SecretKeyFactory.getInstance(SystemUtil.KEY_ALGORITHM_DES);
       SecretKey securekey = keyFactory.generateSecret(dks);
      Cipher cipher = Cipher.getInstance(SystemUtil.KEY_ALGORITHM_DES);
       cipher.init(Cipher.ENCRYPT_MODE, securekey, sr);
       return cipher.doFinal(data);
    }
/**
     * DES
     *解密
     * @param data
     * @param key
     * @return
     * @throws Exception
     */
    public static byte[] decryptDES(byte[] data, byte[] key) throws Exception {
       SecureRandom sr = new SecureRandom();
       DESKeySpec dks = new DESKeySpec(key);
       SecretKeyFactory keyFactory = SecretKeyFactory.getInstance(SystemUtil.KEY_ALGORITHM_DES);
       SecretKey securekey = keyFactory.generateSecret(dks);
       Cipher cipher = Cipher.getInstance(SystemUtil.KEY_ALGORITHM_DES);
       cipher.init(Cipher.DECRYPT_MODE, securekey, sr);
       return cipher.doFinal(data);
    }
————————————————
版权声明:本文为CSDN博主「仅此而已丶」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_32343577/article/details/81632451
相关文章
|
3天前
|
存储 算法 安全
加密解密(DES)
加密解密(DES)
|
5月前
|
存储 算法 安全
C++ CryptoPP使用AES加解密
高级加密标准(Advanced Encryption Standard,AES)是一种对称密钥加密标准,用于保护电脑上的敏感数据。AES是由美国国家标准与技术研究院(NIST)于2001年确定的,它取代了过时的数据加密标准(Data Encryption Standard,DES)。Crypto++ (CryptoPP) 是一个用于密码学和加密的 C++ 库。它是一个开源项目,提供了大量的密码学算法和功能,包括对称加密、非对称加密、哈希函数、消息认证码 (MAC)、数字签名等。Crypto++ 的目标是提供高性能和可靠的密码学工具,以满足软件开发中对安全性的需求。
175 0
C++ CryptoPP使用AES加解密
|
7月前
|
算法 安全 数据安全/隐私保护
DES加密算法
DES加密算法
24 0
|
7月前
|
算法 安全 调度
DES加密算法解析
DES加密算法解析
123 0
|
算法 安全 数据安全/隐私保护
DES加密/解密
DES加密/解密算法是一种可逆的对称加密算法,这类算法在加密和解密时使用相同的密钥,或是使用两个可以简单地相互推算的密钥,一般用于服务端对服务端之间对数据进行加密/解密。中文全称为:数据加密标准(Data Encryption Standard,缩写DES)。
299 0
|
Java 数据安全/隐私保护 Python
DES加密解密
需要注意的是Java中的DESKeySpec类,其规定了秘钥的长度只能是8个字节,大于8字节则只取前8个字节。而且Java里DES加密采用的是默认模式:ECB模式,采用PKCS5Padding填充模式。
1538 0
|
数据安全/隐私保护
|
数据安全/隐私保护
|
算法 C# 数据安全/隐私保护