Cryptographic Service Provider (CSP) — це незалежний модуль, що дозволяє здійснювати криптографічні операції в операційних системах Microsoft Windows, управління яким відбувається за допомогою функцій . Модуль реалізує функції розшифрування і зашифрування які потім прикладна програма може використати для створення системи аутентифікації, захищеної електронної пошти чи чогось подібного. Простими словами криптопровайдер виступає посередником між операційною системою та виконавцем криптографічних опрецій(програма чи апаратний комплекс).
Об'єкти криптопровайдера
Одним з основних об'єктів є ключовий контейнер. Контейнер має своє ім'я, створюється (або запитується, якщо вже був створений) функцією CryptAcquireContext(...). У контейнері може існувати не більше однієї пари ключів підпису, однієї пари ключів обміну і одного симетричного ключа. Якщо підтримується декілька алгоритмів симетричного шифрування, то симетричних ключів може бути кілька, по одному ключу кожного алгоритму.
Пари ключів і симетричні ключі можуть знаходитися тільки в контейнері. Тільки відкритий ключ пари може перебувати поза контейнером.
Закриті (private) ключі пар ключів експортуються тільки в зашифрованому вигляді. Деякі криптопровайдери принципово не дозволяють експортувати закриті ключі, навіть у зашифрованому вигляді. Симетричні ключі при експорті також обов'язково шифруються на відкритому ключі одержувача або ключі узгодження. Для обчислення хеш-функцій створюються об'єкти хешування. Для створення об'єктів хешування створювати контейнер не потрібно.
Криптопровайдери Microsoft
У всі операційні системи Microsoft, починаючи з Windows 2000, вбудований криптопровайдер Microsoft Base Cryptographic Provider, який володіє набором основних криптографічних функцій. У Microsoft Base Cryptographic Provider довжина ключів шифрування не перевищує 40 біт. Так як до січня 2000 року в США існувала заборона на експорт програмного забезпечення для шифрування з використанням ключів довжиною більше 40 біт, то в Windows 98 і ранніх версіях Windows 2000 існувала підтримка тільки цього криптопровайдера. Microsoft Base Cryptographic Provider по суті є урізаним варіантом Microsoft Enhanced Cryptographic Provider. Але після скасування заборони на експорт стало безглуздо мати 2 криптопровайдера, тому програмісти Microsoft ввели ще одну назву — Microsoft Strong Cryptographic Provider, який нічим не відрізняється від Microsoft Enhanced Cryptographic Provider. Цей криптопровайдер є криптопровайдером за замовчуванням типу PROV_RSA_FULL Windows 2000, Windows XP, Windows 2003.
Всі криптопровайдери Microsoft можуть бути завантажені з сайту Microsoft.
Криптопровайдер | Ім'я криптопровайдера | Тип | Коментар |
---|---|---|---|
Microsoft Base Cryptographic Provider | MS_DEF_PROV | PROV_RSA_FULL | Має широкий набір основних криптографічних функцій. Довжина ключів шифрування не перевищує 40 біт. |
Microsoft Strong Cryptographic Provider | MS_STRONG_PROV | PROV_RSA_FULL | Відрізняється від Microsoft Base Cryptographic Provider підтримкою великої довжини ключів. |
Microsoft Enhanced Cryptographic Provider | MS_ENHANCED_PROV | PROV_RSA_FULL | Нічим не відрізняється від Microsoft Strong Cryptographic Provider. Є криптопровайдером за замовчуванням. |
Microsoft AES Cryptographic Provider | MS_ENH_RSA_AES_PROV | PROV_RSA_AES | = Microsoft Enhanced Cryptographic Provider з підтримкою AES |
Microsoft DSS Cryptographic Provider | MS_DEF_DSS_PROV | PROV_DSS | Хешування, підпис, перевірка підпису з підтримкою алгоритму . |
Microsoft Base DSS and Diffie-Hellman Cryptographic Provider | MS_DEF_DSS_DH_PROV | PROV_DSS_DH | Хешування, підпис , генерація та обмін ключами Діффі-Геллмана. Підтримує генерацію ключів для протоколів SSL3 і TLS1. |
Microsoft Enhanced DSS and Diffie-Hellman Cryptographic Provider | MS_ENH_DSS_DH_PROV | PROV_DSS_DH | Те ж, що і Microsoft Base DSS and Diffie-Hellman Cryptographic Provider з підтримкою ключів великої довжини . |
Microsoft DSS and Diffie-Hellman/Schannel Cryptographic Provider | MS_DEF_DH_SCHANNEL_PROV | PROV_DH_SCHANNEL | Хешування, підпис DSS, генерація та обмін ключами Діффі-Геллмана. Підтримує генерацію ключів для протоколів SSL3 і TLS1. |
Microsoft RSA/Schannel Cryptographic Provider | MS_DEF_RSA_SCHANNEL_PROV | PROV_RSA_SCHANNEL | Хешування, підпис, перевірка підпису. Використовується для автентифікації протоколу SSL 3.0 and TLS 1.0. |
Microsoft RSA Signature Cryptographic Provider | MS_DEF_RSA_SIG_PROV | PROV_RSA_SIG | Мінімальна функціональність, необхідна для електронного підпису та перевірки ЕЦП. |
Див. також
Зноски
- Cryptographic Service Providers (Windows). MSDN. Архів оригіналу за 20 червня 2018. Процитовано 20 червня 2018.
Посилання
- Інтерфейс CryptoAPI [Архівовано 12 вересня 2015 у Wayback Machine.] (рос.)
- Типи криптопровайдерів [Архівовано 25 червня 2018 у Wayback Machine.] (англ.)
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Nemaye perevirenih versij ciyeyi storinki jmovirno yiyi she ne pereviryali na vidpovidnist pravilam proektu Cryptographic Service Provider CSP ce nezalezhnij modul sho dozvolyaye zdijsnyuvati kriptografichni operaciyi v operacijnih sistemah Microsoft Windows upravlinnya yakim vidbuvayetsya za dopomogoyu funkcij Microsoft CryptoAPI 1 Modul realizuye funkciyi rozshifruvannya i zashifruvannya yaki potim prikladna programa mozhe vikoristati dlya stvorennya sistemi autentifikaciyi zahishenoyi elektronnoyi poshti chi chogos podibnogo Prostimi slovami kriptoprovajder vistupaye poserednikom mizh operacijnoyu sistemoyu ta vikonavcem kriptografichnih oprecij programa chi aparatnij kompleks Zmist 1 Ob yekti kriptoprovajdera 2 Kriptoprovajderi Microsoft 3 Div takozh 4 Znoski 5 PosilannyaOb yekti kriptoprovajderared Odnim z osnovnih ob yektiv ye klyuchovij kontejner Kontejner maye svoye im ya stvoryuyetsya abo zapituyetsya yaksho vzhe buv stvorenij funkciyeyu CryptAcquireContext U kontejneri mozhe isnuvati ne bilshe odniyeyi pari klyuchiv pidpisu odniyeyi pari klyuchiv obminu i odnogo simetrichnogo klyucha Yaksho pidtrimuyetsya dekilka algoritmiv simetrichnogo shifruvannya to simetrichnih klyuchiv mozhe buti kilka po odnomu klyuchu kozhnogo algoritmu Pari klyuchiv i simetrichni klyuchi mozhut znahoditisya tilki v kontejneri Tilki vidkritij klyuch pari mozhe perebuvati poza kontejnerom Zakriti private klyuchi par klyuchiv eksportuyutsya tilki v zashifrovanomu viglyadi Deyaki kriptoprovajderi principovo ne dozvolyayut eksportuvati zakriti klyuchi navit u zashifrovanomu viglyadi Simetrichni klyuchi pri eksporti takozh obov yazkovo shifruyutsya na vidkritomu klyuchi oderzhuvacha abo klyuchi uzgodzhennya Dlya obchislennya hesh funkcij stvoryuyutsya ob yekti heshuvannya Dlya stvorennya ob yektiv heshuvannya stvoryuvati kontejner ne potribno Kriptoprovajderi Microsoftred U vsi operacijni sistemi Microsoft pochinayuchi z Windows 2000 vbudovanij kriptoprovajder Microsoft Base Cryptographic Provider yakij volodiye naborom osnovnih kriptografichnih funkcij U Microsoft Base Cryptographic Provider dovzhina klyuchiv shifruvannya ne perevishuye 40 bit Tak yak do sichnya 2000 roku v SShA isnuvala zaborona na eksport programnogo zabezpechennya dlya shifruvannya z vikoristannyam klyuchiv dovzhinoyu bilshe 40 bit to v Windows 98 i rannih versiyah Windows 2000 isnuvala pidtrimka tilki cogo kriptoprovajdera Microsoft Base Cryptographic Provider po suti ye urizanim variantom Microsoft Enhanced Cryptographic Provider Ale pislya skasuvannya zaboroni na eksport stalo bezgluzdo mati 2 kriptoprovajdera tomu programisti Microsoft vveli she odnu nazvu Microsoft Strong Cryptographic Provider yakij nichim ne vidriznyayetsya vid Microsoft Enhanced Cryptographic Provider Cej kriptoprovajder ye kriptoprovajderom za zamovchuvannyam tipu PROV RSA FULL Windows 2000 Windows XP Windows 2003 Vsi kriptoprovajderi Microsoft mozhut buti zavantazheni z sajtu Microsoft Kriptoprovajder Im ya kriptoprovajdera Tip Komentar Microsoft Base Cryptographic Provider MS DEF PROV PROV RSA FULL Maye shirokij nabir osnovnih kriptografichnih funkcij Dovzhina klyuchiv shifruvannya ne perevishuye 40 bit Microsoft Strong Cryptographic Provider MS STRONG PROV PROV RSA FULL Vidriznyayetsya vid Microsoft Base Cryptographic Provider pidtrimkoyu velikoyi dovzhini klyuchiv Microsoft Enhanced Cryptographic Provider MS ENHANCED PROV PROV RSA FULL Nichim ne vidriznyayetsya vid Microsoft Strong Cryptographic Provider Ye kriptoprovajderom za zamovchuvannyam Microsoft AES Cryptographic Provider MS ENH RSA AES PROV PROV RSA AES Microsoft Enhanced Cryptographic Provider z pidtrimkoyu AES Microsoft DSS Cryptographic Provider MS DEF DSS PROV PROV DSS Heshuvannya pidpis perevirka pidpisu z pidtrimkoyu algoritmu DSS Microsoft Base DSS and Diffie Hellman Cryptographic Provider MS DEF DSS DH PROV PROV DSS DH Heshuvannya pidpis DSS generaciya ta obmin klyuchami Diffi Gellmana Pidtrimuye generaciyu klyuchiv dlya protokoliv SSL3 i TLS1 Microsoft Enhanced DSS and Diffie Hellman Cryptographic Provider MS ENH DSS DH PROV PROV DSS DH Te zh sho i Microsoft Base DSS and Diffie Hellman Cryptographic Provider z pidtrimkoyu klyuchiv velikoyi dovzhini Microsoft DSS and Diffie Hellman Schannel Cryptographic Provider MS DEF DH SCHANNEL PROV PROV DH SCHANNEL Heshuvannya pidpis DSS generaciya ta obmin klyuchami Diffi Gellmana Pidtrimuye generaciyu klyuchiv dlya protokoliv SSL3 i TLS1 Microsoft RSA Schannel Cryptographic Provider MS DEF RSA SCHANNEL PROV PROV RSA SCHANNEL Heshuvannya pidpis perevirka pidpisu Vikoristovuyetsya dlya avtentifikaciyi protokolu SSL 3 0 and TLS 1 0 Microsoft RSA Signature Cryptographic Provider MS DEF RSA SIG PROV PROV RSA SIG Minimalna funkcionalnist neobhidna dlya elektronnogo pidpisu ta perevirki ECP Div takozhred CryptoAPI Kriptografiya Kriptoservisi NET Framework Java Cryptography ArchitectureZnoskired Cryptographic Service Providers Windows MSDN Arhiv originalu za 20 chervnya 2018 Procitovano 20 chervnya 2018 Posilannyared Interfejs CryptoAPI Arhivovano 12 veresnya 2015 u Wayback Machine ros Tipi kriptoprovajderiv Arhivovano 25 chervnya 2018 u Wayback Machine angl Otrimano z https uk wikipedia org wiki Cryptographic Service Provider