Кіріспе

Microsoft Windows-та криптографиялық қызмет провайдері (CSP) — Microsoft CryptoAPI (CAPI) бағдарламалық қамтамасыз ету кітапханасы. CSP кодтау және декодтау функцияларын іске асырады, оларды компьютерлік қолданба бағдарламалары, мысалы, пайдаланушының сенімді аутентификациясын жүзеге асыру немесе электрондық поштаны қауіпсіз ету үшін пайдалана алады. CSP — әртүрлі қолданбалар пайдалана алатын тәуелсіз модульдер. Пайдаланушы бағдарламасы CryptoAPI функцияларын шақырады және олар CSP функцияларына қайта бағытталады. CSP криптографиялық алгоритмдер мен стандарттарды іске асыруға жауапты болғандықтан, қосымшалар қауіпсіздік егжей-тегжейлерімен айналысуының қажеті жоқ. Сонымен қатар, бір қолданба CryptoAPI-ге шақыру кезінде қандай CSP-ні пайдаланатынын анықтай алады. Шын мәнінде, барлық криптографиялық әрекет CSP-де жүзеге асырылады. CryptoAPI тек қосымша мен CSP арасындағы көпір ретінде жұмыс істейді. CSP негізінен жүктеу және пайдалану бойынша ерекше шектеулері бар DLL-дің арнайы түрі ретінде іске асырылады. Әрбір CSP-ге Microsoft-тың цифрлық қолтаңбасы қойылуы тиіс және Windows CSP-ні жүктегенде қолтаңба тексеріледі. Сонымен қатар, жүктелгеннен кейін Windows CSP-ні жүйелі түрде қайта сканерлейді, яғни зиянды бағдарламалық жасақтамамен, мысалы компьютерлік вирустармен немесе пайдаланушының өзі CSP-нің кодына енгізілген шектеулерді (мысалы, криптографиялық кілт ұзындығы) айналып өту үшін жасалған өзгерістерді анықтау үшін. Қолтаңба алу үшін Microsoft CSP-ді әзірлеушілер Microsoft-қа түрлі заңдық шектеулерді сақтауға уәде беретін және жарамды байланыс ақпаратын ұсынатын құжаттарды ұсынуы керек. 2000 жыл шамасында Microsoft осы қолтаңбаларды беру үшін ешқандай төлем талап етпеді. Дамыту және сынау мақсатында CSP әзірлеушісі Windows-ты Microsoft-тың орнына әзірлеушінің жеке қолтаңбаларын танитындай етіп конфигурациялай алады, бірақ бұл техникалық емес соңғы пайдаланушыларға қолайсыз күрделі және түсініксіз операция. CAPI/CSP архитектурасы АҚШ-тың криптографияны экспорттауға қатысты шектеуші бақылауы кезінде пайда болды. Microsoft-тың Windows-қа кіретін әдеттегі немесе «негізгі» CSP 512 бит RSA ашық кілт криптографиясымен және 40 бит симметриялық криптографиямен шектелген, ол кезде экспортталатын жаппай нарықтық бағдарламалық жасақтамада рұқсат етілген ең үлкен кілт ұзындығы еді. Күшті шифрлауды іске асыратын CSP тек АҚШ резиденттері үшін ғана қол жетімді болды, егер CSP-лер АҚШ үкіметінің экспорттық рұқсатын алмаса. CSP-ге толыққанды құжаттарды ұсынған кезде ғана қол қоюды талап ету жүйесі анонимді немесе шетелдік әзірлеушілер жүзеге асырған рұқсат етілмеген CSP-дің оңай таралуын болдырмау үшін жасалды. Осылайша, ол Microsoft-тың үкіметке экспорттық рұқсат алу үшін CAPI-ге жасаған жеңілдік ретінде ұсынылды. Бернштейнге қарсы АҚШ сотының шешімінен кейін компьютерлік бастапқы кодты қорғалған сөз бостандығы ретінде белгілеу және криптографиялық реттеуші билікті АҚШ Мемлекеттік департаментінен экспортқа көбірек қолдау көрсететін Сауда департаментіне беруден кейін кілт ұзындығына қатысты шектеулер алынып тасталды, ал Windows-пен бірге жеткізілетін CSP-лер енді толық күшті криптографияны қамтиды. Үшінші тараптың CSP-ларының негізгі мақсаты — сыртқы криптографиялық аппараттық құрылғылармен, мысалы, аппараттық қауіпсіздік модульдерімен (HSM) немесе смарт-карталармен байланыс орнату.

Ақылды картаның CSP

Бұл криптографиялық функцияларды смарт-карта іске асыра алады, сондықтан Smart Card CSP – бұл PKCS#11 стандартының Microsoft нұсқасы. Microsoft Windows, Windows тіркелімінде тіркелген смарт-картаның қайта орнату (ATR) жауабын талдау арқылы қолданылуға тиіс дұрыс Smart Card CSP-ны анықтайды. Жаңа CSP орнатылғанда, қолдау көрсетілетін смарт-карталардың барлық ATR-лері тізілімге қосылады.

MS Office парольмен қорғауда CSP қолдану

Криптографиялық қызмет провайдерлерін Microsoft Office XP нұсқасынан бастап Word, Excel және PowerPoint құжаттарын шифрлеу үшін қолдануға болады. Дәстүрлі шифрлеу алгоритмі әдепкі бойынша 40 биттік кілтпен қолданылады, бірақ CSP-ні қосу кілттің ұзындығын арттырып, құжатты түсіру процесін қиындатады. Бұл тек құжатты ашу үшін талап етілетін парольдерге ғана қатысты, себебі осы пароль түрі ғана парольмен қорғалған құжатты шифрлейді.