Changes between Version 1 and Version 2 of TLS_on_Symbian
- Timestamp:
- Aug 31, 2009 3:14:59 PM (15 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
TLS_on_Symbian
v1 v2 4 4 [[PageOutline(2-3,,inline)]] 5 5 6 PJSIP provides SSL/TLS via secure socket abstraction, {{{pj_ssl_sock_*}}}, which can be used by the higher level applications, such as SSL/TLS SIP transport. On Symbian platforms, the secure socket implementation is done natively using {{{CSecureSocket}}} class.6 PJSIP provides secure communications via secure socket abstraction, {{{pj_ssl_sock_*}}}, which can be used by the higher level applications, such as SSL/TLS SIP transport to perform secure SIP signaling. On Symbian platforms, the secure socket implementation is done natively using {{{CSecureSocket}}} class. 7 7 8 8 [[BR]] … … 10 10 == Scope == 11 11 Secure socket implementation on Symbian provides: 12 1. Transparent SSL/TLS operations, application uses the secure socket basically the same way as normal socket, e.g: when connection completion status is reported (via callback) as successful, it means that both the underlying socket connection and the SSL/TLS handshake are successful.12 1. Transparent SSL/TLS operations, application uses the secure socket basically the same way as using normal socket, e.g: when connection completion status is reported (via callback) as successful, it means that both the underlying socket connection and the SSL/TLS handshake are successful. 13 13 1. Active socket operations as provided by [[http://www.pjsip.org/pjlib/docs/html/group__PJ__ACTIVESOCK.htm Active Socket I/O]]. 14 14 1. List of trusted Certificate Authorities (CA) is based on Symbian Certificate Management, e.g: in E65, Main Menu > Tools > Settings > Security > Certificates Management. … … 18 18 1. Only support for client mode ({{{CSecureSocket}}} limitation). 19 19 1. Specifying client credential (e.g: certificate and the corresponding private key) is not supported ({{{CSecureSocket}}} limitation), so secure socket may not be able to connect to server that requires client certificate. 20 1. Currently, server certificate verification is only done internally by {{{CSecureSocket}}}, further verification mechanism by application (e.g: via callback) is not supported. Notethat untrusted server certificates result in a user dialog.20 1. Currently, server certificate verification is only done internally by {{{CSecureSocket}}}, further verification mechanism by application (e.g: via callback) is not supported. '''Note''' that untrusted server certificates result in a user dialog. 21 21 1. Managing (adding/editing/deleting) entry of trusted CA list should be handled by application. 22 22 … … 34 34 #define SIP_PROXY "<sip:some_proxy;transport=tls;lr>" 35 35 }}} 36 Notethat without registering an account into a registrar, symbian_ua will not be able to be contacted (e.g: receive calls), as the secure socket backend ({{{CSecureSocket}}}) can only work as client.36 '''Note''' that without registering an account into a registrar, symbian_ua will not be able to be contacted (e.g: receive calls), as the secure socket backend ({{{CSecureSocket}}}) can only work as client. 37 37 38 38 == Building your own application using SSL/TLS on Symbian == 39 1. If the low levelsecure socket is needed, include {{{ssl_sock.h}}}:39 1. If the '''low level''' secure socket is needed, include {{{ssl_sock.h}}}: 40 40 {{{ 41 41 #include<pj/ssl_sock.h> 42 42 }}} 43 1. When using PJSUA-LIB, SIP transport TLS can be enabled by instantiating SIP transport type {{{PJSIP_TRANSPORT_TLS}}}, e.g (captured from symbian_ua {{{ua.cpp}}}):43 1. When '''using PJSUA-LIB''', SIP transport TLS can be enabled by instantiating SIP transport type {{{PJSIP_TRANSPORT_TLS}}}, e.g (captured from symbian_ua {{{ua.cpp}}}): 44 44 {{{ 45 45 pjsua_transport_config tcfg; … … 53 53 // e.g: "<sip:some_proxy;transport=tls>" 54 54 }}} 55 1. Linkthe application to {{{securesocket.lib}}}, by specifying the library in the application MMP:55 1. '''Link''' the application to {{{securesocket.lib}}}, by specifying the library in the application MMP: 56 56 {{{ 57 57 LIBRARY securesocket.lib