0

私はファイル共有アプリケーションに取り組んでいます。2 つの iOS デバイス間の TCP 接続で動作しており、それらの間の安全な接続が必要です。接続には GCDAsyncSocket ライブラリを使用しています。以前はSSL接続を受け入れる他のアプリケーションを接続するためにこのライブラリを使用していたので、クライアント側には問題ありません。これが質問です。有効な SSL 証明書を使用した SSL 接続のみを受け入れるソケットをホストするにはどうすればよいですか? ありがとう。

4

1 に答える 1

0

私はついに私の問題を解決しました。didAcceptNewSocketデリゲート メソッドでは、これらの設定で証明書を読み込みます。

NSDictionary *settings = @{(NSString *)kCFStreamPropertyShouldCloseNativeSocket:    [NSNumber numberWithBool:YES],
                           (NSString *)kCFStreamSSLValidatesCertificateChain:       [NSNumber numberWithBool:YES],
                           (NSString *)kCFStreamSSLAllowsExpiredCertificates:       [NSNumber numberWithBool:NO],
                           (NSString *)kCFStreamSSLAllowsExpiredRoots:              [NSNumber numberWithBool:NO],
                           (NSString *)kCFStreamSSLAllowsAnyRoot:                   [NSNumber numberWithBool:YES],
                           (NSString *)kCFStreamSSLCertificates:                    certificates,
                           (NSString *)kCFStreamSSLIsServer:                        [NSNumber numberWithBool:YES],
                           (NSString *)kCFStreamSSLLevel:                           (NSString *)kCFStreamSocketSecurityLevelTLSv1}; 
于 2014-02-21T09:31:37.430 に答える