Mei help fan PKCS # 11 kryptografyske tokenmeganismen op it Android-platfoarm

Mei help fan PKCS # 11 kryptografyske tokenmeganismen op it Android-platfoarm De tiid is kommen om kryptografysk te brûken PKCS # 1 meganismen1 en op it Android-platfoarm. Guon kinne sizze dat d'r gjin hardware-tokens binne foar Android. Mar, as dat sa is, dan is dit mar in tydlik ferskynsel. Mar hjoed kinne jo in software token sette of brûke wolk token. Sûnt it nut cryptoarmpkcs-A is ûntwikkele foar it Android-platfoarm mei Androwish yn 'e Tcl/Tk-skripttaal, dan wurdt it pakket brûkt om tokens te ferbinen TclPKCS11 ferzje 1.0.1.

Yn dit gefal wie gjin ferwurking fan it pakket nedich. Alles wat dien waard wie in skript taheakje oan it projekt om de pakketbibleteek te bouwen skreaun yn 'e taal Si, foar Android en de biblioteekferdieling sels. It waard besletten om biblioteken fan software ls11sw2016 en wolk ls11cloud tokens foar ferskate platfoarms ta te foegjen oan itselde projekt.

Al it oare is ienfâldich. Wy foegje knoppen ta foar it selektearjen fan in wurkjende token oan it twadde finster en krije:

  • software token ls11sw2016;
  • wolk token ls11cloud;
  • in oare PKCS11 # 11 token.

Mei help fan PKCS # 11 kryptografyske tokenmeganismen op it Android-platfoarm

Standert is in softwaretoken ferbûn. As it net earder makke is, wurdt jo frege om it te inisjalisearjen. Lit ús dat ûnthâlde token inisjalisaasje bestiet út it tawizen fan in tag en it ynstellen fan in brûker PIN-koade:

Mei help fan PKCS # 11 kryptografyske tokenmeganismen op it Android-platfoarm

Tink derom dat de software token waard ûntwikkele yn oerienstimming mei de oanbefellings fan PKCS # 11 v.2.40 en TK-26. Om folsleine ynformaasje te krijen oer it token, ynklusyf stipe kryptografyske meganismen, klikje jo gewoan op de knop "Oer it token en syn kryptografy" yn it haadmenu ("Funksjoneel"). Tsjintwurdich hat net ien hardware-token dy't Russyske kryptografy stipet dizze funksjonaliteit:

Mei help fan PKCS # 11 kryptografyske tokenmeganismen op it Android-platfoarm

De fraach ûntstiet: - hoe te ynstallearjen in persoanlik sertifikaat op in token. Der binne twa opsjes. De earste opsje is om it sertifikaat sels en it kaaipaar te ymportearjen fia de PKCS#12-kontener (de knop "Wurkje mei PKCS12 / PFX"):

Mei help fan PKCS # 11 kryptografyske tokenmeganismen op it Android-platfoarm

De twadde opsje omfettet it oanmeitsjen fan in fersyk (PKCS#10) foar in sertifikaat "Sertifikaat fersyk") soarget foar it generearjen fan in kaaipaar direkt op it token:

Mei help fan PKCS # 11 kryptografyske tokenmeganismen op it Android-platfoarm

No kinne jo it fersyk opslaan op flash-driven en gean nei sertifisearring sintrum foar in sertifikaat. As jo ​​​​it sertifikaat sille brûke foar testdoelen as yntern, kinne jo it nut ek brûke om in sertifikaat út te jaan CAFL63. It resultearjende sertifikaat wurdt ymportearre op it token yn 'e ljepper "Besjoch fersyk / sertifikaat":

Mei help fan PKCS # 11 kryptografyske tokenmeganismen op it Android-platfoarm

Jo kinne no dokuminten ûndertekenje mei sertifikaten opslein op it token mei it ljepblêd "Skriuw in dokumint".

Yn it folgjende artikel sille wy jo fertelle hoe't jo ferbine mei in wolktoken. En de fraach fan it oerdragen fan funksjes fan sertifikaatgeneraasje nei it mobile platfoarm bliuwt iepen. Is dit nedich?

De bywurke ferzje fan it cryptoarmpkcs-A-hulpprogramma foar it Android-platfoarm kin hjir downloade wurde:

PS It logboek opslaan

Om it pakket te bouwen, brûk it nut foar bonken fan AndroWish SDK. Sadree't it pakket mei sukses boud is, ferskynt in knop "Ynstallearje en útfiere" en as jo klikke, iepent in logfinster mei de útfier fan adb logcat (Android Debug Bridge logger). It neidiel fan dit skerm is dat it lestich is om it flaterberjocht te finen, benammen mei de "V" (verbose) flagge ynskeakele. Dêrom waard in knop "Bewarje" tafoege, dy't it log bewarret yn 'e triem /tmp/logBone.txt (wy prate oer Linux):

Mei help fan PKCS # 11 kryptografyske tokenmeganismen op it Android-platfoarm

Mei de komst fan dizze knop is it proses fan debuggen fan 'e applikaasje sterk ferienfâldige.

Om in knop ta te foegjen, foegje gewoan de folgjende koade ta oan it bonkenbestân nei rigel 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]

It kommando adb_logcat_save opslaan sjocht der sa út:

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
}

Boarne: www.habr.com

Add a comment