Come limitare l'utilizzo di determinati algoritmi e protocolli crittografici in Schannel. dll

Identificativo articolo: 245030 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

In questo articolo viene descritto come limitare l'utilizzo di alcuni algoritmi di crittografia e protocolli nel file Schannel. dll.

Queste informazioni si applicano anche alle applicazioni di fornitori di Software indipendenti (ISV) scritte per l'API di crittografia Microsoft.

Informazioni

I seguenti provider di servizi di crittografia (CSP) incluso in Windows NT 4.0 Service Pack 6 hanno ottenuti i certificati per Convalida di crittografia FIPS-140-1:
  • Microsoft Base Cryptographic Provider (Rsabase. dll)
  • Microsoft Enhanced Cryptographic Provider [versione non per l'esportazione] (Rsaenh. dll)
Microsoft TLS/SSL Security Provider, il file Schannel. dll, utilizza il provider CSP elencati sopra per effettuare comunicazioni protette tramite SSL o TLS nel proprio supporto per Microsoft Internet Explorer e Internet Information Server (IIS).

È possibile modificare il file Schannel. dll per supportare il pacchetto di crittografia 1 e 2, ma il programma deve supportare anche il pacchetto di crittografia 1 e 2. Pacchetto di crittografia 1 e 2 non sono supportati in IIS 4.0 e 5.0.

In questo articolo vengono fornite le informazioni necessarie per configurare il Service Pack 6 per Windows NT 4.0 e successive TLS/SSL Security Provider. È possibile utilizzare il Registro di sistema di Windows per controllare l'utilizzo di SSL 3.0 specifico o suite di cifratura TLS 1.0 relative per gli algoritmi di crittografia supportati da Microsoft Base o Enhanced Cryptographic Provider.

Nota: In Windows NT 4.0 Service Pack 6, il file Schannel. dll non utilizza Microsoft Base DSS Cryptographic Provider (Dssbase. dll) o Microsoft DS/Diffie-Hellman Enhanced Cryptographic Provider (Dssenh. dll).

Suite di cifratura

Entrambi SSL 3.0 (http://www.Mozilla.org/Projects/Security/PKI/NSS/SSL/draft302.txt), e TLS 1.0 (RFC2246) con bozza INTERNET "pacchetto di crittografia a 56 bit esportazione per TLS draft-ietf-tls-56-bit-ciphersuites-00.txt" consentono di utilizzare la suite di cifratura diversi. Ogni pacchetto di crittografia determina di scambio delle chiavi, autenticazione, crittografia e algoritmi MAC utilizzati all'interno di una sessione SSL/TLS. Si noti che quando si utilizza RSA come scambio di chiavi e algoritmi di autenticazione, il termine RSA nelle definizioni di suite di crittografia corrispondente, viene visualizzata una sola volta.

Il Provider di protezione di Windows NT 4.0 Service Pack 6 Microsoft TLS/SSL supporta la CipherSuite seguente di"" di definita in SSL 3.0 quando si utilizza la Base Microsoft o Microsoft Enhanced Cryptographic Provider:
Riduci questa tabellaEspandi questa tabella
SSL_RSA_EXPORT_WITH_RC4_40_MD5{0x00, 0x03}
SSL_RSA_WITH_RC4_128_MD5{0x00, 0x04}
SSL_RSA_WITH_RC4_128_SHA{0x00, 0x05}
SSL_RSA_EXPORT_WITH_RC2_CBC_40_MD5{0x00, 0x06}
SSL_RSA_WITH_DES_CBC_SHA{0x00, 0x09}
SSL_RSA_WITH_3DES_EDE_CBC_SHA{0x00, 0x0A}
SSL_RSA_EXPORT1024_WITH_DES_CBC_SHA{0x00, 0x62}
SSL_RSA_EXPORT1024_WITH_RC4_56_SHA{0x00, 0x64}
Nota: non SSL_RSA_EXPORT1024_WITH_DES_CBC_SHA né SSL_RSA_EXPORT1024_WITH_RC4_56_SHA è definito nel testo di SSL 3.0. Tuttavia, un numero di fornitori di SSL 3.0, tra cui Microsoft, li supporta.

Windows NT 4.0 Service Pack 6 Microsoft TLS/SSL Security Provider supporta inoltre la CipherSuite seguente di"" di definiti in TLS 1.0, quando si utilizza Microsoft Base o Microsoft Enhanced Cryptographic Provider:

Riduci questa tabellaEspandi questa tabella
TLS_RSA_EXPORT_WITH_RC4_40_MD5{0x00, 0x03}
TLS_RSA_WITH_RC4_128_MD5{0x00, 0x04}
TLS_RSA_WITH_RC4_128_SHA{0x00, 0x05}
TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5{0x00, 0x06}
TLS_RSA_WITH_DES_CBC_SHA{0x00, 0x09}
TLS_RSA_WITH_3DES_EDE_CBC_SHA{0x00, 0x0A}
TLS_RSA_EXPORT1024_WITH_DES_CBC_SHA{0x00, 0x62}
TLS_RSA_EXPORT1024_WITH_RC4_56_SHA{0x00, 0x64}
Nota: una suite di crittografia definita con il primo byte "0x00" è non privati e viene utilizzata per comunicazioni interoperabili aperte. Di conseguenza, Windows NT 4.0 Service Pack 6 Microsoft TLS/SSL Security Provider segue le procedure per l'utilizzo di queste suite di cifratura come specificato nelle specifiche SSL 3.0 e TLS 1.0 per garantire l'interoperabilità.

Chiavi del Registro di sistema specifiche di Schannel

Importante. Questa sezione, metodo o attività contiene la procedura per modificare il Registro di sistema. Tuttavia, potrebbero verificarsi seri problemi se si modifica il Registro di sistema in modo errato. Pertanto, assicurarsi di seguire attentamente i passaggi. Per maggiore protezione, eseguire il backup del Registro di sistema prima di modificarlo. In questo modo, è possibile ripristinare il Registro di sistema se si verifica un problema. Per ulteriori informazioni su come eseguire il backup e ripristinare il Registro di sistema, fare clic sul numero dell'articolo riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base:
322756 Come eseguire il backup e il ripristino del Registro di sistema in Windows

Chiave SCHANNEL

Avviare l'Editor del Registro di sistema (Regedt32.exe) e individuare la seguente chiave del Registro di sistema.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL

Sottochiave SCHANNEL\Protocols

Per attivare l'utilizzo dei protocolli che non verrà negoziata per impostazione predefinita (ad esempio TLS 1.1 o TLS 1.2), modificare i dati del valore DWORD del valore DisabledByDefault su 0x0 in ciascuna delle seguenti chiavi del Registro di sistema nella chiave protocolli:
  • SCHANNEL\Protocols\TLS 1.1\Client
  • SCHANNEL\Protocols\TLS 1.1\Server
  • SCHANNEL\Protocols\TLS 1.2\Client
  • SCHANNEL\Protocols\TLS 1.2\Server
Avviso: il valore di DisabledByDefault nelle chiavi del Registro di sistema sotto la chiave di protocolli ha la precedenza sul valore di grbitEnabledProtocols è definito nella struttura SCHANNEL_CRED che contiene i dati per una credenziale di Schannel.

Sottochiave SCHANNEL\Ciphers

La chiave di registro di crittografia a chiave SCHANNEL consente di controllare l'utilizzo di algoritmi simmetrici, quali DES o RC4. Di seguito sono chiavi di registro valido sotto la chiave di crittografia .

SCHANNEL\Ciphers\RC4 128/128 sottochiave:

RC4 128/128

Questa sottochiave fa riferimento a RC4 a 128 bit.

Per consentire questo algoritmo di crittografia, modificare i dati del valore DWORD del valore Enabled0xFFFFFFFF, in caso contrario modificare i dati del valore DWORD 0x0. Se non si configura il valore attivato , il valore predefinito è abilitato. Questa chiave del Registro di sistema non si applica a un server esportabile che non possiede un certificato SGC.

Non consente la disattivazione di questo algoritmo in modo efficace:
  • SSL_RSA_WITH_RC4_128_MD5
  • SSL_RSA_WITH_RC4_128_SHA
  • TLS_RSA_WITH_RC4_128_MD5
  • TLS_RSA_WITH_RC4_128_SHA
SCHANNEL\Ciphers\Triple DES 168/168 sottochiave:

Triple DES 168

Questa chiave del Registro di sistema fa riferimento a 168 bit Triple DES, come specificato in X9.52 ANSI e Draft FIPS 46-3. Questa chiave del Registro di sistema non si applica alla versione di esportazione.

Per consentire questo algoritmo di crittografia, modificare i dati del valore DWORD del valore Enabled0xFFFFFFFF, in caso contrario modificare i dati DWORD 0x0. Se non si configura il valore attivato , il valore predefinito è abilitato.

Non consente la disattivazione di questo algoritmo in modo efficace:
  • SSL_RSA_WITH_3DES_EDE_CBC_SHA
  • SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA
  • TLS_RSA_WITH_3DES_EDE_CBC_SHA
  • TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA
SCHANNEL\Ciphers\RC2 128/128 sottochiave:

RC2 128/128

Questa chiave del Registro di sistema fa riferimento a RC2 a 128 bit. Non si applica alla versione di esportazione.

Per consentire questo algoritmo di crittografia, modificare i dati del valore DWORD del valore Enabled0xFFFFFFFF, in caso contrario modificare i dati del valore DWORD 0x0. Se non si configura il valore attivato , il valore predefinito è abilitato.

SCHANNEL\Ciphers\RC4 64/128 sottochiave:

RC4 64/128

Questa chiave del Registro di sistema fa riferimento a 64-bit RC4. Non si applica alla versione di esportazione (ma viene utilizzato in Microsoft Money).

Per consentire questo algoritmo di crittografia, modificare i dati del valore DWORD del valore Enabled0xFFFFFFFF, in caso contrario modificare i dati del valore DWORD 0x0. Se non si configura il valore attivato , il valore predefinito è abilitato.

SCHANNEL\Ciphers\RC4 56/128 sottochiave:

RC4 56/128

Questa chiave del Registro di sistema fa riferimento a 56-bit RC4.

Per consentire questo algoritmo di crittografia, modificare i dati del valore DWORD del valore Enabled0xFFFFFFFF, in caso contrario modificare i dati del valore DWORD 0x0. Se non si configura il valore attivato , il valore predefinito è abilitato.

Non consente la disattivazione di questo algoritmo in modo efficace:
  • TLS_RSA_EXPORT1024_WITH_RC4_56_SHA
SCHANNEL\Ciphers\RC2 56/128 sottochiave:

RC2 56/128

Questa chiave del Registro di sistema fa riferimento a RC2 a 56 bit.

Per consentire questo algoritmo di crittografia, modificare i dati del valore DWORD del valore Enabled0xFFFFFFFF, in caso contrario modificare i dati del valore DWORD 0x0. Se non si configura il valore attivato , il valore predefinito è abilitato.

SCHANNEL\Ciphers\RC2 56/56 sottochiave:

DES 56

Questa chiave del Registro di sistema fa riferimento a 56 bit DES, come specificato in FIPS 46-2. L'implementazione nei file Rsabase. dll e Rsaenh. dll è stato convalidato in base al programma FIPS 140-1 crittografia modulo di convalida.

Per consentire questo algoritmo di crittografia, modificare i dati del valore DWORD del valore Enabled0xFFFFFFFF, in caso contrario modificare i dati del valore DWORD 0x0. Se non si configura il valore attivato , il valore predefinito è abilitato.

Non consente la disattivazione di questo algoritmo in modo efficace:
  • SSL_RSA_WITH_DES_CBC_SHA
  • TLS_RSA_WITH_DES_CBC_SHA
SCHANNEL\Ciphers\RC4 40/128 sottochiave:

RC4 40/128

Si riferisce a 40 bit RC4.

Per consentire questo algoritmo di crittografia, modificare i dati del valore DWORD del valore Enabled0xFFFFFFFF, in caso contrario modificare i dati del valore DWORD 0x0. Se non si configura il valore attivato , il valore predefinito è abilitato.

Non consente la disattivazione di questo algoritmo in modo efficace:
  • SSL_RSA_EXPORT_WITH_RC4_40_MD5
  • TLS_RSA_EXPORT_WITH_RC4_40_MD5
SCHANNEL\Ciphers\RC2 40/128 sottochiave:

RC2 40/128

Questa chiave del Registro di sistema fa riferimento a RC2 a 40 bit.

Per consentire questo algoritmo di crittografia, modificare i dati del valore DWORD del valore Enabled0xFFFFFFFF, in caso contrario modificare i dati del valore DWORD 0x0. Se non si configura il valore attivato , il valore predefinito è abilitato.

Non consente la disattivazione di questo algoritmo in modo efficace:
  • SSL_RSA_EXPORT_WITH_RC2_CBC_40_MD5
  • TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5
SCHANNEL\Ciphers\NULL sottochiave:

NULL

Questa chiave del Registro di sistema non significa Nessuna crittografia. È disattivata per impostazione predefinita.

Per disattivare la crittografia (Disattiva tutti gli algoritmi di crittografia), modificare i dati del valore DWORD del valore Enabled0xFFFFFFFF, in caso contrario modificare i dati del valore DWORD 0x0.

Sottochiave SCHANNEL/hash

La chiave di registro hash della chiave SCHANNEL consente di controllare l'utilizzo di algoritmi di hash SHA-1 o MD5. Di seguito sono chiavi di registro valido sotto la chiave di hash .

SCHANNEL\Hashes\MD5 sottochiave:

MD5

Per consentire questo algoritmo di hash, modificare i dati del valore DWORD del valore Enabled per il valore predefinito 0xFFFFFFFF, in caso contrario modificare i dati del valore DWORD 0x0.

Non consente la disattivazione di questo algoritmo in modo efficace:
  • SSL_RSA_EXPORT_WITH_RC4_40_MD5
  • SSL_RSA_WITH_RC4_128_MD5
  • SSL_RSA_EXPORT_WITH_RC2_CBC_40_MD5
  • TLS_RSA_EXPORT_WITH_RC4_40_MD5
  • TLS_RSA_WITH_RC4_128_MD5
  • TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5
SCHANNEL\Hashes\SHA sottochiave:

SHA

Questa chiave del Registro di sistema fa riferimento a Secure Hash Algorithm (SHA-1), come specificato in FIPS 180-1. L'implementazione nei file Rsabase. dll e Rsaenh. dll è stato convalidato in base al programma FIPS 140-1 crittografia modulo di convalida.

Per consentire questo algoritmo di hash, modificare i dati del valore DWORD del valore Enabled per il valore predefinito 0xFFFFFFFF, in caso contrario modificare i dati del valore DWORD 0x0.

Non consente la disattivazione di questo algoritmo in modo efficace:
  • SSL_RSA_WITH_RC4_128_SHA
  • SSL_RSA_WITH_DES_CBC_SHA
  • SSL_RSA_WITH_3DES_EDE_CBC_SHA
  • SSL_RSA_EXPORT1024_WITH_DES_CBC_SHA
  • SSL_RSA_EXPORT1024_WITH_RC4_56_SHA
  • TLS_RSA_WITH_RC4_128_SHA
  • TLS_RSA_WITH_DES_CBC_SHA
  • TLS_RSA_WITH_3DES_EDE_CBC_SHA
  • TLS_RSA_EXPORT1024_WITH_DES_CBC_SHA
  • TLS_RSA_EXPORT1024_WITH_RC4_56_SHA

Sottochiave SCHANNEL/KeyExchangeAlgorithms

La chiave di registro KeyExchangeAlgorithms nella chiave SCHANNEL consente di controllare l'utilizzo di algoritmi di scambio delle chiavi, ad esempio RSA. Di seguito sono chiavi di registro valida nella chiave KeyExchangeAlgorithms .

SCHANNEL\KeyExchangeAlgorithms\PKCS sottochiave:

PKCS

Questa chiave del Registro di sistema fa riferimento come gli algoritmi di autenticazione e lo scambio chiavi RSA.

Per consentire RSA, modificare i dati del valore DWORD del valore Enabled per il valore predefinito 0xFFFFFFFF, in caso contrario modificare i dati DWORD 0x0.

Disattivazione RSA efficacemente impedisce basate su RSA SSL e TLS suite di cifratura supportate dal Provider di protezione Windows NT 4.0 SP6 Microsoft TLS/SSL.

FIPS 140-1 Cipher Suite

È possibile utilizzare solo tali SSL 3.0 o TLS 1.0 suite di cifratura che corrispondono a FIPS 46-3 o FIPS 46-2 e algoritmi FIPS 180-1 forniti dalla Microsoft Base o Enhanced Cryptographic Provider.

In questo articolo vengono definiti tali FIPS 140-1 cipher Suite. In particolare, sono:
  • SSL_RSA_WITH_DES_CBC_SHA
  • SSL_RSA_WITH_3DES_EDE_CBC_SHA
  • SSL_RSA_EXPORT1024_WITH_DES_CBC_SHA
  • TLS_RSA_WITH_DES_CBC_SHA
  • TLS_RSA_WITH_3DES_EDE_CBC_SHA
  • TLS_RSA_EXPORT1024_WITH_DES_CBC_SHA
Per utilizzare solo FIPS 140-1 cipher suite definito in precedenza, supportato da Windows NT 4.0 Service Pack 6 Microsoft TLS/SSL Security Provider con Microsoft Base o Enhanced Cryptographic Provider, è necessario configurare i dati del valore DWORD del valore abilitato nelle seguenti chiavi del Registro di sistema per 0x0:
  • 128/128 SCHANNEL\Ciphers\RC4
  • 128/128 SCHANNEL\Ciphers\RC2
  • SCHANNEL\Ciphers\RC4 64/128
  • 56/128 SCHANNEL\Ciphers\RC4
  • 56/128 SCHANNEL\Ciphers\RC2
  • 40/128 SCHANNEL\Ciphers\RC4
  • 40/128 SCHANNEL\Ciphers\RC2
  • SCHANNEL\Ciphers\NULL
  • SCHANNEL\Hashes\MD5
e configurare i dati del valore DWORD del valore abilitato nelle seguenti chiavi del Registro di sistema per 0xFFFFFFFF:
  • SCHANNEL\Ciphers\DES 56/56
  • SCHANNEL\Ciphers\Triple DES 168/168 "[non disponibile in versione export]
  • SCHANNEL\Hashes\SHA
  • SCHANNEL\KeyExchangeAlgorithms\PKCS

Calcolo del segreto master utilizzando FIPS 140-1 Cipher Suite

Le procedure per utilizzare la suite di cifratura di 140-1 FIPS sopra in SSL 3.0 sono diverse da quelle per l'utilizzo (sopra) FIPS 140-1 pacchetti di crittografia TLS 1.0.

In SSL 3.0, di seguito è il calcolo di master_secret definizione:

In TLS 1.0, di seguito è il calcolo di master_secret definizione:

dove:

Selezionando l'opzione per utilizzare solo gruppi di FIPS 140-1 crittografia TLS 1.0:

A causa della differenza di cui sopra, è possibile proibire l'utilizzo di SSL 3.0, anche se il set di suite di cifratura consentito è stato limitato al solo un sottoinsieme di FIPS 140-1 cipher Suite. In tal caso, modificare i dati del valore DWORD del valore Enabled0x0 in ciascuna delle seguenti chiavi del Registro di sistema nella chiave protocolli :
  • SCHANNEL\Protocols\SSL 3.0\Client
  • SCHANNEL\Protocols\SSL 3.0\Server
Avviso: I dati del valore abilitato in queste chiavi del Registro di sistema nella chiave protocolli hanno la precedenza rispetto al valore di grbitEnabledProtocols definito nella struttura SCHANNEL_CRED contenente i dati per una credenziale di Schannel. È il dato predefinito abilitato0xFFFFFFFF.

File di registro di esempio

In questa sezione dell'articolo vengono forniti due esempi di contenuto del file del Registro di sistema ai fini della configurazione, Export.reg e Non-export.reg.

In un computer che esegue Windows NT 4.0 Service Pack 6 con i file Rasbase.dll e Schannel. dll esportabili, eseguiti Export.reg per garantire che solo le suite di cifratura TLS 1.0 FIPS vengono utilizzate dal computer.

In un computer che esegue Windows NT 4.0 Service Pack 6 che include il Rasenh.dll non è esportabile e i file Schannel. dll, eseguiti Non export.reg per garantire che solo TLS 1.0 FIPS cipher Suite vengono utilizzati dal computer.

Per il file Schannel. dll riconoscere le modifiche nella chiave del Registro di sistema SCHANNEL , è necessario riavviare il computer.

Per ripristinare le impostazioni del Registro di sistema per impostazione predefinita, eliminare la chiave del Registro di sistema SCHANNEL e tutto il contenuto sotto di esso. Se queste chiavi del Registro di sistema non sono presenti, il file Schannel. dll ricrea le chiavi quando si riavvia il computer.

Proprietà

Identificativo articolo: 245030 - Ultima modifica: venerdì 7 giugno 2013 - Revisione: 5.0
Le informazioni in questo articolo si applicano a:
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Web Edition
  • Microsoft Windows XP Professional
  • Microsoft Windows XP Home Edition
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows NT Server 4.0 Enterprise Edition
  • Microsoft Windows NT Workstation 4.0 Developer Edition
Chiavi: 
kbenv kbinfo kbmt KB245030 KbMtit
Traduzione automatica articoli
IMPORTANTE: il presente articolo è stato tradotto tramite un software di traduzione automatica di Microsoft ed eventualmente revisionato dalla community Microsoft tramite la tecnologia CTF (Community Translation Framework) o da un traduttore professionista. Microsoft offre articoli tradotti manualmente e altri tradotti automaticamente e rivisti dalla community con l?obiettivo di consentire all'utente di accedere a tutti gli articoli della Knowledge Base nella propria lingua. Tuttavia, un articolo tradotto automaticamente, anche se rivisto dalla community, non sempre è perfetto. Potrebbe contenere errori di vocabolario, di sintassi o di grammatica. Microsoft declina ogni responsabilità per imprecisioni, errori o danni causati da una traduzione sbagliata o dal relativo utilizzo da parte dei clienti. Microsoft aggiorna frequentemente il software e gli strumenti di traduzione automatica per continuare a migliorare la qualità della traduzione.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 245030
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti