根据此答案,OpenSSL使用与Java代码中使用的密钥派生算法不同的密钥派生算法。因此,用于加密的密钥在您的OpenSSL命令和Java程序中将不同,因此输出将是不同的且不兼容。
您还应该检查OpenSSL中密钥派生功能的文档。显然,它在算法中使用MD5,而Java代码使用SHA1。他们不会输出相同的密钥。
您必须指定完全相同的密钥派生函数,或者直接指定密钥,而不是从密码短语中派生它。
最后,避免创建自己的密钥派生函数(可以使用bash和Java轻松实现)并遵循标准(如果需要考虑安全性的话)(如果不是,为什么还要使用加密?);该算法最有可能被破坏。



