Android实现HTTPS自签名证书——软件测试圈软件测试文章

HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议。简单来说,HTTP是超文本传输协议,信息是明文传输。SSL是指安全套接字层,它是一项标准技术,使用加密算法打乱传输中的数据,可确保互联网连接安全。

所以HTTPS是超文本传输安全协议。

TLS(传输层安全)是更为安全的升级版SSL。由于SSL这一术语更为常用,因此我们仍然将我们的安全证书称作SSL。

如果某个网站受SSL证书保护,其相应的URL中会显示HTTPS,单击浏览器地址栏的挂锁图标,即可查看证书详细信息,包括颁发机构和网站所有者的公司名称。

1.1Https的优点:

一般支持HTTPS的网站,都是CA(CertificateAuthority)机构颁发的证书,一般机构颁发的证书都是需要交费的,购买受信任机构颁发的证书每年要交100到500美元不等的费用,到期就需要续费。如果证书过期、已被吊销或者非证书所代表的域名,都是不被浏览器信任的。不被浏览器信任,也就无法通过网络直接访问。

我们可以使用自签名的方式,花一分钱让网络能正常的访问获取到服务器数据,访问链接时手动信任该证书或忽略证书验证,以后就不会继续拦截了。

自签名证书不适合大众,大众看见浏览器给出的警告(提示“不安全”),感觉怪吓人的!

如果用于网站的证书需要被大众信任,就不要使用自签发的证书,建议向证书签发机构购买一个。

通过自签发的方式,可以加密数据,还是适合公司内部使用的。

自签名证书就是没有通过受信任的证书颁发机构自己给自己颁发的证书.

SSL证书大致分三类:

由安卓认可的证书颁发机构(如:VeriSign、DigiCert),或这些机构的下属机构颁发的证书.

没有得到安卓认可的证书颁发机构颁发的证书.

自己颁发的证书,分临时性的(在开发阶段使用)或在发布的产品中永久性使用的两种.

以下是客户端配置

OkHttp是一款开源的处理网络请求的轻量级框架,有Square公司贡献,用于替代HttpUrlConnection与ApacheHttpClient。OkHttp使用完全教程

2.2如何生成keystore

通过JDK自带的keytool.exe生成一个自己的证书,终端输入keytool-genkey-v-keystoreandroid.keystore-aliaswenzhibin-keyalgRSA-validity20000-keystore/Users/jxxxx/yanhuomatou2015.keystore,然后回车,按提示填写余下的环节即可生成证书如下图:

注意:wenzhibin是keystore文件的别名,20000是keystore文件的有效期(天),/Users/jxxxx/是生成到哪里去(自己指定一个路径),yanhuomatou2015.keystore是keystore文件的名字。

2.3通过keystore文件如何导出自签名证书

终端输入keytool-exportcert-aliaswenzhibin-fileyanhuomatou2015.cer-keystoreyanhuomayou2015.keystore,回车即可导出证书。

2.4如何使用自签名证书

首先获取证书流有两种方式,

第一种方式:将导出的证书放到assets文件夹里面,然后获取(这种方式证书会被打包到apk里)

第二种方式:打开证书,拷贝证书里的内容,定义成字符串常量,再将字符串转为流的形式(这种方式证书就不会被打包到apk里)

然后创建秘钥,添加证书进去,接着创建信任管理器工厂并初始化秘钥

最后获取SSL上下文对象,并初始化信任管理器

以下是服务端配置

4.2右键Finder—>前往文件夹—>~/Library/目录下。

把下载完成的压缩包解压,命名为Tomcat,拷贝到这里。

4.3打开终端,输入cd/Users/jxxxxx/Library/Tomcat/bin,然后回车

(ps:jxxxxx是你mac电脑的用户名。也可以直接输入cd,然后把Tomcat的bin目录拖到终端即可)

4.4再输入:./startup.sh,回车

如果出现Permissiondenied就是操作失败,缺少权限。再输入sudochmod755*.sh,回车,接着输入./startup.sh,就可以启动Tomcat了:

出现Tomcatstarted就说明服务器打开了。

(ps:sudoshshutdown.sh关闭服务器,然后再输入sudoshstartup.sh打开服务器,表示服务器重启)

4.5打开我们的浏览器

5.1在ROOT目录下新建json数据,如图

5.2在conf文件夹下。

之前生成的keystore文件拷贝到conf文件夹下,并打开serve.xml,修改配置,注意,红框里的内容都是新添加进去的配置,而且keystoreFile=“填写自己的keystore文件名”keystorePass=“keystore文件密码”。

5.3最后保存退出。

打开终端输入sudoshshutdown.sh,再输入sudoshstartup.sh,待服务器重起成功。

手动信任证书点击”高级“—>“继续前往”,最终看到了服务器返回了yanhuomatou2015.json的数据。

7.1使用android原生框架实现,如下图

7.2除了上面的原生框架实现。

总结:不管用原生还是第三方框架,都能成功获取tomcat服务器的数据,如下图androidstudio打印的:

THE END
1.在电子合同上签字用什么软件免费法律咨询确保所使用的软件符合相关法律法规要求,以保障电子合同的有效性和可靠性。同时,要妥善保管签名后的电子https://www.66law.cn/question/50610516.aspx
2.签名软件下载签名软件合集签名软件免费下载签名软件下载-签名软件合集-签名软件免费下载 数字签名大全,支持应用程序数字签名、ActiveX控件数字签名、64位驱动程序数字签名,包含了微软签名工具的所有功能。内置免费测试证书,一键安装和签名测试。随时对证书进行备份和恢复。代码签名,驱动签名一应俱全,支持文件或文件夹直接拖放签名。华军小编给大家整理推荐了各类免费的https://m.onlinedown.net/zt/46068/
3.签名软件下载签名软件免费下载[签名软件有哪些]签名软件广泛应用于商业和个人领域,例如商务谈判、合同签署、信件往来、社交媒体等场合。如果你想了解签名软件的话,那就来天极下载签名软件专题吧,这里不仅有优秀的签名软件,而且还有与其相关的教程、资讯,保证让你满意。需要签名软件的,会按照小编所给的排行,下载使用吧!https://mydown.yesky.com/zt/2633.html
4.十大签名软件推荐电子签名软件哪个好好用的签字软件有哪些→电子签名软件,可一键生成个性动画艺术签名,动画签名由专业签名设计师量身打造,播放随意控制,笔迹顺序一目了然,轻松自学各种艺术签名字体;相册照片添加动画签名,一键导出个性签名视频,支持图片美化,背景更改,添加贴纸等功能。软件还提供一笔签名、公文签名、动画签名、英文签名、潇洒签名、卡通签名等几十种签名,支持多种风https://www.360doc.cn/article/41549148_1052772587.html
5.签名软件排行榜前十名偏玩手游盒子分享十大签名软件排行榜前十名手机应用,编辑为您推荐手机签名软件排行榜第一名到前5名到前十名的应用。找签名软件有哪些、签名软件哪个好用,上偏玩手游盒子https://m.pianwan.com/s/zj-624799
6.电子签名软件好用的电子签名软件推荐电子签名软件是一种支持在各种文档和系统中实现数字签名、电子签章、手写签批等功能的软件。它广泛应用于党政机关、大型国有企业、外资企业、中小企业等领域,有效地解决了电子商务、办公审批、电子合同签章、公文审批、图纸盖章、手写签批等应用需求。本次就为感兴趣的用户整理了一些电子签名软件,来看看有哪些好用的https://www.xiazaiba.com/hotsoft/diamnziqianming/?ty
7.软件签名证书及使用说明签名证书令牌软件签名证书及使用说明 无论您选择哪种类型的代码签名证书,使用数字证书对.exe进行签名都比您想象的要容易。而Microsoft SignTool使这个过程更加简单。 步骤 1.购买代码签名证书从Gworg选择受信任的证书(如果要获得即时性信任,必须选择EV证书),然后购买代码签名证书和安全USB 令牌。http://k.sina.com.cn/article_3174528725_bd3776d500101tee0.html
8.PP助手:iOS签名证书软件的使用注意事项iOS签名什么是iOS签名证书软件 iOS签名证书工具即为用于iOS设备上运行的应用程序分发的软件。iOS研发者在开发完成iOS应用后,需要对其进行签名,再由第三方工具发布系统进行分发。然而苹果公司要求,iOS设备只能安装来自官网应用商店的应用,未签名的应用是能够加装在iOS设备上的。因此,iOS签名证书工具的用处在于帮助研发者对其应用进行http://m.1024apple.cn/h-nd-1065.html
9.软件签名证书在线一键生成安卓Android证书jks文件通过安卓证书制作工具一键制作android证书,在线生成jks证书文件,自定义别名及密码等信息,自动获取md5签名sha1&sha256签名 免费使用 1 2 免费制作安卓证书 Q:什么是安卓证书工具?解释 A:安卓证书工具是一门推出的android证书云端制作工具,可一键在线生成安卓JKS证书文件,jks证书文件请妥善保存哦。 http://zaixian.yimenapp.com/anzhuo-zhengshu-196.html
10.代码签名对软件/驱动实现数字签名和保护使用代码签名证书,软件直接展示发行商信息,增强用户信任,同时消除安全顾虑,提供流畅的体验感,有助于提高下载量。 代码签名,守护信任, 提升软件接纳度 一目了然的运维平台 全链路自动化管理SSL证书生命周期。提高管理效率,降低安全风险,满足企业在不同场景下对SSL证书所有的需求 https://ssltrus.cn/ssl/code-signing-certificate/
11.微软代码签名证书使用图文教程(微软代码签名证书使用图文教程怎么微软代码签名证书(Microsoft Authenticode Code Signing CA)是一种数字证书,用于对软件进行数字签名,通过使用微软代码签名证书,软件开发者可以确保其软件在传输过程中不被篡改,同时向用户证明软件的开发者身份和软件的完整性。 二、为什么需要使用微软代码签名证书? https://www.kdun.com/ask/58899.html
12.代码签名证书申请网开发商所发行的代码程序或内容若通过代码签名验证可提升软件的下载、采用率和发行率。 消除”不明发行商”的安全警告 安装代码签名证书可消除Internet Explorer以及Windows操作系统中弹出的「不明发行商」警告。 保护发行商身份安全 防止使用者下载到含有恶意档案的代码程序及内容。确保终端用户知道该软件是合法的,且该代https://cs.anxinssl.com/
13.AdobeAIR*对AIR文件进行数字签名ADT 可以访问的 Keystore 格式取决于用于运行 ADT 的 Java 运行时的版本和配置。访问某些类型的 Keystore(例如 PKCS11 硬件令牌)可能需要安装和配置附加的软件驱动程序和 JCA 插件。 若要对 AIR 文件进行签名,可以使用大部分现有的代码签名证书,也可以获取一个专门为对 AIR 应用程序进行签名而颁发的新证书。例如,https://help.adobe.com/zh_CN/air/build/WS5b3ccc516d4fbf351e63e3d118666ade46-7ff0.html
14.微软代码签名证书双证书文件(.pvk/.spc)签名指南重要告示:任何证书拥有者都不得使用其购买的代码签名证书为间谍软件、流氓软件、黑客软件等恶意软件和盗版软件进行数字签名,也不得在违反国家有关法律法规的网站上使用,否则,一经用户举报和查实,WoSign可以立刻吊销此证书,不但不退款,而且还会配合有关部门追究可能由此带来的一切法律责任。 https://www.wosign.com/Support/signcode_guide.htm
15.代码签名证书申请代码签名证书是对开发的代码软件进行的数字签名认证服务。 拥有代码签名的软件程序可以减少下载时弹出的安全警告,避免被系统拦截,并且保证代码完整性,使开发厂商信息对下载用户公开可见,从而建立良好的软件品牌信誉度。 查看价格联系客服 代码签名证书为软件开发商提供了一个解决方案,使得软件开发商能对其软件代码进行数字签https://www.shuzizhengshu.com/html/code-signing/
16.软件加上代码签名证书后就不会被杀毒软件报病毒了吗?一般软件开发者经常通过代码签名证书来给自己的软件代码签名,以保证软件代码不被恶意篡改,保证用户下载的软件程序是完整的。购买代码签名证书的好处远远不仅以此。还表现在这几个方面。 防止黑客将恶意软件隐藏进原本已受信任的软件代码中,保证了用户安装使用时不会被恶意代码或病毒侵袭。 提供免费的时间戳服务,用户在https://ssldun.net/html/basis_cn/show-1648.html
17.如何验证电子签名?哪个软件的电子签名功能易使用?一、如何验证电子签名? 1. 查看签名证书:查看签名的证书,通常在文档或邮件的属性中能找到。确认证书的颁发机构和签名者是否可信。 2. 验证数字签名:使用相应的验证软件或在线验证工具,验证数字签名的有效性,如福昕编辑器个人版。 3. 验证文档完整性:验证签名后,可以将文档进行哈希值比较,以确保签名后文档的完整性https://www.foxitsoftware.cn/pdfbianji/news/6069.html
18.沃通发布WoSignCode代码签名工具,一键搞定代码签名双证书服务+双证书签名工具是沃通(WoSign)全球首推的解决用户兼容难题的技术创新,自主研发双证书签名工具给用户免费使用,代码签名证书在价格不变的情况下提供双证书服务。这种模式让全球软件开发者无需增加成本,即可轻松为软件代码实现双证书签名,彻底解决用户的难题,也体现了沃通始终以解决用户需求为根本的服务理念。 https://www.ovssl.cn/1368.html
19.有效期到2026年的IOS企业IPA软件证书苹果签名证书对于喜欢安装一些ipa软件资源包的用户来说,签名是一个常见的问题。 为了解决这个问题 可以使用牛蛙助手、TrollStore等工具进行自助签名。 然而,个人证书的有效期只有7天,而企业证书则更长一些。 程序演示图: THE END 软件程序 喜欢就点个赞再走呗~ 12赞赏 https://www.yizhanzzw.com/38885.html
20.Certum云SimplySign代码签名证书使用教程常见问题登录后软件会最小化到状态栏,选中软件图标右键Manage certificates点开Certificate list会弹出您的证书信息,如下图所示: 双击您的证书,可以找到您证书对应的指纹和证书有限期,如下图所示: 使用Signtool 进行签名,请参考以下命令: signtool sign /v /fd sha256 /sha1 51959036913d91b4317c4b6520e5956e1 /tr httphttps://www.ssldun.com/html/prproblem/show-531.html
21.代码签名(CodeSigning)腾讯云开发者社区易用性:从我目前使用体感来说代码签名证书更容易设置和使用。GaraSign 则需要搭建服务和安装、配置客户端,非常繁琐。 其他签名工具还包括微软的SignTool.exe[3],Dockertrust sign[4]等,这里就不一一介绍了。 结论 通过代码签名,开发者可以增加软件的安全性和可信度,同时帮助用户避免恶意软件和篡改的风险。在今天的https://cloud.tencent.com/developer/article/2413807
22.使用DeveloperID为Mac软件签名macOS 中的“门禁”会检查在 Mac App Store 以外地方的 App 中是否配有 Developer ID 证书,避免用户下载和安装恶意软件。https://developer.apple.com/cn/developer-id/