Tipos de provedor criptográfico
O campo da criptografia é grande e crescente. Há muitos formatos e protocolos de dados padrão diferentes. Eles geralmente são organizados em grupos ou famílias, cada um deles tem seu próprio conjunto de formatos de dados e maneira de fazer as coisas. Mesmo que duas famílias usem o mesmo algoritmo (por exemplo, a criptografiaRC2block), elas geralmente usarão esquemas de preenchimento diferentes, tamanhos de chave diferentes e modos padrão diferentes. O CryptoAPI foi projetado para que um tipo de provedor CSP represente uma família específica.
Quando um aplicativo se conecta a um CSP de um tipo específico, cada uma das funções CryptoAPI funcionará, por padrão, de forma prescrita pela família que corresponde a esse tipo de CSP. A escolha de um aplicativo do tipo de provedor especifica os seguintes itens:
Item | Descrição |
---|---|
Algoritmo de troca de chaves | Cada tipo de provedor especifica um e apenas um algoritmo de troca de chaves. Cada CSP de um tipo específico deve implementar esse algoritmo. Os aplicativos especificam o algoritmo de troca de chaves a ser usado selecionando um CSP do tipo de provedor apropriado. |
Algoritmo de assinatura digital | Cada tipo de provedor especifica um e apenas um algoritmo de assinatura digital. Cada CSP de um tipo específico deve implementar esse algoritmo. Os aplicativos especificam o algoritmo de assinatura digital a ser usado selecionando um CSP do tipo de provedor apropriado. |
Principais formatos de BLOB | O tipo de fornecer determina o formato do BLOB de chave usado para exportar chaves do CSP e importar chaves para um CSP. |
Formato de assinatura digital | O tipo de provedor determina o formato de assinatura digital. Isso garante que uma assinatura produzida por um CSP de um determinado tipo de provedor possa ser verificada por qualquer CSP do mesmo tipo de provedor. |
Esquema de derivação de chave de sessão | O tipo de provedor determina o método usado para derivar uma chave de sessão de um hash. |
Comprimento da chave | Alguns tipos de provedor especificam o comprimento dos pares de chaves públicas/privadas e as chaves de sessão. |
Modos padrão | O tipo de provedor geralmente especifica modos padrão para várias opções, como o modo de criptografia de bloco ou o método de preenchimento de criptografia de bloco. |
Alguns aplicativos avançados podem se conectar a mais de um CSP por vez, mas a maioria dos aplicativos geralmente usa apenas um único CSP.
Atualmente, há vários tipos de provedor predefinidos. As próximas seções fornecem informações sobre os seguintes tipos de provedor:
- PROV_RSA_FULL
- PROV_RSA_AES
- PROV_RSA_SIG
- PROV_RSA_SCHANNEL
- PROV_DSS
- PROV_DSS_DH
- PROV_DH_SCHANNEL
- PROV_FORTEZZA
- PROV_MS_EXCHANGE
- PROV_SSL
Embora alguns tipos de CSP possam ser parcialmente compatíveis com outros, dois ou mais aplicativos que precisam trocar chaves e mensagens criptografadas devem usar CSPs do mesmo tipo.
Um gravador CSP personalizado pode definir um novo tipo de provedor. No entanto, o gravador CSP é então responsável por distribuir o novo tipo de provedor para os autores de todos os aplicativos que devem usá-lo. Para obter informações sobre como escrever CSPs personalizados, consulte Provedores de Serviços Criptográficos.
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de