Startzeit im OpenSSL S_Client

Startzeit im OpenSSL S_Client

Nach dem Ausführen des Befehls openssl s_client zum Herstellen einer Verbindung mit einem Remote-Host wurde die folgende Ausgabe auf dem Terminal angezeigt. Kann mir bitte jemand helfen, das start timein diesem Protokoll zu verstehen. Was stellt es dar und in welchem ​​Format liegt es vor?

Ich glaube, es sollte die Echtzeit in Mikrosekunden sein. Ich konnte jedoch keine entsprechende Dokumentation dazu finden.

   ---
SSL handshake has read 3876 bytes and written 319 bytes
---
New, TLSv1/SSLv3, Cipher is DHE-RSA-AES256-SHA
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
SSL-Session:
    Protocol  : TLSv1
    Cipher    : DHE-RSA-AES256-SHA
    Session-ID: 3F4EE3992B46727BE2C7C3E76A9A6A8D64D66EE843CB1BB17A76AE2E030C7161
    Session-ID-ctx:
    Master-Key: 016209E50432EFE2359DB73AB527AF718152BFE6F88215A9CE40604E8FF2E2A3AC97A175F46DF737596866A8BC8E3F7F
    Key-Arg   : None
    Start Time: 1397678467
    Timeout   : 300 (sec)
    Verify return code: 19 (self signed certificate in certificate chain)
---
DONE

Gibt es außerdem eine Möglichkeit, mit OpenSSL s_client oder s_time nur die Handshake-Zeit und die Zeit zum Abschließen einer Anforderung (Aufzeichnungsphase von TLS) zu messen?

s_time stellt die Gesamtzeit für einen Handshake und die Zeit dar, die zum Abrufen der Ressource vom Server benötigt wird.

Mit curl gibt es vielleicht eine Möglichkeit,Zeit_AppConnectdas ist Handshake-Timing,Gesamtzeitund subtrahieren Sie dann beide, um eine ungefähre Zeitangabe für die Aufzeichnungsphase zu erhalten. (Ignorieren Sie dabei die Zeit, die für eine Suche, Anfragen usw. benötigt wird, da diese wirklich vernachlässigbar ist.)

Ich versuche, die Zeit zu messen, die zum Herstellen einer TLS-Verbindung mit und ohne Firewall-Regeln benötigt wird.

Antwort1

Bei der Startzeit handelt es sich um einen Zeitstempel, den Sie über ein Datum abrufen oder darüber konvertieren können.

#!/bin/bash
NOW=$(date "+%s") #timestamp
starttime="1397678467"
convert=$(date --date="@$starttime" "+%Y-%m-%d %H:%M:%S")
echo $convert

Ihr Zeitstempel bei der Konvertierung wird also dieses Datum sein: 2014-04-16 23:01:07


Sie können den Datumsbefehl auch zum Konvertieren und Berechnen von time_appconnect und time_total verwenden, die aus der curl -w-Ausgabe stammen.

Versuchen Sie, time_appconnect oder time_total durch 60 = Minuten zu teilen. time_total oder time_appconnect werden in Sekunden ausgegeben.

verwandte Informationen