zoukankan      html  css  js  c++  java
  • ESA2GJK1DH1K安全篇: Android以SSL(单向认证)方式连接MQTT服务器

    ------------恢复内容开始------------

    不导入证书方式

      1.增加以下代码

      

        static class miTM implements TrustManager, X509TrustManager {
            public X509Certificate[] getAcceptedIssuers() {
                return null;
            }
            public boolean isServerTrusted(X509Certificate[] certs) {
                return true; }
            public boolean isClientTrusted(X509Certificate[] certs) {
                return true;
            }
            public void checkServerTrusted(X509Certificate[] certs, String authType)
                    throws CertificateException { return; }
            public void checkClientTrusted(X509Certificate[] certs, String authType)
                    throws CertificateException { return; }
        }
            try{
                TrustManager[] trustAllCerts = new TrustManager[1];
                TrustManager tm = new miTM();
                trustAllCerts[0] = tm;
                SSLContext sc = SSLContext.getInstance("SSL");
                sc.init(null, trustAllCerts, null);
                SocketFactory factory = sc.getSocketFactory();
                mqttConnectOptions.setSocketFactory(factory);
            }catch (Exception e){
                Log.e(TAG, e.toString() );
            }

    2.具体添加的位置

      

    3.修改为SSL连接,端口号改为8883

      

      

    4.测试

      

    ------------恢复内容结束------------

  • 相关阅读:
    机器学习实战-学习笔记-第一章
    Spark高级数据分析中文版-读者交流
    AAS代码第2章
    AWS-CDH5.5安装-软件下载
    AWS-CDH5.5安装 CM配置节点
    AWS-CDH5.5安装-安装
    Spark-1.5.1 on CDH-5.4.7
    tpch-kudu
    kudu playground
    CDH5.4.5运行多字符分割记录
  • 原文地址:https://www.cnblogs.com/yangfengwu/p/12289258.html
Copyright © 2011-2022 走看看