我正在尝试发布一个可供其他应用程序使用的应用程序(意味着其他应用程序可以调用我的应用程序为它们提供一些服务).但是我看到当我使用我的default.keystore和其他应用程序(想要与我的应用程序通信)签署我的应用程序时,由其他一些default.keystore签名无法通信或调用我的应用程序.
如果我的应用和其他应用都使用相同的密钥库签名,则他们可以进行通信.
请问有人请指导我如何签署应用程序并让其他已签名的应用程序调用它?
我知道这个特定主题被问过很多次,但不幸的是,在我的情况下,他们都没有工作。这几天我一直在努力让它达到功能状态,但每次都失败了,所以我终于来这里问了。
我在服务器上有一个带有自签名证书的网络服务。如果我在浏览器中输入地址,我可以访问 wsdl 文件。浏览器只是提醒我,cert 存在一些问题。如果我点击继续,一切正常。遗憾的是,我对 SSL 知之甚少,因为这是我第一次使用 SSL 通信制作应用程序。在应用程序中,我只会得到异常“没有对等证书”或“未找到信任锚路径”取决于我使用的“解决方案”的类型。
我在 sslhopper.com 上运行测试,并收到一条警告:“并非所有 Web 浏览器都信任该证书。您可能需要安装中间/链证书以将其链接到受信任的根证书。” 这是Android开发中的严重问题还是可以通过某些代码解决?
所以我的问题实际上是,我怎样才能在应用程序中做“点击继续按钮”或任何事情以使其实际连接到服务器。在这种情况下,是证书本身有问题还是我在应用程序本身上做错了什么?
我有一个自签名的SSL证书和一个仅应信任此特定证书的Android应用。我使用HTTPS和自签名证书发行中的解决方案来接受所有证书,如何检查证书指纹并拒绝所有其他证书?
我正在开发一个Chrome应用,该应用通过SSL连接到服务器。当然,证书是自签名的。
在Chrome浏览器中,这不是问题,因为Chrome会打开一个安全警告页面。如果用户选择继续访问该网站,它将继续到远程页面。但是,在Chrome Apps中,它不会给出这样的警告页面,询问用户是否继续操作。而是在控制台中抛出了连接错误。
要解决此问题,用户必须连接到浏览器中的页面一次并接受证书,然后他/她才能在Chrome应用中继续操作。
我想知道如何直接在Chrome应用中解决此问题?
假设您有一个需要SSL的网站,并且您拥有生产服务器,您拥有由Verisign或其他受信任机构颁发的通配符证书.您还希望使用SSL在开发人员的计算机上本地运行它.
您是否会在开发人员的计算机上使用真实证书,或者您更愿意创建自签名证书?为什么?优点?缺点?
我个人会创建一个通配符自签名证书,原因如下:
我想在服务器和浏览器之间加密自签名证书给我的信息.我不必证明自己是我自己.
如果生产证书遭到破坏并被替换为新证书,则不会以任何方式影响我的开发人员的计算机.
如果我要使用真正的证书并且它被新的证书取代,我可能需要几天才能获得新证书的副本 - 特别是在开发人员不是处理购买证书的大型组织中.
我不确定真正的证书是否有任何限制 - 例如,它可以安装多少台机器是否有限制?例如,如果有5台计算机的限制,并且许多开发人员想要使用它,则可以超出限制.有了自签名的,我不必担心.
关于这个问题,有没有官方的"最佳实践"?
你的想法是什么?
我使用openssl创建了自己的自签名证书,该证书是在xampp中内置的.但是,我想编辑通用名称,这可能吗?有谁知道如何覆盖证书?
我已经创建了一个自签名证书并将其添加到keystore.jks,但是一旦在http-listener-2中通过管理控制台进行了配置,它就无法正常工作.默认"s1as"证书正常工作顺便说一句.
服务器信息:
Install directory: C:\Program Files\glassfish-4.0\glassfish
Installed version: GlassFish Server Open Source Edition 4.0 (build 89)
Run Code Online (Sandbox Code Playgroud)
我做了什么:
以管理员身份打开cmd
将keytool添加到PATH
set PATH=%PATH%;c:\Program Files\Java\jdk1.8.0_20\bin"
Run Code Online (Sandbox Code Playgroud)
生成密钥
C:\Program Files\glassfish-4.0\glassfish\domains\domain1\config>keytool -keysize
2048 -genkey -alias autofirmado -keyalg RSA -keystore keystore.jks -validity 360
Introduzca la contraseña del almacén de claves:
¿Cuáles son su nombre y su apellido?
[Unknown]: Myname
¿Cuál es el nombre de su unidad de organización?
[Unknown]: test
¿Cuál es el nombre de su organización?
[Unknown]: test2
¿Cuál es el nombre de su ciudad o …Run Code Online (Sandbox Code Playgroud) 我在用于测试我的服务的VM中有一个自签名证书.使用UIWebView中的答案来查看自签名网站(没有私人API,而不是NSURLConnection) - 是否可能?我能够编写功能强大的swift 2.0代码.Xcode 7告诉我NSURLConnection已弃用,我应该使用NSURLSession.我没有尝试迁移此代码,并且其他答案中描述的通常转换方案似乎都不适用.
如果我创建一个新NSURLSession的以便使用我的委托方法处理身份验证质询,那么其他负载仍会发生sharedSession,因此会失败.
var authRequest : NSURLRequest? = nil
var authenticated = false
var trustedDomains = [:] // set up as necessary
func webView(webView: UIWebView, shouldStartLoadWithRequest request: NSURLRequest, navigationType: UIWebViewNavigationType) -> Bool {
if !authenticated {
authRequest = request
let urlConnection: NSURLConnection = NSURLConnection(request: request, delegate: self)!
urlConnection.start()
return false
}
else if isWebContent(request.URL!) { // write your method for this
return true
}
return …Run Code Online (Sandbox Code Playgroud) 我在localhost(wamp)上设置了ssl,我使用GnuWIn32创建了ssl crt.
当我尝试在Chrome中使用fb登录时,我收到以下消息:
网址:
https://localhost/ServerSide/fb-callback.php?code=.....#_=_
Run Code Online (Sandbox Code Playgroud)
错误:
你的连接不是私人的.
攻击者可能试图从localhost窃取您的信息(例如,密码,邮件或信用卡).NET :: ERR_CERT_INVALID.localhost通常使用加密来保护您的信息.当Chrome尝试连接到本地主机时,该网站发回了异常且不正确的凭据.当攻击者试图伪装成本地主机或Wi-Fi登录屏幕中断连接时,可能会发生这种情况.您的信息仍然安全,因为Chrome在交换任何数据之前停止了连接.您现在无法访问localhost,因为该网站发送了Chrome无法处理的加密凭据.网络错误和攻击通常是暂时的,因此该页面可能会稍后运行.
我的SSL配置:
Listen 443
SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
SSLPassPhraseDialog builtin
SSLSessionCache "shmcb:c:/wamp/www/ssl/logs/ssl_scache(512000)"
SSLSessionCacheTimeout 300
<VirtualHost *:443>
DocumentRoot "c:/wamp/www"
ServerName localhost:443
ServerAdmin admin@example.com
ErrorLog "c:/wamp/logs/error.log"
TransferLog "c:/wamp/logs/access.log"
SSLEngine on
SSLCertificateFile "c:/wamp/www/ssl/ia.crt"
SSLCertificateKeyFile "c:/wamp/www/ssl/ia.key"
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory "c:/Apache24/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
BrowserMatch "MSIE [2-5]" nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
CustomLog "c:/wamp/logs/ssl_request.log" \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
我的问题是如何在localhost上设置有效的SSL证书?或者我是否需要编辑配置?
我正在与Nginx一起使用Nodejs / Express。我正在尝试通过Express路由进行https.request,这会导致自签名证书错误。我已使用以下方法解决了开发模式下的错误:
process.env.NODE_TLS_REJECT_UNAUTHORIZED =“ 0”
效果很好。我将在CentOS上部署我的应用程序。我的问题是如何避免在生产模式下出现相同的错误。Nginx也正在CentOS上使用。我尝试根据如何在CentOS 6的nginx上创建SSL证书在 CentOS上创建证书
但是,这不能解决目的,因为Node应用程序可以在任何CentOS VM上运行,并且我不想为每个虚拟机执行这些步骤。我可以从应用程序方面做些什么来避免生产中的此错误?
我在StackOverflow上已经遇到的一些类似问题是: