问题标签 [key-management]

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 回答
529 浏览

encryption - PKCS#12 是否有任何已发布的扩展?

PKCS#12是一种将私钥与其相应的 X.509 证书合并为标准化单一文件格式的便捷方式。然而,该规范于 1999 年由 RSALabs 发布,仅使用 RC4、RC2 和 TripleDES 进行对称加密。该方案是否有任何常见的半标准扩展来添加更多加密算法或其他密钥派生功能?OpenSSL被记录为实现对 AES 和 Camellia 的支持,但是搜索相应的标准却是空白,所以这似乎是特定于 OpenSSL 的实现。是否有人记录了这些扩展的 ASN.1 模块和伪代码?

0 投票
2 回答
7062 浏览

java - 是否有实现 DUKPT 或 ANSI X9.24 的开源库

我的任务是使用 DUKPT 协议/方案/算法对设备实施解密功能。

加密算法本身就是 DESede,易于使用并具有良好的库支持(JCE、BouncyCastle)。

问题是 DUKPT 部分。我有基本派生密钥(共享密钥)、密钥序列号和密文,但我不知道下一步该做什么。

尽可能地,我不想编写自己的实现,我更愿意使用经过良好测试的库。

有这样的东西吗?

注意:DUKPT = 派生的每个事务的唯一密钥

0 投票
1 回答
726 浏览

encryption - 加密患者数据

我将使用 AES_ENCRYPT() 和 AES_DECRYPT 将患者数据存储在 EMR 系统中,我想知道如何存储密钥。我需要能够允许授权用户访问该密钥,以便解密和读取存储在患者记录中的数据。我怎样才能轻松地与许多用户共享密钥,但又要保证该密钥的安全。任何想法或例子表示赞赏。

0 投票
1 回答
3105 浏览

c - 使用 Key Value 计算 Key Check 值

我用 C 语言编程。我在组件中获得了 TMK(终端主密钥),例如 TMK1 = 32byte hex value TMK2 = 32 byte hex value 。我需要使用这 2 个 Key 值计算 Key 检查值。我知道 DES 算法用于实现这一点,但我不知道完整的过程。请提供一个示例程序来执行此操作。

我正在尝试它:

1.取KV:XXXX XXXX XXXX XXXX YYYY YYYY YYYY YYYY

2.将其分成左右部分,每个部分为64位长:Left=XXXX XXXX XXXX XXXX Right=YYYY YYYY YYYY YYYY

3. 用零初始化一个 64 位缓冲区。调用此缓冲区结果。

4.DES用Left加密Result。

5.DES用Right解密Result。

6.DES用Left加密Result

平台:Linux,C语言

0 投票
1 回答
38158 浏览

python - 如何读取 PEM + PKCS#1 格式的 RSA 公钥

我有一个 PEM 格式的 RSA 公钥 + PKCS#1(我猜):

我想在 Python 中获取其 ASN1 编码版本的 SHA1 摘要。第一步应该是读取这个密钥,但是我在 PyCrypto 中没有做到这一点:

PyCrypto的文档说支持 PEM + PKCS#1,所以我很困惑。我也尝试过 M2Crypto,但事实证明 M2Crypto 不支持 PKCS#1,而只支持 X.509。

0 投票
2 回答
2524 浏览

security - 开发一个 Web 应用程序,该应用程序自动轮换用于加密存储在数据库中的数据的加密密钥

假设我有一个在网络场中运行的 ASP.NET MVC 3 应用程序,其中每个网络服务器都属于一个工作组(与具有共享帐户的域相对)。Web 场也是可自动扩展的,这意味着实例的数量取决于负载。敏感数据在从数据库存储/检索时会被加密和解密。对称和非对称密钥存储在每台机器上,并使用 ACL 进行保护,并使用 DAPI(使用机器密钥)进行加密。

出于合规性和安全性原因,需要定期轮换密钥。您将如何设计/修改系统以定期自动轮换密钥而不使系统脱机?假设有任意数量的表,每个表都有任意数量的列,这些列使用密钥进行加密。

许多问答都与使用哪些算法以及如何保护密钥有关,但很少有人真正解决如何设计和实现允许轮换这些密钥的应用程序,尤其是在共享数据库的动态环境(自动缩放环境)中。

0 投票
2 回答
3115 浏览

encryption - 如何将加密密钥分成几部分?

我有一个 128 位加密密钥,我想将它分成三个部分,当异或一起复制密钥时。

我该怎么做呢?

0 投票
1 回答
253 浏览

encryption - 充气城堡中的空 PGPKeyRing 或 PGPKeyRingCollection

如何在 Bouncy Castle 中创建一个空的 PGPKeyRing 或 PGPKeyRingCollection?

0 投票
2 回答
524 浏览

java - Java 加密器的密钥处理

在我基于 Java 的网络应用程序中,我想在将某些数据写入数据库之前对其进行加密,并在加载回内存后对其进行解密。为此,我使用了bouncycastle API 并创建了一个如下所示的类:

到目前为止一切都很好(我想是的,如果你对这门课有任何意见,请继续)。要初始化这个类,我应该提供一个密钥。我的问题是 - 我应该如何管理这个密钥?

更具体:

  • 我应该使用特定技术创建它吗?
  • 我应该把它存放在哪里?在属性文件中?在数据库中?在我的代码中的某个地方?
  • 这个密钥(我们在这里谈论的是一个字符串,对吗?)是否应该加密,然后在加载或使用后解密?如果是这样,我该怎么做?
0 投票
6 回答
46099 浏览

key-management - 开源密钥管理解决方案

我正在研究密钥管理解决方案以符合 PCI 标准。我已经与该领域的许多供应商进行了交谈,虽然我喜欢他们的产品,但成本超出了我的预算。有人知道密钥管理的任何开源或低成本解决方案吗?我使用 Windows/.NET 环境,因此我更喜欢针对该环境的解决方案,但是我有兴趣了解那里的任何内容。

谢谢