- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经在 Google 和 Microsoft 的 Crypto API 上搜索了数小时,以了解如何生成公钥和私钥 ECC key 对。 ECDiffieHellmanCng
类 ( http://msdn.microsoft.com/en-us/library/system.security.cryptography.ecdiffiehellmancng.aspx#Y3081 ) 列出了一个示例,但我不知道如何直接访问私钥。
关于该程序的一些背景知识,它是一个 C# 控制台应用程序,用于管理 TrueCrypt session 、AES 预共享 key 加密和 ECDH/AES 加密。我需要一个函数来仅创建一个公钥/私钥对以保存到文件,然后记录如何在包装的 AES 加密文件中使用这些生成的 key (而不是像示例所示那样在运行时生成它)。我也知道将文件保存到硬盘驱动器时出现的所有漏洞,但我并不担心这个程序,我认为 2 台客户端计算机是安全的。
另请注意,我不想使用 BouncyCaSTLe API。
最佳答案
其中大部分与 CngKey 相关,可以在许多变体中使用。
static void test1()
{
CngKey k;
if (CngKey.Exists("myECDH", CngProvider.MicrosoftSoftwareKeyStorageProvider, CngKeyOpenOptions.MachineKey))
{
k = CngKey.Open("myECDH", CngProvider.MicrosoftSoftwareKeyStorageProvider, CngKeyOpenOptions.MachineKey);
}
else
{
k = CngKey.Create(CngAlgorithm.ECDiffieHellmanP256, "myECDH", new CngKeyCreationParameters
{
ExportPolicy = CngExportPolicies.AllowPlaintextExport,
KeyCreationOptions = CngKeyCreationOptions.MachineKey,
KeyUsage = CngKeyUsages.AllUsages,
Provider = CngProvider.MicrosoftSoftwareKeyStorageProvider,
UIPolicy = new CngUIPolicy(CngUIProtectionLevels.None)
});
}
byte[] privateBytes = k.Export(CngKeyBlobFormat.EccPrivateBlob);
byte[] publicBytes = k.Export(CngKeyBlobFormat.EccPublicBlob);
//This:
var privateTester1 =
new ECDiffieHellmanCng(CngKey.Import(privateBytes, CngKeyBlobFormat.EccPrivateBlob,
CngProvider.MicrosoftSoftwareKeyStorageProvider));
//Or that:
var privateTester2 = new ECDiffieHellmanCng(k);
}
关于c# - 使用 native C# 创建 ECC 私钥/公钥,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10264770/
我正在尝试找出如何检查安装的内存 (RAM) 是 ECC 还是非 ECC我需要通过使用 WMI 类的 C# 来做到这一点。 你们有什么想法吗? 提前谢谢 最佳答案 您可以查询 WMI Win32_Ph
Kotlin 中是否有任何关于椭圆曲线加密的信息? 用于生成 key 对和加密、解密消息。 关于这个主题的信息很少甚至没有。 例如,我想实现 ECC P-521 椭圆曲线。 是否可以在 Kotlin
这里是我用 Java 编写的代码,但签名生成和验证的过程给出了不同的结果。 请任何人帮助解决这个问题。我将非常感谢您的支持。 package ecdsa.draft; import java.math
大家好,请原谅我的英语我开发了一个大整数函数 c : #ifndef __BIGINTEGER_H #define __BIGINTEGER_H #include #include #include
我目前正在使用双相加算法编写椭圆曲线加密的 C 代码。我面临着我不明白的段错误问题。我希望你们中有人能有一个想法。 #include "lib/include/gmp.h" #include #in
我正在尝试使用 SECP-256K1(比特币的 ECC 曲线)对某些数据进行 SHA256withECDSA 签名,代码如下。这些代码并不总是能正常工作,有时可能会相当不稳定。 我需要帮助稳定下面的代
我正在阅读 Christoffer Paares 书中关于椭圆曲线密码学的部分(“理解密码学”)。我决定在 python 中实现一个用于椭圆曲线点加法和点加倍的函数。对于我的测试,我使用了书中的示例,
想起来很久没写博客了,刚好今天要写实验报告,随便把之前的也完成吧 1.椭圆曲线概念 椭圆曲线在经过化解后,可以用这条式子表达:E:y²=x³+ax+b 其背后的密码学原理,是基
我有 48 字节 ECC secp192r1 签名,可以在其他环境中工作: byte[] signature = new byte[]{(byte)0x08, (byte)0x33, (byte)0x
您好,我正在尝试解码包含 ECC 公钥的对象 但我去 umarshaling 错误说不能正确解码对象。 我正在尝试执行以下操作: var privateKey *ecdsa.PrivateKey va
最新版本的 Java 不支持 ECC Brainpool 曲线。当我读取包含 EC Curve Brainpool 的 X509Certificate 时,出现异常。 我发现 Java 不支持带有 B
java.security.PublicKey#getEncoded() 返回 key 的 X509 表示,与原始 ECC 值相比,在 ECC 的情况下增加了大量开销。 我希望能够以最紧凑的表示形式(
是否有针对 Java 的 ECC(纠错代码)库(例如 Reed-Solomon)的众所周知的实现,它具有友好的开源许可(非 GPL)? 最佳答案 zxing Apache 许可证(不确定这是否符合您对
大多数可用的桌面(廉价)x86 平台现在仍然不支持 ECC 内存 (Error Checking & Correction)。但内存位翻转错误率仍在增长(not the best SO thread,
我正在尝试使用 iOS 上的 KeyChain 创建 Curve25519 key 。我知道 CryptoKit 的存在,不幸的是,它不适用于 iOS 12。有没有办法在 CryptoKit 之前创建
我们需要将数据从 ECC 表实时提取到 Azure 数据湖。Azure 数据工厂具有与 SAP ECC 系统的连接选项,但不支持实时摄取。 请告诉我 Azure/SAP 中是否有任何可用的 nativ
我想要(或创建)基于椭圆 key 加密的序列 key 。我想做的是将信息编码在序列中,这些信息可以公开验证,但只能由我创建。最初的想法来自http://www.ssware.com/cryptolic
我在我的项目中使用 php OpenSSL。如何使用单个私钥创建多个公钥? 在 RSA 中我们不能做这样的事情。但是 ECC 呢? 最佳答案 根据定义,对于一般椭圆曲线密码系统中的每个私有(priva
我想(或创建)基于椭圆 key 加密的串行 key 。我想做的是在序列中编码信息,这些信息可以公开验证但只能由我创建。最初的想法来自http://www.ssware.com/cryptolicens
我在我的项目中使用 php OpenSSL。如何使用单个私钥创建多个公钥? 在 RSA 中我们不能做这样的事情。但是 ECC 呢? 最佳答案 根据定义,对于一般椭圆曲线密码系统中的每个私有(priva
我是一名优秀的程序员,十分优秀!