Typer av kryptografiprovider
Fältet för kryptografi är stort och växer. Det finns många olika standarddataformat och protokoll. Dessa är vanligtvis ordnade i grupper eller familjer, som var och en har sin egen uppsättning dataformat och sätt att göra saker. Även om två familjer använder samma algoritm (till exempel RC2block chiffer) använder de ofta olika utfyllnadsscheman, olika nyckellängderoch olika standardlägen. CryptoAPI är utformat så att en CSP-providertyp representerar en viss familj.
När ett program ansluter till en CSP av en viss typ fungerar var och en av CryptoAPI-funktionerna som standard på ett sätt som föreskrivs av familjen som motsvarar den CSP-typen. Ett programs val av leverantörstyp anger följande objekt:
Sak | Beskrivning |
---|---|
Nyckelutbytesalgoritm | Varje providertyp anger en och endast en nyckelutbytesalgoritm. Varje CSP av en viss typ måste implementera den här algoritmen. Program anger vilken nyckelutbytesalgoritm som ska användas genom att välja en CSP av lämplig providertyp. |
algoritm för digital signatur | Varje providertyp anger en och endast en algoritm för digital signatur. Varje CSP av en viss typ måste implementera den här algoritmen. Program anger den algoritm för digital signatur som ska användas genom att välja en CSP av lämplig providertyp. |
Blob-nyckelformat | Typ av tillhandahållande avgör formatet för blob-nyckel som används för att exportera nycklar från CSP- och för att importera nycklar till en CSP. |
Format för digital signatur | Providertypen avgör formatet för digital signatur. Detta säkerställer att en signatur som skapas av en CSP av en viss providertyp kan verifieras av valfri CSP av samma providertyp. |
Schema för härledning av sessionsnyckel | Providertypen avgör vilken metod som används för att härleda en sessionsnyckel från en hash-. |
Nyckellängd | Vissa providertyper anger längden på offentliga/privata nyckelpar och sessionsnycklarna. |
Standardlägen | Providertypen anger ofta standardlägen för olika alternativ, till exempel blockkryptering chifferläge eller blockkryptering utfyllnad metod. |
Vissa avancerade program kan ansluta till mer än en CSP i taget, men de flesta program använder vanligtvis bara en enda CSP.
Det finns för närvarande ett antal fördefinierade providertyper. Nästa avsnitt innehåller information om följande leverantörstyper:
- 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
Även om vissa CSP-typer kan vara delvis kompatibla med andra bör två eller flera program som behöver byta nycklar och krypterade meddelanden använda CSP:er av samma typ.
En anpassad CSP-skrivare kan definiera en ny providertyp. CsP-skrivaren ansvarar dock sedan för att distribuera den nya providertypen till författarna till alla program som ska använda den. Information om hur du skriver anpassade CSP:er finns i Kryptografiska tjänstleverantörer.