问题标签 [key-pair]

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 投票
2 回答
1592 浏览

php - 如何使我的 PHP 客户端成为唯一可以从我的 PHP 服务器获取数据的客户端

你好我有这个简单的代码:

客户

服务器

现在我需要添加安全性,以便只有我的客户能够获取数据。我想到了一对密钥,所以我发送了一些用客户端私钥加密的哈希,并用服务器上的公钥对其进行解码。但我不知道如何实现这一点。我不知道如何获取密钥,也不知道如何编写代码。

我对选择持开放态度。如何让我的客户成为唯一能够从该服务器获取数据的客户?

0 投票
1 回答
4583 浏览

c# - 如何为一对 3D 向量实现 GetHashCode

首先,我找到了一个用于 3D 整数向量的 GetHashCode 实现,但我不知道这是否是一个好的实现(至少我不是 100% 确定):

由此,我想创建一对 3D 向量(我们称它们为 A 和 B),其哈希码独立于向量 A 和 B 的顺序。换句话说,我希望这对 (A, B) 具有与(B,A)对相同的哈希码。我想到了这样的事情:

你认为这会有正确的行为吗?

0 投票
2 回答
955 浏览

java - java中RSA密钥对生成错误

我需要在 java 中生成 RSA 密钥对。我尝试了以下方法,

当页面在 netbeans 中运行时(仅限此页面)发生错误。,错误:包

sun.org.mozilla.javascript.internal.regexp 不存在

当整个项目运行时,我得到了输出...,但是生成的公钥太长了...,像这样

私钥:sun.security.rsa.RSAPrivateCrtKeyImpl@b8a7c

PublicKey:Sun RSA 公钥,2048 位模数:

我想将此公钥和私钥插入数据库..,所以它应该很小..,请帮帮我......,

0 投票
1 回答
3356 浏览

java - 使用 keytool 生成 Java 7 ECC 密钥对

如果我在某个地方出错,请纠正我,因为我是加密领域的新手。

我正在使用以下命令在 Java 7 中生成 EC 密钥对:

根据:docs.oracle.com/javase/7/docs/technotes/tools/windows/keytool.html#Commands

keytool -genkeypair -alias MyServerPair -keyalg EC -keysize 571 -sigalg SHA512withECDSA -keypass 123456 -validity 365 -storetype JKS -keystore MyServerStore -storepass 123456

执行后,

密钥库在目录中生成。之后,我尝试使用以下命令导出证书:

keytool -exportcert -alias MyServerPair -file MyServer.crt -storetype JKS -keystore MyServerStore -storepass 123456

之后生成 MyServer.crt。

但是当我打开 MyServer.crt 文件并检查证书状态时,我发现“此证书的数字签名无效”

此外,在证书详细信息中,当我看到公钥值时,它显示 ECC(0 位)。

为什么呢 ?我哪里错了?我的猜测是我使用了错误的签名算法。

我指的是docs.oracle.com/javase/7/docs/technotes/gui4des/security/SunProviders.html#SunEC

一些截图在这里

编辑:

当我使用像 571 这样的二进制字段值作为 -keysize 但如果我使用与像 521 这样的二进制字段值相对应的素数字段值时,它会发生这种情况,它可以正常工作而没有上述问题。

编辑2:

即使使用其他 -sigalg 值和密钥大小 571 和其他二进制值问题也存在。

我猜素数字段值只能被使用。

0 投票
1 回答
981 浏览

java - 给定一个 KeyPair,如何验证此 KeyPair 中包含的密钥是否为预期长度?

我正在编写一些 Junit 测试,其中生成了许多 java.security.KeyPair 类型的对象(来自 java.security.KeyPairGenerator)

我正在添加一些断言以确认这些 KeyPair 中包含的密钥具有预期的属性(预期的算法和预期的大小)。

例如,我添加了一个断言语句来确认该算法是预期的算法,使用:

我试图在 KeyPair 或 Keys 本身中找到一些返回密钥大小(位数)的方法,但我找不到这样的方法。

我检查了键的 toString() 方法的输出,以查看该字符串是否包含键的大小,使用:

我发现对于 SunRsaSign 提供程序,该字符串包含其第一行中的位数(因此可以通过解析此字符串来确认密钥大小。但是当我检查 Bouncy Castle 的相同方法时,我发现字符串不包含位数,如下图:

来自 RsaSunSign 提供程序的密钥上的 toString() 输出:

来自 Bouncy Castle Provider 的键上的 toString() 输出:

因此,使用密钥的字符串表示形式的输出来确认其大小显然是不安全的,因为我们不知道将使用哪个提供程序。

所以我的问题是:给定一个 KeyPair(并且还给出了用于生成该 KeyPair 的 KeyPairGenerator),是否有提供者中立的方法来确认 KeyPair 中密钥的大小?

0 投票
0 回答
246 浏览

c# - 生成密钥对并存储在 Keystore 中

我目前正在基于这篇文章开发一个系统:

http://www.codeproject.com/Articles/4940/Using-XML-Digital-Signatures-for-Application-Licen

但是,在文章中,他使用 sn.exe 生成密钥对并将其存储到密钥容器中。

我想在 Windows Server 2012 机器上执行此操作,无法访问 sn.exe,而且我似乎无法找到执行此操作的方法,任何人都可以建议一个适用于 server 2012 的工具吗?

干杯

0 投票
1 回答
5826 浏览

java - Android KeyPairGenerator 始终生成相同的密钥对

我正在制作一个为用户生成密钥对的应用程序。但在每个设备中,密钥都是相同的。这是我的代码:

并显示生成的密钥代码是:

每个 android 设备只调用一次密钥生成,因此每个设备中的密钥应该不同.. 谁能告诉我我在这里缺少什么?

0 投票
1 回答
3335 浏览

java - JCraft : SCP 使用没有密码的私钥

我试图在 2 个 linux 服务器之间使用密钥对进行 scp。我试图关注http://sthen.blogspot.in/2008/03/sftp-i-java-with-jsch-using-private-key.html

我能够在 linux 服务器之间 scp 文件,但是当我执行代码时,我收到错误 com.jcraft.jsch.JSchException: UnknownHostKey。知道我做错了什么。

过程:我在客户端生成了无密码的 RSA 密钥,并在目的地复制了公钥。现在尝试使用 JCraft 库将文件从客户端发送到目的地

我正在使用 jar 最新的 jar X.51

0 投票
0 回答
930 浏览

objective-c - 生成 RSA 密钥对(PEM 1024 位)

好时机,请告诉我如何生成“RSA PEM KEY 1024 bit”可取的意思是Objective-C?

试过这样,但这不是我需要的

链接#1

链接#2

请帮我!

0 投票
2 回答
4333 浏览

linux - EC2 使用他们的 OWN 密钥对创建新的 Linux 用户?

在 EC2 中,我旋转了一个CentOS v6.5实例,我也得到了一个Key Pair(当然)。但问题是,我希望在创建用户之前像往常一样ec2-user,这样我就可以使用该ec2-user名称并使用该名称登录key pair

但现在不是。相反,关键是root直接。而且也没有ec2-user

所以我的基本问题是:

  • 如何创建每个其他(新)用户(现在让我们将“michael”称为一个新用户),以使用他们新生成的(自己不同的)key pairs .pem文件登录?(所以“michael”不需要使用密码,只需使用它自己的key pair
  • 再次,另一个具有新密钥对的新用户。(比方说,用户annie

注意:如果可以提供一个简单(直接)的分步说明,那将是非常可观的。