问题标签 [pem]
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.
c - 如何使用 openSSL 函数验证 PEM 证书的密钥长度
如何验证以这种方式生成的 PEM 证书的密钥长度:
我需要的是一个使用 OpenSSL 过程的 C 函数,它对 PEM 证书执行验证(我将它用于 lighttpd HTTPS 服务器),并返回存储在证书中的密钥的长度(在本例中为 1024)。
security - 去保护的 .p12 私钥文件
我使用 apn node.js 模块发送 Apple 推送通知,但它不起作用。
在配置中,我使用 .pem 格式的密钥和证书,但密钥受到保护。我从 key.p12 文件创建了这个 key.pem 文件。
我想解除对密钥的保护,因此不必输入密码。
我没有找到如何做到这一点,有什么想法吗?
c# - 如何在 c# 中使用 bouncycastle 将 pem 公钥转换为 rsa 公钥?
我有一个 pem公钥,我想转换为 xml 格式的公钥或 AsymmetricKeyParameter。
我可以在 C# 中使用 bouncyCastle 中的 PemReader将 pem私钥转换为Public/Private xml 格式或非对称密钥参数。但是当在 PemReader 中使用 Pem公钥时,我收到错误。
请帮我。
我的问题还有什么解决方案?
python - 创建一个可以用 Python TLSLite parseAsPublicKey 加载的公钥
我想从 Python 的 TLSlite 库中加载一个公钥。
只要格式是通用的,就可以以我们喜欢的任何方式创建密钥 - 到目前为止,我使用的是使用 openssl 命令行工具创建的 PEM 密钥:
接着:
结果如下:
密钥将加载:
但是,这会因 SyntaxError 而失败。剥离换行符,仅使用破折号之间的字符串部分等都失败。
我很高兴使用不同的通用密钥格式,但是我需要 TLSLite 或其他纯 Python 解决方案才能读取文件,因为我使用的是 Google AppEngine。
java - 使用或不使用 OpenSSL 将 SSL .pem 转换为 .p12
.pem
我得到需要转换为文件的外部文件.p12
- 我在此过程中添加了用户名和密码。(我需要这样做才能利用第三方 API。)
使用openssl
,命令是...
我可以从终端会话运行它,它运行良好。
但是,我需要经常这样做,并编写了一个 Java 类来处理这个以及更多(我的应用程序主要.jsp
使用 Tomcat 和 Apache)。当我尝试使用 Java 从 Java 运行相同的命令时Runtime.exec
,我得到了可怕的“无法写入‘随机状态’”错误(使用 OpenSSL,“无法写入‘随机状态’是什么意思?)。
我假设不同之处在于,当我从 Java 运行时,用户不是“root”。
那么,有没有更好的方法来使用 Java 库而不是执行命令行程序(即 openssl)从 pem 转换为 .p12?
否则,我想我需要在我的服务器上进行一些配置。我在服务器上的任何地方都找不到任何.md
文件。唯一的openssl.cnf
文件位于一个奇怪的目录 ( /etc/pki/tls
) 中。我需要在openssl.cnf
其他地方创建一个新文件吗?
c - 使用 OpenSSL 将 PEM 文件中的证书链加载到 STACK_OF(X509)*
使用 c 中的 OpenSSL 库,将完整的证书链从 PEM 文件加载到内存中的最佳方法是什么?输入是一个连接了 1..n 个证书的 PEM 文件,输出应该是STACK_OF(X509)*
..
对于单个证书,加载它们的最简单方法如下:
(为清楚起见,省略了错误处理、资源释放和引用计数;使用 C99 语法;“easy”表示“避免较低级别的 BIO 和 ASN.1 API”)
但是,对于完整的证书链,SSL_CTX_use_certificate_chain_file()
可用于将它们加载到 中SSL_CTX
,然后可以使用 检索第一个证书SSL_get_certificate()
,但似乎没有API 函数SSL
可以从上下文中检索证书链的其余部分。
那么从文件加载证书链的最佳方法是什么?
python - PyOpenSSL 将证书对象转换为 .pem 文件
我想通过套接字将证书从“证书颁发机构”发送到节点。我有一个使用此示例创建的证书 https://skippylovesmalorie.wordpress.com/2010/02/12/how-to-generate-a-self-signed-certificate-using-pyopenssl/ 我如何将其转换为 . pem 文件,因此我可以通过套接字将其作为字符串发送,然后在另一端将其转换回 .pem 并使用 get_certificate 从中提取此证书。 Python:使用 pyOpenSSL.crypto 读取 pkcs12 证书 这可能是一种很老套的方法,但我想为自己简化一下。(或不)
我正在重新提出这个人的问题没有回答 如何将 PyOpenSSL 对象转换为 PEM 编码的字符串?
xcode - 无法连接到 ssl://gateway.push.apple.com:2195(连接超时)
Apple 推送通知让我快疯了!我按照Ray Wanderlich教程开发了我的应用程序和测试通知,一切正常,直到我将文件 .pem 更改为发行版,并将连接字符串从 gateway.sandbox.push-apple.com 更改为 gateway.push-apple。 com。
现在,如果我尝试发送消息,服务器会返回
php 文件和 .pem 文件位于 TMDHosting 上:我尝试询问他们是否关闭了端口号 2195,因为谷歌搜索我发现错误意味着端口已关闭。
不过,我不明白该错误是与证书相关还是与服务器相关。
奇怪的是,如果我按照终端程序测试 .pem 文件,一切似乎都正常
这让我认为这不是 .pem 问题......
我错了吗?
我已经在这里阅读了所有类似的问题,并尝试将端口号从 2195 更改为 30,但没有任何变化。提示?
编辑:我发现这似乎等于我的问题:TMDHosting 告诉我
...您位于共享托管环境下,无法为您打开端口。但是请注意,您在端口 2195 上建立连接的地址与我们的服务器无关。换句话说,您正在尝试在端口 2195 上建立与远程服务器的连接。为了建立与上述指定端口的连接,您应该确保该端口已为远程服务器上的传入连接打开,而不是在服务器上您在我们这里的帐户所依赖的。
我需要一个 VPS 吗?
编辑2:
在我遵循的教程中,我发现
..您将需要一个连接到互联网的服务器。推送通知始终由服务器发送。对于开发,您可以将 Mac 用作服务器(我们将在本教程中使用),但对于生产用途,您至少需要 VPS(虚拟专用服务器)之类的东西。便宜的共享主机帐户还不够好。您需要能够在服务器上运行后台进程、安装 SSL 证书并能够在某些端口上进行传出 TLS 连接。大多数共享主机提供商不允许您这样做,尽管如果您提出要求,他们可能会这样做。不过,我真的推荐使用像 Linode 这样的 VPS 主机。
最后,我认为我确实需要一个 VPS。你能确定吗? 但是为什么如果我使用沙盒服务器发送推送通知,它可以在没有 VPS 的情况下正常工作?
最后更新:(希望对某人有所帮助)似乎有一个错误,因为正确的是我无法从我的主机(TMDHosting)向沙箱或生产服务器发送推送通知:我的共享主机没有 2195端口开放。更改提供者:一切正常。
pem - 为 Google 管理域创建 .pem 文件
我用了这段代码
# 生成 RSA 密钥和证书
从这里: http ://code.google.com/apis/gdata/docs/auth/authsub.html#Registered
谷歌从他们自己的 ManageDomains 网站链接到此。我已经使用了代码,并将 pem 文件上传到了 Google。当我测试它时,它给了我这个错误:
SyntaxError:缺少 PEM 前缀
谁能指出我正确的方向,我已经浪费了几个小时。谢谢!
iphone - 如何使用终端将 .p12 文件转换为 .pem 文件?
我已经有一个development certificate in apple developer portal
. 我正在开发一个 iPhone 应用程序,我想在这个应用程序中集成 Apple 推送通知。我创建了一个new App ID
使用现有证书和enabled the Push Notification in this app id
. 我创建了一个new Provisioning Profile
使用新创建的应用程序 ID。在这些步骤之前,我已经创建并下载了.cer file from keychain access
. 完成这些步骤后created SSL (Apple Push Notification Service SSL certificate) file and installed
,我在我的 Mac 钥匙串访问中下载了新的。一旦我安装了这个文件,验证(那里有绿色勾号)和got the .p12 file from this ssl file
.
我按照苹果文档RemoteNotificationsPG.pdf
,在保存 .p12 文件后他们提到的这个文档中打开终端应用程序并输入以下推荐,
我在我的终端应用程序中使用了它,但出现了错误消息,即
您能否建议或指导我在哪里做错或在这些步骤中遗漏了什么?请帮我。提前致谢。
编辑:
我将我的 Certificates.p12 文件存储在我的桌面上。文件夹路径是Desktop->1/5/2012_Certificate->2/5/12->Certificates.p12
我'ls' command
在终端中使用过它没有列出我的 Certificates.p12 文件。
我已经输入cd *path*
了这个返回No such file or directory
。
请帮我。提前致谢。