`

Ruby 实现 Java 版本的 PBEWithMD5AndDES 加密:

 
阅读更多

Ruby 实现 Java 版本的 PBEWithMD5AndDES 加密:

 

def pbeWithMd5AndDes(nickname, passkey, salt)

    digest = OpenSSL::Digest::MD5.new

    cipher = OpenSSL::Cipher::Cipher.new("DES")

    cipher.encrypt

    cipher.pkcs5_keyivgen(passkey, salt, 1000, digest)

    encrypted = cipher.update(nickname)

    encrypted << cipher.final

    encrypted.unpack("H*")[0]

end

 

 

分享到:
评论

相关推荐

    java jasypt包PBEWithMD5AndDES算法加解密C#版

    Java 使用jasypt包辅助,实现密码加解密。本方法实现了C#版,适用于一方加密另一方解密的情况,根据默认配置改版,可在当前版本基础上自定义更改指定算法、hash迭代次数、salt生成方式等

    C#版PBEWithMD5AndDES加解密.rar

    C#版PBEWithMD5AndDES加解密 有示例,可使用,如果需要修改 int md5iterations = 19; int segments = 1; salt

    java与C#的PBE加密

    总的来说,PBEWithMD5AndDES在Java和C#中都是为了保护数据安全,通过用户提供的密码生成加密密钥,同时结合MD5哈希和DES加密算法。尽管MD5在当今被认为是不安全的,但它在PBE中仍被广泛使用,主要是因为兼容性和历史...

    PBE是一种基于口令的加密算法,使用口令代替其他对称加密算法中的密钥,其特点在于口令由用户自己掌管,不借助任何物理媒体;

    PBE算法是对称加密算法的综合算法,常见算法PBEWithMD5AndDES,使用MD5和DES算法构建了PBE算法。将盐附加在口令上,通过消息摘要算法经过迭代获得构建密钥的基本材料,构建密钥后使用对称加密算法进行加密解密。 ...

    对称加密算法的PHP类.zip

     }常用对称加密算法类支持密钥:64/128/256 bit(字节长度8/16/32)支持算法:DES/AES(根据密钥长度自动匹配使用:DES:64bit AES:128/256bit)支持模式:CBC/ECB/OFB/CFB密文编码:base64字符串/十六进制字符串/二...

    Python 如何使用MD5或SHA1等算法对用户密码进行加密 Python源码

    Python 如何使用MD5或SHA1等算法对用户密码进行加密 Python源码Python 如何...Python源码Python 如何使用MD5或SHA1等算法对用户密码进行加密 Python源码Python 如何使用MD5或SHA1等算法对用户密码进行加密 Python源码

    C# MD5加密调用

    本文介绍了如何在C#中实现MD5加密的基本过程,包括相关命名空间的引入、加密方法的定义以及具体的调用示例。通过这种方式,开发者可以轻松地为自己的应用程序添加数据加密功能,提高应用程序的安全性。

    springboot之yml配置文件信息加密.docx

    知识点 3: Jasypt 加密实现 在项目中引入 Jasypt 的 jar 包 org.jasypt:iasypt:1.9.2,使用 StringEncryptor 接口中的 encrypt 方法对敏感信息进行加密。加密时设置好密钥(password),然后调用 encrypt 方法通过...

    js版md5非对称加密算法

    js版md5非对称加密算法js版md5非对称加密算法js版md5非对称加密算法js版md5非对称加密算法js版md5非对称加密算法

    SpringBoot 集成 Jasypt 对数据库加密以及踩坑

    在上面的配置中,我们设置了加密算法为 PBEWithMD5AndDES,这是 Jasypt 3.0.0 以后默认的加密算法。如果不设置这个算法,可能会导致密码无法正确加密。 在使用 Jasypt 进行加密时,需要注意的是,Jasypt 在 3.0.0 ...

    DES加解密.rar

    Java des加密解密, 前端加密解密,后端加密解密,前后端可以配合使用。通过base64进行加密算法。

    基于java的开发源码-加密包 Jasypt.zip

    Strong Encryptor使用强加密算法(如PBEWithMD5AndDES或PBEWithSHA1AndDESede),提供更高的安全性;而Basic Encryptor则使用相对简单的标准加密算法,适合快速实现加密功能。 2. **环境变量和配置文件加密**:...

    Java加密技术

    在Java中实现PBE时,通常会结合杂凑函数和特定的加密算法,例如例子中的"PBEWITHMD5andDES",它将MD5杂凑函数与DES加密算法结合使用。 以下是一个简单的PBE加密和解密Java代码示例: 1. 在这个示例中,定义了一个...

    java源码:Java加密包 Jasypt.zip

    6. **加密强度可配置**:Jasypt支持多种加密算法,如PBEWithMD5AndDES、PBEWithSHA1AndDESede等,可以根据需求选择合适的加密强度。 在`jasypt-1.9.0`这个版本中,包含了以下组件: - `lib`目录:包含Jasypt库依赖...

    java 加密

    Java的`javax.crypto.PBEKeySpec`和`PBEWith*`算法(如PBEWithMD5AndDES)提供了PBE的支持。 10. **testdsa.java**:这可能是一个测试类,用于验证DSA算法的功能,通常包括生成密钥对、签名和验证签名的示例代码。 ...

    数据库密码配置加密操作步骤.doc

    java -cp jasypt-1.9.3.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI input="root" password=ahtt algorithm=PBEWithMD5AndDES ``` 其中,input 是需要加密的字符串,password 是需要对 input 字符串加密...

    java简单加密包(jasypt-1.8-dist.zip)

    基本加密器使用了简单的对称加密算法,如PBEWithMD5AndDES,适合于快速实现基础加密需求。而强大的加密器则提供了更强的安全性,通常使用更高级的算法,如PBEWithHmacSHA256AndAES_128,这提供了更强的哈希和对称...

    Java使用Hutool实现AES、DES加密解密的方法

    使用 Hutool 库可以实现多种对称加密算法,包括 AES、DES、ARCFOUR、Blowfish、DESede、RC2、PBEWithMD5AndDES、PBEWithSHA1AndDESede、PBEWithSHA1AndRC2_40 等。这些算法都可以使用 SymmetricCrypto 类来实现加密...

    Springboot项目对数据库用户名密码实现加密过程解析

    其中,input参数指定要加密的密码,password参数指定加密时采用的秘钥,algorithm参数指定加密算法,默认为PBEWithMD5AndDES。执行命令后,我们将获得加密后的密码密文。 例如,使用上述命令对密码"password"进行...

    java zip文件加密

    为了实现加密,我们需要结合`ZipEntry`和`DeflaterOutputStream`,并使用Java Cryptography Extension (JCE)提供的`ZipOutputStream`的一个扩展,通常称为`PKZipCrypto`或`flatercrypt`。 以下是一个简单的Java代码...

Global site tag (gtag.js) - Google Analytics