如何使用 Cordova 在 Android 中实现 SSL Pinning - 总是失败

问题描述 投票:0回答:2

大家好,我正在尝试使用 Cordova 在我的项目中实现 SSL pinning。但是我尝试了多种方法,但仍然不起作用。

从过去 1 个月开始尝试这个。谁能帮帮我吗

以下链接: https://github.com/silkimen/cordova-plugin-advanced-http

SSL 固定链接

从 Android Perspective 中,我下载了证书并在放置我的 .cer 证书的新文件夹下创建了新文件夹,并且提供了 network-security-config.xml 文件。

但不幸的是没有工作

android cordova ssl
2个回答
0
投票

我不知道您正在使用的插件。 但我正在为我的 Cordova 应用程序使用这个插件

URL:https://github.com/EddyVerbruggen/SSLCertificateChecker-PhoneGap-Plugin

  1. 安装插件

    cordova plugin add cordova-plugin-sslcertificatechecker
    
  2. 获取您的URL的SSL证书指纹。

  3. 在index.js中的onDeviceReady函数中实现。

    onDeviceReady: function () {
         var server = "https://build.phonegap.com";
         var fingerprint = "C6 2D 93 39 C2 9F 82 8E 1E BE FD DC 2D 7B 7D 24 31 1A 59 E1 0B 4B C8 04 6E 21 F6 FA A2 37 11 45";
    
    
         window.plugins.sslCertificateChecker.check(
                successCallback,
                errorCallback,
                server,
                fingerprint);
    
         function successCallback(message) {
             alert(message);
             // Message is always: CONNECTION_SECURE.
             // Now do something with the trusted server.
             try {
                  if (message === 'CONNECTION_SECURE') {
                      window.location.href = URL;
                      this.setMessage('Connection secured! connecting to server');
                      return;
                  }
             } catch (err) {
                  this.setMessage('Unable to secure the connection');
             }
         }
    
         function errorCallback(message) {
             alert(message);
             if (message === "CONNECTION_NOT_SECURE") {
                 // There is likely a man in the middle attack going on, be careful!
             } else if (message.indexOf("CONNECTION_FAILED") >- 1) {
                // There was no connection (yet). Internet may be down. Try again (a few times) after a little timeout.
             }
         }
    }
    
    setMessage: function (message) {
         document.getElementById("connectionStatus").innerHTML = message;
     },
    

0
投票

可以使用 https://github.com/EddyVerbruggen/SSLCertificateChecker-PhoneGap-Plugin 使用中级证书?是否可以使用 intermeadite cer 代替 cer ? 塔克恩斯

© www.soinside.com 2019 - 2024. All rights reserved.