2019-2020-1 20175302 201752314 20175316実験5プロトコルの設計

2019-2020-1 20175302 201752314 20175316実験5プロトコルの設計

タスク

タスクの詳細

  • Ubuntuのに完成http://www.cnblogs.com/rocedu/p/5087623.html仕事

    OpenSSLの概要

    背景

  • SSLはインターネット上で秘密伝送を提供することができるセキュアソケットレイヤ(セキュアソケットレイヤ)の略語です。目標は、二つの通信セキュリティと信頼性の間に、アプリケーションが、同時に達成することができ、サーバとクライアントの両方をサポートしていることを確認することです。インターネットは、通信の秘密の業界標準となっています。
  • SSLは、ユーザー/サーバーアプリケーション、攻撃者の盗聴間の通信を可能にし、常にサーバーを認証し、ユーザーが選択することが認証されます。SSLプロトコルは、信頼性の高いトランスポート層プロトコル(TCP)上に構築が必要です。SSL-利点は、アプリケーション層プロトコルに依存しない、高レベルのアプリケーション層プロトコルは、(例えば:HTTP、FTP、TELNET、等)透明SSLプロトコルの上に構築することができるとは無関係であるということです。コミュニケーションと相談のためのアプリケーション層プロトコルの前にSSLプロトコルは、認証サーバの暗号化アルゴリズム、通信キーを完了しました。送信されたアプリケーション層プロトコルデータは、通信のプライバシーを確​​保するために暗号化された後。

    ワークフロー

    サーバーの認証フェーズ:

  • クライアントは、サーバーへの新しいセッション接続を開始するための開始メッセージ「こんにちは」を送信します。
  • サーバはクライアントのサーバーに応答して必要に応じて顧客の情報ニーズは、新しいマスターキーを生成するかどうかを判断し、「Hello」メッセージが必要なマスターキー生成情報が含まれています。
  • サーバーは、クライアントの応答メッセージを受信して​​、マスターキーを生成し、サーバは、サーバに暗号化された公開鍵を使用して、
  • Serverのマスターキーへの応答、および顧客への認証サーバに顧客を可能にするために使用される認定マスターキー情報を返されました。

    ユーザー認証フェーズ:

  • これに先立ち、サーバはクライアントによって認定された、この段階では、主に顧客への認証を完了します。顧客に質問を送信するためにサーバーを認定、顧客は、このようにサーバに認証を提供する、質問をし、その公開鍵(デジタル)署名リターンを投稿することです。

実験方法と手順

LinuxでOpenSSLのインストール

  • ソースを抽出します。unzip openssl-master.zip
  • ソースディレクトリに:cd openssl-master
  • コンパイルとインストール:
    ./config
    make
    sudo make install
    使用make testテスト

    Linux下OpenSSL的使用

  • 通过man openssl查看帮助文档

  • 编写测试代码test_openssl.c
      #include <stdio.h>
      #include <openssl/evp.h>
      int main(){
         OpenSSL_add_all_algorithms();
         return 0;
      }
  • 编译:gcc -o test_openssl test_openssl.c -L/usr/local/ssl/lib -lcrypto -ldl -lpthread,生成可执行文件test_openssl
  • 执行echo $?,结果打印0

おすすめ

転載: www.cnblogs.com/sms369/p/12003192.html