Gebruik PKCS#11 kriptografiese tekenmeganismes op die Android-platform

Gebruik PKCS#11 kriptografiese tekenmeganismes op die Android-platform Die tyd het aangebreek om kriptografies te gebruik PKCS#1 meganismes1 en op die Android-platform. Sommige mag sΓͺ dat daar geen hardeware-tokens vir Android is nie. Maar as dit so is, dan is dit slegs 'n tydelike verskynsel. Maar vandag kan jy 'n sagteware-token sit of gebruik wolktoken. Sedert die nut cryptoarmpkcs-A is ontwikkel vir die Android-platform deur Androwish in die Tcl/Tk-skriptaal te gebruik, dan word die pakket gebruik om tokens te koppel TclPKCS11 weergawe 1.0.1.

In hierdie geval was geen verwerking van die pakket nodig nie. Al wat gedoen is, was om 'n skrif by die projek te voeg om die pakketbiblioteek te bou wat in die taal geskryf is B, vir Android en die biblioteekverspreiding self. Daar is besluit om biblioteke van sagteware ls11sw2016 en wolk ls11cloud-tokens vir verskeie platforms by dieselfde projek te voeg.

Al die ander is eenvoudig. Ons voeg knoppies by om 'n werkende teken te kies by die tweede venster en kry:

  • sagteware-token ls11sw2016;
  • wolktoken ls11cloud;
  • nog 'n PKCS11#11-teken.

Gebruik PKCS#11 kriptografiese tekenmeganismes op die Android-platform

By verstek is 'n sagtewaretoken gekoppel. As dit nie voorheen geskep is nie, sal jy gevra word om dit te inisialiseer. Laat ons jou daaraan herinner token-inisialisering bestaan ​​uit die toeken van 'n merker en die opstel van 'n gebruiker-PIN-kode:

Gebruik PKCS#11 kriptografiese tekenmeganismes op die Android-platform

Let daarop dat die sagteware-token ontwikkel is in ooreenstemming met die aanbevelings van PKCS#11 v.2.40 en TK-26. Om volledige inligting oor die teken te kry, insluitend ondersteunde kriptografiese meganismes, klik net op die "Oor die teken en sy kriptografie"-knoppie in die hoofkieslys ("Funksioneel"). Vandag het nie 'n enkele hardeware-token wat Russiese kriptografie ondersteun hierdie funksionaliteit nie:

Gebruik PKCS#11 kriptografiese tekenmeganismes op die Android-platform

Die vraag ontstaan: - hoe om 'n persoonlike sertifikaat op 'n teken te installeer. Daar is twee opsies. Die eerste opsie is om die sertifikaat self en sy sleutelpaar deur die PKCS#12-houer in te voer (die "Werk met PKCS12/PFX"-knoppie):

Gebruik PKCS#11 kriptografiese tekenmeganismes op die Android-platform

Die tweede opsie behels die skep van 'n versoek (PKCS#10) vir 'n sertifikaat. Hierdie opsie (funksie "Sertifikaatversoek") maak voorsiening vir die generering van 'n sleutelpaar direk op die teken:

Gebruik PKCS#11 kriptografiese tekenmeganismes op die Android-platform

Nou kan jy die versoek stoor op flash drives en gaan na sertifisering sentrum vir 'n sertifikaat. As jy die sertifikaat vir toetsdoeleindes of intern gaan gebruik, kan jy ook die hulpprogram gebruik om 'n sertifikaat uit te reik CAFL63. Die resulterende sertifikaat word op die teken in die "Bekyk versoek/sertifikaat"-oortjie ingevoer:

Gebruik PKCS#11 kriptografiese tekenmeganismes op die Android-platform

Jy kan nou dokumente onderteken met sertifikate wat op die teken gestoor is deur die oortjie te gebruik "Teken 'n dokument".

In die volgende artikel sal ons jou vertel hoe om aan 'n wolktoken te koppel. En die vraag oor die oordrag van sertifikaatgenereringsfunksies na die mobiele platform bly oop. Is dit nodig?

Die opgedateerde weergawe van die cryptoarmpkcs-A-hulpprogram vir die Android-platform kan hier afgelaai word:

PS Stoor die logboek

Om die pakket te bou, gebruik die bones utility from AndroWish SDK. Sodra die pakket suksesvol gebou is, verskyn 'n "Installeer en hardloop"-knoppie en wanneer daarop geklik word, word 'n logvenster oopgemaak wat die uitvoer van adb logcat (Android Debug Bridge logger) wys. Die nadeel van hierdie skerm is dat dit moeilik is om die foutboodskap te vind, veral met die "V" (verbose) vlag geaktiveer. Daarom is 'n "Stoor"-knoppie bygevoeg, wat die log in die lΓͺer /tmp/logBone.txt stoor (ons praat van Linux):

Gebruik PKCS#11 kriptografiese tekenmeganismes op die Android-platform

Met die koms van hierdie knoppie is die proses om die toepassing te ontfout aansienlik vereenvoudig.

Om 'n knoppie by te voeg, voeg net die volgende kode by die bones-lΓͺer na reΓ«l 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]

Die adb_logcat_save stoor opdrag lyk soos volg:

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
}

Bron: will.com

Voeg 'n opmerking