在android上使用SSL

在android上使用SSL,第1张

概述我在 android上编写应用程序,它将通过SSL与服务器连接并与他交换一些数据.这是我的服务器代码: import javax.net.ssl.SSLServerSocket;import javax.net.ssl.SSLServerSocketFactory;import javax.net.ssl.SSLSocket;import java.io.BufferedReader;im 我在 android上编写应用程序,它将通过SSL与服务器连接并与他交换一些数据.这是我的服务器代码:

import javax.net.ssl.SSLServerSocket;import javax.net.ssl.SSLServerSocketFactory;import javax.net.ssl.SSLSocket;import java.io.BufferedReader;import java.io.inputStream;import java.io.inputStreamReader;public class EchoServer {public static voID main(String[] arstring) {    try {        SSLServerSocketFactory sslserversocketfactory =                (SSLServerSocketFactory) SSLServerSocketFactory.getDefault();        SSLServerSocket sslserversocket =                (SSLServerSocket) sslserversocketfactory.createServerSocket(23423);        SSLSocket sslsocket = (SSLSocket) sslserversocket.accept();        inputStream inputstream = sslsocket.getinputStream();        inputStreamReader inputstreamreader = new inputStreamReader(inputstream);        BufferedReader bufferedreader = new BufferedReader(inputstreamreader);        String string = null;        while ((string = bufferedreader.readline()) != null) {            System.out.println("odpowIEdz z servera: "+string);            System.out.flush();        }    } catch (Exception exception) {        exception.printstacktrace();    }}}

这是我的客户:

package andr.andr;import java.io.BufferedReader;import java.io.BuffereDWriter;import java.io.inputStream;import java.io.inputStreamReader;import java.io.OutputStream;import java.io.OutputStreamWriter;import javax.net.ssl.SSLSocket;import javax.net.ssl.SSLSocketFactory;import androID.app.Activity;import androID.os.Bundle;import androID.vIEw.VIEw;public class AndroIDssl2Activity extends Activity {/** Called when the activity is first created. */@OverrIDepublic voID onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentVIEw(R.layout.main);}public voID fun(VIEw vIEw){     try {         SSLSocketFactory sslsocketfactory = (SSLSocketFactory) SSLSocketFactory.getDefault();         SSLSocket sslsocket = (SSLSocket) sslsocketfactory.createSocket("87.206.146.154",23423);         inputStream inputstream = system.in;         inputStreamReader inputstreamreader = new inputStreamReader(inputstream);         BufferedReader bufferedreader = new BufferedReader(inputstreamreader);         OutputStream outputstream = sslsocket.getoutputStream();         OutputStreamWriter outputstreamwriter = new OutputStreamWriter(outputstream);         BuffereDWriter buffereDWriter = new BuffereDWriter(outputstreamwriter);         String string = "Echo test";             buffereDWriter.write(string + '\n');             buffereDWriter.flush();     } catch (Exception exception) {         exception.printstacktrace();     }}}

我的问题在于我不知道如何将证书放到AndroID应用程序中.我不能使用开始参数:

java -Djavax.net.ssl.keyStore = mySrvKeystore -Djavax.net.ssl.keyStorePassword = 123456 EchoServer

java -Djavax.net.ssl.trustStore = mySrvKeystore -Djavax.net.ssl.trustStorePassword = 123456 EchoClIEnt

喜欢普通的java项目.那我怎么能把证书指向androID应用程序.我谷歌很多,没有找到任何东西,但我不相信我是唯一有问题的人.任何人都可以清楚地向我解释我该怎么做.谢谢你的帮助.

解决方法 您的工厂的↳androID.net.SSLCertificateSocketFactory和您的-D选项的System.setprop也许? 总结

以上是内存溢出为你收集整理的在android上使用SSL全部内容,希望文章能够帮你解决在android上使用SSL所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1124336.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-30
下一篇2022-05-30

发表评论

登录后才能评论

评论列表(0条)

    保存