-1

リモート SSL サーバーに接続する HTTPS クライアントが暗号化された HTTP 要求を送信し、サーバーの応答 (Web ページ) を出力するプログラムを C で作成しようとしています。

here からいくつかの例を実行することを実験していました

特にtest-port-client.c

しかし、私が期待している結果が表示されていません。

次のコマンドで、ラップトップにopensslがあるかどうかを確認しました

apt-cache search libssl | grep SSL

そして、私が得た結果は次のとおりです。

libssl-dev - SSL development libraries, header files and documentation
libssl-doc - SSL development documentation documentation
libssl1.0.0 - SSL shared libraries
libssl-ocaml - OCaml bindings for OpenSSL (runtime)
libssl-ocaml-dev - OCaml bindings for OpenSSL
libssl0.9.8 - SSL shared libraries
libsslcommon2 - enterprise messaging system - common SSL libraries
libsslcommon2-dev - enterprise messaging system - common SSL development files

次のようにCでプログラムをコンパイルしています:

gcc test-port-client.c -o test-port-client

そして、次のように実行します。

./test-port-client google.com 80 abc

しかし、私の要件に合わせてコードを微調整する方法はわかりません。

私の要件は次のようなものです

「リモート SSL サーバーに接続し、暗号化された HTTP 要求を送信し、サーバーの応答 (Web ページ) を出力する HTTPS クライアント。さらに、プログラムは、サーバーによって提供された X.509 証明書が有効であり、チェーンであることを確認します。 >信頼できるルート証明書に」

どんなガイダンスでも大歓迎です。お願い助けて。

4

1 に答える 1

0

私は少し混乱しています。実行しようとしているコードは、SSL とは関係ありません。単純な TCP パケット送信者のように見えます。あなたは何を見ていますか、そして何を見ることを期待していますか?

ネットワーク プログラミングの簡単な手順については、Beej のガイドをご覧ください: http://www.beej.us/guide/bgnet/

そして OpenSSL の場合、これは良い出発点かもしれません: http://savetheions.com/2010/01/16/quickly-using-openssl-in-c/

ただし、上記の例では証明書の検証は行われません。ただし、ライブラリのインストールを検証し、適切なライブラリに対してコンパイルできることを確認するための良いテストになります。

于 2013-11-14T08:36:21.270 に答える