Python server j2me client ssl socket handshake error
karzem
karol.zemanek at gmail.com
Mon Jul 31 16:00:48 EDT 2006
I try to write simple midlet in java to connect with my server which
monitors processes in my PC. I've written almost everything and now
I've spend 4 days trying to set up a connection between them. Without
ssl everything works fine.
Here is my fragment of server program:
def verify_cb(conn, cert, errnum, depth, ok):
print 'Got certificate: %s' % cert.get_subject()
return ok
HOST = "192.168.1.30"
PORT = 5007 # Arbitrary non-privileged port
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
ctx = SSL.Context(SSL.SSLv3_METHOD)
ctx.set_verify(SSL.VERIFY_NONE, verify_cb)
ctx.use_certificate_file('server.pem')
ctx.use_privatekey_file('server.pem')
ss = SSL.Connection(ctx,s)
ss.bind((HOST, PORT))
from src.xmlFunc import validateXml
while True :
ss.listen(1)
conn, addr = ss.accept()
print 'Connected by', addr
while True :
_data = conn.recv(1024)
print _data
if not _data: break
_data = "<request><type>req_auth</type></request>"
conn.send(_data)
conn.close()
in my client java application:
SecureConnection socket =
(SecureConnection)Connector.open("ssl://192.168.1.30:5007",Connector.READ_WRITE);
when I run server and client program the clients stops on line above.
Server accepts the connection and when I debug next line I get an
error:
[('SSL routines', 'SSL3_READ_BYTES', 'sslv3 alert handshake failure') ,
('SSL routines', 'SSL3_READ_BYTES', 'sslv3 alert handshake failure')]
What I know is that when I use : openssl s_client -connect
192.168.1.30:5007 -ssl3
the output is:
CONNECTED(00000003)
depth=0 /C=PL/ST=slaskie/L=pszczyna/O=Internet Widgits Pty Ltd/CN=aloha
verify error:num=18:self signed certificate
verify return:1
depth=0 /C=PL/ST=slaskie/L=pszczyna/O=Internet Widgits Pty Ltd/CN=aloha
verify return:1
---
Certificate chain
0 s:/C=PL/ST=slaskie/L=pszczyna/O=Internet Widgits Pty Ltd/CN=aloha
i:/C=PL/ST=slaskie/L=pszczyna/O=Internet Widgits Pty Ltd/CN=aloha
---
Server certificate
-----BEGIN CERTIFICATE-----
MIIDEzCCAnygAwIBAgIJALjQF38yg5s8MA0GCSqGSIb3DQEBBQUAMGUxCzAJBgNV
BAYTAlBMMRAwDgYDVQQIEwdzbGFza2llMREwDwYDVQQHEwhwc3pjenluYTEhMB8G
A1UEChMYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMQ4wDAYDVQQDEwVhbG9oYTAe
Fw0wNjA3MjExMjE3MTJaFw0wNzA3MjExMjE3MTJaMGUxCzAJBgNVBAYTAlBMMRAw
DgYDVQQIEwdzbGFza2llMREwDwYDVQQHEwhwc3pjenluYTEhMB8GA1UEChMYSW50
ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMQ4wDAYDVQQDEwVhbG9oYTCBnzANBgkqhkiG
9w0BAQEFAAOBjQAwgYkCgYEAwqnpUJmd/0Osw8GxMmDAaxIrjxOqKMOwmlTO8cFG
KOFaNJsPt3J8niCwO+Wr8dyndOYVE2qGXll93Kc4hC3EiSup5VRs+ZeFcqtjBTVF
lzRFDP6VXkbUg7Y+urAVAN+tJnk4WFU/saYaaL+tXQUEqTfJZSsM+1CvJQLYojHt
BosCAwEAAaOByjCBxzAdBgNVHQ4EFgQUYJkhg0zJx4Whi6xx+Ln+goCzQfowgZcG
A1UdIwSBjzCBjIAUYJkhg0zJx4Whi6xx+Ln+goCzQfqhaaRnMGUxCzAJBgNVBAYT
AlBMMRAwDgYDVQQIEwdzbGFza2llMREwDwYDVQQHEwhwc3pjenluYTEhMB8GA1UE
ChMYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMQ4wDAYDVQQDEwVhbG9oYYIJALjQ
F38yg5s8MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAfayADZebF1W5
Vgbzx0J5Y3B6QvmzshVYetfg+XKIe44G+2YKTYFZ/Db0BKpgBJLGmPzB0ZeFh++A
UcjxKrxVKCRiqCpaADSf/RY4XrYfO9d6p/zS1P6LuPgiTEzvGpXu01wtIq054EkG
K1p2KEQB9N5DWw9whYk8M3H2LGaV00E=
-----END CERTIFICATE-----
subject=/C=PL/ST=slaskie/L=pszczyna/O=Internet Widgits Pty Ltd/CN=aloha
issuer=/C=PL/ST=slaskie/L=pszczyna/O=Internet Widgits Pty Ltd/CN=aloha
---
No client certificate CA names sent
---
SSL handshake has read 985 bytes and written 329 bytes
---
New, TLSv1/SSLv3, Cipher is AES256-SHA
Server public key is 1024 bit
Compression: zlib compression
Expansion: zlib compression
SSL-Session:
Protocol : SSLv3
Cipher : AES256-SHA
Session-ID:
BB7FEA77B05B6B52C7F887D7F55DD2E31022B56CA11A865BDB1D5B008CE8DB1A
Session-ID-ctx:
Master-Key:
E40115FC6FA4AB99137AE92DFAF811F20E79563846A91410172416FE0324CF253AF82722ED41A56C4C7A9F0B3460F27B
Key-Arg : None
Compression: 1 (zlib compression)
Start Time: 1154375647
Timeout : 7200 (sec)
Verify return code: 18 (self signed certificate)
---
I've read tons of tutorials and still have nothing what gives me the
solution of this problem.
I have Python 2.4.3 (#2, Apr 27 2006, 14:43:58)
[GCC 4.0.3 (Ubuntu 4.0.3-1ubuntu5)] with OpenSSL 0.9.8a 11 Oct 2005
Can somebody help me...
Best regards, Charles Zemanek
More information about the Python-list
mailing list