问题标签 [cryptography]

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 投票
6 回答
4849 浏览

c# - ProtectedData.Protect 间歇性故障

我正在编写密码加密例程。我写了下面的应用程序来说明我的问题。大约 20% 的时间,此代码按预期工作。其余时间,解密会引发加密异常——“数据无效”。

我相信问题出在加密部分,因为解密部分每次都一样。也就是说,如果加密例程产生一个解密例程可以解密的值,它总是可以解密它。但是,如果加密例程产生一个阻塞解密例程的值,它总是阻塞。所以解密程序是一致的;加密例程不是。

我怀疑我对 Unicode 编码的使用不正确,但我尝试过其他人的结果相同。

我究竟做错了什么?

0 投票
10 回答
390587 浏览

mysql - 散列密码字段使用什么数据类型和长度?

我不确定密码哈希是如何工作的(稍后将实现它),但现在需要创建数据库模式。

我正在考虑将密码限制为 4-20 个字符,但据我所知,加密哈希字符串后的长度会不同。

那么,如何将这些密码存储在数据库中呢?

0 投票
3 回答
8257 浏览

cryptography - 代码签名证书选项

我被分配了为我的公司购买数字证书以签署我们的代码的任务。我们在 Microsoft 领域开发应用程序 - 主要是 WPF 或基于 Web。

我调查了选项,发现 Comodo 价格合理且响应迅速,我们已准备好继续通过它们购买证书。但是在注册表单中有各种我不太确定的私钥选项,即:

  1. CSP

    • Microsoft 基础加密提供程序
    • Microsoft Base 智能卡加密提供程序
    • Microsoft 增强加密提供程序 v1.0
    • Microsoft 软件加密提供程序
  2. 密钥大小

    • 1024
    • 2048
    • 4096
  3. 可出口?

    • 是/否
  4. 受用户保护?

    • 是/否

只是想知道所有这些意味着什么,以及满足我们要求的最佳选择是什么?任何意见/建议将不胜感激

非常感谢格雷格

0 投票
3 回答
976 浏览

ruby-on-rails - 在 Rails 运行时提供参数

我正在寻找一种在运行时为 ruby​​ on rails 项目提供参数的方法。本质上,我们的项目使用公钥密码术来加密一些敏感的客户端数据,我们希望能够在运行时向私钥文件提供密码。

0 投票
2 回答
7101 浏览

.net - 哪种内置 .NET 加密算法最安全?

.net 附带的哪种加密算法最安全?

0 投票
6 回答
5611 浏览

.net - .NET 加密许可证密钥?

我想创建一个许可证密钥,您会推荐哪种加密算法?

基本上输入将是:

公司名称
主要版本号
创建
日期 过期日期
有特征1:
有特征2:
有特征3:

例如 Acme Inc 5.0 20081102 20081102 0 1 0

相关:哪种内置 .NET 加密算法最安全?

0 投票
11 回答
4653 浏览

algorithm - 什么是最好的低技术协议来模拟从帽子里抽出名字并确保保密?

每年感恩节,我的家人都会从帽子中抽出名字来确定他们将成为圣诞礼物交换的“秘密圣诞老人”。对我们的家庭文化来说,重要的是家庭中没有其他人知道彼此是谁,以保持有趣。选择的唯一规则是你不能选择你的配偶。如果发生这种情况,您将再次抽奖并将您配偶的名字放回帽子中。

由于今年的物流和旅行计划,我们提前庆祝圣诞节(感恩节后仅两周)。

为了有足够的时间寻找礼物,我们现在想选择名字。我们的家庭分布在美国各地。有些成员可以访问互联网,有些则不能(例如我亲爱的奶奶)。

我想做的是有一个公平的协议来模拟从帽子中抽出名字,并确保一定程度的保密性而不会过于复杂。一些网站,如以前的drawnames.com或其他类似网站,通常要求人们输入他们的电子邮件地址。我想绝对确保我家人的电子邮件地址不会被滥用,因此我不想将它们信任到另一个站点。

我能想到的最好的协议是:

  1. 编写一个随机挑选人员并确保人们不会得到配偶的程序。
  2. 该程序将向我显示列表的一半,但不会显示谁得到了我的名字,但会显示我有谁的名字以及得到我妻子名字的人。
  3. 然后,我将离开房间,程序将向我的妻子显示另一半的人员列表(其中将包括谁有我的名字)。
  4. 然后我和妻子会联系每个人,告诉他们他们有谁。

我错过了更好的协议吗?更好,我的意思是允许更多保密的东西。再次,由于物流和保持简单,我不想建立一个网站。

0 投票
10 回答
435567 浏览

c# - 在 C# 中使用 AES 加密

我似乎找不到使用 AES 128 位加密的干净示例。

有人有一些示例代码吗?

0 投票
2 回答
1272 浏览

cryptography - 模运算

我是密码学和模算术的新手。所以,我敢肯定这是一个愚蠢的问题,但我无能为力。

如何从      pow( a , q ) = 1 (mod p )计算a , 其中pq是已知的?我没有得到“1 (mod p )”部分,它等于 1,不是吗?如果是这样,那么“mod p ”是关于什么的? 这是否与      pow( a , -q ) (mod p ) = 1 相同?



0 投票
2 回答
5591 浏览

cryptography - 如何使用 Microsoft ECSP 仅使用 RSA 公钥加密小数据块?

我需要使用 512 位 RSA 公钥加密一小块数据(16 字节)——对于我所知的大多数加密库来说,这是一项相当容易的任务,除了 MS CSP API,看起来。CryptEncrypt函数的文档指出

Microsoft Enhanced Cryptographic Provider 支持使用 RSA 公钥的直接加密和使用 RSA 私钥的解密。加密使用 PKCS #1 填充。

但这对我不起作用。好吧,我的代码可以正常工作并生成大小正确的加密数据块,但 openssl 无法解密它。看起来 CryptEncrypt 仍然使用对称密码。

不幸的是,我发现的所有示例都指的是组合密码学与对称密码,所以我手头没有一个工作示例,这肯定会使事情变得更容易。

请任何人指出这样一个例子,或者让我知道我是否错过了一些不那么明显的陷阱?

谢谢你。