`

加密里面的padding

阅读更多

在使用加密模块的时候,比如javax.crypto.Cipher,会碰到padding不同的形式。在java里面规定了如下几种padding:

  • NoPadding: No padding.

     

  • OAEPWith<digest></digest>And<mgf></mgf>Padding: Optimal Asymmetric Encryption Padding scheme defined in PKCS #1, where <digest></digest>should be replaced by the message digest and <mgf></mgf>by the mask generation function. Example: OAEPWithMD5AndMGF1Padding.

     

  • PKCS5Padding: The padding scheme described in: RSA Laboratories, "PKCS #5: Password-Based Encryption Standard," version 1.5, November 1993.

     

  • SSL3Padding: The padding scheme defined in the SSL Protocol Version 3.0, November 18, 1996, section 5.2.3.2 (CBC block cipher)

    通过google查到这篇描述padding的文章讲的比较清楚:

    http://www.di-mgt.com.au/cryptopad.html

    不同的padding方式如下:

    1. Pad with bytes all of the same value as the number of padding bytes (pkcs#5)
    2. Pad with 0x80 followed by zero bytes
    3. Pad with zeroes except make the last byte equal to the number of padding bytes
    4. Pad with zero (null) characters
    5. Pad with space characters
  • 分享到:
    评论

    相关推荐

      delphi XE6 DES PKCS5Padding 加密

      根据压缩包子文件的文件名称"DES-PKCS5Padding加密XE6",我们可以推断这个压缩包可能包含了一个名为"DES-PKCS5Padding加密XE6"的源代码文件或项目,里面详细实现了Delphi XE6环境下的DES加密算法,并且使用了PKCS5...

      crypto-js 对密码md5加密,DES加密

      ### crypto-js 库在前端开发中的应用:MD5与DES加密技术详解 #### 一、前言 在当今数字化时代,信息安全变得尤为重要。无论是保护用户的个人信息还是确保数据传输的安全性,加密技术都扮演着至关重要的角色。在...

      Delphi10.2.3和php7.2 AES加密解密 里面有示例代码以及说明

      实验环境delphi10.2.3 ... ...密钥长度128 密钥1234567890123456 初始向量中的内容全部不要,删除即可 补码PKCS5Padding 加密结果选择base64 设置完这些,就和test.php中的解密加密一样,其他加密自测

      aes对称加密所需jar

      可能包含的是Bouncy Castle等开源库,它们提供了更广泛的加密算法支持,包括各种AES模式(如ECB、CBC、CFB、OFB、CTR等)和填充模式(如PKCS7、ZeroPadding等)。 总之,当项目在使用AES对称加密时遇到JDK不支持的...

      java版-微信支付退款通知解密-AES-256-ECB解密(PKCS7Padding)

      https://blog.csdn.net/u010660575/article/details/76672402 建议参考上面的文档,如果代码还不跑不通,强烈建议下载我的资源包。 请阅读压缩包里面的readMe.txt文档,

      Android使用KeyStore对数据进行加密的示例代码

      接着,使用`Cipher`实例来执行RSA加密,采用"RSA/ECB/PKCS1Padding"模式,这是一种非对称加密算法,常用于密钥交换或数字签名。 值得注意的是,尽管RSA在某些场景下很有用,但对于大量数据加密,通常推荐使用对称...

      C语言使用openSSL库AES模块实现加密功能详解

      本文实例讲述了C语言使用openSSL库AES模块实现加密功能。分享给大家供大家参考,具体如下: 概述 在密码学里面一共有3中分类: 1.对称加密/解密 对称加密比较常见的有DES/AES。加密方和解密方都持有相同的密钥。对称...

      RSA加密java

      - `alipay-sdk-java-DEV20160401145506.jar`:这可能是支付宝的Java SDK,里面可能包含了RSA加密的实现,用于处理支付安全相关的业务。 - `commons-io-2.4.jar`:Apache Commons IO库,提供了一系列实用的I/O操作...

      C++自己实现AES算法

       注意:本算法在生成加密key时,使用了md5算法,编译本demo需要依赖 C++自行实现MD5算法 里面的算法。 #ifndef _AES_20140317_H_ #define _AES_20140317_H_ #define Bits128 16 #define Bits192 24 #define...

      Java:解决JDK 8不支持AES 256的问题

      Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding"); SecretKeySpec secretKeySpec = new SecretKeySpec(key, "AES"); cipher.init(Cipher.ENCRYPT_MODE, secretKeySpec); System.out.println("AES ...

      sqlcipher解密.txt

      - 设置解密模式为CBC,禁用填充模式(即设置`EVP_CIPHER_CTX_set_padding(&ectx, 0)`)。 5. **数据读取与解密**: - 读取数据库文件的首页,其中包含盐值等重要信息。 - 使用`EVP_CipherUpdate`函数进行数据块的...

      AES.rar_AES_aes java

      如果它是源代码,那么里面可能包含了如何初始化Cipher对象、设置密钥、进行加密和解密的具体方法。如果它是加密数据,可能需要使用到描述中提到的Java实现来解密。 总之,这个压缩包可能是一个学习和研究AES加密...

      crypto-js for egret(白鹭).zip

      使用的话,用 bin 目录里面的那个就行。 包含到工程的方法请参考官方包含第三方库的说明。 示例代码如下: //加密 public AESEncode(data,key,iv):string { var key = CryptoJS.enc.Utf8.parse(key); var iv...

      某FMOD 项目中的Bank文件

      3. **解密算法选择**:根据加密方式(如AES、DES等),选用对应的解密算法,如`Cipher`类提供的`AES/CBC/PKCS5Padding`。 4. **密钥管理**:解密需要正确的密钥,这可能是硬编码在代码中,或者是从安全存储中获取。...

      Cryptography-and-Python

      在"Cryptography-and-Python-main"这个压缩包中,可能包含了使用Python进行密码学实践的Jupyter Notebook文件,里面详细介绍了各种加密算法的使用方法和示例。通过学习这些笔记,你可以深入了解Python在密码学中的...

      中文版Maxwell仿真实例PDF.pdf

      - **设置自适应计算参数**:添加解决方案设置`Maxwell 3D &gt; Analysis Setup &gt; Add Solution Setup`,设置最大迭代次数为10次,误差要求为1%,每次迭代加密剖分单元比例为50%。 - **检查与运行**:最后进行模型检查并...

      upload_form_login:登记表

      - `margin`和`padding`属性用于调整元素间的距离和内部空间。 - `border`用于设置边框,`border-radius`可以给输入框添加圆角效果。 - `font-size`, `color`和`line-height`可以改变文字的大小、颜色和行高,提升...

    Global site tag (gtag.js) - Google Analytics