Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java中的Node.js aes-256-cbc_Java_Aes_Cbc Mode - Fatal编程技术网

Java中的Node.js aes-256-cbc

Java中的Node.js aes-256-cbc,java,aes,cbc-mode,Java,Aes,Cbc Mode,如何在Java中实现以下Node.js函数 function encrypt(text) { var crypto = require('crypto'); var cipher = crypto.createCipher('aes-256-cbc','my-password') var crypted = cipher.update(text,'utf8','hex') crypted += cipher.final('hex'); return cry

如何在Java中实现以下Node.js函数

function encrypt(text)
{
    var crypto = require('crypto');
    var cipher = crypto.createCipher('aes-256-cbc','my-password')
    var crypted = cipher.update(text,'utf8','hex')
    crypted += cipher.final('hex');
    return crypted;
}
我读过crypto从密码中获取密钥和iv,但我不知道如何使用Java实现这一点


谢谢。

首先,建议在AES加密中使用,这会使相同的明文在加密时看起来不同,但仅当您使用非静态IV时

有一些问题/答案对可以匹配您的搜索:

Ohterwise这是我在谷歌上发现的第一件事,也许它能帮助你:


哦,这可能会帮助您解决可能的安全问题:

那么,您的问题真的是使用哪个Java库来进行AES加密吗?@uvesten我使用的是javax.crypto和BouncyCastle。你知道另一个吗?为什么我的帖子被否决了?对不起,我给了你一个JavaScript示例,我现在就删除它。但是这些链接没有帮助吗?谢谢你的回答。我的问题是,我们有很多密码是通过加密生成的,因此出于兼容性原因,我们需要用Java实现相同的算法。然而,我不知道crypto是如何生成IV和salt的。它们是如何通过加密生成的?如果我知道如何生成salt,我可以使用BouncyCastle的OpenSSLPBEParametersGenerator来派生密钥和IV。salt由您使用md5或sha1生成和交付。iv也是由您生成的,这意味着如果您没有这样做,请跳过它。您可以发布一个示例吗?我想这就是您正在寻找的: