ืฉื™ืžื•ืฉ ื‘ืžื ื’ื ื•ื ื™ ืืกื™ืžื•ืŸ ืงืจื™ืคื˜ื•ื’ืจืคื™ PKCS#11 ื‘ืคืœื˜ืคื•ืจืžืช ืื ื“ืจื•ืื™ื“

ืฉื™ืžื•ืฉ ื‘ืžื ื’ื ื•ื ื™ ืืกื™ืžื•ืŸ ืงืจื™ืคื˜ื•ื’ืจืคื™ PKCS#11 ื‘ืคืœื˜ืคื•ืจืžืช ืื ื“ืจื•ืื™ื“ ื”ื’ื™ืข ื”ื–ืžืŸ ืœื”ืฉืชืžืฉ ื‘ืงืจื™ืคื˜ื•ื’ืจืคื™ื” ืžื ื’ื ื•ื ื™ PKCS#11 ื•ื‘ืคืœื˜ืคื•ืจืžืช ืื ื“ืจื•ืื™ื“. ื™ืฉ ืฉื™ื’ื™ื“ื• ืฉืื™ืŸ ืืกื™ืžื•ื ื™ ื—ื•ืžืจื” ืขื‘ื•ืจ ืื ื“ืจื•ืื™ื“. ืื‘ืœ, ืื ื–ื” ื›ืš, ืื– ื–ื• ืจืง ืชื•ืคืขื” ื–ืžื ื™ืช. ืื‘ืœ ื”ื™ื•ื ืืชื” ื™ื›ื•ืœ ืœืฉื™ื ืืกื™ืžื•ืŸ ืชื•ื›ื ื” ืื• ืœื”ืฉืชืžืฉ ืืกื™ืžื•ืŸ ืขื ืŸ. ืžืื– ื”ืฉื™ืจื•ืช cryptoarmpkcs-A ืคื•ืชื— ืขื‘ื•ืจ ืคืœื˜ืคื•ืจืžืช ืื ื“ืจื•ืื™ื“ ื‘ืืžืฆืขื•ืช Androwish ื‘ืฉืคืช ื”ืกืงืจื™ืคื˜ Tcl/Tk, ื•ืื– ื”ื—ื‘ื™ืœื” ืžืฉืžืฉืช ืœื—ื™ื‘ื•ืจ ืืกื™ืžื•ื ื™ื TclPKCS11 ื’ืจืกื” 1.0.1.

ื‘ืžืงืจื” ื–ื”, ืœื ื ื“ืจืฉ ืขื™ื‘ื•ื“ ืฉืœ ื”ื—ื‘ื™ืœื”. ื›ืœ ืžื” ืฉื ืขืฉื” ื”ื™ื” ืœื”ื•ืกื™ืฃ ืกืงืจื™ืคื˜ ืœืคืจื•ื™ืงื˜ ืœื‘ื ื™ื™ืช ืกืคืจื™ื™ืช ื”ื—ื‘ื™ืœื•ืช ืฉื ื›ืชื‘ื” ื‘ืฉืคื” ืกื™, ืขื‘ื•ืจ ืื ื“ืจื•ืื™ื“ ื•ื”ืคืฆืช ื”ืกืคืจื™ื™ื” ืขืฆืžื”. ื”ื•ื—ืœื˜ ืœื”ื•ืกื™ืฃ ืกืคืจื™ื•ืช ืฉืœ ืชื•ื›ื ื•ืช ls11sw2016 ื•-cloud ls11cloud tokens ืขื‘ื•ืจ ืคืœื˜ืคื•ืจืžื•ืช ืฉื•ื ื•ืช ืœืื•ืชื• ืคืจื•ื™ืงื˜.

ื›ืœ ื”ืฉืืจ ืคืฉื•ื˜. ืื ื• ืžื•ืกื™ืคื™ื ื›ืคืชื•ืจื™ื ืœื‘ื—ื™ืจืช ืืกื™ืžื•ืŸ ืขื•ื‘ื“ ืœื—ืœื•ืŸ ื”ืฉื ื™ ื•ืžืงื‘ืœื™ื:

  • ืืกื™ืžื•ืŸ ืชื•ื›ื ื” ls11sw2016;
  • ืืกื™ืžื•ืŸ ืขื ืŸ ls11cloud;
  • ืืกื™ืžื•ืŸ PKCS11#11 ื ื•ืกืฃ.

ืฉื™ืžื•ืฉ ื‘ืžื ื’ื ื•ื ื™ ืืกื™ืžื•ืŸ ืงืจื™ืคื˜ื•ื’ืจืคื™ PKCS#11 ื‘ืคืœื˜ืคื•ืจืžืช ืื ื“ืจื•ืื™ื“

ื›ื‘ืจื™ืจืช ืžื—ื“ืœ, ืืกื™ืžื•ืŸ ืชื•ื›ื ื” ืžื—ื•ื‘ืจ. ืื ื”ื•ื ืœื ื ื•ืฆืจ ื‘ืขื‘ืจ, ืชืชื‘ืงืฉ ืœืืชื—ืœ ืื•ืชื•. ืชืŸ ืœื ื• ืœื”ื–ื›ื™ืจ ืœืš ืืช ื–ื” ืืชื—ื•ืœ ืืกื™ืžื•ืŸ ืžื•ืจื›ื‘ ืžื”ืงืฆืืช ืชื’ ื•ื”ื’ื“ืจืช ืงื•ื“ PIN ืœืžืฉืชืžืฉ:

ืฉื™ืžื•ืฉ ื‘ืžื ื’ื ื•ื ื™ ืืกื™ืžื•ืŸ ืงืจื™ืคื˜ื•ื’ืจืคื™ PKCS#11 ื‘ืคืœื˜ืคื•ืจืžืช ืื ื“ืจื•ืื™ื“

ืฉื™ืžื• ืœื‘ ืฉืืกื™ืžื•ืŸ ื”ืชื•ื›ื ื” ืคื•ืชื— ื‘ื”ืชืื ืœื”ืžืœืฆื•ืช PKCS#11 v.2.40 ื•-TK-26. ื›ื“ื™ ืœืงื‘ืœ ืžื™ื“ืข ืžืœื ืขืœ ื”ืืกื™ืžื•ืŸ, ื›ื•ืœืœ ืžื ื’ื ื•ื ื™ ื”ืฆืคื ื” ื ืชืžื›ื™ื, ืคืฉื•ื˜ ืœื—ืฅ ืขืœ ื›ืคืชื•ืจ "ืื•ื“ื•ืช ื”ืืกื™ืžื•ืŸ ื•ื”ื”ืฆืคื ื” ืฉืœื•" ื‘ืชืคืจื™ื˜ ื”ืจืืฉื™ ("ืคื•ื ืงืฆื™ื•ื ืœื™"). ื›ื™ื•ื, ืœืืฃ ืืกื™ืžื•ืŸ ื—ื•ืžืจื” ืื—ื“ ื”ืชื•ืžืš ื‘ื”ืฆืคื ื” ืจื•ืกื™ืช ืื™ืŸ ืืช ื”ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช ื”ื–ื•:

ืฉื™ืžื•ืฉ ื‘ืžื ื’ื ื•ื ื™ ืืกื™ืžื•ืŸ ืงืจื™ืคื˜ื•ื’ืจืคื™ PKCS#11 ื‘ืคืœื˜ืคื•ืจืžืช ืื ื“ืจื•ืื™ื“

ื ืฉืืœืช ื”ืฉืืœื”: - ื›ื™ืฆื“ ืœื”ืชืงื™ืŸ ืชืขื•ื“ื” ืื™ืฉื™ืช ืขืœ ืืกื™ืžื•ืŸ. ื™ืฉื ืŸ ืฉืชื™ ืืคืฉืจื•ื™ื•ืช. ื”ืืคืฉืจื•ืช ื”ืจืืฉื•ื ื” ื”ื™ื ืœื™ื™ื‘ื ืืช ื”ืื™ืฉื•ืจ ืขืฆืžื• ื•ืืช ืฆืžื“ ื”ืžืคืชื—ื•ืช ืฉืœื• ื“ืจืš ืžื™ื›ืœ PKCS#12 (ืœื—ืฆืŸ "ืขื‘ื•ื“ื” ืขื PKCS12/PFX"):

ืฉื™ืžื•ืฉ ื‘ืžื ื’ื ื•ื ื™ ืืกื™ืžื•ืŸ ืงืจื™ืคื˜ื•ื’ืจืคื™ PKCS#11 ื‘ืคืœื˜ืคื•ืจืžืช ืื ื“ืจื•ืื™ื“

ื”ืืคืฉืจื•ืช ื”ืฉื ื™ื™ื” ื›ื•ืœืœืช ื™ืฆื™ืจืช ื‘ืงืฉื” (PKCS#10) ืœืื™ืฉื•ืจ. ืืคืฉืจื•ืช ื–ื• (ืคื•ื ืงืฆื™ื” "ื‘ืงืฉืช ืื™ืฉื•ืจ") ืžืกืคืง ืœื™ืฆื™ืจืช ื–ื•ื’ ืžืคืชื—ื•ืช ื™ืฉื™ืจื•ืช ืขืœ ื”ืืกื™ืžื•ืŸ:

ืฉื™ืžื•ืฉ ื‘ืžื ื’ื ื•ื ื™ ืืกื™ืžื•ืŸ ืงืจื™ืคื˜ื•ื’ืจืคื™ PKCS#11 ื‘ืคืœื˜ืคื•ืจืžืช ืื ื“ืจื•ืื™ื“

ื›ืขืช ืชื•ื›ืœ ืœืฉืžื•ืจ ืืช ื”ื‘ืงืฉื” ื‘ื›ื•ื ื ื™ ื”ื‘ื–ืง ื•ืœืœื›ืช ืืœ ืžืจื›ื– ื”ืกืžื›ื” ืœืชืขื•ื“ื”. ืื ืชืฉืชืžืฉ ื‘ืชืขื•ื“ื” ืœืžื˜ืจื•ืช ื‘ื“ื™ืงื” ืื• ืคื ื™ืžื™ืช, ืชื•ื›ืœ ื’ื ืœื”ืฉืชืžืฉ ื‘ื›ืœื™ ื”ืฉื™ืจื•ืช ื›ื“ื™ ืœื”ื ืคื™ืง ืชืขื•ื“ื” CAFL63. ื”ืื™ืฉื•ืจ ื”ืžืชืงื‘ืœ ืžื™ื•ื‘ื ืืœ ื”ืืกื™ืžื•ืŸ ื‘ื›ืจื˜ื™ืกื™ื™ื” "ื”ืฆื’ ื‘ืงืฉื”/ืื™ืฉื•ืจ":

ืฉื™ืžื•ืฉ ื‘ืžื ื’ื ื•ื ื™ ืืกื™ืžื•ืŸ ืงืจื™ืคื˜ื•ื’ืจืคื™ PKCS#11 ื‘ืคืœื˜ืคื•ืจืžืช ืื ื“ืจื•ืื™ื“

ื›ืขืช ืชื•ื›ืœ ืœื—ืชื•ื ืขืœ ืžืกืžื›ื™ื ืขื ืื™ืฉื•ืจื™ื ื”ืžืื•ื—ืกื ื™ื ืขืœ ื”ืืกื™ืžื•ืŸ ื‘ืืžืฆืขื•ืช ื”ื›ืจื˜ื™ืกื™ื™ื” "ื—ืชื•ื ืขืœ ืžืกืžืš".

ื‘ืžืืžืจ ื”ื‘ื ื ืกืคืจ ืœื›ื ื›ื™ืฆื“ ืœื”ืชื—ื‘ืจ ืœืืกื™ืžื•ืŸ ืขื ืŸ. ื•ื”ืฉืืœื” ืฉืœ ื”ืขื‘ืจืช ืคื•ื ืงืฆื™ื•ืช ืฉืœ ื™ืฆื™ืจืช ืื™ืฉื•ืจื™ื ืœืคืœื˜ืคื•ืจืžื” ื”ื ื™ื™ื“ืช ื ื•ืชืจื” ืคืชื•ื—ื”. ื”ืื ื–ื” ื ื—ื•ืฅ?

ืืช ื”ื’ืจืกื” ื”ืžืขื•ื“ื›ื ืช ืฉืœ ื›ืœื™ ื”ืฉื™ืจื•ืช cryptoarmpkcs-A ืœืคืœื˜ืคื•ืจืžืช ืื ื“ืจื•ืื™ื“ ื ื™ืชืŸ ืœื”ื•ืจื™ื“ ื›ืืŸ:

ื .ื‘ ืฉืžื™ืจืช ื”ื™ื•ืžืŸ

ื›ื“ื™ ืœื‘ื ื•ืช ืืช ื”ื—ื‘ื™ืœื”, ื”ืฉืชืžืฉ ื‘ื›ืœื™ ื”ืขื–ืจ ืขืฆืžื•ืช ืž SDK ืฉืœ AndroWish. ืœืื—ืจ ื‘ื ื™ื™ืช ื”ื—ื‘ื™ืœื” ื‘ื”ืฆืœื—ื”, ืžื•ืคื™ืข ื›ืคืชื•ืจ "ื”ืชืงืŸ ื•ื”ืคืขืœ" ื•ื›ืืฉืจ ืœื•ื—ืฆื™ื ืขืœื™ื•, ื ืคืชื— ื—ืœื•ืŸ ื™ื•ืžืŸ ื”ืžืฆื™ื’ ืืช ื”ืคืœื˜ ืฉืœ adb logcat (ืœื•ื’ืจ ืื ื“ืจื•ืื™ื“ Debug Bridge). ื”ื—ื™ืกืจื•ืŸ ื‘ืžืกืš ื–ื” ื”ื•ื ืฉืงืฉื” ืœืžืฆื•ื ืืช ื”ื•ื“ืขืช ื”ืฉื’ื™ืื”, ื‘ืžื™ื•ื—ื“ ื›ืฉื“ื’ืœ ื”-"V" (ืจื‘ื•ืชื™) ืžื•ืคืขืœ. ืœื›ืŸ, ื ื•ืกืฃ ื›ืคืชื•ืจ "ืฉืžื•ืจ", ืฉืฉื•ืžืจ ืืช ื”ื™ื•ืžืŸ ื‘ืงื•ื‘ืฅ /tmp/logBone.txt (ืื ื—ื ื• ืžื“ื‘ืจื™ื ืขืœ ืœื™ื ื•ืงืก):

ืฉื™ืžื•ืฉ ื‘ืžื ื’ื ื•ื ื™ ืืกื™ืžื•ืŸ ืงืจื™ืคื˜ื•ื’ืจืคื™ 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

ื”ื•ืกืคืช ืชื’ื•ื‘ื”