问题标签 [encryption]

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 投票
5 回答
3913 浏览

.net - .NET 的 SslStream 总是与我拥有的最不安全的密码进行协商。我怎样才能改变这个?

SslStream 应该与它的对等 SSL 堆栈协商密码类型、密钥长度、哈希算法等。在我的代码中使用它时,我发现协商始终默认为 RC4 和 MD5。我想使用 3DES 或 AES 来增加一些安全性。

环顾网络,我发现只有几个关于这个问题的参考,没有解决方案;一位发帖人声称这实际上是有道理的,因为两个堆栈之间的最小公分母是安全的,同时具有更快/使用更少 CPU 资源的额外好处。虽然这在技术上可能是正确的,但我在复杂性和成本之间的特殊权衡在于其他地方(我更喜欢使用带有长密钥的 AES)。

如果有人可以提供帮助,我将不胜感激。

0 投票
3 回答
8420 浏览

java - 在 Java 中使用 openssl 加密

我有一个遗留 C++ 模块,它使用 openssl 库(DES 加密)提供加密/解密。我正在尝试将该代码翻译成 java,并且我不想依赖 DLL、JNI 等... C++ 代码如下所示:

Java 代码如下所示:

所以我可以很容易地在 Java 中进行 DES 加密,但是如何使用完全不同的方法获得与上述代码相同的结果呢?特别困扰我的是,C++ 版本使用 2 个密钥,而 Java 版本只使用 1 个密钥。关于 CBC 模式下的 DES 的答案非常令人满意,但我还不能让它工作。以下是有关原始代码的更多详细信息: unsigned char key1[10]= {0}; 无符号字符 key2[50]= {0};

根据我的阅读,密钥应该是 56(或 64,我不清楚)位长,但这里是 48 字节长。

0 投票
7 回答
39064 浏览

encryption - AES(128 或 256)加密是否会扩展数据?如果是这样,多少?

我想为软件产品添加 AES 加密,但担心会增加数据的大小。我猜数据的大小确实会增加,然后我必须添加一个压缩算法来补偿。

0 投票
4 回答
2599 浏览

encryption - 标准库中加密的合法性

一些编程语言(如 Java 和 C#)在其标准库中包含加密包。其他如 Python 和 Ruby 让你下载第三方模块来做强加密。我认为这是出于法律原因;也许 Sun Microsystems 有足够多的律师,他们不怕被起诉,而 Guido van Rossum 感觉更脆弱。

但法律实际上对此有何规定?在这一点上,如果开源作者在他们的编程语言的标准库中包含强加密,他们会担心吗?如果是这样,那他们为什么不呢?如果不是,那么 Sun 和 Microsoft 将如何摆脱它。

0 投票
3 回答
4063 浏览

java - 加密 clob 的最佳方法是什么?

我正在使用 Oracle 9 和 JDBC,并希望在将 clob 插入数据库时​​对其进行加密。理想情况下,我希望能够插入明文并通过存储过程对其进行加密:

明文预计不会超过 4000 个字符,但加密会使文本更长。我们当前的加密方法使用 dbms_obfuscation_toolkit.DESEncrypt() 但我们只处理 varchars。下面的工作吗?

我对临时的clob感到困惑;我需要关闭它吗?还是我完全偏离了轨道?

编辑:混淆的目的是防止对数据的琐碎访问。我的另一个目的是以与我们已经混淆 varchar 列相同的方式混淆 clob。oracle 示例代码不处理我的具体问题所在的 clob;加密 varchars(小于 2000 个字符)很简单。

0 投票
20 回答
87729 浏览

security - 我应该对密码施加最大长度吗?

我可以理解对密码施加最小长度很有意义(以保护用户免受他们自己的伤害),但我的银行要求密码长度在 6 到 8 个字符之间,我开始怀疑......

  • 这不是让暴力攻击更容易吗?(坏的)
  • 这是否意味着我的密码未加密存储?(坏的)

如果有人(希望)有一些优秀的 IT 安全专业人员为他们工作,他们规定了最大密码长度,我应该考虑做类似的事情吗?这有什么优点/缺点?

0 投票
3 回答
5361 浏览

.net - WCF netTCPBinding - 传输加密是否足够?

我有一个处理一些敏感数据的 WCF 服务。我想确保我不会暴露这些数据,所以我正在研究 netTCPBinding ......主要是因为我可以控制它运行的网络并且性能是一个高优先级。

我认识到有两个区域可以加密:传输级别和消息级别。我打算使用证书在传输级别进行加密,据我所知,它使用 TLS over TCP。

调用客户端也是我的,所以我控制传输级别。由于我预计传输层不会发生任何变化,我是否需要为消息级加密而烦恼?除非我想要更改传输的灵活性,否则似乎没有必要。

0 投票
8 回答
7019 浏览

scala - C#和PHP、ColdFusion、Ruby、Python之间的兼容加密

我们正在开发一种可以接受POST请求的服务。一些POST数据需要先加密,POST因为它将存储在表单的隐藏字段中。

该应用程序是用 C# 编写的,但我们希望第三方客户端能够轻松与其集成。我们发现大多数客户端使用 PHP、Classic ASP 或 VB.Net。

第三方应该只进行加密。我们会做解密。没有双向沟通。

加密算法、填充模式和其他选项的最兼容组合是什么?

0 投票
8 回答
10475 浏览

php - 在 PHP 中加密非常短的字符串的最佳方法是什么?

我想加密可能只有大约三个或四个字符但运行到大约二十个字符的字符串。散列函数(md5sha1crypt等)不适合,因为我也希望能够解密信息。mcrypt扩展有一系列令人生畏的可能性。

有没有人对安全加密短字符串的最佳方法有任何想法,为什么?有没有人链接到任何将临时程序员介绍给实际加密场景的材料?

0 投票
3 回答
2196 浏览

java - 您将如何在 Java 中实现安全的静态登录凭据系统?

我们最近进行了一次安全审计,它暴露了这里现有系统中的几个弱点。由此产生的任务之一是我们需要更新我们的合作伙伴凭据系统,使其更加安全。

“旧”的做事方式是生成一个(错误的)密码,将其提供给具有 ID 的合作伙伴,然后他们将通过 https 发送该 ID 和该密码的 Base 64 编码副本以及他们的所有 XML 请求. 然后我们对它们进行解码并验证它们。

这些密码不会改变(因为我们的合作伙伴必须进行编码/配置更改才能更改它们,并且与数百个合作伙伴针对多个环境协调密码到期将是一场噩梦),并且它们不必由人类输入或人类可读的。如果我们的合作伙伴有更好但仍然相对简单的实施,我愿意改变这一点。

基本上它归结为两件事:我需要一个更安全的 Java 密码生成系统,并确保它们以安全的方式传输。

我发现了一些手动密码生成器,但没有什么能真正突出作为执行此操作的标准方法(也许有充分的理由)。可能还有一种比通过 https 进行简单 Base 64 编码更安全的方式来传输它们。

您会为密码生成器做什么,您认为现有的传输方法是否足够安全?

编辑:XML 来自 SOAP 消息,凭据位于标头中,而不是 XML 本身。此外,由于在设置密码时,每个合作伙伴的密码都是一次性操作,因此我们不太担心生成器的效率。