Android платформасында PKCS#11 криптографиялық таңбалауыш механизмдерін пайдалану

Android платформасында PKCS#11 криптографиялық таңбалауыш механизмдерін пайдалану Криптографияны қолданудың уақыты келді PKCS#1 механизмдері1 және Android платформасында. Кейбіреулер Android үшін аппараттық таңбалауыштар жоқ деп айтуы мүмкін. Бірақ, егер бұл солай болса, онда бұл уақытша ғана құбылыс. Бірақ бүгін сіз бағдарламалық жасақтаманы қоюға немесе пайдалануға болады бұлт белгісі. Утилитадан бері cryptoarmpkcs-A Android платформасы үшін Tcl/Tk сценарий тілінде Androwish көмегімен әзірленген, содан кейін пакет таңбалауыштарды қосу үшін пайдаланылады. TclPKCS11 1.0.1 нұсқасы.

Бұл жағдайда пакетті өңдеу қажет емес. Бар болғаны тілде жазылған бума кітапханасын құру үшін жобаға сценарий қосу болды Si, Android және кітапхана таратуының өзі үшін. Бір жобаға әртүрлі платформаларға арналған ls11sw2016 бағдарламалық жасақтамасының кітапханаларын және бұлттық ls11cloud таңбалауыштарын қосу туралы шешім қабылданды.

Қалғанының бәрі қарапайым. Біз екінші терезеге жұмыс белгісін таңдауға арналған түймелерді қосамыз және аламыз:

  • бағдарламалық құрал таңбалауышы ls11sw2016;
  • бұлт таңбалауышы ls11cloud;
  • басқа PKCS11#11 таңбалауышы.

Android платформасында PKCS#11 криптографиялық таңбалауыш механизмдерін пайдалану

Әдепкі бойынша бағдарламалық құрал таңбалауышы қосылған. Ол бұрын жасалмаса, оны инициализациялау сұралады. Естеріңізге сала кетейік токенді инициализациялау тег тағайындаудан және пайдаланушының PIN кодын орнатудан тұрады:

Android платформасында PKCS#11 криптографиялық таңбалауыш механизмдерін пайдалану

Бағдарламалық құрал таңбалауышы PKCS#11 v.2.40 және TK-26 ұсыныстарына сәйкес әзірленгенін ескеріңіз. Токен туралы толық ақпаратты, соның ішінде қолдау көрсетілетін криптографиялық механизмдерді алу үшін негізгі мәзірде («Функционалды») «Токен және оның криптографиясы туралы» түймесін басу жеткілікті. Бүгінгі таңда ресейлік криптографияны қолдайтын бірде-бір аппараттық таңбалауыш мұндай функцияға ие емес:

Android платформасында PKCS#11 криптографиялық таңбалауыш механизмдерін пайдалану

Сұрақ туындайды: - жеке куәлікті жетонға қалай орнату керек. Екі нұсқа бар. Бірінші опция сертификаттың өзін және оның кілт жұбын PKCS#12 контейнері арқылы импорттау болып табылады («PKCS12/PFX-мен жұмыс» түймесі):

Android платформасында PKCS#11 криптографиялық таңбалауыш механизмдерін пайдалану

Екінші опция сертификатқа сұраныс жасауды (PKCS#10) қамтиды.Бұл опция (функция «Сертификатқа сұраныс») таңбалауышта кілттер жұбының генерациясын қамтамасыз етеді:

Android платформасында PKCS#11 криптографиялық таңбалауыш механизмдерін пайдалану

Енді сіз сұрауды флэш-дискілерге сақтап, өтіңіз сертификаттау орталығы сертификат үшін. Сертификатты сынақ мақсатында немесе ішкі мақсатта пайдалансаңыз, сертификат беру үшін утилитаны да пайдалана аласыз CAFL63. Алынған сертификат «Сұраныс/Сертификатты қарау» қойындысындағы таңбалауышқа импортталады:

Android платформасында PKCS#11 криптографиялық таңбалауыш механизмдерін пайдалану

Енді қойындыны пайдаланып таңбалауышта сақталған сертификаттармен құжаттарға қол қоюға болады «Құжатқа қол қою».

Келесі мақалада бұлтты таңбалауышқа қалай қосылуға болатынын айтамыз. Ал сертификаттарды генерациялау функцияларын мобильді платформаға беру мәселесі ашық күйінде қалып отыр. Бұл қажет пе?

Android платформасына арналған cryptoarmpkcs-A утилитасының жаңартылған нұсқасын мына жерден жүктеп алуға болады:

P.S. Журналды сақтау

Пакетті құру үшін сүйектер утилитасын пайдаланыңыз AndroWish SDK. Бума сәтті құрастырылғаннан кейін «Орнату және іске қосу» түймесі пайда болады және басқан кезде adb logcat (Android Debug Bridge тіркеушісі) шығысын көрсететін журнал терезесі ашылады. Бұл экранның кемшілігі - қате туралы хабарды табу қиын, әсіресе «V» (толық) жалаушасы қосылған кезде. Сондықтан журналды /tmp/logBone.txt файлында сақтайтын «Сақтау» түймесі қосылды (біз Linux туралы айтып отырмыз):

Android платформасында PKCS#11 криптографиялық таңбалауыш механизмдерін пайдалану

Бұл түйменің пайда болуымен қолданбаны жөндеу процесі айтарлықтай жеңілдетілді.

Түймені қосу үшін 2591 жолдан кейін сүйектер файлына келесі кодты қосыңыз:

	    ttk::button $l.frame.clear -text "Clear" -width 6 
		-command [list adb_logcat_clear $l.text]
#Добавленный код
	    ttk::button $l.frame.save -text "Save" -width 6 
		-command [list adb_logcat_save $l.text]

	    ttk::button $l.frame.run -text "Run" -width 6 
		-command [list adb_logcat_run $l]

adb_logcat_save сақтау пәрмені келесідей:

proc adb_logcat_save {text} {
    set tt [$text get 1.0 end]
    set file "/tmp/logBone.txt"
    file delete -force $file
  #Собственно запись в файл
    set fd [open $file w]
    chan configure $fd -translation binary
    puts -nonewline $fd $tt
    close $fd
}

Ақпарат көзі: www.habr.com

пікір қалдыру