uy - Qayta tiklash
Fayllarni ochish va saqlashda matn kodlashni tanlash. Matn o'rniga ierogliflar bo'lsa nima qilish kerak (Word, brauzer yoki matn hujjatida) Matn hujjati ierogliflar bilan ochiladi

Men bunday narsani birinchi marta ko'rdim - flesh-diskdagi fayllar va papkalar g'oyib bo'ldi va ularning o'rniga "kryakozyabriks" ko'rinishidagi tushunarsiz nomli fayllar paydo bo'ldi, keling, ularni ierogliflar deb ataymiz.

Fleshli disk standart bilan ochildi Windows yordamida va qo'shimcha ravishda bor edi, afsuski, bu ijobiy natija bermadi.

Fleshli diskdagi barcha fayllar yo'q bo'lib ketdi, bittasidan tashqari. G'alati nomlar bilan bir nechta fayllar paydo bo'ldi: &, t, n-& va boshqalar.

Fleshli diskdagi fayllar g'oyib bo'ldi, ammo Windows bo'sh joy egallanganligini ko'rsatadi. Bu shuni ko'rsatadiki, bizni qiziqtirgan fayllar ko'rsatilmasa ham, ular flesh-diskda joylashgan.

Fayllar yo'qolgan bo'lsa-da, bo'sh joy band. IN aniq holat, 817 MB joy egallagan

Nima sodir bo'lganligi haqidagi birinchi fikr - bu virusning ta'siri. Ilgari, virus mavjud bo'lganda, fayl menejeri FAR menejeri ishlatilgan, bu qoida tariqasida barcha fayllarni (yashirin va tizim) ko'radi. Biroq, bu safar FAR menejeri faqat standart Windows Explorer nima qilganini ko'rdi...

Hatto FAR menejeri ham "yo'qolgan" fayllarni ko'ra olmadi

Windows etishmayotgan fayllarni ko'rmaganligi sababli, u fayl atributlarini o'zgartirishga urinmaydi buyruq qatori va buyruqlar attrib -S -H /S /D.

Linux nimani ko'radi?

Bunday vaziyatda men tajriba sifatida operatsion tizimdan foydalanishga qaror qildim Linuxga asoslangan. Bunday holda, operatsion tizimga ega disk ishlatilgan Ubuntu tizimi 10.04.3 (Ubuntu haqida batafsil va uni qayerdan yuklab olish mumkin).

Muhim! Kompyuteringizga Ubuntu-ni o'rnatishning hojati yo'q - faqat CD dan yuklang, xuddi .

Ubuntu-ga yuklangandan so'ng, ish stoli paydo bo'ladi va siz papkalar va fayllar bilan xuddi Windows-dagi kabi ishlashingiz mumkin.

Kutilganidek, Ubuntu ko'rdi ko'proq fayllar Windows bilan solishtirganda.

Ubuntu shuningdek, Windows-dan ko'rinmaydigan fayllarni ham ko'rsatadi (bosish mumkin)

Keyinchalik, fayl atributlari bilan bezovta qilmaslik uchun asosiy qadamlar qo'yildi: barcha ko'rsatilgan fayllar tanlangan va nusxalangan. mahalliy disk"D" (albatta, siz fayllarni nusxalashingiz mumkin tizim diski"C")

Endi siz Windows-ni qayta ishga tushirishingiz va nima bo'lganini tekshirishingiz mumkin.

Endi Windows bir nechta Word fayllarini ko'radi. E'tibor bering, fayl nomlari ham to'g'ri ko'rsatilgan

Afsuski, muammo hal etilmadi, chunki flesh-diskda (817 MB hajmiga ko'ra) biz chiqarib olishimiz mumkin bo'lgandan ko'ra ko'proq fayllar mavjud edi. Shu sababli, keling, flesh-diskni xatolar uchun tekshirishga harakat qilaylik.

Fleshli diskdagi xatolarni bartaraf etish

Disklardagi xatolarni topish va tuzatish uchun Windows-ning standart yordam dasturi mavjud.

Qadam 1. Fleshli disk belgisini o'ng tugmasini bosing va "Xususiyatlar" buyrug'ini tanlang.

Qadam 2. "Xizmat" yorlig'iga o'ting va "Run Check" tugmasini bosing.

Qadam 3. "Ishga tushirish" tugmasini bosing.

Tekshirish va tuzatishdan keyin tizim xatolari, tegishli xabar paydo bo'ladi.

Xabar: "Ba'zi xatolar topildi va tuzatildi"

Xatolarni bartaraf etgandan so'ng, ieroglifli fayllar yo'qoldi va flesh-diskning ildiz katalogida paydo bo'ldi. yashirin papka FOUND.000 nomi bilan.

FOUND.000 jildida CHK kengaytmali 264 ta fayl mavjud edi. CHK kengaytmali fayllar fayl qismlarini saqlashi mumkin har xil turlari, dan olingan qattiq disklar va ScanDisk yoki CHKDISK yordam dasturlari yordamida flesh-disklar.

Agar flesh-diskdagi barcha fayllar bir xil turdagi bo'lsa, masalan, Word hujjatlari docx kengaytmasi bilan, keyin esa fayl menejeri Umumiy qo'mondon barcha fayllarni tanlang va Ctrl + M tugmalar birikmasini bosing (Fayllar - Guruh nomini o'zgartirish). Qaysi kengaytmani izlash va uni nimaga o'zgartirish kerakligini ko'rsatamiz.

Bu alohida holatda, men faqat flesh-diskda Word hujjatlari va Power Point taqdimotlari bo'lgan fayllar mavjudligini bilardim. Kengaytmalarni tasodifiy o'zgartirish juda muammoli, shuning uchun ixtisoslashgan dasturlardan foydalanish yaxshiroqdir - ular faylda qanday turdagi ma'lumotlar saqlanishini o'zlari aniqlaydilar. Shunday dasturlardan biri bepul yordam dasturi, bu sizning kompyuteringizga o'rnatishni talab qilmaydi.

Manba papkasini ko'rsating (men CHK fayllarini tashlab qo'ydim qattiq disk). Keyinchalik, men turli xil kengaytmali fayllar turli papkalarga joylashtiriladigan variantni tanladim.

Buning uchun "Boshlash" tugmasini bosish kifoya.

Yordamchi dastur natijasida uchta papka paydo bo'ldi:

  • DOC - Word hujjatlari bilan;
  • JPG - rasmlar bilan;
  • ZIP - arxiv bilan.
  • Sakkizta faylning mazmuni tan olinmagan. Biroq, asosiy vazifa bajarildi, Word hujjatlari va fotosuratlar tiklandi.

    Salbiy tomoni shundaki, shunga o'xshash fayl nomlarini tiklashning iloji bo'lmadi, shuning uchun siz Word hujjatlari nomini o'zgartirish bilan shug'ullanishingiz kerak bo'ladi. Rasmli fayllarga kelsak, FILE0001.jpg, FILE0002.jpg va boshqalar kabi nomlar ham ishlaydi.

    Foydalanuvchi savoli

    Salom.

    Iltimos, ayting-chi, nima uchun mening brauzerimdagi ba'zi sahifalarda matn o'rniga ierogliflar, kvadratlar va kim biladi (hech narsa o'qilishi mumkin emas). Bu oldin sodir bo'lmagan.

    Oldindan rahmat...

    Xayrli kun!

    Darhaqiqat, ba'zida Internet sahifasini ochganingizda, matn o'rniga turli xil "kryakozabry" (men ularni shunday chaqiraman) ko'rsatiladi va uni o'qish mumkin emas.

    Bu sahifadagi matn bitta kodlashda yozilganligi sababli sodir bo'ladi (bu haqda ko'proq bilib olishingiz mumkin) va brauzer uni boshqasida ochishga harakat qiladi. Ushbu nomuvofiqlik tufayli matn o'rniga tushunarsiz belgilar to'plami mavjud.

    Keling, buni tuzatishga harakat qilaylik ...

    Brauzer

    Aslida, oldin Internet Explorer Ko'pincha shunga o'xshash yoriqlar paydo bo'ldi, ๐Ÿ‘‰ (Chrome, Yandex brauzeri, Opera, Firefox) - ular kodlashni juda yaxshi aniqlaydilar va juda kamdan-kam xato qiladilar. ๐Ÿ‘Œ

    Yana shuni aytamanki, brauzerning ba'zi versiyalarida kodlash tanlovi allaqachon olib tashlangan va ushbu parametrni "qo'lda" sozlash uchun siz qo'shimcha dasturlarni yuklab olishingiz yoki 10 ta belgi uchun sozlamalar o'rmoniga kirishingiz kerak.. .

    Aytaylik, brauzer kodlashni noto'g'ri aniqladi va siz quyidagilarni ko'rdingiz (quyidagi skrinshotda bo'lgani kabi ๐Ÿ‘‡).

    ๐Ÿ‘‰ Aytgancha!

    Ko'pincha, UTF (Unicode) va Windows-1251 kodlashlari o'rtasida chalkashlik yuzaga keladi (ko'pchilik rus tilidagi saytlar ushbu kodlashlarda yaratilgan).

  • menyu yuqori qismida paydo bo'lishi uchun chap ALT tugmasini bosing. Menyuni bosing "Ko'rinish" ;
  • elementni tanlang "Matnni kodlash", keyin tanlang Unicode. Va, woo-a-la - sahifalardagi ierogliflar darhol oddiy matnga aylandi (quyida skrinshot๐Ÿ‘‡)!
  • Yana bir maslahat: agar siz brauzeringizda kodlashni qanday o'zgartirishni topa olmasangiz (va har bir brauzer uchun ko'rsatmalar berish umuman haqiqiy emas!), Men sahifani boshqa brauzerda ochishni tavsiya qilaman. Ko'pincha boshqa dastur sahifani kerakli tarzda ochadi.

    Matnli hujjatlar

    Ba'zi matnli hujjatlarni ochishda krakerlar haqida ko'plab savollar beriladi. Ayniqsa, eskilar, masalan, o'tgan asrning biron bir dasturida Readmeni o'qiyotganda (aytaylik, o'yinlar uchun).

    Albatta, ko'pgina zamonaviy bloknotlar avval qo'llanilgan DOS kodlashni oddiygina o'qiy olmaydi.Bu muammoni hal qilish uchun men Bread 3 muharriridan foydalanishni tavsiya qilaman.

    Tarqalgan 3

    Oddiy va qulay matnli bloknot. Eski matnli fayllar bilan ishlash kerak bo'lganda almashtirib bo'lmaydigan narsa.

    Bred 3 sizga bir marta bosish bilan kodlashni o'zgartirishga va o'qilmaydigan matnni o'qishga imkon beradi! Matn fayllariga qo'shimcha ravishda, u juda ko'p turli xil hujjatlarni qo'llab-quvvatlaydi. Umuman olganda, men buni tavsiya qilaman! โœŒ

    Bred 3 da o'zingizni ochishga harakat qiling Matnli hujjat(muammolar mavjud). Quyidagi skrinshotda misol ko'rsatilgan.

    Boshqa bloknot - Notepad++ - turli xil kodlashlarning matnli fayllari bilan ishlash uchun ham mos keladi. Umuman olganda, albatta, bu dasturlash uchun ko'proq mos keladi, chunki... Kodni osonroq o'qish uchun turli xil orqa yorug'liklarni qo'llab-quvvatlaydi.

    Kodlashni o'zgartirish misoli quyida ko'rsatilgan: matnni o'qish uchun quyidagi misolda ANSI kodlashni UTF-8 ga o'zgartirish kifoya edi.

    WORD hujjatlari

    Ko'pincha Word-dagi yoriqlar bilan bog'liq muammo ikki formatning chalkashligi bilan bog'liq Doc va Docx. Gap shundaki, 2007 yildan beri Word (adashmasam) formatni joriy qilgan Docx(hujjatni Hujjatga qaraganda kuchliroq siqish imkonini beradi va uni ishonchliroq himoya qiladi).

    Shunday qilib, agar sizda ushbu formatni qo'llab-quvvatlamaydigan eski Word bo'lsa, Docx-da hujjatni ochganingizda, siz ierogliflarni ko'rasiz va boshqa hech narsa emas.

    Ikkita yechim bor:

  • Microsoft veb-saytida maxsus yuklab oling. eskisida ochish imkonini beruvchi qo'shimcha Yangi so'z hujjatlar (2020 yildan boshlab qo'shimcha rasmiy veb-saytdan olib tashlandi). Faqat dan shaxsiy tajriba Aytishim mumkinki, barcha hujjatlar ochilmaydi va bundan tashqari, hujjat belgisi katta zarar ko'radi (ba'zi hollarda bu juda muhim);
  • ๐Ÿ‘‰ dan foydalaning (ammo hujjatdagi belgilar ham zarar ko'radi);
  • Word-ni zamonaviy versiyaga yangilang.
  • Bundan tashqari, Word-da biron bir hujjatni ochganingizda (uning kodlanishi "shubhalanadi"), u sizga uni o'zingiz belgilash imkoniyatini taklif qiladi. Quyidagi rasmda misol ko'rsatilgan, tanlab ko'ring:

  • Windows (standart);
  • MS DOS;
  • Boshqa...
  • Turli xil Windows ilovalaridagi Windows

    Dasturdagi ba'zi oyna yoki menyu ierogliflar bilan ko'rsatilgan (albatta, biror narsani o'qish yoki tushunish mumkin emas).

  • Ruslashtiruvchi. Ko'pincha rasmiy yordam Dasturda rus tili yo'q, lekin ko'plab hunarmandlar Russifiers qiladi. Katta ehtimol bilan, bu kraker tizimingizda ishlashdan bosh tortgan. Shuning uchun maslahat oddiy: boshqasini o'rnatishga harakat qiling;
  • Tilni almashtirish. Sozlamalarda tilni ingliz tiliga o'tkazish orqali ko'plab dasturlardan rus tilisiz foydalanish mumkin. Xo'sh, haqiqatan ham: nima uchun sizga tugma o'rniga ba'zi yordamchi dastur kerak "Boshlash" tarjima "boshlanishi" ?
  • Agar sizning matningiz avval odatdagidek ko'rsatilgan bo'lsa, lekin hozir u ko'rinmasa, ๐Ÿ‘‰ sinab ko'ring, agar sizda tiklash nuqtalari bo'lsa;
  • Windows-dagi til va mintaqaviy sozlamalarni tekshiring, ko'pincha sabab shu erda (๐Ÿ‘‡).
  • Windows-dagi mintaqalar va tillar

    Manzil - Rossiya

    Va yorliqda "Qo'shimcha ravishda" tizim tilini o'rnating "Rossiya Rossiya)" .

    Shundan so'ng, sozlamalarni saqlang va kompyuteringizni qayta ishga tushiring. Keyin kerakli dasturning interfeysi normal ko'rsatiladimi yoki yo'qligini yana tekshiring.

    Va nihoyat, bu ko'pchilik uchun ayon bo'lishi mumkin, ammo ba'zilari bunga mo'ljallanmagan dasturlarda ma'lum fayllarni ochadi: masalan, oddiy bloknotda ular DOCX yoki PDF faylini o'qishga harakat qilishadi.

    Tabiiyki, bu holda matn o'rniga siz krakerlarni tomosha qilasiz, ular uchun mo'ljallangan dasturlardan foydalaning bu turdagi fayl (yuqoridagi misol uchun WORD 2016+ va Adobe Reader).

    Ehtimol, har bir shaxsiy kompyuter foydalanuvchisi shunga o'xshash muammoga duch kelgan: siz Internet sahifasini yoki hujjatni ochasiz Microsoft Word- va matn o'rniga siz ierogliflarni ko'rasiz (turli "kryakozabry", notanish harflar, raqamlar va boshqalar (chapdagi rasmdagi kabi ...)).

    Agar ushbu hujjat (ierogliflar bilan) siz uchun unchalik muhim bo'lmasa yaxshi, lekin uni o'qish kerak bo'lsa-chi?! Menga ko'pincha shunga o'xshash savollar va bunday matnlarni ochishda yordam so'rash so'raladi. Ushbu qisqa maqolada men ierogliflarning paydo bo'lishining eng mashhur sabablarini ko'rib chiqmoqchiman (va, albatta, ularni yo'q qilish).

    Matn fayllaridagi ierogliflar (.txt)

    Eng mashhur muammo. Gap shundaki, matnli fayl (odatda txt formatida, lekin formatlari ham bor: php, css, info va boshqalar) turli xil kodlashlarda saqlanishi mumkin.

    Kodlash - bu matnning ma'lum bir alifboda (shu jumladan raqamlar va maxsus belgilar) yozilishini to'liq ta'minlash uchun zarur bo'lgan belgilar to'plami. Bu haqda batafsil ma'lumot bu yerda: https://ru.wikipedia.org/wiki/Character_set

    Ko'pincha bitta narsa sodir bo'ladi: hujjat shunchaki noto'g'ri kodlashda ochiladi, bu chalkashlikka olib keladi va ba'zi belgilar kodi o'rniga boshqalar chaqiriladi. Ekranda turli g'alati belgilar paydo bo'ladi (1-rasmga qarang)...

    Guruch. 1. Bloknot - kodlash muammosi

    Bu bilan qanday kurashish mumkin?

    Mening fikrimcha eng yaxshi variant- bu ilg'or bloknotni o'rnatish, masalan, Notepad++ yoki Bred 3. Keling, ularning har birini batafsil ko'rib chiqaylik.

    Notepad++

    Rasmiy veb-sayt: https://notepad-plus-plus.org/

    Yangi boshlanuvchilar va professionallar uchun eng yaxshi bloknotlardan biri. Taroziga soling: bepul dastur, rus tilini qo'llab-quvvatlaydi, juda tez ishlaydi, kodni ajratib ko'rsatish, barcha umumiy fayl formatlarini ochish, juda ko'p sonli variantlar uni o'zingiz uchun sozlash imkonini beradi.

    Kodlash nuqtai nazaridan bu erda umuman to'liq tartib mavjud: "Kodlashlar" alohida bo'limi mavjud (2-rasmga qarang). Faqat ANSI ni UTF-8 ga o'zgartirib ko'ring (masalan).

    Kodlashni o'zgartirgandan so'ng, mening matn hujjatim normal va o'qilishi mumkin bo'ldi - ierogliflar yo'qoldi (3-rasmga qarang)!

    Rasmiy veb-sayt: http://www.astonshell.ru/freeware/bred3/

    Windows-dagi standart bloknotni to'liq almashtirish uchun mo'ljallangan yana bir ajoyib dastur. Shuningdek, u ko'plab kodlashlar bilan "osonlik bilan" ishlaydi, ularni osongina o'zgartiradi, juda ko'p sonli fayl formatlarini qo'llab-quvvatlaydi va yangi Windows operatsion tizimlarini qo'llab-quvvatlaydi (8, 10).

    Aytgancha, Bred 3 MS DOS formatlarida saqlangan "eski" fayllar bilan ishlashda juda foydali. Boshqa dasturlarda faqat ierogliflar ko'rsatilganda, Bred 3 ularni osongina ochadi va ular bilan xotirjam ishlashga imkon beradi (4-rasmga qarang).

    Microsoft Word da matn o'rniga ierogliflar mavjud bo'lsa

    E'tibor berishingiz kerak bo'lgan birinchi narsa - fayl formati. Gap shundaki, Word 2007 dan boshlab yangi format- "docx" (ilgari bu shunchaki "doc" edi). Odatda, yangi fayl formatlarini "eski" Word-da ochib bo'lmaydi, lekin ba'zida bu "yangi" fayllar eski dasturda ochiladi.

    Faqat fayl xususiyatlarini oching va keyin "Tafsilotlar" yorlig'iga qarang (5-rasmdagi kabi). Shunday qilib, siz fayl formatini bilib olasiz (5-rasmda - "txt" fayl formati).

    Agar fayl formati docx bo'lsa - va sizda eski Word (2007 versiyasidan past) bo'lsa - Word-ni 2007 yoki undan keyingi versiyaga yangilang (2010, 2013, 2016).

    Keyinchalik, faylni ochishda e'tibor bering (sukut bo'yicha bu variant har doim yoqilgan, agar siz "qaysi yig'ilishni tushunmasangiz") - Word sizdan yana so'raydi: faylni qaysi kodlashda ochish kerak (bu xabar faylni ochishda muammolarning har qanday "maslahatida" paydo bo'ladi, 5-rasmga qarang).

    Guruch. 6. Word - faylni konvertatsiya qilish

    Ko'pincha Word avtomatik ravishda kerakli kodlashni aniqlaydi, ammo matn har doim ham o'qilishi mumkin emas. Matn o'qilishi mumkin bo'lganda, slayderni kerakli kodlashni o'rnatishingiz kerak. Ba'zan faylni o'qish uchun uni qanday saqlanganligini taxmin qilishingiz kerak.

    Guruch. 7. Word - fayl normal (kodlash to'g'ri tanlangan)!

    Brauzerda kodlashni o'zgartirish

    Brauzer Internet sahifasining kodlanishini noto'g'ri aniqlaganida, siz aynan bir xil ierogliflarni ko'rasiz (8-rasmga qarang).

    Sayt ko'rinishini tuzatish uchun: kodlashni o'zgartiring. Bu brauzer sozlamalarida amalga oshiriladi:

  • Google Chrome: variantlar (yuqori o'ng burchakdagi belgi)/kengaytirilgan variantlar/kodlash/Windows-1251 (yoki UTF-8);
  • Firefox: chap ALT tugmasi (agar sizda yuqori panel o'chirilgan bo'lsa), keyin ko'rish/sahifa kodlash/keraklini tanlang (ko'pincha Windows-1251 yoki UTF-8);
  • Opera: Opera (yuqori chap burchakdagi qizil belgi)/sahifa/kodlash/keraklini tanlang.
  • Shunday qilib, ushbu maqolada noto'g'ri belgilangan kodlash bilan bog'liq ierogliflarning paydo bo'lishining eng keng tarqalgan holatlari tahlil qilindi. Yuqoridagi usullardan foydalanib, siz noto'g'ri kodlash bilan barcha asosiy muammolarni hal qilishingiz mumkin.

    O'ylaymanki, siz bir necha marta Unicode deb tasniflangan ekspluatatsiyalarga duch keldingiz, sahifani ko'rsatish uchun to'g'ri kodlashni qidirdingiz va keyingi hiyla-nayranglardan mamnun bo'ldingiz. Siz boshqa nima bilasiz! Agar siz bu tartibsizlikni kim boshlagan va hozirgacha uni tozalab kelayotganini bilmoqchi bo'lsangiz, xavfsizlik kamarlaringizni mahkamlang va o'qing.

    Ular aytganidek, "tashabbus jazolanadi" va har doimgidek, hamma narsaga amerikaliklar aybdor.

    Va shunday bo'ldi. Kompyuter sanoatining gullab-yashnashi va Internetning tarqalishi tongida ramzlarni ifodalash uchun universal tizimga ehtiyoj paydo bo'ldi. Va o'tgan asrning 60-yillarida ASCII paydo bo'ldi - "Axborot almashish uchun Amerika standart kodeksi" (Amerika Standart kod Ma'lumot almashinuvi uchun), tanish 7 bitli belgilar kodlash. Oxirgi sakkizinchi foydalanilmagan bit ASCII jadvalini ma'lum bir mintaqadagi har bir kompyuter mijozining ehtiyojlariga moslashtirish uchun boshqaruv biti sifatida qoldirildi. Bu bit ASCII jadvalini har bir til uchun o'z belgilaridan foydalanish uchun kengaytirish imkonini berdi. Kompyuterlar ko'plab mamlakatlarga etkazib berildi, ular allaqachon o'zlarining o'zgartirilgan jadvallaridan foydalanganlar. Ammo keyinchalik bu xususiyat bosh og'rig'iga aylandi, chunki kompyuterlar o'rtasida ma'lumotlar almashinuvi juda muammoli bo'lib qoldi. Yangi 8 bitli kod sahifalari bir-biriga mos kelmas edi - bir xil kod bir nechta turli belgilarni anglatishi mumkin. Ushbu muammoni hal qilish uchun ISO (Xalqaro standartlashtirish tashkiloti) yangi jadvalni taklif qildi, ya'ni "ISO 8859".

    Keyinchalik bu standart UCS ("Universal belgilar to'plami") deb o'zgartirildi. Biroq, UCS birinchi marta chiqarilganda, Unicode paydo bo'ldi. Ammo ikkala standartning maqsad va vazifalari mos kelganligi sababli, kuchlarni birlashtirishga qaror qilindi. Xo'sh, Unicode har bir belgiga o'ziga xos belgi berish qiyin vazifani oldi. Hozirda Unicode-ning so'nggi versiyasi 5.2.

    Men sizni ogohlantirmoqchiman - aslida kodlash bilan bog'liq voqea juda xira. Turli manbalar turli faktlarni taqdim etadi, shuning uchun siz bir narsaga e'tibor qaratmasligingiz kerak, faqat hamma narsa qanday shakllanganidan xabardor bo'ling va zamonaviy standartlarga rioya qiling. Umid qilamanki, biz tarixchi emasmiz.

    Unicode halokat kursi

    Mavzuni o'rganishdan oldin, men Unicode nima ekanligini aniqlab bermoqchiman texnik jihatdan. Maqsadlar bu standart Biz allaqachon bilamiz, qolgan narsa apparatni tuzatishdir.

    Xo'sh, Unicode nima? Oddiy qilib aytganda, bu har qanday belgini dunyoning barcha tillari uchun o'ziga xos kod sifatida ko'rsatishning bir usuli. Eng so'nggi versiya Standart U+0000 dan U+10FFFF gacha bo'sh joyni egallagan 1 100 000 ga yaqin kodlarni o'z ichiga oladi. Ammo bu erda ehtiyot bo'ling! Unicode belgi uchun kod nima ekanligini va bu kod xotirada qanday aks ettirilishini qat'iy belgilaydi. Belgilar kodlari (masalan, "A" belgisi uchun 0041) hech qanday ma'noga ega emas, lekin bu kodlarni baytlarda ifodalash uchun mantiq mavjud, bu kodlash orqali amalga oshiriladi. Unicode konsorsiumi UTF (Unicode Transformation Formats) deb nomlangan quyidagi kodlash turlarini taklif etadi. Va bu erda ular:

    • UTF-7: Bu kodlash xavfsizlik va muvofiqlik sabablari uchun tavsiya etilmaydi. RFC 2152 da tavsiflangan. Unicode tarkibiga kirmagan, lekin ushbu konsorsium tomonidan kiritilgan.
    • UTF-8: Veb-makondagi eng keng tarqalgan kodlash. O'zgaruvchi, kengligi 1 dan 4 baytgacha. ASCII dan foydalanadigan protokollar va dasturlar bilan orqaga qarab mos keladi. U+0000 dan U+007F oralig'ini egallaydi.
    • UTF-16: 2 dan 4 baytgacha bo'lgan o'zgaruvchan kenglikdan foydalanadi. Eng keng tarqalgan foydalanish 2 bayt. UCS-2 bir xil kodlash bo'lib, faqat 2 bayt qattiq kengligi va BMP chegaralari bilan cheklangan.
    • UTF-32: 4 bayt, ya'ni 32 bitlik sobit kenglikdan foydalanadi. Biroq, faqat 21 bit ishlatiladi, qolgan 11 ta nol bilan to'ldiriladi. Ushbu kodlash bo'sh joy nuqtai nazaridan noqulay bo'lsa-da, zamonaviy kompyuterlarda 32-bitli adreslash tufayli u ishlash jihatidan eng samarali hisoblanadi.

    UTF-32 ning eng yaqin analogi UCS-4 kodlashidir, ammo bugungi kunda u kamroq qo'llaniladi.

    UTF-8 va UTF-32 ikki milliarddan bir oz ko'proq belgilarni ifodalashi mumkinligiga qaramay, UTF-16 bilan mos kelishi uchun o'zimizni milliondan bir oz ko'proq bilan cheklashga qaror qilindi. Butun kod maydoni har biri 65 536 ta belgidan iborat 17 tekislikka guruhlangan. Eng ko'p ishlatiladigan belgilar nol, asosiy tekislikda joylashgan. BMP - Basic MultiPlane deb ataladi.
    UTF-16 va UTF-32 kodlashlarida ma'lumotlar oqimi ikki xil ko'rinishda taqdim etilishi mumkin - mos ravishda UTF-16LE/UTF-32LE, UTF16BE/UTF-32BE deb ataladigan kichik endian va katta endian. Siz taxmin qilganingizdek, LE kichik-endian, BE esa katta-endian. Ammo biz bu buyruqlarni qandaydir tarzda ajrata olishimiz kerak. Buni amalga oshirish uchun U+FEFF bayt tartibi belgisidan foydalaning, inglizcha versiyada - BOM, "Bayt tartibi maskasi". Ushbu BOM UTF-8 da ham paydo bo'lishi mumkin, ammo bu hech narsani anglatmaydi.

    Orqaga qarab muvofiqlik uchun Unicode mavjud kodlashlardagi belgilarni joylashtirishi kerak edi. Ammo bu erda yana bir muammo paydo bo'ladi - qandaydir tarzda qayta ishlanishi kerak bo'lgan bir xil belgilarning ko'plab variantlari mavjud. Shuning uchun, "normalizatsiya" deb ataladigan narsa kerak, shundan so'ng ikkita satrni solishtirish mumkin. Normalizatsiyaning 4 shakli mavjud:

    • Normalizatsiya shakli D (NFD): kanonik parchalanish.
    • Normalizatsiya shakli C (NFC): kanonik parchalanish + kanonik tarkib.
    • Normalizatsiya shakli KD (NFKD): mos parchalanish.
    • Normalizatsiya shakli KC (NFKC): mos parchalanish + kanonik tarkib.

    Endi bu g'alati so'zlar haqida ko'proq gaplashaylik.

    Unicode ikki turdagi qator tengligini belgilaydi - kanonik va moslik.

    Birinchisi, murakkab ramzning bir nechta individual raqamlarga parchalanishini o'z ichiga oladi, ular umuman asl ramzni tashkil qiladi. Ikkinchi tenglik eng yaqin mos keladigan belgini topadi. Kompozisiya esa turli qismlardan olingan belgilarning birikmasidir, parchalanish esa qarama-qarshi harakatdir. Umuman olganda, chizilgan rasmga qarang, hamma narsa joyiga tushadi.

    Xavfsizlik nuqtai nazaridan, satr tekshirish uchun har qanday filtrlarga yuborilishidan oldin normallashtirish amalga oshirilishi kerak. Ushbu operatsiyadan so'ng matn hajmi o'zgarishi mumkin, bu salbiy oqibatlarga olib kelishi mumkin, ammo keyinroq bu haqda ko'proq.

    Nazariy nuqtai nazardan, men hali ko'p gapirmadim, lekin men muhim narsani o'tkazib yubormaganman deb umid qilaman. Unicode nihoyatda keng, murakkab, unda qalin kitoblar nashr etilgan va bunday noqulay standartning asoslarini qisqacha, qulay va to'liq tushuntirish juda qiyin. Qanday bo'lmasin, chuqurroq tushunish uchun siz yon havolalarni tekshirishingiz kerak. Shunday qilib, Unicode bilan rasm ko'proq yoki kamroq aniq bo'lganda, biz davom etishimiz mumkin.

    Vizual illyuziya

    Ehtimol, siz IP/ARP/DNS spoofingi haqida eshitgansiz va bu nima ekanligini yaxshi bilasiz. Ammo "vizual firibgarlik" deb ataladigan narsa ham bor - bu fisherlar qurbonlarni aldash uchun faol foydalanadigan eski usul. Bunday hollarda "o" va "0", "5" va "s" kabi o'xshash harflardan foydalanish qo'llaniladi. Bu eng keng tarqalgan va eng oddiy variant bo'lib, uni sezish osonroq. Bunga misol qilib 2000 yilda PayPal-ga qilingan fishing hujumini keltirish mumkin, bu haqda hatto www.unicode.org sahifalarida ham tilga olingan. Biroq, bu bizning Unicode mavzuimizga unchalik ahamiyat bermaydi.

    Ilg'or yigitlar uchun Unicode ufqda paydo bo'ldi, aniqrog'i, IDN, bu "Xalqarolashtirilgan domen nomlari" ning qisqartmasi. IDN domen nomlarida milliy alifbo belgilaridan foydalanishga ruxsat beradi. Domen nomlarini ro'yxatdan o'tkazuvchilar buni qulay narsa deb bilishadi, deyishadi, terish Domen nomi ona tilingizda! Biroq, bu qulaylik juda shubhali. Xo'sh, yaxshi, marketing bizning mavzuimiz emas. Ammo bu phisherlar, SEO mutaxassislari, kibersquatterlar va boshqa yovuz ruhlar uchun qanday boshpana ekanligini tasavvur qiling. Men IDN spoofing deb ataladigan effekt haqida gapiryapman. Ushbu hujum vizual firibgarlik toifasiga kiradi, ingliz adabiyotida u "homograf hujumi", ya'ni omograflar (imlo jihatidan bir xil so'zlar) yordamida hujumlar deb ham ataladi.

    Ha, harflarni yozishda hech kim xato qilmaydi va ataylab yolg'on domenni yozmaydi. Lekin ko'pincha foydalanuvchilar havolalarni bosadilar. Agar siz hujumning samaradorligi va soddaligiga ishonch hosil qilishni istasangiz, unda rasmga qarang.

    IDNA2003 o'ziga xos panatseya sifatida ixtiro qilingan, ammo bu yil, 2010 yilda IDNA2008 kuchga kirdi. Yangi protokol yosh IDNA2003 ning ko'pgina muammolarini hal qilishi kerak edi, ammo u firibgarlik hujumlari uchun yangi imkoniyatlarni taqdim etdi. Muvofiqlik bilan bog'liq muammolar yana paydo bo'ladi - ba'zi hollarda turli brauzerlarda bir xil manzil turli serverlarga olib kelishi mumkin. Gap shundaki, Punycode turli yo'llar bilan o'zgartirilishi mumkin turli xil brauzerlar- hamma narsa qaysi standart spetsifikatsiyalar qo'llab-quvvatlanishiga bog'liq bo'ladi.
    Vizual aldash muammosi shu bilan tugamaydi. Unicode spamerlar xizmatiga ham keladi. Gap spam-filtrlar haqida bormoqda - asl harflar spamerlar tomonidan Unicode obfuscator orqali yuboriladi, u UC-Simlist ("Unicode o'xshashlik ro'yxati", o'xshash Unicode belgilar ro'yxati) yordamida turli milliy alifbolardagi o'xshash belgilarni qidiradi. . Va tamom! Antispam filtri taslim bo'ladi va endi bunday tartibsizliklarda mazmunli narsani taniy olmaydi, lekin foydalanuvchi matnni o'qishga qodir. Men bu muammoga yechim topilganini inkor etmayman, lekin spamerlar ustunlikka ega. Xo'sh, bir xil hujumlar seriyasidan yana bir narsa. Matn faylini ochayotganingizga va ikkilik bilan ishlamayotganingizga ishonchingiz komilmi?

    Rasmda siz ko'rib turganingizdek bizda evilexe nomli fayl mavjud. Xabar. Lekin bu yolg'on! Fayl aslida evltxt.exe deb ataladi. Qavs ichidagi bu qanaqa axloqsizlik, deb so'rayapsizmi? Va bu U+202E yoki O'ngdan chapga OVERRIDE, Bidi (ikki tomonlama so'zidan) - arab, ibroniy va boshqalar kabi tillarni qo'llab-quvvatlash uchun Unicode algoritmi. Ikkinchisida o'ngdan chapga yozish mavjud. Unicode RLO belgisini kiritgandan so'ng, biz RLO dan keyin keladigan hamma narsani teskari tartibda ko'ramiz. Misol tariqasida bu usul Haqiqiy hayotdan Mozilla Firfox-dagi firibgarlik hujumini keltira olaman - cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2009-3376.

    Filtrlarni chetlab o'tish - 1-bosqich

    Bugungi kunda UTF-8 ning uzun shakllarini (eng qisqa bo'lmagan shakli) qayta ishlash mumkin emasligi allaqachon ma'lum, chunki bu potentsial zaiflikdir. Biroq, PHP dasturchilarini bunga ishontirish mumkin emas. Keling, bu xato nima ekanligini aniqlaylik. Ehtimol siz noto'g'ri filtrlash va utf8_decode() haqida eslaysiz. Bu biz batafsilroq ko'rib chiqamiz. Shunday qilib, bizda PHP kodi mavjud:



     


    O'qing:



    Eng yaxshi simsiz minigarnituralar reytingi

    Eng yaxshi simsiz minigarnituralar reytingi

    Universal quloqlarni arzon sotib olish mumkinmi? 3000 rubl - bunday pulga yuqori sifatli eshitish vositalarini sotib olish mumkinmi? Ma'lum bo'lishicha, ha. Va nutq ...

    Mobil qurilmaning asosiy kamerasi odatda tananing orqa tomonida joylashgan bo'lib, fotosuratlar va videolarni olish uchun ishlatiladi

    Mobil qurilmaning asosiy kamerasi odatda tananing orqa tomonida joylashgan bo'lib, fotosuratlar va videolarni olish uchun ishlatiladi

    Yaxshilangan xarakteristikalar va yuqori avtonomiyaga ega planshetning yangilangan versiyasi.Acer smartfonlariga kamdan-kam tashrif buyuradi...

    Raqamingizni saqlab qolgan holda boshqa operatorga qanday o'tish mumkin

    Raqamingizni saqlab qolgan holda boshqa operatorga qanday o'tish mumkin

    Rossiyada 1 dekabrdan boshlab abonent boshqa uyali aloqa operatoriga oโ€˜tganda telefon raqamini saqlab qolish toโ€˜gโ€˜risidagi qonun kuchga kirdi. Biroq, ma'lum bo'lishicha, ...

    phabletni ko'rib chiqish, qimmat, lekin juda malakali

    phabletni ko'rib chiqish, qimmat, lekin juda malakali

    Qimmatbaho, lekin juda malakali fablet sharhi 20.03.2015 Men dunyodagi etiksiz yagona poyabzalchiman, o'z smartfonimsiz smartfon sharhlovchisiman....

    tasma tasviri RSS