问题标签 [encryption-symmetric]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
457 浏览

java - 应用集群中的数据加密

我有一个通过 SSL 访问的 Web 应用程序。为了加强后端的安全性,我们正在考虑为数据库添加对称加密。

该应用程序分布在一个 websphere 集群中的 6 台服务器上。

我们正在研究一个生成公共密钥的简单模型,该模型在隔离的 JCEKS 密钥库中的所有克隆中传播密钥。

密码和密钥长度采用 AES (256)。

我的问题是这种方法有多安全?我担心我们会创建所有这些并加密数据,但是如果我们丢失了密钥库或者他们对我们的所有数据进行了密钥处理,我们的所有数据都将永远丢失。

这只是备份密钥和密钥库的问题,以确保我们在发生灾难时始终在某个地方拥有副本吗?

AES 仍然是一个可靠的密码吗?并且对称加密通常比非对称更快。使用 256 位密钥是否会对性能产生重大影响,还是对加密数据的大小影响更大?

0 投票
3 回答
1110 浏览

java - 使用 DES 加密整数值

我想用 DES 加密一个整数,得到的密文也应该是一个整数。

解密函数也应该遵循这个概念。

我正在尝试通过将字节数组转换为整数而不是使用 Base64 编码来修改使用 DES 加密字符串中的代码。但是,解密函数会抛出不正确填充的异常,因为整数到 byte[] 的转换会导致 4 字节数组。

有没有其他加密算法可以用来实现这一点。

  • 我不关心密文的弱点。
0 投票
1 回答
8180 浏览

gnupg - gpg2中的gpg代理

我正在尝试对一些使用 GPG(当前为 v 1.4.10)执行对称加密/解密过程的自定义软件进行验证。我当前的加密命令如下所示:

如果没有该--no-use-agent选项,我会收到臭名昭著的错误消息

gpg-agent 在此会话中不可用

我担心迁移到 gpg2,因为根据文档,gpg-agent 始终是必需的,并且--no-use-agent只是一个虚拟选项。我的 gpg 调用通过一个守护进程在后台发生,所以这是一个非常无代理的场景(加上它是对称的,我根本不需要代理)。

这种详细程度的文档很少,所以我正在寻找用户体验。gpg2 是否更紧密地结合了代理,这样我就不必担心它的可用性?

0 投票
3 回答
3525 浏览

c# - 反序列化时的 BinaryFormatter 和 CryptoStream 问题

我在这里有点绝望。我正在尝试将带有序列化对象的加密文件写入磁盘,然后检索文件,对其进行解密并将对象反序列化。

更新:我将代码重构为:

现在我在反序列化时遇到了一个加密异常:Bad Data

原来的:

我正在这样做:

加密和写入工作正常,文件出现在磁盘上并且内容在那里(当然是加密的)。但是当我调用检索方法时,我总是得到一个 SerializationException

二进制流“30”不包含有效的 BinaryHeader。可能的原因是无效的流或序列化和反序列化之间的对象版本更改。

当我离开加密方法时,一切正常。

0 投票
2 回答
1089 浏览

java - 寻找支持 Java 和强加密的存档

我正在寻找一种“标准”归档格式(ZIP、7ZIP 等),它受纯 Java 库支持并具有强(AES-128)加密。

我需要一种人们可以使用适用于 Windows 和 OsX 的现成软件解密的格式。

我的理解是 PKZIP 9.0 (Zip 2.0) 之前的 ZIP 加密非常弱,而且 PKWARE 从未发布过 AES-256 文件版本。

该格式只需要支持密钥加密(不需要或不需要公钥)。

我不能使用 BouncyCastle Open-PGP,因为他们的 JAR 文件必须使用他们的密钥签名,而且我们还需要使用我们的 Java Web Start 代码签名密钥进行签名。我们的一些客户正在运行旧版本的 Java 6 (< 14) 并且无法升级。Java 6 14 之前的版本不支持使用多个密钥进行签名。

0 投票
1 回答
1409 浏览

c - 支持 HC-128/256 的 C 加密库?

我一直在寻找可以在 linux 上使用的加密库来实现 HC-128/256 加密以用于网络流量。不幸的是,对此的支持似乎相当罕见。Bouncy Castle 支持 C# 和 Java,但我需要它用于 C。我有 HC-128/256 算法的源代码,但没有关于如何实际使用它的示例。

HC-256 维基百科:
http ://en.wikipedia.org/wiki/HC-256

HC-128 源代码和文章: http:
//www.ecrypt.eu.org/stream/hcp3.html

有什么帮助吗?

0 投票
1 回答
4991 浏览

sql - SQL Server 2005 使用私钥/加密创建证书

好的,这是我的问题。我正在使用数据库主密钥、证书和对称密钥在 SQL Server 2005 中进行数据加密。我需要能够使用私钥恢复证书。但是,当我使用 PRIVATE KEY 运行 CREATE CERTIFICATE 时,证书会被拉入数据库,但私钥不会显示。以下是我遵循的测试步骤。

创建数据库主密钥。

创建证书

创建使用 MyCert 加密的对称密钥。

调用下面的选择语句以显示密钥和证书在那里。他们是。主数据库密钥、对称密钥和证书都在那里。

创建数据库证书和密钥的备份

注意我已经尝试将它们放在同一个文件夹中,但这也不起作用。

删除密钥和证书并确认它们已消失。

仅由文件创建的证书没有 RESTORE。我用 WITH PRIVATE KEY 调用创建证书。

当我运行此证书时,会显示证书,但密钥没有随附。

我已经验证它们在文件夹中,并且 SQL 可以访问这些文件夹。

我也尝试了 ALTER CERTIFICATE WITH PRIVATE KEY,但仍然没有。

我错过了什么?

0 投票
1 回答
5399 浏览

c# - 使用 BouncyCastle 进行 AES 加密:AESEngine、AESFastEngine 还是 AESLightEngine?

我想移植这个简单的 JAVA 示例...

J2ME 中使用 Bouncycastle 的 AES 加密/解密示例

...到 C# 并有以下两个 3 个问题:

  1. 据我了解,JAVA 示例使用 AESEngine 进行加密/解密操作。AESEngine 和 AESFastEngine 和 AESLightEngine 有什么区别?不幸的是,我不理解文档中提供的信息:http: //www.bouncycastle.org/docs/docs1.6/index.html

  2. 我想为我加密的每个文件使用一个新的加密密钥。我应该使用哪种分组密码操作模式:AES.CBC、AES.CFB、AES.ECB 或 AES.OFB http://www.bouncycastle.org/docs/docs1.6/index.html

  3. 我的假设是否正确,在我的情况下我不必使用 iv / salt(这意味着我必须使用静态 iv?)因为我使用 AES.KeyGen128() 生成密钥并且只使用一次?
    http://www.bouncycastle.org/docs/docs1.6/index.html

希望我的问题不会引起太多混乱 ;-) 我很感激你能给我的每一个答案、澄清或反馈。

麦克风

0 投票
2 回答
1312 浏览

.net - 可以在 Rijndael 加密中对许多文件使用静态 IV 值吗?

我对Rijndael 加密中的IV有疑问。

我目前使用 Rijndael 的方法是使用一对静态 KeyIv所有加密操作(我的意思是我将这对 Key 和 Iv 用于我计算机中的所有受保护文件)。

我听说 IV 必须unique为每个 Rijndael 加密。真的吗?我目前的使用方法有什么问题(如果有的话)single static Key and Iv pair

0 投票
2 回答
432 浏览

asp.net - 在 asp.net 中实现 DES 加密/解密时如何解决错误?

我正在尝试通过给定的链接在 asp.net 应用程序中实现 DES 加密:

DES加密/解密

根据给定的代码,它工作正常,但如果我在字节变量中添加一个字符,它会抛出异常

在此处输入图像描述

有人知道如何解决这个问题吗?

DES加密有8个字符的限制吗?

谢谢