ΠΠΎΠΉΠ΄Π΅ Π²ΡΠ΅ΠΌΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΡ
Π ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ Π½Π΅ Π΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠ°. ΠΡΠΈΡΠΊΠΎ, ΠΊΠΎΠ΅ΡΠΎ Π±Π΅ΡΠ΅ Π½Π°ΠΏΡΠ°Π²Π΅Π½ΠΎ, Π±Π΅ΡΠ΅ Π΄Π° ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈ ΡΠΊΡΠΈΠΏΡ ΠΊΡΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π·Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Ρ ΠΏΠ°ΠΊΠ΅ΡΠΈ, Π½Π°ΠΏΠΈΡΠ°Π½Π° Π½Π° Π΅Π·ΠΈΠΊΠ°
ΠΡΠΈΡΠΊΠΎ Π΄ΡΡΠ³ΠΎ Π΅ ΠΏΡΠΎΡΡΠΎ. ΠΠΎΠ±Π°Π²ΡΠΌΠ΅ Π±ΡΡΠΎΠ½ΠΈ Π·Π° ΠΈΠ·Π±ΠΎΡ Π½Π° ΡΠ°Π±ΠΎΡΠ΅Ρ ΡΠΎΠΊΠ΅Π½ ΠΊΡΠΌ Π²ΡΠΎΡΠΈΡ ΠΏΡΠΎΠ·ΠΎΡΠ΅Ρ ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π²Π°ΠΌΠ΅:
- ΡΠΎΡΡΡΠ΅ΡΠ΅Π½ ΡΠΎΠΊΠ΅Π½ ls11sw2016;
- ΠΎΠ±Π»Π°ΡΠ΅Π½ ΡΠΎΠΊΠ΅Π½ ls11cloud;
- Π΄ΡΡΠ³ ΡΠΎΠΊΠ΅Π½ PKCS11#11.
ΠΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π΅ ΡΠ²ΡΡΠ·Π°Π½ ΡΠΎΡΡΡΠ΅ΡΠ΅Π½ ΡΠΎΠΊΠ΅Π½. ΠΠΊΠΎ Π½Π΅ Π΅ Π±ΠΈΠ» ΡΡΠ·Π΄Π°Π΄Π΅Π½ ΠΏΡΠ΅Π΄ΠΈ ΡΠΎΠ²Π°, ΡΠ΅ Π±ΡΠ΄Π΅ΡΠ΅ ΠΏΠΎΠ΄ΠΊΠ°Π½Π΅Π½ΠΈ Π΄Π° Π³ΠΎ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°ΡΠ΅. ΠΠ΅ΠΊΠ° ΡΠΈ ΠΏΡΠΈΠΏΠΎΠΌΠ½ΠΈΠΌ ΡΠΎΠ²Π°
ΠΠΌΠ°ΠΉΡΠ΅ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄, ΡΠ΅ ΡΠΎΡΡΡΠ΅ΡΠ½ΠΈΡΡ ΡΠΎΠΊΠ΅Π½ Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ΅Π½ Π² ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ Ρ ΠΏΡΠ΅ΠΏΠΎΡΡΠΊΠΈΡΠ΅ Π½Π° PKCS#11 v.2.40 ΠΈ TK-26. ΠΠ° Π΄Π° ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΠΏΡΠ»Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΡΠΎΠΊΠ΅Π½Π°, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ΠΈΡΠ΅ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΡΠΊΠΈ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠΈ, ΠΏΡΠΎΡΡΠΎ ΡΡΠ°ΠΊΠ½Π΅ΡΠ΅ Π²ΡΡΡ
Ρ Π±ΡΡΠΎΠ½Π° βΠΠ° ΡΠΎΠΊΠ΅Π½Π° ΠΈ Π½Π΅Π³ΠΎΠ²Π°ΡΠ° ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΡβ Π² Π³Π»Π°Π²Π½ΠΎΡΠΎ ΠΌΠ΅Π½Ρ (βΠ€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎβ). ΠΠ½Π΅Ρ Π½ΠΈΡΠΎ Π΅Π΄ΠΈΠ½ Ρ
Π°ΡΠ΄ΡΠ΅ΡΠ΅Π½ ΡΠΎΠΊΠ΅Π½, ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ ΡΡΡΠΊΠ° ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΡ, Π½ΡΠΌΠ° ΡΠ°Π·ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ:
ΠΡΠ·Π½ΠΈΠΊΠ²Π° Π²ΡΠΏΡΠΎΡΡΡ: - ΠΊΠ°ΠΊ Π΄Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΡΠ΅ Π»ΠΈΡΠ΅Π½ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ Π½Π° ΡΠΎΠΊΠ΅Π½. ΠΠΌΠ° Π΄Π²Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ. ΠΡΡΠ²Π°ΡΠ° ΠΎΠΏΡΠΈΡ Π΅ Π΄Π° ΠΈΠΌΠΏΠΎΡΡΠΈΡΠ°ΡΠ΅ ΡΠ°ΠΌΠΈΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ ΠΈ Π½Π΅Π³ΠΎΠ²Π°ΡΠ° Π΄Π²ΠΎΠΉΠΊΠ° ΠΊΠ»ΡΡΠΎΠ²Π΅ ΠΏΡΠ΅Π· ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° PKCS#12 (Π±ΡΡΠΎΠ½Π° βΠ Π°Π±ΠΎΡΠ° Ρ PKCS12/PFXβ):
ΠΡΠΎΡΠ°ΡΠ° ΠΎΠΏΡΠΈΡ Π²ΠΊΠ»ΡΡΠ²Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° Π·Π°ΡΠ²ΠΊΠ° (PKCS#10) Π·Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ.Π’Π°Π·ΠΈ ΠΎΠΏΡΠΈΡ (ΡΡΠ½ΠΊΡΠΈΡ
Π‘Π΅Π³Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π·Π°ΠΏΠΈΡΠ΅ΡΠ΅ Π·Π°ΡΠ²ΠΊΠ°ΡΠ° Π½Π° ΡΠ»Π°Ρ ΠΏΠ°ΠΌΠ΅ΡΠΈ ΠΈ Π΄Π° ΠΎΡΠΈΠ΄Π΅ΡΠ΅ Π½Π°
ΠΠ΅ΡΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΠΎΠ΄ΠΏΠΈΡΠ²Π°ΡΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈ ΡΡΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ, ΡΡΡ
ΡΠ°Π½Π΅Π½ΠΈ Π² ΡΠΎΠΊΠ΅Π½Π°, ΠΊΠ°ΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΠ°Π·Π΄Π΅Π»Π°
Π ΡΠ»Π΅Π΄Π²Π°ΡΠ°ΡΠ° ΡΡΠ°ΡΠΈΡ ΡΠ΅ Π²ΠΈ ΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠ°ΠΊ Π΄Π° ΡΠ΅ ΡΠ²ΡΡΠΆΠ΅ΡΠ΅ Ρ ΠΎΠ±Π»Π°ΡΠ΅Π½ ΡΠΎΠΊΠ΅Π½. Π Π²ΡΠΏΡΠΎΡΡΡ Π·Π° ΠΏΡΠ΅Ρ Π²ΡΡΠ»ΡΠ½Π΅ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΈΡΠ΅ Π·Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ ΠΊΡΠΌ ΠΌΠΎΠ±ΠΈΠ»Π½Π°ΡΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° ΠΎΡΡΠ°Π²Π° ΠΎΡΠ²ΠΎΡΠ΅Π½. Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π»ΠΈ Π΅ ΡΠΎΠ²Π°
ΠΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π½Π° ΠΏΠΎΠΌΠΎΡΠ½Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° cryptoarmpkcs-A Π·Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Android ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΈΠ·ΡΠ΅Π³Π»Π΅Π½Π° ΡΡΠΊ:
PS ΠΠ°ΠΏΠ°Π·Π²Π°Π½Π΅ Π½Π° Π΄Π½Π΅Π²Π½ΠΈΠΊΠ°
ΠΠ° Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠ°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ ΠΏΠΎΠΌΠΎΡΠ½Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° bones ΠΎΡ
Π‘ ΠΏΠΎΡΠ²Π°ΡΠ° Π½Π° ΡΠΎΠ·ΠΈ Π±ΡΡΠΎΠ½ ΠΏΡΠΎΡΠ΅ΡΡΡ Π½Π° ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ Π±Π΅ΡΠ΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΎΠΏΡΠΎΡΡΠ΅Π½.
ΠΠ° Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡΠ΅ Π±ΡΡΠΎΠ½, ΠΏΡΠΎΡΡΠΎ Π΄ΠΎΠ±Π°Π²Π΅ΡΠ΅ ΡΠ»Π΅Π΄Π½ΠΈΡ ΠΊΠΎΠ΄ ΠΊΡΠΌ ΡΠ°ΠΉΠ»Π° Ρ ΠΊΠΎΡΡΠΈΡΠ΅ ΡΠ»Π΅Π΄ ΡΠ΅Π΄ 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