I'm using GCD AsyncSocket to create client application to connect to server java create by SSLServer Socket with self-sign certificate. With one way authentication, I can init SSL socket and communication well. But with two way authentication, I don't know how to implement it. At iOS client, I will have a client's certificate and server will trust client base on this certificate. I can read certificate from .p12 file well too. Many thanks to any advice.
GCDAsyncSocket two way authentication
1.3k Views Asked by duong dang At
1
There are 1 best solutions below
Related Questions in IOS
- URLSession requesting JSON array from server not working
- Incorrect display of LinearGradientBrush in IOS
- Module not found when building flutter app for IOS
- How to share metadata of an audio url file to a WhatsApp conversation with friends
- Occasional crash at NSURLSessionDataTask dataTaskWithRequest:completionHandler:
- Expo Deep linking on iOS is not working (because of Google sign-in?)
- On iOS, the keyboard does not offer a 6-character SMS code
- Hi, there is an error happened when I build my flutter app, after I'm installing firebase packages occurs that error
- The copy/paste functionalities don't work only on iOS in the Flutter app
- Hide LiveActivityIntent Button from Shortcuts App
- While Running Github Actions Pipeline: No Signing Certificate "iOS Development" found: No "iOS Development" signing certificate matching team ID
- Actionable notification api call not working in background
- Accessibility : Full keyboard access with scroll view in swiftui
- There is a problem with the request entity - You are not allowed to create 'iOS' profile with App ID 'XXXX'
- I am getting "binding has not yet been initialized" error when trying to connect firebase with flutter
Related Questions in SSL
- Django's previous settings prevent connecting to localhost
- SSL error when redirecting from one lightsail subdomain to lightsail subdomain on different account
- HTTP Requests from SSL Secured(HTTPS) Domain Failing
- Reversed TLS re-connection issue
- Nginx configuration file and SSL certificate errors in Docker
- IBM DB2 console doesn't work after SSL certificate update
- mTLS not working with FastAPI and Uvicorn
- WSO2 change localhost - ERR_CERT_AUTHORITY_INVALID
- KeyCloak Handshake causing timeout
- Python SSL Error , Server side - Client certificate verify failing with Intermediate cert - self-signed certificate in certificate chain (_ssl.c:1007)
- Apps migrated from IIS server1 to another IIS server2 stopped communicating with an App on IIS server 1 via SSL (HTTPS)
- Let Artifactory use HTTPS settings
- Even though I added my SSL certificate, I get the "not secure" error
- CST 0001 ERRO [comm.tls] ClientHandshake -> Client TLS handshake failed after 173.725µs with error EOF remoteaddress=127.0.0.1:7051
- ERR_SSL_PROTOCOL_ERROR generated using X509 certificate with Kestrel hosting in .NET 8 on Linux
Related Questions in NETWORK-PROGRAMMING
- "(Reason: CORS header ‘Access-Control-Allow-Origin’ missing)" while trying to access Actix webserver from Wix site
- My server TCP doesn't receive messages from the client in C
- I am currently trying to implement a rudimentary firewall from a video I watched but the nimda worm detection is not working and i do not know why?
- Is there a way to trigger a network buffer flush in Python?
- Redirect outbound traffic to a different port
- Post request response time spikes
- How to connect docker container to vpn site to site
- EADDRNOTAVAIL Node JS
- How to handle Okhttp3 POST Failing after changing location? Roaming issue?
- Why my message doesn't write into the socket when I try to read the response after sending it?
- Networkx Multiple Circular Layouts Combined Together
- trivial socket program failing at accept() with errno 22
- getaddrinfo() returning unexpected results
- JmDNS create() function not working on my device
- What C code will determine the network adapter being used by an open socket?
Related Questions in MUTUAL-AUTHENTICATION
- Keycloak identity brokering setup with mutual auth x509 certificate
- Azure Web App Mutual SSL authentication with client certificate in Azure App Service
- mutualTLS with SpringBoot SslBundles and RestTemplate
- Configure Squid for mutual TLS (mTLS)
- Mutual TLS with Angular
- Mutual Authentication in ActiveMQ Artemis cluster fails to get hostname from client IP address
- Mutual Authentication Client "PKIX path building failed" and "unable to find valid certification path to requested target"
- Windows client not receiving server Change Cipher Spec message at end of mutual TLS handshake
- Issue with Mutual TLS Authentication Setup on Vespa Data Plane
- GRPC mutual authentication
- how do i use client PFX certificate in java like i use it in postman
- How to manage HTTPS Mutual Authentication including Bearer Token with Spring boot WebClient?
- Pentaho: establish a connection using mutual authentication
- Spring Webflux : mutual authentication fails on second request
- Can I enable Firefox to present the expired client certificate for establishing mutual TLS (mtls)?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
After many lucky process. It was resolved. With server andoird and client android follow in this tutorial : http://www.herongyang.com/JDK/SSL-Client-Authentication.html With 2 way authentication. Server will require client's certificate. You can call this at didConnectToHost delegate. NSMutableDictionary *sslSettings = [[NSMutableDictionary alloc] init];
At didReceiveTrust:(SecTrustRef)trust completionHandler:(void (^)(BOOL))completionHandler. Client will authenticate Server's certificate manual. You can get server's certificate with this code:
SecCertificateRef serverCertificate = SecTrustGetCertificateAtIndex(trust, 0);With self-sign certificate, you must add Server's certificate to keychain and check the Server's certificate with SecTrustEvaluate method. Or you can Compare server certificate and saved in this way: