ΠΠ»Π΅ΠΌΠ΅Π½Ρ Ρ ΡΠ°ΠΊΠΈΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΡΠΎ Π·Π½Π°ΡΠΈΡ
ΠΡΠΈΠ±ΠΊΠ° ΠΈΠΌΠΏΠΎΡΡΠ° ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ .Π Π°Π·Π΄Π΅Π» Ρ ΡΠ°ΠΊΠΈΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ.
ΠΠΎΠ²ΡΠ΅ ΡΠ°Π·Π΄Π΅Π»Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ. ΠΠΎΠ½ΡΡΠΎΠ»Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΡΡΠΈ ΠΎΡΠΊΠ»ΡΡΠ΅Π½. ΠΠ΄Π΅ ΠΊΠΎΠΏΠ°ΡΡ?
12.08.2015 7:11:34—ΠΡΠΏΡΠ°Π²ΠΊΠ° Π·Π°ΠΏΡΠΎΡΠ° Π½Π° Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ.
12.08.2015 7:11:34—ΠΡΠΏΡΠ°Π²ΠΊΠ° Π·Π°ΠΏΡΠΎΡΠ° Π½Π° ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ, Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½ΡΡ
.
12.08.2015 7:11:35—ΠΡΠΎΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ±ΠΌΠ΅Π½Π°: Π Π°ΡΠΏΠ°ΠΊΠΎΠ²ΠΊΠ° Π°ΡΡ
ΠΈΠ²Π° Π·Π°Π²Π΅ΡΡΠ΅Π½Π°.
12.08.2015 7:11:35—ΠΡΠΎΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ±ΠΌΠ΅Π½Π°: ΠΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ ΡΠ΄Π°Π»Π΅Π½Ρ.
12.08.2015 7:11:35—ΠΡΠΎΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ±ΠΌΠ΅Π½Π°: ΠΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ ΡΠΎΠ·Π΄Π°Π½Ρ.
12.08.2015 7:11:35—ΠΡΠΎΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ±ΠΌΠ΅Π½Π°: Π€Π°ΠΉΠ» ΠΈΠΌΠΏΠΎΡΡΠ° ΠΏΡΠΎΡΠΈΡΠ°Π½.
12.08.2015 7:11:36—ΠΡΠΎΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ±ΠΌΠ΅Π½Π°: ΠΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Ρ.
12.08.2015 7:11:36—ΠΡΠΎΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ±ΠΌΠ΅Π½Π°: ΠΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎ.
12.08.2015 7:11:36—import___2210f587-45e4-4cc0-a0c1-08ce19a9d9f1.xml: ΠΡΠΎΠΈΠ·ΠΎΡΠ»Π° ΠΎΡΠΈΠ±ΠΊΠ° Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΡΠ΅ΡΠ²Π΅ΡΠ°.
ΠΡΠ²Π΅Ρ ΡΠ΅ΡΠ²Π΅ΡΠ°:
failure
ΠΡΠΈΠ±ΠΊΠ° ΠΈΠΌΠΏΠΎΡΡΠ° ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ
.Π Π°Π·Π΄Π΅Π» Ρ ΡΠ°ΠΊΠΈΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ.
Π‘ΠΊΡΠΈΠ½
ΡΠ° ΠΆΠ΅ ΠΎΡΠΈΠ±ΠΊΠ°, ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΊΠΎΠ΄Ρ Π²Π΅Π·Π΄Π΅ ΡΠ°Π·Π½ΡΠ΅, ΠΈ Π² Π±Π°Π·Π΅ ΠΈ Π² ΡΠ°ΠΉΠ»Π΅, Π³Π΄Π΅ ΠΎΠ½ Π½Π°ΡΠ΅Π» Π΄ΡΠ±Π»ΠΈΡΡΡΡΠΈΠΉΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄, Π½Π° ΠΊΠ°ΠΊΠΎΠΉ Π³ΡΡΠΏΠΏΠ΅. Π― Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ°ΠΌ Π² Π΄Π²ΠΈΠΆΠΊΠ΅ Π²ΠΈΠ΄ΠΈΡΠ΅, ΡΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΊΠ°ΠΊΠ°Ρ-ΡΠΎ Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, Π½Π΅ΡΠΆΠ΅Π»ΠΈ Π½Π΅Π»ΡΠ·Ρ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΊΠ°ΠΊΠΎΠΉ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄. 4 ΠΌΠ΅ΡΡΡΠ° ΡΠΆΠ΅ Π½Π΅ ΠΌΠΎΠ³Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ ΡΠΎΠ²Π°ΡΡ Π²ΡΠ³ΡΡΠ·ΠΈΡΡ, ΠΊΠ°ΠΆΠ΄ΡΠΉ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΡ ΠΊΠ°ΠΊ Π½ΠΎΠ²Π°Ρ Π²ΠΎΠΉΠ½Π°, ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ Π½ΠΎΠ²ΡΠ΅ ΠΊΠΎΡΡΠΊΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ Π²ΡΠ»Π°Π·ΡΡ, ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ°Ρ Π½Π΅ Π³ΠΎΠ²ΠΎΡΡΡ Π²ΠΎΠΎΠ±ΡΠ΅ Π½ΠΈ ΠΎ ΡΠ΅ΠΌ, ΠΈ Π½Π°ΡΠΎΠ΄ Π·Π° ΡΡΠΎ ΠΏΠ»Π°ΡΠΈΡ ΠΏΠΎ 1000$ ΠΈ Π·Π° Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ Π΅ΡΠ΅ ΡΡΠΎΠ»ΡΠΊΠΎ ΠΆΠ΅, ΠΆΠ΅ΡΡΡ.
Π² ΠΏΠ΅ΡΡΡΠ°ΡΠΎΠΏ ΡΠ΅ΡΠ΅Π· Π²Π΅Π±Π°ΠΏΠΈ Π²ΡΠ³ΡΡΠ·ΠΊΡ ΡΠ΄Π΅Π»Π°Π»ΠΈ Π·Π° 2 Π½Π΅Π΄Π΅Π»ΠΈ ΠΈ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΡΠ°ΠΉΡΠ°ΠΌΠΈ, Π²ΡΠ΅ΠΌΠΈ Π²Π΅ΡΡΠΈΡΠΌΠΈ Π΄Π²ΠΈΠΆΠΊΠ°, Π² ΠΌΠ°ΠΆΠ΅Π½ΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ, ΠΎΠΏΠ΅Π½ΠΊΠ°ΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π²ΠΎΠΎΠ±ΡΠ΅ Π·Π° Π½Π΅Π΄Π΅Π»Ρ, Π° Ρ Π±ΠΈΡΡΠΈΠΊΡΠΎΠΌ ΡΡΠ²ΡΡΠ²ΡΡ ΡΠ΅Π±Ρ ΠΈΠ΄ΠΈΠΎΡΠΎΠΌ ΡΠΆΠ΅, ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ Π·Π°ΠΊΠ°Π·ΡΠΈΠΊΡ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΠΎΠ±ΡΡΡΠ½ΡΡΡ ΡΡΠΎ Ρ Π½Π΅ Π΄ΡΡΠ°ΠΊ ΠΈ ΠΊΠΎΠ²ΡΡΡΡΡΡΡ Π² Π΅Π³ΠΎ ΡΠ°ΠΉΡΠ΅ ΠΈΡΠΊΠ°ΡΡ ΡΡΠΎ ΡΠ°ΠΌ Π½Π° ΡΡΠΎΡ ΡΠ°Π· Π½Π΅ ΡΠ°ΠΊ ΠΈ Π½Π΅ Π½ΡΠ°Π²ΠΈΡΡΡ Π±ΠΈΡΡΠΈΠΊΡΡ
ΠΡΠΈΠ±ΠΊΠ° ΠΈΠΌΠΏΠΎΡΡΠ° ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ .Π Π°Π·Π΄Π΅Π» Ρ ΡΠ°ΠΊΠΈΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ.
ΠΠΎΠ²ΡΠ΅ ΡΠ°Π·Π΄Π΅Π»Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ. ΠΠΎΠ½ΡΡΠΎΠ»Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΡΡΠΈ ΠΎΡΠΊΠ»ΡΡΠ΅Π½. ΠΠ΄Π΅ ΠΊΠΎΠΏΠ°ΡΡ?
12.08.2015 7:11:34—ΠΡΠΏΡΠ°Π²ΠΊΠ° Π·Π°ΠΏΡΠΎΡΠ° Π½Π° Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ.
12.08.2015 7:11:34—ΠΡΠΏΡΠ°Π²ΠΊΠ° Π·Π°ΠΏΡΠΎΡΠ° Π½Π° ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ, Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½ΡΡ
.
12.08.2015 7:11:35—ΠΡΠΎΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ±ΠΌΠ΅Π½Π°: Π Π°ΡΠΏΠ°ΠΊΠΎΠ²ΠΊΠ° Π°ΡΡ
ΠΈΠ²Π° Π·Π°Π²Π΅ΡΡΠ΅Π½Π°.
12.08.2015 7:11:35—ΠΡΠΎΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ±ΠΌΠ΅Π½Π°: ΠΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ ΡΠ΄Π°Π»Π΅Π½Ρ.
12.08.2015 7:11:35—ΠΡΠΎΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ±ΠΌΠ΅Π½Π°: ΠΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ ΡΠΎΠ·Π΄Π°Π½Ρ.
12.08.2015 7:11:35—ΠΡΠΎΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ±ΠΌΠ΅Π½Π°: Π€Π°ΠΉΠ» ΠΈΠΌΠΏΠΎΡΡΠ° ΠΏΡΠΎΡΠΈΡΠ°Π½.
12.08.2015 7:11:36—ΠΡΠΎΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ±ΠΌΠ΅Π½Π°: ΠΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Ρ.
12.08.2015 7:11:36—ΠΡΠΎΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ±ΠΌΠ΅Π½Π°: ΠΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎ.
12.08.2015 7:11:36—import___2210f587-45e4-4cc0-a0c1-08ce19a9d9f1.xml: ΠΡΠΎΠΈΠ·ΠΎΡΠ»Π° ΠΎΡΠΈΠ±ΠΊΠ° Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΡΠ΅ΡΠ²Π΅ΡΠ°.
ΠΡΠ²Π΅Ρ ΡΠ΅ΡΠ²Π΅ΡΠ°:
failure
ΠΡΠΈΠ±ΠΊΠ° ΠΈΠΌΠΏΠΎΡΡΠ° ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ
.Π Π°Π·Π΄Π΅Π» Ρ ΡΠ°ΠΊΠΈΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ.
Π‘ΠΊΡΠΈΠ½
ΡΠ° ΠΆΠ΅ ΠΎΡΠΈΠ±ΠΊΠ°, ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΊΠΎΠ΄Ρ Π²Π΅Π·Π΄Π΅ ΡΠ°Π·Π½ΡΠ΅, ΠΈ Π² Π±Π°Π·Π΅ ΠΈ Π² ΡΠ°ΠΉΠ»Π΅, Π³Π΄Π΅ ΠΎΠ½ Π½Π°ΡΠ΅Π» Π΄ΡΠ±Π»ΠΈΡΡΡΡΠΈΠΉΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄, Π½Π° ΠΊΠ°ΠΊΠΎΠΉ Π³ΡΡΠΏΠΏΠ΅. Π― Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ°ΠΌ Π² Π΄Π²ΠΈΠΆΠΊΠ΅ Π²ΠΈΠ΄ΠΈΡΠ΅, ΡΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΊΠ°ΠΊΠ°Ρ-ΡΠΎ Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, Π½Π΅ΡΠΆΠ΅Π»ΠΈ Π½Π΅Π»ΡΠ·Ρ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΊΠ°ΠΊΠΎΠΉ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄. 4 ΠΌΠ΅ΡΡΡΠ° ΡΠΆΠ΅ Π½Π΅ ΠΌΠΎΠ³Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ ΡΠΎΠ²Π°ΡΡ Π²ΡΠ³ΡΡΠ·ΠΈΡΡ, ΠΊΠ°ΠΆΠ΄ΡΠΉ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΡ ΠΊΠ°ΠΊ Π½ΠΎΠ²Π°Ρ Π²ΠΎΠΉΠ½Π°, ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ Π½ΠΎΠ²ΡΠ΅ ΠΊΠΎΡΡΠΊΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ Π²ΡΠ»Π°Π·ΡΡ, ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ°Ρ Π½Π΅ Π³ΠΎΠ²ΠΎΡΡΡ Π²ΠΎΠΎΠ±ΡΠ΅ Π½ΠΈ ΠΎ ΡΠ΅ΠΌ, ΠΈ Π½Π°ΡΠΎΠ΄ Π·Π° ΡΡΠΎ ΠΏΠ»Π°ΡΠΈΡ ΠΏΠΎ 1000$ ΠΈ Π·Π° Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ Π΅ΡΠ΅ ΡΡΠΎΠ»ΡΠΊΠΎ ΠΆΠ΅, ΠΆΠ΅ΡΡΡ.
Π² ΠΏΠ΅ΡΡΡΠ°ΡΠΎΠΏ ΡΠ΅ΡΠ΅Π· Π²Π΅Π±Π°ΠΏΠΈ Π²ΡΠ³ΡΡΠ·ΠΊΡ ΡΠ΄Π΅Π»Π°Π»ΠΈ Π·Π° 2 Π½Π΅Π΄Π΅Π»ΠΈ ΠΈ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΡΠ°ΠΉΡΠ°ΠΌΠΈ, Π²ΡΠ΅ΠΌΠΈ Π²Π΅ΡΡΠΈΡΠΌΠΈ Π΄Π²ΠΈΠΆΠΊΠ°, Π² ΠΌΠ°ΠΆΠ΅Π½ΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ, ΠΎΠΏΠ΅Π½ΠΊΠ°ΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π²ΠΎΠΎΠ±ΡΠ΅ Π·Π° Π½Π΅Π΄Π΅Π»Ρ, Π° Ρ Π±ΠΈΡΡΠΈΠΊΡΠΎΠΌ ΡΡΠ²ΡΡΠ²ΡΡ ΡΠ΅Π±Ρ ΠΈΠ΄ΠΈΠΎΡΠΎΠΌ ΡΠΆΠ΅, ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ Π·Π°ΠΊΠ°Π·ΡΠΈΠΊΡ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΠΎΠ±ΡΡΡΠ½ΡΡΡ ΡΡΠΎ Ρ Π½Π΅ Π΄ΡΡΠ°ΠΊ ΠΈ ΠΊΠΎΠ²ΡΡΡΡΡΡΡ Π² Π΅Π³ΠΎ ΡΠ°ΠΉΡΠ΅ ΠΈΡΠΊΠ°ΡΡ ΡΡΠΎ ΡΠ°ΠΌ Π½Π° ΡΡΠΎΡ ΡΠ°Π· Π½Π΅ ΡΠ°ΠΊ ΠΈ Π½Π΅ Π½ΡΠ°Π²ΠΈΡΡΡ Π±ΠΈΡΡΠΈΠΊΡΡ
ΠΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ Π·Π°Π³ΡΡΠ·ΠΈΡΡ Π½ΠΎΠ²ΡΠ΅ ΠΊΠ°ΡΡΠΎΡΠΊΠΈ ΡΠΎΠ²Π°ΡΠ° Π² Π±ΠΈΡΡΠΈΠΊΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Β«csvΒ»?
ΠΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ Π·Π°Π³ΡΡΠ·ΠΈΡΡ Π½ΠΎΠ²ΡΠ΅ ΠΊΠ°ΡΡΠΎΡΠΊΠΈ ΡΠΎΠ²Π°ΡΠ°
ΠΡΠΈ ΠΈΠΌΠΏΠΎΡΡΠ΅ Π²ΡΠ΄Π°Π΅Ρ ΠΎΡΠΈΠ±ΠΊΡ
«ΠΡΠΈΠ±ΠΊΠΈ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ:
Π‘ΡΡΠΎΠΊΠ° 1. ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°Π·Π΄Π΅Π»: ΠΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΏΠΎΠ»Π΅ «Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄» Π½Π΅ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ.»
ΠΡΠΈΠ±ΠΊΠ° Ρ Π²ΡΠ΅Ρ
Π·Π°Π³ΡΡΠΆΠ°Π΅ΠΌΡΡ
ΠΊΠ°ΡΡΠΎΡΠ΅ΠΊ ΡΠΎΠ²Π°ΡΠ°.
ΠΡΠΈ ΡΡΠΎΠΌ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ»Ρ Π½Π΅Ρ Π² Π²ΡΠΏΠΎΠ΄Π°ΡΡΠΈΡ
ΡΠΏΠΈΡΠΊΠ°Ρ
Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ «ΠΠΌΠΏΠΎΡΡ Π΄Π°Π½Π½ΡΡ
» Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ «ΠΏΠΎΠ»Ρ»
Π ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ Π½Π΅Ρ ΡΡΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΏΡΠΈ «ΡΠΊΡΠΏΠΎΡΡΠ΅» Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ «ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΡΠΊΡΠΏΠΎΡΡΠ°»
ΠΠ΄Π΅ Π΄ΠΎΠΏΡΡΡΠΈΠ» ΠΎΡΠΈΠ±ΠΊΡ?
ΠΠ°ΠΊ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ?
ΠΠΊΡΠΏΠΎΡΡ ΠΈ ΠΈΠΌΠΏΠΎΡΡ ΠΏΡΠΎΠ²ΠΎΠΆΡ ΡΠ΅ΡΠ΅Π· «ΠΠ°Π³Π°Π·ΠΈΠ½»
ΠΡΡΡ
Π Π°Π±ΠΎΡΠΈΠΉ ΡΡΠΎΠ»-ΠΠ°Π³Π°Π·ΠΈΠ½-ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ-ΠΠΊΡΠΏΠΎΡΡ Π΄Π°Π½Π½ΡΡ
(ΠΠΌΠΏΠΎΡΡΠ°)
Π‘Π»Π΅Π΄ΡΠ΅Ρ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΠΈΠΌΠΏΠΎΡΡ CSV, Π² ΠΎΠ±ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅, ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΡΡ ΠΏΠΎ ΡΠ°Π·Π½ΠΎΠΌΡ:
ΠΡΠΈ ΠΈΠΌΠΏΠΎΡΡΠ΅ ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ Π³Π°Π»ΠΊΠΈ «ΠΠ΅ΡΠ²Π°Ρ ΡΡΡΠΎΠΊΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΈΠΌΠ΅Π½Π° ΠΏΠΎΠ»Π΅ΠΉ», «ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΈΠ½ΡΠΎΠ±Π»ΠΎΠΊΠ° Π΄Π»Ρ ΡΡΠ°Π½ΡΠ»ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΡ ΠΊΠΎΠ΄ΠΎΠ²». ΠΡ ΠΈ, Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ, ΠΏΡΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠΈ ΡΠ°ΠΉΠ»Π° CSV ΠΈΠ· Excel Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅ΡΠ΅Π΄ Π·Π°Π³ΡΡΠ·ΠΊΠΎΠΉ ΠΎΡΠΊΡΡΡΡ Π΅Π³ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Notepad++, Π² ΠΌΠ΅Π½Ρ ΠΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠ° ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΡ Π² UTF-8, ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ.
ΠΠΎΠΎΠ±ΡΠ΅, Ρ Π΄Π»Ρ ΡΠ΅Π±Ρ ΡΠ΄Π΅Π»Π°Π» ΡΠ°Π±Π»ΠΈΡΠΊΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΡ ΠΏΠΎΠ»Π΅ΠΉ.
ΠΠ»Π΅ΠΌΠ΅Π½Ρ Ρ ΡΠ°ΠΊΠΈΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΡΠΎ Π·Π½Π°ΡΠΈΡ
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΊΠΎΠ΄Π° Π½ΡΠΆΠ½Ρ Π΄Π»Ρ SEO, ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΊΠΎΠ΄Π° Π½ΡΠΆΠ½Ρ Π΄Π»Ρ Π§ΠΠ£ Π²Π΅Π΄Ρ ΡΠ°ΠΊ /news/ferrari/ Π»ΡΡΡΠ΅ ΡΠ΅ΠΌ ΡΠ°ΠΊ /news/48976/. ΠΠ°ΡΠ΅ΠΌ Π΄Π΅Π»Π°ΡΡ ΠΏΠΎΠΌΠ΅ΡΡ? ΠΠΎΡΠ°Π·Π΄ΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½Π΅Π΅ /news/ferrari-rr/ ΠΈ /news/ferrari-maranello/ ΡΠ΅ΠΌ
/news/ferrari6419849/ ΠΈ /news/ferrari4894984/
ΠΠΎΠΌΠ΅ΡΡ ΠΊΠ°ΠΊ ΡΠ°Π· Π² ΠΠ°ΡΠΈΡ ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ , ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ rr, cc, qe, az? ΠΠΈΠΊΠ°ΠΊΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ.
ΠΠ΅ΡΠ°Π»ΡΠ½ΠΎ, ΡΡΠΎ Π²Ρ Π½Π΅ ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π»ΠΈΡΡ Π΅ΡΠ΅ Ρ ΡΠ°ΠΊΠΈΠΌΠΈ Π·Π°Π΄Π°ΡΠ°ΠΌΠΈ.
ΠΡ, ΠΏΡΠ°Π²ΠΈΠ»ΠΎ Π΄Π»Ρ Π§ΠΠ£ ΠΈ ΡΠ΅ΠΉΡΠ°ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠΏΠΈΡΠ°ΡΡ ΠΊΠ°ΠΊ /catalog/#ELEMENT_CODE#-#ELEMENT_ID#/
ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ, ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΠ»ΡΡΠ°Π΅Π², ΠΊΠΎΠ³Π΄Π° ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΊΠΎΠ΄Ρ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ
Π½ΠΎ ΡΡΡ, ΠΏΠΎΠΆΠ°Π»ΡΠΉ, Π½ΡΠΆΠ½ΠΎ ΠΈΠ»ΠΈ Π΄Π»Ρ Π²ΡΠ΅Ρ ΡΠΎΠ²Π°ΡΠΎΠ² ΡΡΠ°Π·Ρ Π²ΡΡΠ°Π²Π»ΡΡΡ ΠΏΠΎΠ΄ΡΡΠ°Π½ΠΎΠ²ΠΊΡ ID, ΠΈΠ»ΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ, ΠΏΡΠΈΠ΄ΡΠΌΡΠ²Π°ΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΊΠΎΠ΄Ρ, ΡΡΠΎ Π½Π°Π΄Π΅ΠΆΠ½Π΅Π΅ ΠΈ ΠΏΠΎΠ½ΡΡΠ½Π΅Π΅.
Π½Π΅ Π½Π΅, Π½ΡΠΆΠ½ΠΎ Π½Π΅ Π§ΠΠ£ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°ΡΡ, Π° Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΠΎΠ²Π°ΡΡ Ρ ΠΎΠ΄Π½ΠΈΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ, Π½ΠΎ Ρ ΡΠ°Π·Π½ΡΠΌΠΈ Ρ
Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ°ΠΌΠΈ Π² ΠΎΠ΄ΠΈΠ½ ΠΈΠ½ΡΠΎΠ±Π»ΠΎΠΊ, Π° ΡΠ°ΠΊ ΠΊΠ°ΠΊ Ρ Π½Π΅Π³ΠΎ ΠΎΠ΄Π½ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅, ΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ° Π²ΡΠ΄Π°Π΅Ρ ΠΎΡΠΈΠ±ΠΊΡ ΠΈ ΠΏΠΈΡΠ΅Ρ: ΠΠ»Π΅ΠΌΠ΅Π½Ρ Ρ ΡΠ°ΠΊΠΈΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ, Ρ.Π΅. Π½Π΅ Π΄Π°Π΅Ρ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ ΡΠΎΠ²Π°Ρ.
ΠΠ°Π½Π½Π°Ρ ΠΎΠΏΡΠΈΡ ΠΌΠΎΠ³Π»Π° Π±Ρ ΡΠ΅ΡΠΈΡΡ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ ΠΊΠΎΠ΄Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ, ΠΏΠΎΠΊΠ° ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΠ΅Π· ΡΠΎΠ±ΡΡΠΈΡ Π΄Π΅Π»Π°Ρ, Π° ΡΠ°ΠΊ Π±Ρ Π³Π°Π»ΠΎΡΠΊΡ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ
ΠΈΠ½ΡΠΎΠ±Π»ΠΎΠΊΠ° Π§ΠΈΠΊ ΠΈ Π²ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ
ΠΡΠΈ ΡΠΎΠ²Π°ΡΡ ΡΡΠ°Π²ΡΡΠ²ΡΡΡ Π² ΠΏΠΎΠΈΡΠΊΠ΅, Π½ΠΎ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½, Π³ΡΡΠΏΠΏΠΈΡΡΡΡΡΡ ΠΏΠΎ Π½Π°Π·Π²Π°Π½ΠΈΡ Π² ΠΎΠ΄ΠΈΠ½ ΡΠΎΠ²Π°Ρ, Π° ΠΊΠΎΠ³Π΄Π° Π·Π°Ρ ΠΎΠ΄ΠΈΠΌ Π² Π΄Π΅ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠΎΠ²Π°ΡΠ° (Π² Π΅Π³ΠΎ ΠΊΠ°ΡΡΠΎΡΠΊΡ), ΡΠ°ΠΌ ΠΏΠΎΠ΄ Π½ΠΈΠΌ Π²ΡΠ²ΠΎΠ΄ΠΈΠΌ Π΅Π³ΠΎ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ (ΠΈΠ½Π°ΡΠ΅, ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΎΠ²Π°ΡΠ°), ΠΈ Π² ΠΊΠ°ΠΆΠ΄ΡΡ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΡ Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅.
ΠΠ΅Π³ΠΊΠΈΠΉ ΡΠΏΠΎΡΠΎΠ± Π΄Π΅ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ Π·Π°ΠΊΡΡΡΠΎΠΉ XML-ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ
WARNING
bit. ly/qMupEv β ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½Π°Ρ ΡΡΠ°ΡΡΡ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²ΡΠΈΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ Π² XML Encryption.
XML ENCRYPTION
ΠΠΠ-Π‘ΠΠ£ΠΠΠ«
ΠΠ΅Π±-ΡΠ»ΡΠΆΠ±Π° β ΡΡΠΎ ΠΌΠ΅ΡΠΎΠ΄ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π²ΡΠΌΡ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΠΌΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΠΌΠΈ ΡΠ΅ΡΠ΅Π· ΡΠ΅ΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π΄Π°Π½Π½ΡΡ . W3C ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ web-service ΠΊΠ°ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ, ΡΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΈΠ½ΡΠ΅ΡΠΎΠΏΠ΅ΡΠ°Π±Π΅Π»ΡΠ½ΠΎΡΡΠΈ machine-to-machine-Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ. ΠΠ½ΡΠ΅ΡΠΎΠΏΠ΅ΡΠ°Π±Π΅Π»ΡΠ½ΠΎΡΡΡ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅Ρ ΠΎΡΠΊΡΡΡΠΎΡΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² ΠΈ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΡΠΎΠ΄ΡΠΊΡΠ°ΠΌΠΈ Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ -Π»ΠΈΠ±ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ Π΄ΠΎΡΡΡΠΏΠ° ΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ. ΠΠ°ΡΠ°ΡΡΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΡΡ Π½Π° ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ·ΡΠΊΠ΅ WSDL (Web Services Description Language), Π² ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π»Π΅ΠΆΠΈΡ XML. ΠΠ΅Π±-ΡΠ΅ΡΠ²ΠΈΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ Π½Π°Π±ΠΎΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², ΠΊ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΡΠΎΡΡΡ ΠΎΡΠ½ΠΎΡΡΡΡΡ RPC (Remote procedure calls, ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ Π΅Π΄ΠΈΠ½ΠΈΡΠ° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ β Π²ΡΠ·ΠΎΠ² ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΠ»ΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°), SOA (Service-oriented architecture, ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ Π΅Π΄ΠΈΠ½ΠΈΡΠ° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ β ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅) ΠΈ REST (Representational state transfer). Π ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌΠΈ Π΅Π΄ΠΈΠ½ΠΈΡΠ°ΠΌΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠ²Π»ΡΡΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠΈΠΏΠ° GET, POST, PUT, DELETE ΠΈ Ρ. Π΄. Π² ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°Ρ ΡΠΈΠΏΠ° HTTP, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ.
ΠΠΠ’Π§ΠΠ‘Π’Π¬
ΠΠ·Π²Π΅ΡΡΠ½ΠΎ, ΡΡΠΎ Π±Π»ΠΎΡΠ½ΡΠΉ ΡΠΈΡΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ Π±Π»ΠΎΠΊ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ° (ΠΎΠ±ΡΡΠ½ΠΎ Π΄Π»ΠΈΠ½ΠΎΠΉ 16 Π±Π°ΠΉΡ, ΡΠΎ Π΅ΡΡΡ 128 Π±ΠΈΡ) Π² Π±Π»ΠΎΠΊ ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ°. ΠΡΠ»ΠΈ Π΄Π°Π½Π½ΡΠ΅ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ°, ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ, ΡΠ°ΠΌΡΠΌ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΌ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ Π½Π° ΡΠ΅Π³ΠΎΠ΄Π½Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ CBC. ΠΡΠΈΠ½ΡΠΈΠΏ Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΡ Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ½ΡΡΡ ΠΈΠ· ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΈΠ»Π»ΡΡΡΡΠ°ΡΠΈΠΈ. ΠΠ»Ρ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ° ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ Π²ΡΠ±ΠΈΡΠ°Π΅ΡΡΡ Π²Π΅ΠΊΡΠΎΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ (IV), Π° Π·Π°ΡΠ΅ΠΌ Π½Π°Π΄ ΡΡΠΈΠΌ Π²Π΅ΠΊΡΠΎΡΠΎΠΌ ΠΈ ΠΏΠ΅ΡΠ²ΡΠΌ Π±Π»ΠΎΠΊΠΎΠΌ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ XOR, ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠΈΡΡΡΠ΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π±Π»ΠΎΡΠ½ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ°. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π²Π΅ΠΊΡΠΎΡΠ° ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π΄Π»Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΡ Π±Π»ΠΎΠΊΠΎΠ² ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ Π±Π»ΠΎΠΊ ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ°, ΡΠΎ Π΅ΡΡΡ Π²Π΅ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ Π΄Π΅ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΏΡΠ΅Π²Π΄ΠΎΠΊΠΎΠ΄ΠΎΠΌ:
ΠΠ΄Π΅ΡΡ k β ΠΊΠ»ΡΡ, Π‘ β ΡΠΈΡΡΠΎΡΠ΅ΠΊΡΡ, Π β ΠΎΡΠΊΡΡΡΡΠΉ ΡΠ΅ΠΊΡΡ, IV β Π²Π΅ΠΊΡΠΎΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ (ΡΠΈΠ½Ρ ΡΠΎΠΏΠΎΡΡΠ»ΠΊΠ°).
Π‘ΡΠ°Π½Π΄Π°ΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠ΅Π΄ΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅ΠΆΠΈΠΌ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ CBC, Π½ΠΎ ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΡ Π΅ΠΌΡ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ Π΄ΠΎ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ°.
Π Π΅ΠΆΠΈΠΌ CBC (ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π΄Π΅ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅)
Π₯Π°ΠΊΠ΅Ρ #156. ΠΠ·Π»ΠΎΠΌ XML Encryption
Π‘ΡΡΡ ΡΡΠΎΠΉ ΡΡ Π΅ΠΌΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ°ΠΊΠΆΠ΅ Π½Π΅Ρ Π½ΠΈΡΠ΅Π³ΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎΠ³ΠΎ, ΡΠ°ΠΊΠΎΠ²Π°: Π½Π΅ΠΏΠΎΠ»Π½ΡΠΉ Π±Π»ΠΎΠΊ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π΄ΠΎΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π΄ΠΎ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ, Π° Π² Π΅Π³ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π±Π°ΠΉΡ Π²ΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. Π’Π°ΠΊ, Π΅ΡΠ»ΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π±Π»ΠΎΠΊ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π²ΡΠ΅Π³ΠΎ ΡΡΠΈ Π±Π°ΠΉΡΠ°, ΡΠΎ ΠΌΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ 12 ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΡ Π±Π°ΠΉΡ ΠΈ ΠΎΠ΄ΠΈΠ½ Π±Π°ΠΉΡ ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ 0x05. ΠΡΠ»ΠΈ ΠΆΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π±Π»ΠΎΠΊ ΠΏΠΎΠ»ΠΎΠ½ (ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ 16 Π±Π°ΠΉΡ), ΡΠΎ ΠΌΡ ΡΠ΅ΠΏΠ»ΡΠ΅ΠΌ ΠΊ Π½Π΅ΠΌΡ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ Π±Π»ΠΎΠΊ, 15 Π±Π°ΠΉΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π·Π°Π΄Π°ΡΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎ, Π° 16-ΠΉ ΠΈΠΌΠ΅Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 0x10.
ΠΠ‘ΠΠΠΠΠΠ― ΠΠΠΠ― ΠΠ’ΠΠΠ
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡΡ ΠΊ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠ»ΡΡΠ°Π΅Π², Ρ ΠΎΠΏΠΈΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΠΈΠ΄Π΅Ρ Π°ΡΠ°ΠΊΠΈ Π½Π° XML Encryption. ΠΠ°ΠΊ ΡΡ ΡΠΆΠ΅ Π΄ΠΎΠ³Π°Π΄Π°Π»ΡΡ, Π΅Π΅ Π½Π΅ ΠΏΡΠΎΡΡΠΎ ΡΠ°ΠΊ ΡΡΠ°Π²ΡΡ Π² ΠΎΠ΄ΠΈΠ½ ΡΡΠ΄ Ρ BEAST ΠΈ Padding Oracle Attack. Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π°ΡΠ°ΠΊΠ° ΡΠ°ΠΊΠΆΠ΅ ΡΡΡΠΎΠΈΡΡΡ Π½Π° ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ΅ Π°ΡΠ°ΠΊΡΠ΅ΠΌΠΎΠΌΡ ΡΠ΅ΡΠ²Π΅ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈ Π°Π½Π°Π»ΠΈΠ·Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ°Ρ . ΠΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ ΠΊ Π΄Π΅Π»Ρ. ΠΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΠΊ ΡΠ΅ΠΆΠΈΠΌΠ° ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ CBC ΡΠΎΡΡΠΎΠΈΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ° Π²Π»ΠΈΡΠ΅Ρ Π½Π° ΠΎΡΠΊΡΡΡΡΠΉ ΡΠ΅ΠΊΡΡ, ΡΠΎ Π΅ΡΡΡ Π΅ΡΠ»ΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ XOR ΠΊ Π²Π΅ΠΊΡΠΎΡΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ IV ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠΉ Π±ΠΈΡΠΎΠ²ΠΎΠΉ ΠΌΠ°ΡΠΊΠ΅ MSK, ΡΠΎ ΡΠΈΡΡΠΎΡΠ΅ΠΊΡΡ (IV xor MSK, C[0]) Π±ΡΠ΄Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ M[0] xor MSK. ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡΡ, Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠ°.
Π§ΡΠΎΠ±Ρ ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΡΡ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΠΌΡΡ Π°ΡΠ°ΠΊΡ, Π½ΡΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ΅ΠΊΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ°ΡΠΊΠΈ MSK, ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ ΠΈ ΠΏΡΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ·Π½Π°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ± ΠΎΡΠΊΡΡΡΠΎΠΌ ΡΠ΅ΠΊΡΡΠ΅. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΡΡΠ°ΠΊΠΈΠΉ ΠΏΠΎΠ±ΠΎΡΠ½ΡΠΉ ΠΊΠ°Π½Π°Π» Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ.
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° Π΄Π°Π²Π°ΠΉ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌΡΡ Ρ ΠΏΡΠΎΡΡΠ΅Π½ΡΠΊΠΈΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ Π°ΡΠ°ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΎΡΠΊΡΡΡΡΠΉ ΡΠ΅ΠΊΡΡ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. ΠΡΠ°ΠΊΠ° Π½Π° XML Encryption ΠΎΡΠ½ΠΎΠ²Π°Π½Π° ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° ΡΡΠΎΠΉ ΠΈΠ΄Π΅Π΅, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ»Π΅Π³ΠΊΠ° Π°Π΄Π°ΠΏΡΠΈΡΠΎΠ²Π°Π½Π° ΠΊ Β«ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌΡ ΠΌΠΈΡΡΒ».
Π£ΠΏΡΠΎΡΠ΅Π½Π½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ Π°ΡΠ°ΠΊΠΈ
ΠΡΠ΄Π΅ΠΌ ΡΡΠΈΡΠ°ΡΡ, ΡΡΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΠΌ, ΠΊΠΎΠ΄ΠΈΡΡΠ΅ΡΡΡ Π² ASCII. Π Π°Π·ΠΎΠ±ΡΠ΅ΠΌ Π²ΡΡ ΡΠ°Π±Π»ΠΈΡΡ ASCII Π½Π° Π΄Π²Π΅ ΡΠ°ΡΡΠΈ. Π ΠΏΠ΅ΡΠ²ΡΡ ΡΠ°ΡΡΡ Π²ΠΎΠΉΠ΄ΡΡ Π²ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ, ΠΊΡΠΎΠΌΠ΅ NULL (ΡΠΏΠΈΡΠΎΠΊ Π), Π° Π²ΠΎ Π²ΡΠΎΡΡΡ β Π²ΡΠ΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ (ΡΠΏΠΈΡΠΎΠΊ B). Π¨ΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ΅ΠΊΡΡ, ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΠΈΠ· ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ°, ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² ΡΠΏΠΈΡΠΊΠ΅ B, Π±ΡΠ΄Π΅ΠΌ ΡΡΠΈΡΠ°ΡΡ Β«ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΒ». Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π΅ΡΠ»ΠΈ ΡΠΈΡΡΠΎΡΠ΅ΠΊΡΡ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ, ΡΠΎ Π½Π°Ρ ΡΠ΅ΡΠ²Π΅Ρ ΠΏΡΠΈ ΠΏΠ°ΡΡΠΈΠ½Π³Π΅ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π²ΡΠ΄Π°Π²Π°ΡΡ ΠΎΡΠΈΠ±ΠΎΠΊ. Π£ΡΠ»ΠΎΠ²ΠΈΠΌΡΡ ΡΠ°ΠΊΠΆΠ΅, ΡΡΠΎ Π½Π°ΡΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΡ Π²ΡΠ΅Π³ΠΎ Π»ΠΈΡΡ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ°, ΡΠΎ Π΅ΡΡΡ ΠΈΠ· 16 Π±Π°ΠΉΡ, Π° ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ Π² ΠΎΡΠ²Π΅Ρ Π½Π° Π½Π°ΡΠΈ Π·Π°ΠΏΡΠΎΡΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ true, Π΅ΡΠ»ΠΈ ΠΎΡΠΊΡΡΡΡΠΉ ΡΠ΅ΠΊΡΡ M[0] = AESDECCBC(k, (IV, C[0])) Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π·Π°ΠΏΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π° NULL, ΠΈ false β Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅.
Π’Π΅ΠΏΠ΅ΡΡ, ΠΏΠΎΡΡΠ»Π°Ρ Π·Π°ΠΏΡΠΎΡΡ Π½Π°ΡΠ΅ΠΌΡ ΡΠ΅ΡΠ²Π΅ΡΡ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ±Π°ΠΉΡΠ½ΠΎ Π²ΠΎΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. ΠΠ»Π³ΠΎΡΠΈΡΠΌ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠΎΡΡΠΎΠΈΡ Π²ΡΠ΅Π³ΠΎ ΠΈΠ· ΡΡΠ΅Ρ ΡΡΠ°ΠΏΠΎΠ²:
ΠΠΎΡ ΡΡΠΎ ΠΈΠΌΠ΅Π΅ΡΡΡ Ρ Π½Π°Ρ Π½Π° Π²Ρ ΠΎΠ΄Π΅ ΠΈ Π²ΡΡ ΠΎΠ΄Π΅:
Π Π°Π»Π³ΠΎΡΠΈΡΠΌΠ΅ Π½Π΅Ρ Π½ΠΈΡΠ΅Π³ΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎΠ³ΠΎ. ΠΠ·ΠΌΠ΅Π½ΡΡ j-ΠΉ Π±Π°ΠΉΡ Π²Π΅ΠΊΡΠΎΡΠ° ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ, ΠΌΡ Π½Π°Π±Π»ΡΠ΄Π°Π΅ΠΌ Π·Π° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΠΌΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΈ ΠΆΠ΄Π΅ΠΌ, ΠΏΠΎΠΊΠ° Π½Π° j-ΠΌ ΠΌΠ΅ΡΡΠ΅ Π² ΠΎΡΠΊΡΡΡΠΎΠΌ ΡΠ΅ΠΊΡΡΠ΅ ΠΏΠΎΡΠ²ΠΈΡΡΡ Π½Π°Ρ Π·Π°ΠΏΡΠ΅ΡΠ½ΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ». Π’Ρ ΡΠΏΡΠΎΡΠΈΡΡ ΠΌΠ΅Π½Ρ, ΠΏΠΎΡΠ΅ΠΌΡ ΡΠ°ΠΊ? ΠΡΠ²Π΅ΡΡ: ΡΠ°ΠΊΠΎΠ² ΡΠ΅ΠΆΠΈΠΌ CBC. ΠΠ»Ρ Π½Π΅Π³ΠΎ ΡΠΏΡΠ°Π²Π΅Π΄Π»ΠΈΠ²ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ (ΠΎΠΏΡΡΡ Π²ΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΠ΅ΡΠ²ΡΡ ΠΈΠ»Π»ΡΡΡΡΠ°ΡΠΈΡ):
XML Π XML ENCRYPTION
Extensible Markup Language (ΠΈΠ»ΠΈ ΠΊΠΎΡΠΎΡΠΊΠΎ XML) ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΠ·ΡΠΊ ΡΠ°Π·ΠΌΠ΅ΡΠΊΠΈ Π΄Π»Ρ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π΄ΡΠ΅Π²ΠΎΠ²ΠΈΠ΄Π½ΡΡ ΡΡΡΡΠΊΡΡΡ. ΠΠ°ΠΆΠ½Π°Ρ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡ XML ΡΠΎΡΡΠΎΠΈΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Β« Β» ΡΠ°Π·ΡΠ΅ΡΠ°Π΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ·Π»ΠΎΠ²ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² (node). Π’Π°ΠΊ, Π΅ΡΠ»ΠΈ ΡΠ΅ΠΊΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΡΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΡΠΎ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ Π² XML Π΅Π³ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Π½Π° Β« Β» ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ. Π’ΠΎΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅ Π΄Π»Ρ ΡΠΈΠΌΠ²ΠΎΠ»Π° Π°ΠΏΠΌΠ΅ΡΡΠ°Π½Π΄Π° Β«&Β» ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ escape-ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Β«&Β». ΠΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° XML ΠΈΠ³ΡΠ°ΡΡ Π²Π°ΠΆΠ½ΡΡ ΡΠΎΠ»Ρ ΠΏΡΠΈ Π°ΡΠ°ΠΊΠ΅ Π½Π° XML Encryption.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ XML Encryption
ΠΠΎΠ½ΡΠΎΡΡΠΈΡΠΌ W3C Π²ΡΠΏΡΡΡΠΈΠ» ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ XML Signature ΠΈ W3C XML Encryption, ΡΡΠΎ ΡΠΏΠΎΡΠΎΠ±ΡΡΠ²ΠΎΠ²Π°Π»ΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠΈΠ·Π°ΡΠΈΠΈ XML ΠΈ ΡΡΠ΅Π΄ΡΡΠ² Π΄Π»Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²ΠΎΠ² (ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠΎΠ²ΠΎΠΉ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ, ΡΠΈΠΌΠΌΠ΅ΡΡΠΈΡΠ½ΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ² ΠΈ Ρ. Π΄.) ΠΊ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΠΌ Π΄Π°Π½Π½ΡΠΌ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ XML.
XML SIGNATURE
XML Signature β ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ W3C, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠ°Ρ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΈ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠΎΠ²ΠΎΠΉ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ ΠΈ ΠΊΠΎΠ΄ΠΎΠ² Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π΄Π»Ρ Π΄Π°Π½Π½ΡΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ XML.
Π’Π°ΠΊ ΠΊΠ°ΠΊ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ XML Encryption ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΊ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠΉ ΡΠ°ΡΡΠΈ Π΄Π΅ΡΠ΅Π²Π° XML-Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ° (Π»ΠΈΡΡ Π±Ρ ΠΎΠ½Π° ΠΈΠΌΠ΅Π»Π° ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΡΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ XML), ΡΠΎ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ ΡΠΈΠΏΠΎΠ² ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° ΡΡΡΠ΅ΡΡΠ²ΡΡΡ ΡΠ°Π·Π½ΡΠ΅ ΡΠ΅ΠΆΠΈΠΌΡ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ ΡΠ΅ΠΆΠΈΠΌ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π² ΠΏΠΎΠ»Π΅ Type ΡΠ΅Π³Π°. Π’ΠΈΠΏ Encrypted Element ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π΄Π΅ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ΄Π²Π΅ΡΠ³Π°Π΅ΡΡΡ ΠΎΠ΄ΠΈΠ½ XML-ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΡΠ²ΠΎΠΈΠΌΠΈ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠΌΠΈ ΡΠ·Π»Π°ΠΌΠΈ. Π’ΠΈΠΏ Encrypted Content Π³ΠΎΠ²ΠΎΡΠΈΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π΄Π΅ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ΄Π²Π΅ΡΠ³Π°Π΅ΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ·Π»ΠΎΠ²ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΡΠ²ΠΎΠΈΠΌΠΈ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠΌΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ, ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌΠΈ, ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌΠΈ ΠΏΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΈ Ρ. Π΄. Π’ΠΈΠΏ Encrypted Text Content, ΡΠ²Π»ΡΡΡΠΈΠΉΡΡ ΡΠ°ΡΡΠ½ΡΠΌ ΡΠ»ΡΡΠ°Π΅ΠΌ ΡΠΈΠΏΠ° Encrypted Content, Π²ΡΠ΄Π΅Π»Π΅Π½ Π΄Π»Ρ ΡΠ°ΠΊΠΈΡ ΠΎΡΠΊΡΡΡΡΡ ΡΠ΅ΠΊΡΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΡΡΠΎΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ· ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ Π΄Π°Π½Π½ΡΡ . Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² ΠΏΠΎΠ»Π΅ Type Π΄Π°Π΅Ρ Π½Π°ΠΌ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΡ ΠΎΠ± ΠΎΡΠΊΡΡΡΠΎΠΌ ΡΠ΅ΠΊΡΡΠ΅. Π‘ΡΠΎΠΈΡ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΠΏΡΠΈ Π΄Π΅ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠΎΡ Π°ΡΡΠΈΠ±ΡΡ ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΠ³Π½ΠΎΡΠΈΡΡΠ΅ΡΡΡ XML FrameworkβΠΎΠΌ ΠΈ Π½Π΅ Π²Π»ΠΈΡΠ΅Ρ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΠΏΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ°.
ΠΠ°ΡΡ ΡΠ»ΠΎΠ² Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΈ Π΅ΡΠ΅ ΠΎΠ± ΠΎΠ΄Π½ΠΎΠΌ Π²Π°ΠΆΠ½ΠΎΠΌ ΠΌΠΎΠΌΠ΅Π½ΡΠ΅ β ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠ΅. Π‘ΡΠ°Π½Π΄Π°ΡΡ XML Encryption ΠΏΡΠ΅Π΄ΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΡ UTF-8, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π±ΠΈΡΠΎΠ²ΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π°Π»ΡΠ°Π²ΠΈΡΠΎΠ², Π° ΡΠ°ΠΊΠΆΠ΅ Π΄ΡΡΠ³ΠΈΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ². ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π½Π°ΡΠΈΠΌΠ°Ρ Π΄Π»Ρ Π½Π°Ρ Π³ΡΡΠΏΠΏΠ° ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π²ΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡΡ UTF-8 β ΡΡΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠ³ΠΎ Π°Π»ΡΠ°Π²ΠΈΡΠ°, ΡΠΈΡΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΏΠ΅ΡΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π° ΡΡΡΠΎΠΊΠΈ (line feed) ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ° ΠΊΠ°ΡΠ΅ΡΠΊΠΈ (carriage return). ΠΠ°ΠΆΠ½ΠΎ Π·Π½Π°ΡΡ, ΡΡΠΎ Π΄Π»Ρ ΡΡΠΎΠΉ Π³ΡΡΠΏΠΏΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΊΠΎΠ΄Ρ ASCII ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ Ρ ΠΊΠΎΠ΄Π°ΠΌΠΈ UTF-8.
Π’Π°ΠΊΠΆΠ΅ ΡΡ Π½Π°Π²Π΅ΡΠ½ΡΠΊΠ° ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ ΠΊΠΎΠ΄ ASCII ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ΠΎΡΠ½ΡΠ΅ Π±Π°ΠΉΡΡ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π°ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°ΡΡ 128 ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² (ΡΠΌΠΎΡΡΠΈ ΡΠΈΡΡΠ½ΠΎΠΊ 4). ΠΠ°ΠΌΠ΅ΡΡ, ΡΡΠΎ ΡΡΠ° ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΠΌΡ ΠΈΠ· Π²ΠΎΡΡΠΌΠΈ Π±ΠΈΡ Π² Π±Π°ΠΉΡΠ΅, ΡΡΠ°ΡΡΠΈΠΉ Π±ΠΈΡ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π΅Π½ Π½ΡΠ»Ρ.
AXIS2 β Π€Π ΠΠΠΠΠΠ Π ΠΠΠ― Π‘ΠΠΠΠΠΠΠ― ΠΠΠ-Π‘ΠΠ ΠΠΠ‘ΠΠ
ΠΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π»Π΅Ρ ΠΏΠΎΡΠ²ΠΈΠ»ΠΎΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΎΠ² Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π²Π΅Π±-ΡΠ΅ΡΠ²ΠΈΡΠΎΠ². ΠΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ Π² ΡΡΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ Apache Axis2 Framework, ΠΌΠΎΠ΄ΡΠ»Ρ Rampart ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ° WS-Security. ΠΡΠΎΡ ΡΡΠ°Π½Π΄Π°ΡΡ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΌ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ XML Encryption ΠΈ XML Signature Π² ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΡ SOAP.
WS-SECURITY
WS-Security β Π³ΠΈΠ±ΠΊΠΎΠ΅ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ SOAP, ΡΠ»ΡΠΆΠ°ΡΠ΅Π΅ Π΄Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠ³ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Π² Π²Π΅Π±-ΡΠ΅ΡΠ²ΠΈΡΠ°Ρ . WS-Security Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ XML Encryption ΠΈ XML Signature.
Π§ΡΠΎΠ±Ρ ΡΡΠΎΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² Axis2 Framework, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠΌ ΠΏΠΎΡΠΎΠΊΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ (message flow). ΠΠΎΡΠΎΠΊ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ (message flow) β ΡΡΠΎ ΡΠ΅ΠΏΠΎΡΠΊΠ° ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π²Ρ ΠΎΠ΄ΡΡΠ΅Π΅ SOAP-ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ (ΠΈΠ»ΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ), ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ Π΅Π³ΠΎ ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ ΠΌΠΎΠ΄ΡΠ»Ρ Π² ΡΠ΅ΠΏΠΎΡΠΊΠ΅. ΠΠΎΠ³Π΄Π° SOAP-ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎΡΡΠΈΠ³Π°Π΅Ρ ΠΊΠΎΠ½ΡΠ° ΡΠ΅ΠΏΠΎΡΠΊΠΈ, ΠΎΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π² Message Receiver, ΠΊΠΎΡΠΎΡΡΠΉ, Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ, Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΡΡΠ½ΠΊΡΠΈΡ ΠΊΠ»Π°ΡΡΠ° Service ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ΅ΡΠ²ΠΈΡΠ°.
Message flow Π² Apache Axis2
ΠΠ±ΡΡΠ½ΠΎ ΠΏΠΎΡΠΎΠΊ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ Π² Axis2 ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΡΡΠ΅Ρ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ: Transport, Security ΠΈ Dispatch. ΠΠΎΠ΄ΡΠ»Ρ Security, ΠΊΠ°ΠΊ Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· Π½Π°Π·Π²Π°Π½ΠΈΡ, ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ. Π ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ½ ΡΠ½Π°ΡΠ°Π»Π° ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ Π΄Π΅ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ, Π° Π·Π°ΡΠ΅ΠΌ ΠΏΠ°ΡΡΠΈΡ ΠΎΡΠΊΡΡΡΡΠΉ ΡΠ΅ΠΊΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ°ΡΡΠ΅ΡΠ° XML ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ SOAP-ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. ΠΠ΅ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Π½ΡΠΉ ΠΊΠΎΠ½ΡΠ΅Π½Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ Dispatch. ΠΠ°ΠΊ ΠΈ Message Receiver, ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ Π² ΡΠ΅ΠΏΠΎΡΠΊΠ΅ message flow ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅ΡΠ²Π°ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ SOAP ΠΏΡΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ΠΎΡΠΈΠ±ΠΊΠΈ, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ°Π΅ΡΡΡ ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ΅ΡΠ²ΠΈΡΠ° Π²ΡΠ΄Π°Π΅ΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅.
ΠΠ¨ΠΠΠΠ Π Π‘ΠΠ‘Π’ΠΠΠ ΠΠΠΠΠΠΠ‘ΠΠΠ‘Π’Π Π AXIS2
Π§Π’Π Π’ΠΠΠΠ ΠΠ ΠΠΠ£ΠΠ«?
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΡΠ°ΠΊΡΠ»Π° Ρ Π½Π°Ρ Π±ΡΠ΄Π΅Ρ Π²ΡΡΡΡΠΏΠ°ΡΡ ΡΠ΅ΡΠ²Π΅Ρ Ρ Π²Π΅Π±-ΡΠ΅ΡΠ²ΠΈΡΠΎΠΌ, ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΌ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Axis2. ΠΠΎΠ½Π°ΡΠ°Π»Ρ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ°Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π²ΡΠ΄Π°Π΅Ρ ΡΠ΅ΡΠ²Π΅Ρ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠΎΠ³Π΄Π° ΠΌΡ ΡΠΌΠΎΠΆΠ΅ΠΌ ΠΎΡΠ»ΠΈΡΠΈΡΡ ΠΎΡΠ²Π΅Ρ true ΠΎΡ ΠΎΡΠ²Π΅ΡΠ° false Π½Π°ΡΠ΅Π³ΠΎ ΠΎΡΠ°ΠΊΡΠ»Π°. ΠΡΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ΠΎΡΠΈΠ±ΠΊΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΡΠ΅ΡΠ²ΠΈΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ Π½Π°ΠΌ security fault. ΠΡΠΈΡΠΈΠ½Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ security fault ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ Π½Π° Π΄Π²Π΅ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ: 1. ΠΡΠΈΠ±ΠΊΠ° Π΄Π΅ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ Π’Π°ΠΊΠ°Ρ ΠΎΡΠΈΠ±ΠΊΠ° Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΠΏΡΠΈ Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠΌ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π±Π»ΠΎΠΊΠ°. ΠΠΎΠΌΠ½ΠΈΡΡ, Ρ Π³ΠΎΠ²ΠΎΡΠΈΠ», ΡΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π±Π°ΠΉΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠΈΡΠ»ΠΎ, ΡΠ°Π²Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Ρ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½Π½ΡΡ Π±Π°ΠΉΡΠΎΠ²? Π’Π°ΠΊ Π²ΠΎΡ, ΡΡΠΎΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π±Π°ΠΉΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΎΡ 0x01 Π΄ΠΎ 0x10, Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅. 2. ΠΡΠΈΠ±ΠΊΠ° ΠΏΠ°ΡΡΠΈΠ½Π³Π° Π΄Π°Π½Π½ΡΡ ΠΡΠ° ΠΎΡΠΈΠ±ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ ΠΏΠΎ Π΄Π²ΡΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ. ΠΠ΅ΡΠ²Π°Ρ β ΠΎΡΠΊΡΡΡΡΠΉ ΡΠ΅ΠΊΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Β«Π·Π°ΠΏΡΠ΅ΡΠ΅Π½Π½ΡΠ΅Β» ΡΠΈΠΌΠ²ΠΎΠ»Ρ, ΡΠΎ Π΅ΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Ρ ΠΊΠΎΠ΄Π°ΠΌΠΈ ASCII ΠΎΡ 0x00 Π΄ΠΎ 0x1F (Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ 0x09, 0x0A, 0x0D β ΠΏΡΠΎΠ±Π΅Π»Π°, ΠΊΠΎΠ½ΡΠ° ΡΡΡΠΎΠΊΠΈ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ° ΠΊΠ°ΡΠ΅ΡΠΊΠΈ). ΠΡΠΎΡΠ°Ρ ΠΏΡΠΈΡΠΈΠ½Π° β Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΡΠΉ XML-ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π΄Π΅ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ Π² ΠΎΡΠΊΡΡΡΠΎΠΌ ΡΠ΅ΠΊΡΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Π° Β«&Β» (0x26) ΠΈΠ»ΠΈ Β« Β».
Π ΠΎΠ±ΠΎΠΈΡ ΡΠ»ΡΡΠ°ΡΡ ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ ΠΈ ΡΠ°Π·Π»ΠΈΡΠΈΡΡ ΡΡΠΈ Π΄Π²Π° ΡΠ»ΡΡΠ°Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ Π»ΠΈΡΡ ΠΏΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ.
ΠΠ°ΠΊ ΠΈ Π² ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ ΡΠ°Π½Π΅Π΅ ΠΏΡΠΎΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅, ΡΠ°Π·ΠΎΠ±ΡΠ΅ΠΌ Π²ΡΡ Π½Π°ΡΡ ΡΠ°Π±Π»ΠΈΡΡ ASCII Π½Π° Π΄Π²Π΅ Π³ΡΡΠΏΠΏΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² (Π²ΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΡΡΠΉ ΡΠΈΡΡΠ½ΠΎΠΊ). ΠΡΡΠΏΠΏΠ° A ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π·Π°ΠΏΡΠ΅ΡΠ΅Π½Π½ΡΠ΅ Π΄Π»Ρ ΡΠΎΡΠΌΠ°ΡΠ° XML ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΏΠ»ΡΡ Π΄Π²Π° Β«Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Β» ΡΠΈΠΌΠ²ΠΎΠ»Π° Β«&Β» ΠΈ Β«
Π’Π°Π±Π»ΠΈΡΠ° ASCII Ρ Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π½Π° Π³ΡΡΠΏΠΏΡ
Π’Π΅ΠΏΠ΅ΡΡ Π²ΡΠ΅ Π³ΠΎΡΠΎΠ²ΠΎ Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΎΡΠ°ΠΊΡΠ»Π°. ΠΠ°ΠΊ ΠΈ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅, Π½Π°Ρ ΠΎΡΠ°ΠΊΡΠ», ΡΠΎ Π΅ΡΡΡ ΡΠ΅ΡΠ²Π΅Ρ, ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π½Π° Π²Ρ ΠΎΠ΄ ΠΎΠ΄ΠΈΠ½ Π±Π»ΠΎΠΊ ΡΠ΅ΠΊΡΡΠ°, Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ CBC, ΡΠΎ Π΅ΡΡΡ 16-Π±Π°ΠΉΡΠΎΠ²ΡΠΉ Π²Π΅ΠΊΡΠΎΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠΉ Π±Π»ΠΎΠΊ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΆΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ°, ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ true ΠΈΠ»ΠΈ false. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΡΡΠΎΡ Π±Π»ΠΎΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Β«ΠΎΠ±Π΅ΡΠ½ΡΡΒ» Π² SOAP-ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, Π½ΠΎ Π·Π΄Π΅ΡΡ ΠΌΡ ΡΡΠΈΠΌ ΠΏΡΠ΅Π½Π΅Π±ΡΠ΅Π³Π°Π΅ΠΌ. ΠΡΠ°ΠΊ, ΠΎΡΠ°ΠΊΡΠ» Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ true, Π΅ΡΠ»ΠΈ ΡΠ΅ΡΠ²Π΅Ρ Π² ΠΎΡΠ²Π΅Ρ Π½Π° SOAP(AESENCCBC(k, (IV, C))) ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ Π½Π°ΠΌ security fault, ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ false Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅.
ΠΠ°ΠΊ Ρ ΡΠΆΠ΅ Π³ΠΎΠ²ΠΎΡΠΈΠ», ΡΠ΅ΡΠ²Π΅Ρ Π½Π΅ Π²ΡΠ΄Π°ΡΡ security fault, Π΅ΡΠ»ΠΈ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΡΠ΅ΡΠ²Π΅ΡΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄ΠΎ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ°, ΡΠΎ Π΅ΡΡΡ ΠΎΡΠΊΡΡΡΡΠΉ ΡΠ΅ΠΊΡΡ M ΠΈΠΌΠ΅Π΅Ρ Π²Π΅ΡΠ½ΡΡ XML-ΡΡΡΡΠΊΡΡΡΡ:
Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΠΎΡΠΈΠ±ΠΊΠ° security fault, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΡΠ°ΠΊΡΠ» ΡΠΎΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅.
ΠΠΠ‘Π‘Π’ΠΠΠΠΠΠΠΠΠ ΠΠ’ΠΠ Π«Π’ΠΠΠ Π’ΠΠΠ‘Π’Π
ΠΠ»Ρ ΠΏΡΠΎΡΡΠΎΡΡ ΡΡΠΈΡΠ°Π΅ΠΌ, ΡΡΠΎ ΠΎΡΠΊΡΡΡΡΠΉ ΡΠ΅ΠΊΡΡ ΡΠΎΡΡΠΎΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ· ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ASCII (ΡΠΎ Π΅ΡΡΡ Π² ΡΠ΅ΠΊΡΡΠ΅ Π½Π΅Ρ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π° ΠΈΠ· ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠΉ ΡΠ΅ΠΊΡΠΈΠΈ UTF-8). Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΡΠ»ΡΡΠ°Ρ, ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠ³ΠΎ Π² ΠΏΡΠΎΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅, Π·Π΄Π΅ΡΡ Β«ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΒ» ΡΠΈΡΡΠΎΡΠ΅ΠΊΡΡΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΠΊΠΎΠΉ ΡΠΈΡΡΠΎΡΠ΅ΠΊΡΡ, ΠΎΡΠΊΡΡΡΡΠΉ ΡΠ΅ΠΊΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π³ΡΡΠΏΠΏΡ B ΠΈ ΠΈΠΌΠ΅Π΅Ρ ΠΎΠ΄Π½ΠΎΠ±Π°ΠΉΡΠ½ΠΎΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, ΡΠΎ Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π΅Π³ΠΎ Π±Π°ΠΉΡ ΡΠ°Π²Π΅Π½ 0x01 (ΡΡΠΎ Π΄ΠΎΠΏΡΡΠ΅Π½ΠΈΠ΅ Π²Π²Π΅Π΄Π΅Π½ΠΎ Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΠΈΠ·Π»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠ΄Π΅ΠΈ Π°ΡΠ°ΠΊΠΈ).
ΠΠ»Π³ΠΎΡΠΈΡΠΌ ΠΏΡΠΎΡΡ ΠΈ Π½Π΅ Π½ΡΠΆΠ΄Π°Π΅ΡΡΡ Π² ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠΌ ΡΠ°Π·ΡΡΡΠ½Π΅Π½ΠΈΠΈ. Π‘ΠΊΠ°ΠΆΡ Π»ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ, ΡΡΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΎΡΠΊΡΡΡΡΠΉ ΡΠ΅ΠΊΡΡ M ΡΠ°ΠΊΠΈΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠ΅ΠΆΠΈΠΌΡ CBC (ΡΠΌΠΎΡΡΠΈ Π½Π° ΠΊΠ°ΡΡΠΈΠ½ΠΊΡ, ΠΈ Π²ΡΠ΅ ΡΡΠ°Π½Π΅Ρ ΡΡΠ½ΠΎ). ΠΡΡΠ°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ ΡΠ΅Π±Π΅ ΠΎΠ± ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ Π΄Π²ΡΡ Π·Π°Π³Π°Π΄ΠΎΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ: FindIV ΠΈ FindXbyte.
ΠΠ ΠΠ¦ΠΠΠ£Π Π« FINDIV Π FINDXBYTE
ΠΡΠΎΡΠ΅Π΄ΡΡΠ° FindIV ΡΡΡΡ ΡΠ»ΠΎΠΆΠ½Π΅Π΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ΠΈΠ· ΡΠ΅ΡΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ°, ΠΈ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠ°ΡΡΠΎ Π±ΡΠ²Π°Π΅Ρ Π² ΠΏΡΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΉ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΠΈ, ΡΡΠΈ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ Π½ΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ½ΠΎ-ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠΉ Ρ Π°ΡΠ°ΠΊΡΠ΅Ρ. ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Ρ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡ Π½Π΅ Π±ΡΠ΄Ρ, Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΡΡΡ Π»ΠΈΡΡ ΠΈΠ·Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈΠ΄Π΅ΠΈ.