带有 SSL 的 Android 应用程序

2024-01-03

我知道这个特定的主题被问过很多次,但不幸的是,就我而言,它们都不起作用。在过去的几天里,我试图让它恢复正常状态,但每次都失败,所以我终于来这里询问。

我的服务器上有一个带有自签名证书的网络服务。如果我在浏览器中输入地址,我就可以访问 wsdl 文件。浏览器只是提醒我,证书存在一些问题。如果我点击继续,一切都会正常。遗憾的是我对 SSL 知之甚少,因为这是我第一次使用 SSL 通信制作应用程序。在应用程序中,我只会得到异常“没有对等证书”或“未找到信任锚路径”,具体取决于我使用的“解决方案”的类型。

我在 sslhopper.com 上运行测试,收到一条警告:“该证书在所有 Web 浏览器中均不受信任。您可能需要安装中间/链证书才能将其链接到受信任的根证书。”这是 Android 开发中的一个严重问题还是可以通过某些代码解决?

所以我的问题实际上是,我如何在应用程序中执行“点击继续按钮”或任何使其实际连接到服务器的操作。在这种情况下,是证书本身有问题还是我在应用程序本身上做错了什么?


如果您尝试进行客户端身份验证,则需要两件事:

  1. 颁发服务器证书的 CA 证书
  2. 您的应用程序的客户端证书。

您必须将 1. 放入您的应用程序的信任存储库中,并 2. 放入密钥库中。示例代码需要 PCKS#12 作为密钥库,您有吗?给了你什么文件?此时,最好阅读 JSSE 参考资料,以便您了解系统的工作原理:

http://docs.oracle.com/javase/6/docs/technotes/guides/security/jsse/JSSERefGuide.html http://docs.oracle.com/javase/6/docs/technotes/guides/security/jsse/JSSERefGuide.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

带有 SSL 的 Android 应用程序 的相关文章

随机推荐

  • 使用 bazel 覆盖率生成 lcov 覆盖率文件时,未创建输出“_coverage/_coverage_report.dat”

    我正在使用 bazel 来管理我们的 golang 项目 我在网上找到了一个选项 我可以通过先生成 lcovcoverage dat 文件来生成覆盖率 html 文件 然后使用 genhtml 生成 html 然而 我却无法成功迈出第一步
  • 确定单元格是否通过 Excel 中的 VBA 链接到查询表

    我使用 QueryTables 将 Excel 工作表链接到数据源 效果很好 我想引入逻辑来检查给定单元格并确定该单元格是否是现有查询表的左上角 这在概念上似乎微不足道 但在实践中却被证明是难以捉摸的 如果我尝试检查与 QueryTable
  • 安卓。警报管理器在奇怪的时间触发

    我使用以下代码设置重复闹钟 每 5 分钟一次 public void SetAlarm Context context AlarmManager am AlarmManager context getSystemService Contex
  • 将列更改为默认 SYSDATE 的 DATE 的 SQL 语句(Oracle)是什么?

    我得到了一个表名 kundorder 和列名称 datum 我想将数据类型更改为 DATE SYSDATE 但我无法让它工作 我认为它应该看起来像这样 ALTER TABLE kundorder MODIFY datum DATE DEFA
  • 在 iFrame 中使用 Google 云端硬盘不起作用

    我在 iFrame 中使用 Google Drive 时遇到了一些问题 通常 在 iFrame 中使用它无论如何都不是一个好主意 但这是为了教学 Google Drive 学生可以编写一些代码 然后他们可以预览它 预览需要在 iFrame
  • 在 Uint8Array 中搜索多字节模式

    我有一个 nodejs 脚本 我想在其中解析 MP3 帧 这些帧很容易检测 因为每个帧都以两个字节开头0xff 0xfb 我正在使用一个Uint8Array访问该文件的字节 使用 indexOf call data 0xff 我可以轻松搜索
  • IE 中的 Google Maps API v3 不显示地图或标记

    我们最近从 Google 地图 v2 升级到 v3 现在标记和地图将不会在任何版本的 IE 中显示 它适用于所有其他浏览器 控制台显示 Stack Overflow 错误 我们认为这与标记和 或标记的创建有关 我们禁用了 fitbounds
  • Numpy where 返回空数组

    我有一个数组 例如 a 5 1 3 0 2 我应用 where 函数 np where a 2 输出是一个空数组 array dtype int64 我发现了同样的问题here https stackoverflow com questio
  • Visual Studio 2015 - 连接到 Visual Studio 库进行扩展和更新时出现 Visual Studio 库错误

    当尝试从扩展和更新获取 Visual Studio 扩展时 我收到以下错误 向 Visualstudiogallery msdn microsoft com Services VStudio Extension svc 发出 HTTP 请求
  • 如何在单文件组件中使用 VueJS 2 全局组件?

    我正在尝试使用全局注册的组件 带有Vue 组件 在单个文件组件中但我总是得到 vue common js 2611 Vue warn Unknown custom element
  • 如何使用 System.Text.Json 将 double[] 二维数组序列化为 JSON?

    我需要写一个double 使用 System Text Json 转换为 JSON 文件 但此序列化程序不支持二维数组 我需要一些帮助来转换我的double to a List
  • PyPy 中的 GIL 在哪里?

    PyPy GIL 是 RPython 中 PyPy 解释器实现的一部分 还是 translate py 自动添加的东西 也就是说 如果我用 RPython 编写自己的新语言解释器并通过 translate py 运行它 它是否会先验地受到
  • 如何向网页添加自定义右键菜单?

    我想向我的 Web 应用程序添加自定义右键菜单 可以在不使用任何预构建库的情况下完成此操作吗 如果是这样 如何显示一个不使用第 3 方 JavaScript 库的简单自定义右键菜单 我的目标是像 Google Docs 那样 它允许用户右键
  • 提示用户从 Dropbox 下载时保存

    我想要一个从 Dropbox 下载文件的链接 该链接会提示用户而不是在浏览器中显示该文件 这可能需要将内容处置标头设置为 附件 我目前正在使用 Dropbox 媒体 URL 如下所述 https www dropbox com develo
  • C2039:类不是命名空间的成员

    法师 接口 Context h pragma once include
  • onResume 手机屏幕锁定时被反复呼叫

    看来 如果手机屏幕锁定时某个 Activity 位于前台 广播事件和 或唤醒锁将导致该 Activity 的 onResume 被调用 无论它们是否适用于您的应用程序 即使您不以任何方式与手机交互 也会发生这种情况 不解锁它 不触摸它 不做
  • Android 上的 SQLite 数据库有大小限制吗? [复制]

    这个问题在这里已经有答案了 我想将 db 文件内部存储在设备 SD 卡中 并希望从中访问数据 有人可以告诉我们在我们的 Android 应用程序中可以检索的 db 文件的最大大小吗 没有任何内存异常 SQLite 的最大大小为 10MB 到
  • 类型类与代数数据类型?

    我经常开始考虑要定义的类型类方面的问题 并意识到当我开始编码时我不需要类型类 并且可以使用代数数据类型来解决我的问题 这看起来更简单 因此 我想知道什么时候需要类型类 据我了解 类型类是表示某些类型存在某些函数的一种方式 例如 当类型 My
  • 迭代 openpyxl 中的只读工作簿中的列

    我有一个有点大的 xlsx 文件 19 列 5185 行 我想打开文件 读取一列中的所有值 对这些值执行一些操作 然后在同一工作簿中创建一个新列并写出修改后的值 因此 我需要能够在同一个文件中读取和写入 我原来的代码是这样做的 def re
  • 带有 SSL 的 Android 应用程序

    我知道这个特定的主题被问过很多次 但不幸的是 就我而言 它们都不起作用 在过去的几天里 我试图让它恢复正常状态 但每次都失败 所以我终于来这里询问 我的服务器上有一个带有自签名证书的网络服务 如果我在浏览器中输入地址 我就可以访问 wsdl