`

DES/CBC/PKCS5Padding密码

    博客分类:
  • Java
阅读更多

DES/CBC/PKCS5Padding 加密解密

 

import java.security.Key;

import javax.crypto.Cipher;
import javax.crypto.KeyGenerator;
import javax.crypto.spec.IvParameterSpec;

public class MainClass {
  public static void main(String args[]) throws Exception {
    KeyGenerator kg = KeyGenerator.getInstance("DES");
    Cipher c = Cipher.getInstance("DES/CBC/PKCS5Padding");
    Key key = kg.generateKey();

    c.init(Cipher.ENCRYPT_MODE, key);
    byte input[] = "Stand and unfold yourself".getBytes();
    byte encrypted[] = c.doFinal(input);
    byte iv[] = c.getIV();

    IvParameterSpec dps = new IvParameterSpec(iv);
    c.init(Cipher.DECRYPT_MODE, key, dps);
    byte output[] = c.doFinal(encrypted);
    System.out.println(new String(output));
  }
}
 
分享到:
评论
1 楼 zerostar88 2011-05-10  
but DES now is deprecated, we usually use AES instead, if use CBC mode, it need IV param, which is 16 bytes

相关推荐

    Delphi10.2 DES/CBC/PKCS5Padding/UTF-8

    标题 "Delphi10.2 DES/CBC/PKCS5Padding/UTF-8" 指的是使用 Delphi 10.2 开发的一个程序,该程序实现了数据加密标准(DES)算法,采用循环块密码(CBC)模式,并且使用PKCS5填充方式来处理边界情况,同时解决了在...

    AES/CBC/PKCS5Padding/ 加解密

    在实际应用中,AES/CBC/PKCS5Padding常用于保护敏感数据,如存储在数据库中的密码、网络传输的数据等。使用cryptopp库进行AES加密的优势在于,它是开源的,且经过了广泛的测试和验证,可以确保加密过程的安全性和...

    delphi与java 加密解密 DES/CBC/PKCS5Padding

    最近做一个接口,与JAVA的关于DES/CBC/PKCS5Padding 互相解密。在网上找了很多资料,摸索了3天才摸索出来。同样的明文,用JAVA加密的密文死活都跟用DELPHI加密的不相等,有时候少于8个字符的就正常,多了8个字符的就...

    Delphi XE2+标准AES加解密算法(AES/EBC,CBC/PKCS5Padding-base64)

    实现了AES/ECB/PKCS5Padding、AES/CBC/PKCS5Padding 密钥长度128/192/256bit,密钥0填充。是标准的AES算法,支持在线AES加解密网站互解。 本源码从CSDN一位前辈的源码基础上做了更改,增加支持加密返回BASE64,更加...

    des 及3des ecb pkcs5padding 加密 c++

    总的来说,理解和实现DES及3DES的ECB模式加密,以及PKCS5Padding在C++中的应用,需要对加密算法原理、C++编程以及OpenSSL库有一定的掌握。这样的技能在信息安全、网络通信和数据保护等领域都有广泛的应用。通过实际...

    对接java AES/ECB/PKCS7Padding加密

    PKCS7Padding是一种填充方式,用于确保明文数据长度能够被密钥长度整除,使得加密过程能够正常进行。 在Java中,AES/ECB/PKCS7Padding的加密通常使用`javax.crypto.Cipher`类来实现,而PHP中则可以使用`openssl_...

    DES:CBC/PKCS5Padding

    DES加密,采用CBC模式,PKCS5Padding填充

    Java解决AES加密解密 ( AES/ECB/PKCS5Padding )

    JAVA解决AES ECB 模式下加密解密;附加国内三方AES加密网站---http://tool.chacuo.net/cryptaes;如有用解决您工作问题,烦请点个赞

    C++和JAVA,AES/ECB/PKCS5Padding 互通

    这里的“C++和JAVA,AES/ECB/PKCS5Padding 互通”指的是使用相同的加密算法,即高级加密标准(AES)的电子密码本模式(ECB)和PKCS5填充(Padding)来实现两个不同平台之间的数据安全传输。AES是一种广泛使用的对称...

    AES128 CBC PKCS7Padding ,自动填充,已经成功与平台握手,通过验证

    uint16_t aes_encrypt(uint8_t *iv,uint8_t *Key,uint8_t *input,uint16_t length)/*加密时...uint16_t PKCS7Padding(uint8_t *p, uint16_t len)/*加密明文如果不是16byte整倍数,则根据PKCS7标准填充至16byte整倍数*/

    AES 示例(CBC算法模式 PKCS5填充模式)

    CBC(Cipher Block Chaining)是AES的一种工作模式,而PKCS5(Public Key Cryptography Standards #5)则是一种常用的填充方式,用于确保输入数据长度能够完美适应块密码处理。在本示例中,我们将深入理解AES-CBC-...

    java微信小程序解密AES/CBC/PKCS7Padding

    微信小程序解密  建议使用1.6及以上的环境  使用maven下载jar包   <!... <groupId>org.bouncycastle</groupId> <artifactId>bcprov-jdk15on</artifactId> <version>1.55</version> ...import org.bouncycastle.jce....

    AES_CBC_PKCS5加解密 MD5加密

    AES(Advanced Encryption Standard)即高级加密标准,是一种广泛应用的块密码算法,而CBC(Cipher Block Chaining)模式和PKCS5(Public Key Cryptography Standards #5)填充模式是AES加密中常用的模式和填充方式...

    Delphi7AES加密解密与JAVA互转(默认128位+ECB+PKCS5Padding+先BASE64再HEX)

    在这里,我们特别关注128位密钥长度的AES加密,使用ECB(Electronic Codebook)模式,配合PKCS5Padding填充策略,以及数据编码的BASE64和HEX转换。 首先,AES加密是一种分组密码,它将明文数据分成固定大小的块进行...

    PHP实现的DES加密解密封装类完整实例

    * 可与java的DES(DESede/CBC/PKCS5Padding)加密方式兼容 * */ class CryptDes { var $key; var $iv; function CryptDes($key, $iv){ $this->key = $key; $this->iv = $iv; } function encrypt($input){ $...

    PHP版DES加解密类

    PHP版DES加解密类 可与java的DES(DESede/CBC/PKCS5Padding)加密方式兼容

    与Java兼容的3DES CBC PKCS5Padding 的Delphi单元

    一个 DESede(3DES) CBC PKCS5Padding的单元,与java c# 计算结果相同。利用本单元思路可以扩展到其他模式。

    DES加密解析,ECB,CBC

    2. **平台**:使用`DES/CBC/PKCS5Padding`加密方式。在配置密钥时,需要注意密钥需要先进行Base64解码,并且前8位作为加密密钥,后8位作为初始化向量IV,同时明文使用UTF-8编码。 3. **半平台**:使用`DES/ECB/...

Global site tag (gtag.js) - Google Analytics