web-dev-qa-db-ja.com

Get-TlsCipherSuite出力の[プロトコル]フィールドの値の意味は何ですか?

Powershellには Get-TlsCipherSute TLSが使用できる暗号に関する情報を返すコマンドレット。

出力には、数値の配列に設定されているように見えるProtocolsフィールドが含まれます。次に例を示します。

PS C:\>Get-TlsCipherSuite -Name "AES"
KeyType               : 0
Certificate           : ECDSA
MaximumExchangeLength : 65536
MinimumExchangeLength : 0
Exchange              : ECDH
HashLength            : 0
Hash                  :
CipherBlockLength     : 16
CipherLength          : 256
BaseCipherSuite       : 49196
CipherSuite           : 49196
Cipher                : AES
Name                  : TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
Protocols             : {771, 65277}

各暗号スイートのProtocolsフィールドの値である数値の意味は何ですか(たとえば、771および652677)?

:調べてみると、このコマンドの出力はselectで動作しないようです。 https://windowsserver.uservoice.com/forums/301869-powershell/suggestions/16511008-get-tlsciphersuite-does-not-output-well-behaved-ob

4
Kyle Brandt

TLSバージョンフィールド で使用される値の10進表記のようです。 771 = 0x0303 = TLS_1_2、および652677 = 0xFEFD = DTLS_1_1さまざまなTLSライブラリ で定義されている同様の定数を確認できます。

TLS_VERSIONS = {
    # SSL
    0x0002: "SSL_2_0",
    0x0300: "SSL_3_0",
    # TLS:
    0x0301: "TLS_1_0",
    0x0302: "TLS_1_1",
    0x0303: "TLS_1_2",
    0x0304: "TLS_1_3",
    # DTLS
    0x0100: "PROTOCOL_DTLS_1_0_OPENSSL_PRE_0_9_8f",
    0x7f10: "TLS_1_3_DRAFT_16",
    0x7f12: "TLS_1_3_DRAFT_18",
    0xfeff: "DTLS_1_0",
    0xfefd: "DTLS_1_1",
}

したがって、それらはその暗号が利用可能なTLS/SSLプロトコルのバージョンを表している可能性があります。

8
Greg Bray
TLS_VERSIONS = {
    # SSL
    2       0x0002: "SSL_2_0",
    768     0x0300: "SSL_3_0",
    # TLS:
    769     0x0301: "TLS_1_0",
    770     0x0302: "TLS_1_1",
    771     0x0303: "TLS_1_2",
    772     0x0304: "TLS_1_3",
    # DTLS
    256     0x0100: "PROTOCOL_DTLS_1_0_OPENSSL_PRE_0_9_8f",
    32528   0x7f10: "TLS_1_3_DRAFT_16",
    32530   0x7f12: "TLS_1_3_DRAFT_18",
    65279   0xfeff: "DTLS_1_0",
    65277   0xfefd: "DTLS_1_1",
}
0
Gatti Massimo