Uporaba mehanizmov kriptografskih žetonov PKCS#11 na platformi Android

Uporaba mehanizmov kriptografskih žetonov PKCS#11 na platformi Android Prišel je čas za uporabo kriptografije mehanizmi PKCS#11 in na platformi Android. Nekateri bodo morda rekli, da strojnih žetonov za Android ni. Če pa je temu tako, potem je to le začasen pojav. Toda danes lahko postavite programski žeton ali uporabite žeton oblaka. Od uporabnosti kriptoarmpkcs-A je razvit za platformo Android z uporabo Androwish v skriptnem jeziku Tcl/Tk, potem se paket uporablja za povezovanje žetonov TclPKCS11 različica 1.0.1.

V tem primeru obdelava paketa ni bila potrebna. Vse, kar je bilo storjeno, je bil dodatek skripta projektu za izgradnjo knjižnice paketov, napisane v jeziku Si, za Android in samo distribucijo knjižnice. Odločeno je bilo, da se istemu projektu dodajo knjižnice programske opreme ls11sw2016 in žetoni oblaka ls11cloud za različne platforme.

Vse ostalo je preprosto. V drugo okno dodamo gumbe za izbiro delujočega žetona in dobimo:

  • programski žeton ls11sw2016;
  • žeton oblaka ls11cloud;
  • drug žeton PKCS11#11.

Uporaba mehanizmov kriptografskih žetonov PKCS#11 na platformi Android

Privzeto je povezan programski žeton. Če še ni bil ustvarjen, boste pozvani, da ga inicializirate. Naj to spomnimo inicializacija žetona sestoji iz dodelitve oznake in nastavitve PIN kode uporabnika:

Uporaba mehanizmov kriptografskih žetonov PKCS#11 na platformi Android

Upoštevajte, da je bil programski žeton razvit v skladu s priporočili PKCS#11 v.2.40 in TK-26. Če želite pridobiti popolne informacije o žetonu, vključno s podprtimi kriptografskimi mehanizmi, preprosto kliknite gumb "O žetonu in njegovi kriptografiji" v glavnem meniju ("Funkcionalno"). Danes noben žeton strojne opreme, ki podpira rusko kriptografijo, nima te funkcije:

Uporaba mehanizmov kriptografskih žetonov PKCS#11 na platformi Android

Postavlja se vprašanje: - kako namestiti osebni certifikat na žeton. Obstajata dve možnosti. Prva možnost je uvoz samega potrdila in njegovega para ključev prek vsebnika PKCS#12 (gumb »Delo s PKCS12/PFX«):

Uporaba mehanizmov kriptografskih žetonov PKCS#11 na platformi Android

Druga možnost vključuje ustvarjanje zahteve (PKCS#10) za potrdilo.Ta možnost (funkcija "Zahteva za potrdilo") zagotavlja generiranje para ključev neposredno na žetonu:

Uporaba mehanizmov kriptografskih žetonov PKCS#11 na platformi Android

Zdaj lahko shranite zahtevo na bliskovne pogone in pojdite na certifikacijski center za potrdilo. Če boste potrdilo uporabljali za testne namene ali interno, lahko pripomoček uporabite tudi za izdajo potrdila CAFL63. Dobljeno potrdilo se uvozi na žeton na zavihku »Ogled zahteve/potrdila«:

Uporaba mehanizmov kriptografskih žetonov PKCS#11 na platformi Android

Zdaj lahko z zavihkom podpisujete dokumente s potrdili, shranjenimi na žetonu "Podpiši dokument".

V naslednjem članku vam bomo povedali, kako se povezati z žetonom v oblaku. In vprašanje prenosa funkcij za ustvarjanje potrdil na mobilno platformo ostaja odprto. Je to potrebno?

Posodobljeno različico pripomočka cryptoarmpkcs-A za platformo Android lahko prenesete tukaj:

PS Shranjevanje dnevnika

Če želite sestaviti paket, uporabite pripomoček bones iz AndroWish SDK. Ko je paket uspešno zgrajen, se prikaže gumb »Namesti in zaženi« in ob kliku se odpre okno dnevnika, ki prikazuje izhod adb logcat (Android Debug Bridge logger). Slaba stran tega zaslona je, da je težko najti sporočilo o napaki, zlasti če je omogočena zastavica "V" (besedno). Zato je bil dodan gumb »Shrani«, ki shrani dnevnik v datoteko /tmp/logBone.txt (govorimo o Linuxu):

Uporaba mehanizmov kriptografskih žetonov PKCS#11 na platformi Android

S pojavom tega gumba je bil postopek odpravljanja napak v aplikaciji zelo poenostavljen.

Če želite dodati gumb, preprosto dodajte naslednjo kodo v datoteko kosti za vrstico 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]

Ukaz za shranjevanje adb_logcat_save izgleda takole:

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
}

Vir: www.habr.com

Dodaj komentar