Introdução
Este artigo descreve uma atualização para adicionar suporte para Segurança de camada de transporte (TLS) 1.1 e o TLS 1.2 no Windows Embedded Compact 7.
Antes de instalar essa atualização, todas as atualizações emitidas anteriormente para este produto devem ser instaladas.
Sumário
Ativar o TLS 1.1 e o TLS 1.2
Por padrão, o TLS 1.1 e o TLS 1.2 são habilitadas quando o dispositivo baseado em Windows Embedded Compact 7 está configurado como um cliente usando as configurações do navegador. Os protocolos são desativados quando o Windows Embedded Compact 7-com base em dispositivo está configurado como um servidor web.
Você pode usar as seguintes chaves do registro para habilitar ou desabilitar o TLS 1.1 e o TLS 1.2.
TLS 1.1
A seguinte subchave controla o uso de TLS 1.1:
HKEY_LOCAL_MACHINE \Comm\SecurityProviders\SCHANNEL\Protocols\TLS 1.1
Para desativar o protocolo TLS 1.1, crie a entrada DWORD ativado na subchave apropriada e, em seguida, altere o valor DWORD para 0. Para reativar o protocolo, altere o valor DWORD como 1. Por padrão, essa entrada não existe no registro.
Observação: Para habilitar e negociar o TLS 1.1, você deve criar a entrada DWORD DisabledByDefault na subchave apropriada (cliente, servidor) e, em seguida, altere o valor DWORD para 0.
TLS 1.2
A seguinte subchave controla o uso do TLS 1.2:
HKEY_LOCAL_MACHINE \Comm\SecurityProviders\SCHANNEL\Protocols\TLS 1.2
Para desativar o protocolo TLS 1.2, crie a entrada DWORD ativado na subchave apropriada e, em seguida, altere o valor DWORD para 0. Para reativar o protocolo, altere o valor DWORD como 1. Por padrão, essa entrada não existe no registro.
Observação: Para habilitar e negociar o TLS 1.2, você deve criar a entrada DWORD DisabledByDefault na subchave apropriada (cliente, servidor) e, em seguida, altere o valor DWORD para 0.
Observações adicionais
-
O valor DisabledByDefault nas chaves do registro sob a chave de protocolos não têm precedência sobre o valor grbitEnabledProtocols definido na estrutura SCHANNEL_CRED que contém os dados para uma credencial Schannel.
-
Pelo Solicitações de comentários (RFC), a implementação do projeto não permite ser ativadas ao mesmo tempo o SSL2 e o TLS 1.2.
Mais informações
Leia as seções a seguir para obter detalhes adicionais sobre o TLS 1.1 e 1.2.
Conjuntos de codificação suportados apenas por TLS 1.2
Os seguintes conjuntos de codificação adicionados recentemente são suportados apenas por TLS 1.2:
-
TLS_DHE_DSS_WITH_AES_128_CBC_SHA256
-
TLS_DHE_DSS_WITH_AES_256_CBC_SHA256
-
TLS_RSA_WITH_NULL_SHA256
-
TLS_RSA_WITH_AES_128_CBC_SHA256
-
TLS_RSA_WITH_AES_256_CBC_SHA256
-
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
-
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
-
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
-
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
-
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
-
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
-
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
-
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
-
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
-
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
-
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
-
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
-
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
-
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
-
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
-
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
SCHANNEL_CREDhttps://docs.microsoft.com/previous-versions/windows/embedded/ee498356(v=winembedded.70)
grbitEnabledProtocols
(Opcional) Este DWORD contém uma sequência de bits que representa os protocolos que têm a seguinte condição:
-
Suporte por conexões feitas por ter credenciais que são adquiridas por meio dessa estrutura
A tabela a seguir mostra os sinalizadores de possíveis adicionais que o membro pode conter.
Valor |
Descrição |
SP_PROT_TLS1_2_CLIENT |
Cliente 1.2 de segurança de camada de transporte. |
SP_PROT_TLS1_2_SERVER |
No servidor 1.2 de segurança de camada de transporte |
SP_PROT_TLS1_1_CLIENT |
Cliente 1.1 de segurança de camada de transporte. |
SP_PROT_TLS1_1_SERVER |
No servidor 1.1 de segurança de camada de transporte |
BufferType
Esse conjunto de sinalizadores de bit que indica o tipo de buffer. A tabela a seguir mostra os sinalizadores disponíveis adicionais de TLS 1.2.
Sinalizador |
Descrição |
SECBUFFER_ALERT |
O buffer contém uma mensagem de alerta. |
dwProtocol
Isso designa o protocolo que é usado para estabelecer esta conexão. A tabela a seguir mostra adicionais constantes válidas para este membro.
Valor |
Descrição |
SP_PROT_TLS1_2_CLIENT |
Cliente 1.2 de segurança de camada de transporte. |
SP_PROT_TLS1_2_SERVER |
No servidor 1.2 de segurança de camada de transporte |
SP_PROT_TLS1_1_CLIENT |
Cliente 1.1 de segurança de camada de transporte. |
SP_PROT_TLS1_1_SERVER |
No servidor 1.1 de segurança de camada de transporte |
Esse é o identificador de algoritmo (ALG_ID) para a codificação de criptografia em massa é usada por esta conexão. A tabela a seguir mostra as constantes válidas adicionais para este membro.
Valor |
Descrição |
CALG_AES_256 |
Algoritmo de criptografia de 256 bits AES |
CALG_AES_128 |
Algoritmo de criptografia de 128 bits AES |
CALG_3DES |
Algoritmo de criptografia 3DES bloco |
estrutura
Isso especifica os algoritmos de assinatura que são compatíveis com uma conexão Schannel .
Sintaxe (C++)
typedef struct _SecPkgContext_SupportedSignatures {
WORD cSignatureAndHashAlgorithms;
WORD *pSignatureAndHashAlgorithms;
} SecPkgContext_SupportedSignatures, *PSecPkgContext_SupportedSignatures;
Membros
-
cSignatureAndHashAlgorithms
Este é o número de elementos na matriz pSignatureAndHashAlgorithms. -
pSignatureAndHashAlgorithms
Isso é uma matriz de valores que especificam algoritmos compatíveis.
O byte superior pode ser um dos seguintes valores que especifica um algoritmo de assinatura.Valor
Significado
0
Algoritmo de assinatura anônimo
1
O algoritmo de assinatura RSA
2
O algoritmo de assinatura DSA
3
O algoritmo de assinatura ECDSA
255
Reservado
O byte inferior pode ser um dos seguintes valores que especifica um algoritmo de hash.Valor
Significado
0
Nenhum
1
O algoritmo de hash MD5
2
O algoritmo de hash SHA1
3
O algoritmo de hash SHA-224
4
O algoritmo de hash SHA-256
5
O algoritmo de hash SHA-384
6
O algoritmo de hash SHA-512
255
Reservado
Requirements
Cabeçalho
Schannel.h
Essa função permite que um aplicativo de transporte consultar um pacote de segurança para determinados atributos de um contexto de segurança.
ulAttribute
Este é um ponteiro para um buffer que contém os atributos do contexto devem ser recuperados. A tabela a seguir mostra os valores possíveis.
Valor |
Descrição |
SECPKG_ATTR_SUPPORTED_SIGNATURES |
Esse valor retorna informações sobre os tipos de assinatura com suporte para a conexão. O parâmetro pBuffer contém um ponteiro para uma SecPkgContext_SupportedSignatures estrutura. |
Configurações de registro do navegador de amostra da interface do usuário
A tabela a seguir mostra as configurações que registram a Internet e operacionais na seguinte subchave do registro:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
Nome |
Tipo |
Descrição |
Valor padrão |
SecureProtocols |
REG_BINARY |
00,02,00,00 (habilita o TLS 1.1 somente) 00,08,00,00 (permite apenas o TLS 1.2) Você também pode definir essa chave como REG_DWORD "0AA8" para habilitar todos os protocolos. |
A0, 0A, 00, 00 (habilita todos os protocolos, exceto o SSL2) |
Informações de atualização de software
Informações sobre o download:
Windows Embedded Compact 7 atualização mensal de (março de 2018) foi disponibilizada pela Microsoft. Para baixar a atualização, vá para o Centro de parceria de dispositivo (DPC).
Pré-requisitos:
Esta atualização é compatível somente se todas as atualizações emitidas anteriormente para esse produto também foram instaladas.
Requisitos de reinicialização:
Depois de aplicar essa atualização, você deve executar uma compilação limpa de toda a plataforma. Para fazer isso, use um dos seguintes métodos:
-
No menu Build , selecione Limpar soluçãoe, em seguida, selecione Build Solution.
-
No menu Build , selecione Reconstruir solução.
Você não precisa reiniciar o computador após aplicar essa atualização de software.
Informações de substituição da atualização
Esta atualização não substitui outras atualizações.
Referências
Saiba mais sobre a terminologia usada pela Microsoft para descrever as atualizações de software.