PKCS#11 kriptogrāfisko marķieru mehānismu izmantošana Android platformā

PKCS#11 kriptogrāfisko marķieru mehānismu izmantošana Android platformā Ir pienācis laiks izmantot kriptogrāfiju PKCS#1 mehānismi1 un Android platformā. Daži var teikt, ka operētājsistēmai Android nav aparatūras marķieru. Bet, ja tas tā ir, tad tā ir tikai īslaicīga parādība. Bet šodien jūs varat ievietot programmatūras marķieri vai izmantot mākoņa marķieris. Kopš lietderības kriptoarmpkcs-A ir izstrādāta Android platformai, izmantojot Androwish Tcl/Tk skriptu valodā, tad pakotne tiek izmantota marķieru savienošanai TclPKCS11 versija 1.0.1.

Šajā gadījumā iepakojuma apstrāde nebija nepieciešama. Viss, kas tika izdarīts, bija pievienot skriptu projektam, lai izveidotu pakešu bibliotēku, kas rakstīta šajā valodā paši, Android ierīcēm un pašai bibliotēkas izplatīšanai. Tika nolemts vienam projektam pievienot programmatūras ls11sw2016 un mākoņa ls11cloud marķieru bibliotēkas dažādām platformām.

Viss pārējais ir vienkāršs. Otrajam logam pievienojam pogas darba marķiera izvēlei un iegūstam:

  • programmatūras marķieris ls11sw2016;
  • mākoņa marķieris ls11cloud;
  • vēl viens PKCS11#11 marķieris.

PKCS#11 kriptogrāfisko marķieru mehānismu izmantošana Android platformā

Pēc noklusējuma ir pievienots programmatūras marķieris. Ja tas iepriekš nav izveidots, jums tiks piedāvāts to inicializēt. Atgādināsim to marķiera inicializācija sastāv no atzīmes piešķiršanas un lietotāja PIN koda iestatīšanas:

PKCS#11 kriptogrāfisko marķieru mehānismu izmantošana Android platformā

Ņemiet vērā, ka programmatūras marķieris tika izstrādāts saskaņā ar PKCS#11 v.2.40 un TK-26 ieteikumiem. Lai iegūtu pilnīgu informāciju par marķieri, tostarp atbalstītajiem kriptogrāfijas mehānismiem, galvenajā izvēlnē noklikšķiniet uz pogas “Par marķieri un tā kriptogrāfiju” (“Functional”). Mūsdienās nevienai aparatūras marķierim, kas atbalsta krievu kriptogrāfiju, nav šādas funkcijas:

PKCS#11 kriptogrāfisko marķieru mehānismu izmantošana Android platformā

Rodas jautājums: - kā uz marķiera uzstādīt personīgo sertifikātu. Ir divi varianti. Pirmā iespēja ir importēt pašu sertifikātu un tā atslēgu pāri, izmantojot konteineru PKCS#12 (poga “Darbs ar PKCS12/PFX”):

PKCS#11 kriptogrāfisko marķieru mehānismu izmantošana Android platformā

Otrā iespēja ietver sertifikāta pieprasījuma (PKCS#10) izveidi. Šī opcija (funkcija "Sertifikāta pieprasījums") nodrošina atslēgu pāra ģenerēšanu tieši uz marķiera:

PKCS#11 kriptogrāfisko marķieru mehānismu izmantošana Android platformā

Tagad varat saglabāt pieprasījumu zibatmiņas diskos un doties uz sertifikācijas centrs par sertifikātu. Ja sertifikātu izmantosit pārbaudes nolūkos vai iekšēji, sertifikāta izsniegšanai varat izmantot arī utilītu CAFL63. Iegūtais sertifikāts tiek importēts uz marķiera cilnē “Skatīt pieprasījumu/sertifikātu”:

PKCS#11 kriptogrāfisko marķieru mehānismu izmantošana Android platformā

Tagad varat parakstīt dokumentus ar sertifikātiem, kas saglabāti pilnvarā, izmantojot cilni "Parakstīt dokumentu".

Nākamajā rakstā mēs jums pateiksim, kā izveidot savienojumu ar mākoņa marķieri. Un jautājums par sertifikātu ģenerēšanas funkciju nodošanu mobilajai platformai paliek atklāts. Vai tas ir nepieciešams?

Atjaunināto utilīta cryptoarmpkcs-A versiju Android platformai var lejupielādēt šeit:

PS Žurnāla saglabāšana

Lai izveidotu paketi, izmantojiet utilītu kauli no AndroWish SDK. Kad pakotne ir veiksmīgi izveidota, tiek parādīta poga “Instalēt un palaist”, un, noklikšķinot, tiek atvērts žurnāla logs, kurā tiek rādīta adb logcat (Android Debug Bridge reģistrētāja) izvade. Šī ekrāna negatīvie aspekti ir tādi, ka ir grūti atrast kļūdas ziņojumu, it īpaši, ja ir iespējots "V" (detalizēts) karodziņš. Tāpēc tika pievienota poga “Saglabāt”, kas saglabā žurnālu failā /tmp/logBone.txt (mēs runājam par Linux):

PKCS#11 kriptogrāfisko marķieru mehānismu izmantošana Android platformā

Līdz ar šīs pogas parādīšanos lietojumprogrammas atkļūdošanas process ir ievērojami vienkāršots.

Lai pievienotu pogu, vienkārši pievienojiet šādu kodu kaulu failam pēc 2591. rindas:

	    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]

Saglabāšanas komanda adb_logcat_save izskatās šādi:

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
}

Avots: www.habr.com

Pievieno komentāru