ΠΠΎΡΠ΄Π΅ Π²ΡΠ΅ΠΌΠ΅ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΡΠΊΠΈ 1 ΠΈ Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° AndroidΠΠ΅ΠΊΠΎΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΊΠ°ΠΆΠ°Ρ Π΄Π΅ΠΊΠ° Π½Π΅ΠΌΠ° Ρ
Π°ΡΠ΄Π²Π΅ΡΡΠΊΠΈ ΡΠΎΠΊΠ΅Π½ΠΈ Π·Π° AndroidΠΠΎ, Π΄ΡΡΠΈ ΠΈ Π΄Π° Π΅ ΠΎΠ²Π° Π²ΠΈΡΡΠΈΠ½Π°, ΡΠΎΠ° Π΅ ΡΠ°ΠΌΠΎ ΠΏΡΠΈΠ²ΡΠ΅ΠΌΠ΅Π½ΠΎ. ΠΠΎ, Π΄Π΅Π½Π΅Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΡΠ΅ ΡΠΎΡΡΠ²Π΅ΡΡΠΊΠΈ ΡΠΎΠΊΠ΅Π½ ΠΈΠ»ΠΈ Π΄Π° ΠΊΠΎΡΠΈΡΡΠΈΡΠ΅ . ΠΠ΄ ΠΊΠΎΠΌΡΠ½Π°Π»Π½ΠΈΡΠ΅ ΡΡΠ»ΡΠ³ΠΈ ΡΠ΅ ΡΠ°Π·Π²ΠΈΠ²Π° Π·Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Android ΠΠΎΡΠΈΡΡΠ΅ΡΡΠΈ Π³ΠΎ Androwish Π²ΠΎ ΡΠΊΡΠΈΠΏΡΠ½ΠΈΠΎΡ ΡΠ°Π·ΠΈΠΊ Tcl/Tk, ΠΏΠ°ΠΊΠ΅ΡΠΎΡ ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ Π·Π° ΠΏΠΎΠ²ΡΠ·ΡΠ²Π°ΡΠ΅ Π½Π° ΡΠΎΠΊΠ΅Π½ΠΈ .
ΠΠΎ ΠΎΠ²ΠΎΡ ΡΠ»ΡΡΠ°Ρ, Π½Π΅ Π±Π΅ΡΠ΅ ΠΏΠΎΡΡΠ΅Π±Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΎΡ. Π‘Γ¨ ΡΡΠΎ Π±Π΅ΡΠ΅ Π½Π°ΠΏΡΠ°Π²Π΅Π½ΠΎ Π±Π΅ΡΠ΅ Π΄Π° ΡΠ΅ Π΄ΠΎΠ΄Π°Π΄Π΅ ΡΠΊΡΠΈΠΏΡΠ° Π²ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΎΡ Π·Π° Π΄Π° ΡΠ΅ ΠΈΠ·Π³ΡΠ°Π΄ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ Π½Π°ΠΏΠΈΡΠ°Π½Π° Π½Π° ΡΠ°Π·ΠΈΠΊΠΎΡ , ΠΏΠΎΠ΄ Android ΠΈ ΡΠ°ΠΌΠ°ΡΠ° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΠ° Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ°. ΠΡΡΠΎ ΡΠ°ΠΊΠ°, Π±Π΅ΡΠ΅ ΠΎΠ΄Π»ΡΡΠ΅Π½ΠΎ Π΄Π° ΡΠ΅ Π΄ΠΎΠ΄Π°Π΄Π°Ρ ΡΠΎΡΡΠ²Π΅ΡΠΎΡ ls11sw2016 ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈΡΠ΅ ΡΠΎ ΡΠΎΠΊΠ΅Π½ΠΈ Π²ΠΎ ΠΎΠ±Π»Π°ΠΊ ls11cloud Π·Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ Π½Π° ΠΎΠ²ΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡ.
Π‘Γ¨ Π΄ΡΡΠ³ΠΎ Π΅ Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΎ. ΠΠΎΠ΄Π°Π²Π°ΠΌΠ΅ ΠΊΠΎΠΏΡΠΈΡΠ° Π·Π° ΠΈΠ·Π±ΠΎΡ Π½Π° ΡΠ°Π±ΠΎΡΠ΅Π½ ΡΠΎΠΊΠ΅Π½ Π²ΠΎ Π²ΡΠΎΡΠΈΠΎΡ ΠΏΡΠΎΠ·ΠΎΡΠ΅Ρ ΠΈ Π΄ΠΎΠ±ΠΈΠ²Π°ΠΌΠ΅:
- ΡΠΎΡΡΠ²Π΅ΡΡΠΊΠΈ ΡΠΎΠΊΠ΅Π½ ls11sw2016;
- ΠΎΠ±Π»Π°ΠΊ ΡΠΎΠΊΠ΅Π½ ls11cloud;
- Π΄ΡΡΠ³ ΡΠΎΠΊΠ΅Π½ PKCS11#11.

Π‘ΡΠ°Π½Π΄Π°ΡΠ΄Π½ΠΎ, ΡΠΎΡΡΠ²Π΅ΡΡΠΊΠΈ ΡΠΎΠΊΠ΅Π½ Π΅ ΠΏΠΎΠ²ΡΠ·Π°Π½. ΠΠΊΠΎ Π½Π΅ Π΅ ΠΊΡΠ΅ΠΈΡΠ°Π½ ΠΏΡΠ΅ΡΡ
ΠΎΠ΄Π½ΠΎ, ΡΠ΅ Π±ΠΈΠ΄Π΅ ΠΏΠΎΠ±Π°ΡΠ°Π½ΠΎ Π΄Π° Π³ΠΎ ΠΈΠ½ΠΈΡΠΈΡΠ°Π»ΠΈΠ·ΠΈΡΠ°ΡΠ΅. ΠΠ° ΡΠ΅ ββΠΏΠΎΡΡΠ΅ΡΠΈΠΌΠ΅ Π½Π° ΡΠΎΠ° ΡΠ΅ ΡΠΎΡΡΠΎΠΈ ΠΎΠ΄ Π΄ΠΎΠ΄Π΅Π»ΡΠ²Π°ΡΠ΅ ΠΎΠ·Π½Π°ΠΊΠ° ΠΈ ΠΏΠΎΡΡΠ°Π²ΡΠ²Π°ΡΠ΅ Π½Π° ΠΊΠΎΡΠΈΡΠ½ΠΈΡΠΊΠΈ ΠΠΠ-ΠΊΠΎΠ΄:

ΠΠΌΠ°ΡΡΠ΅ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ Π΄Π΅ΠΊΠ° ΡΠΎΡΡΠ²Π΅ΡΡΠΊΠΈΠΎΡ ΡΠΎΠΊΠ΅Π½ Π΅ ΡΠ°Π·Π²ΠΈΠ΅Π½ Π²ΠΎ ΡΠΎΠ³Π»Π°ΡΠ½ΠΎΡΡ ΡΠΎ ΠΏΡΠ΅ΠΏΠΎΡΠ°ΠΊΠΈΡΠ΅ Π½Π° PKCS#11 v.2.40 ΠΈ TK-26. ΠΠ° Π΄Π° Π΄ΠΎΠ±ΠΈΠ΅ΡΠ΅ ΡΠ΅Π»ΠΎΡΠ½ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° ΡΠΎΠΊΠ΅Π½ΠΎΡ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΠΈ ΠΏΠΎΠ΄Π΄ΡΠΆΠ°Π½ΠΈ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΡΠΊΠΈ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠΈ, ΡΠ°ΠΌΠΎ ΠΊΠ»ΠΈΠΊΠ½Π΅ΡΠ΅ Π½Π° ΠΊΠΎΠΏΡΠ΅ΡΠΎ βΠΠ° ΡΠΎΠΊΠ΅Π½ΠΎΡ ΠΈ Π½Π΅Π³ΠΎΠ²Π°ΡΠ° ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΡΠ°β Π²ΠΎ Π³Π»Π°Π²Π½ΠΎΡΠΎ ΠΌΠ΅Π½ΠΈ (βΠ€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎβ). ΠΠ΅Π½Π΅Ρ, Π½ΠΈΡΡ Π΅Π΄Π΅Π½ Ρ
Π°ΡΠ΄Π²Π΅ΡΡΠΊΠΈ ΡΠΎΠΊΠ΅Π½ ΡΡΠΎ ΠΏΠΎΠ΄Π΄ΡΠΆΡΠ²Π° ΡΡΡΠΊΠ° ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΡΠ° ΡΠ° Π½Π΅ΠΌΠ° ΠΎΠ²Π°Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ:

Π‘Π΅ ΠΏΠΎΡΡΠ°Π²ΡΠ²Π° ΠΏΡΠ°ΡΠ°ΡΠ΅ΡΠΎ: - ΠΊΠ°ΠΊΠΎ Π΄Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΡΠ΅ Π»ΠΈΡΠ΅Π½ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ Π½Π° ΡΠΎΠΊΠ΅Π½. ΠΠΎΡΡΠΎΡΠ°Ρ Π΄Π²Π΅ ΠΎΠΏΡΠΈΠΈ. ΠΡΠ²Π°ΡΠ° ΠΎΠΏΡΠΈΡΠ° Π΅ Π΄Π° Π³ΠΎ ΡΠ²Π΅Π·Π΅ΡΠ΅ ΡΠ°ΠΌΠΈΠΎΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ ΠΈ Π½Π΅Π³ΠΎΠ²ΠΈΠΎΡ ΠΏΠ°Ρ ΠΊΠ»ΡΡΠ΅Π²ΠΈ ΠΏΡΠ΅ΠΊΡ ΠΊΠΎΠ½ΡΠ΅ΡΠ½Π΅ΡΠΎΡ PKCS#12 (ΠΊΠΎΠΏΡΠ΅ΡΠΎ βΠ Π°Π±ΠΎΡΠ° ΡΠΎ PKCS12/PFXβ):

ΠΡΠΎΡΠ°ΡΠ° ΠΎΠΏΡΠΈΡΠ° Π²ΠΊΠ»ΡΡΡΠ²Π° ΠΊΡΠ΅ΠΈΡΠ°ΡΠ΅ Π±Π°ΡΠ°ΡΠ΅ (PKCS#10) Π·Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ.ΠΠ²Π°Π° ΠΎΠΏΡΠΈΡΠ° (ΡΡΠ½ΠΊΡΠΈΡΠ° ) ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ΡΠ²Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°ΡΠ΅ Π½Π° ΠΏΠ°Ρ ΠΊΠ»ΡΡΠ΅Π²ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π½Π° ΡΠΎΠΊΠ΅Π½ΠΎΡ:

Π‘Π΅Π³Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π³ΠΎ Π·Π°ΡΡΠ²Π°ΡΠ΅ Π±Π°ΡΠ°ΡΠ΅ΡΠΎ Π½Π° ΡΠ»Π΅Ρ Π΄ΡΠ°ΡΠ²ΠΎΠ²ΠΈ ΠΈ Π΄Π° ΠΎΡΠΈΠ΄Π΅ΡΠ΅ Π½Π° Π·Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ. ΠΠΊΠΎ Π³ΠΎ ΠΊΠΎΡΠΈΡΡΠΈΡΠ΅ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π·Π° ΡΠ΅ΡΡ ΡΠ΅Π»ΠΈ ΠΈΠ»ΠΈ Π²Π½Π°ΡΡΠ΅ΡΠ½ΠΎ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ° ΠΊΠΎΡΠΈΡΡΠΈΡΠ΅ ΠΈ Π°Π»Π°ΡΠΊΠ°ΡΠ° Π·Π° ΠΈΠ·Π΄Π°Π²Π°ΡΠ΅ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ . ΠΠΎΠ±ΠΈΠ΅Π½ΠΈΠΎΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ ΡΠ΅ ΡΠ²Π΅Π·ΡΠ²Π° Π½Π° ΡΠΎΠΊΠ΅Π½ΠΎΡ Π²ΠΎ ΡΠ°Π±ΡΠ»Π°ΡΠΎΡΠΎΡ βΠΡΠΈΠΊΠ°ΠΆΠΈ Π±Π°ΡΠ°ΡΠ΅/ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρβ:

Π‘Π΅Π³Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΠΎΡΠΏΠΈΡΡΠ²Π°ΡΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈ ΡΠΎ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ Π·Π°ΡΡΠ²Π°Π½ΠΈ Π½Π° ΡΠΎΠΊΠ΅Π½ΠΎΡ ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ ΡΠ° ΠΊΠ°ΡΡΠΈΡΠΊΠ°ΡΠ° .
ΠΠΎ ΡΠ»Π΅Π΄Π½Π°ΡΠ° ΡΡΠ°ΡΠΈΡΠ° ΡΠ΅ Π²ΠΈ ΠΊΠ°ΠΆΠ΅ΠΌΠ΅ ΠΊΠ°ΠΊΠΎ Π΄Π° ΡΠ΅ ΠΏΠΎΠ²ΡΠ·Π΅ΡΠ΅ ΡΠΎ ΡΠΎΠΊΠ΅Π½ Π½Π° ΠΎΠ±Π»Π°ΠΊ. Π ΠΏΡΠ°ΡΠ°ΡΠ΅ΡΠΎ Π·Π° ΠΏΡΠ΅Π½Π΅ΡΡΠ²Π°ΡΠ΅ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΈΡΠ΅ Π·Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°ΡΠ΅ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ Π½Π° ΠΌΠΎΠ±ΠΈΠ»Π½Π°ΡΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° ΠΎΡΡΠ°Π½ΡΠ²Π° ΠΎΡΠ²ΠΎΡΠ΅Π½ΠΎ. ΠΠ°Π»ΠΈ Π΅ ΠΎΠ²Π° ΠΏΠΎΡΡΠ΅Π±Π½ΠΎ?
ΠΠΆΡΡΠΈΡΠ°Π½Π° Π²Π΅ΡΠ·ΠΈΡΠ° Π½Π° Π°Π»Π°ΡΠΊΠ°ΡΠ° cryptoarmpkcs-A Π·Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Android ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠ΅Π·Π΅ΠΌΠ΅ ΡΡΠΊΠ°:
Π.Π‘. ΠΠ°ΡΡΠ²ΡΠ²Π°ΡΠ΅ Π½Π° Π΄Π½Π΅Π²Π½ΠΈΠΊΠΎΡ
ΠΠ° Π΄Π° Π³ΠΎ ΠΈΠ·Π³ΡΠ°Π΄ΠΈΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΎΡ, ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ ΡΠ° Π°Π»Π°ΡΠΊΠ°ΡΠ° Π·Π° ΠΊΠΎΡΠΊΠΈ ΠΎΠ΄ ΠΡΠΊΠ°ΠΊΠΎ ΠΏΠ°ΠΊΠ΅ΡΠΎΡ ΡΠ΅ Π±ΠΈΠ΄Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΠΈΠ·Π³ΡΠ°Π΄Π΅Π½, ΡΠ΅ ΠΏΠΎΡΠ°Π²ΡΠ²Π° ΠΊΠΎΠΏΡΠ΅ΡΠΎ βΠΠ½ΡΡΠ°Π»ΠΈΡΠ°Ρ ΠΈ ΡΡΠ°ΡΡΡΠ²Π°Ρβ, ΠΊΠΎΠ΅, ΠΊΠΎΠ³Π° ΡΠ΅ ΡΠ΅ ΠΊΠ»ΠΈΠΊΠ½Π΅, ΠΎΡΠ²ΠΎΡΠ° ΠΏΡΠΎΠ·ΠΎΡΠ΅Ρ Π·Π° Π΅Π²ΠΈΠ΄Π΅Π½ΡΠΈΡΠ° ΡΡΠΎ Π³ΠΎ ΠΏΡΠΈΠΊΠ°ΠΆΡΠ²Π° ΠΈΠ·Π»Π΅Π·ΠΎΡ ΠΎΠ΄ adb logcat (Π°Π»Π°ΡΠΊΠ° Π·Π° Π΅Π²ΠΈΠ΄Π΅Π½ΡΠΈΡΠ°). Android ΠΠΎΡΡ Π·Π° ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°ΡΠ΅ Π³ΡΠ΅ΡΠΊΠΈ). ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΎΠΊ Π½Π° ΠΎΠ²ΠΎΡ Π΅ΠΊΡΠ°Π½ Π΅ ΡΡΠΎ Π΅ ΡΠ΅ΡΠΊΠΎ Π΄Π° ΡΠ΅ ΠΏΡΠΎΠ½Π°ΡΠ΄Π΅ ΠΏΠΎΡΠ°ΠΊΠ°ΡΠ° Π·Π° Π³ΡΠ΅ΡΠΊΠ°, ΠΎΡΠΎΠ±Π΅Π½ΠΎ ΡΠΎ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ΠΎ ΠΏΠΎΠ»Π΅ΡΠΎ Π·Π° ΠΈΠ·Π±ΠΎΡ βVβ (ΠΎΠΏΡΠΈΡΠ½ΠΎ). ΠΠ°ΡΠΎΠ°, Π΄ΠΎΠ΄Π°Π΄Π΅Π½ΠΎ Π΅ ΠΊΠΎΠΏΡΠ΅ βΠΠ°ΡΡΠ²Π°Ρβ, ΠΊΠΎΠ΅ Π³ΠΎ Π·Π°ΡΡΠ²ΡΠ²Π° Π΄Π½Π΅Π²Π½ΠΈΠΊΠΎΡ Π²ΠΎ Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°ΡΠ° /tmp/logBone.txt (Π·Π±ΠΎΡΡΠ²Π°ΠΌΠ΅ Π·Π° Linux):

Π‘ΠΎ Π΄ΠΎΠ°ΡΠ°ΡΠ΅ΡΠΎ Π½Π° ΠΎΠ²Π° ΠΊΠΎΠΏΡΠ΅, ΠΏΡΠΎΡΠ΅ΡΠΎΡ Π½Π° Π΄Π΅Π±Π°Π³ΠΈΡΠ°ΡΠ΅ Π½Π° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°ΡΠ° Π΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΠΎΠ΅Π΄Π½ΠΎΡΡΠ°Π²Π΅Π½.
ΠΠ° Π΄Π° Π΄ΠΎΠ΄Π°Π΄Π΅ΡΠ΅ ΠΊΠΎΠΏΡΠ΅, ΡΠ°ΠΌΠΎ Π΄ΠΎΠ΄Π°Π΄Π΅ΡΠ΅ Π³ΠΎ ΡΠ»Π΅Π΄Π½ΠΈΠΎΠ² ΠΊΠΎΠ΄ Π²ΠΎ Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°ΡΠ° ΡΠΎ ΠΊΠΎΡΠΊΠΈ ΠΏΠΎ Π»ΠΈΠ½ΠΈΡΠ°ΡΠ° 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
