1
下面是我的代碼片段,用於在我的android應用程序中構建SSL套接字。我有一個正試圖連接到的服務器。我已簽署的證書,而不是自簽名的,但我仍然收到錯誤,Android,Golang和SSL
trust anchor for certification path not found. android
SSLSocketFactory f = (SSLSocketFactory) SSLSocketFactory.getDefault();
try {
SSLSocket socket = (SSLSocket) f.createSocket(ip, port);
socket.startHandshake();
所以,我想不通,如果是因爲我的服務器沒有被正確或Android應用程序。我已經閱讀了關於這個錯誤的主要android網站,但它並沒有真正幫助我。
這裏是Go代碼,可能會提供一些線索某處
cert, err := tls.LoadX509KeyPair("mycert_com.crt", "key.pem")
checkError(err)
rootCert, err := ioutil.ReadFile("AddTrustExternalCARoot.crt")
checkError(err)
trustCert, err := ioutil.ReadFile("COMODORSAAddTrustCA.crt")
checkError(err)
validationCert, err := ioutil.ReadFile("COMODORSADomainValidationSecureServerCA.crt")
checkError(err)
certs := x509.NewCertPool()
certs.AppendCertsFromPEM(rootCert)
clientCerts := x509.NewCertPool()
clientCerts.AppendCertsFromPEM(trustCert)
clientCerts.AppendCertsFromPEM(validationCert)
sslConfig := tls.Config{RootCAs: certs, ClientCAs: clientCerts, Certificates: []tls.Certificate{cert}}
listener, err := tls.Listen("tcp", service, &sslConfig)
一直停留在這幾個星期。
感謝