Glosarium Unicode

150 istilah Unicode penting dijelaskan — dari dasar pengkodean karakter hingga konsep keamanan.

Pengkodean (17)

ASCII

Standar Kode Amerika untuk Pertukaran Informasi (American Standard Code for Information Interchange). Pengkodean 7-bit yang mencakup 128 karakter (0–127): karakter …

ASCII Art

Visual art created from text characters, originally limited to the 95 printable ASCII characters. Unicode expands the palette with box-drawing …

Base64

Binary-to-text encoding that represents binary data using 64 ASCII characters (A–Z, a–z, 0–9, +, /). Used for embedding binary data …

Big5

Pengkodean karakter Tionghoa Tradisional yang digunakan terutama di Taiwan dan Hong Kong, mengkodekan sekitar 13.000 karakter CJK.

EBCDIC

Extended Binary Coded Decimal Interchange Code. Pengkodean mainframe IBM dengan rentang huruf yang tidak berurutan, masih digunakan dalam perbankan dan …

EUC-KR

Pengkodean karakter Korea berdasarkan KS X 1001, memetakan suku kata Hangul dan Hanja ke urutan dua-byte.

GB2312 / GB18030

Keluarga pengkodean karakter Tionghoa Sederhana: GB2312 (6.763 karakter) berkembang menjadi GBK lalu GB18030, standar nasional Tiongkok yang wajib dan kompatibel …

ISO 8859

Keluarga pengkodean satu-byte 8-bit untuk kelompok bahasa yang berbeda. ISO 8859-1 (Latin-1) menjadi dasar bagi 256 titik kode pertama Unicode.

Kumpulan karakter IANA

Registri resmi nama pengkodean karakter yang dikelola oleh IANA, digunakan dalam header HTTP Content-Type dan MIME (misalnya, charset=utf-8).

Pengkodean karakter

Sistem yang memetakan karakter ke urutan byte untuk penyimpanan dan transmisi digital. Setiap file teks memiliki pengkodean — pertanyaannya adalah …

Shift JIS

Pengkodean karakter Jepang yang menggabungkan ASCII/JIS Roman satu-byte dengan kanji JIS X 0208 dua-byte. Masih digunakan dalam sistem Jepang warisan.

Tanda urutan byte

U+FEFF yang ditempatkan di awal aliran teks untuk menunjukkan urutan byte dan pengkodean. Penting untuk UTF-16/32, opsional dan tidak disarankan …

UCS-2

Pengkodean 2-byte panjang tetap yang sudah usang, hanya mencakup BMP (U+0000–U+FFFF). Pendahulu UTF-16 yang tidak dapat merepresentasikan karakter tambahan.

UTF-16

Pengkodean Unicode dengan panjang variabel menggunakan 2 atau 4 byte (1 atau 2 unit kode 16-bit). Digunakan secara internal oleh …

UTF-32

Pengkodean Unicode dengan panjang tetap yang menggunakan tepat 4 byte per karakter. Sederhana tetapi tidak efisien dalam penggunaan ruang; digunakan …

UTF-8

Pengkodean Unicode dengan panjang variabel menggunakan 1–4 byte per karakter. Pengkodean dominan di web (98%+ situs web) dengan kompatibilitas mundur …

Windows-1252

Superset Microsoft dari ISO 8859-1, menambahkan tanda kutip pintar, em dash, dan tanda euro di rentang 0x80–0x9F. Pengkodean "Latin" warisan …

Standar Unicode (25)

Area penggunaan pribadi

Rentang yang dicadangkan di mana organisasi dapat menetapkan karakter mereka sendiri: BMP PUA (U+E000–U+F8FF) ditambah Supplementary PUA di Bidang 15 …

Basic Multilingual Plane (BMP)

Bidang 0 (U+0000–U+FFFF), berisi karakter yang paling umum digunakan termasuk Latin, Yunani, Sirilik, CJK, Arab, dan sebagian besar simbol. Karakter …

Bidang

Blok berurutan yang terdiri dari 65.536 titik kode. Unicode memiliki 17 bidang (0–16): Bidang 0 adalah BMP, Bidang 1 adalah …

Bidang tambahan

Bidang 1–16 (U+10000–U+10FFFF), berisi emoji, skrip historis, ekstensi CJK, dan notasi musik. Memerlukan pasangan surrogate dalam UTF-16.

Bukan karakter

Titik kode yang dicadangkan secara permanen untuk penggunaan internal (66 total): U+FDD0–U+FDEF dan U+nFFFE/U+nFFFF untuk setiap bidang. Valid dalam teks …

CJK

Cina, Jepang, dan Korea — istilah kolektif untuk blok ideograf Han yang disatukan dan aksara terkait dalam Unicode. CJK Unified …

Han Unification

The process of mapping Chinese, Japanese, and Korean ideographs that share a common historical origin to a single Unicode code …

Hangul Jamo

The individual consonant and vowel components (jamo) of the Korean Hangul writing system. Unicode encodes both precomposed Hangul syllables (U+AC00–U+D7A3) …

ISO 10646 / Universal Character Set

Standar internasional (ISO/IEC 10646) yang disinkronkan dengan Unicode, mendefinisikan repertoar karakter dan titik kode yang sama tetapi tanpa algoritma dan …

Karakter abstrak

Unit informasi yang digunakan untuk mengorganisasi, mengontrol, atau merepresentasikan data tekstual — entitas konseptual sebelum mendapatkan titik kode.

Karakter yang ditetapkan

Titik kode yang telah diberi penunjukan karakter dalam suatu versi Unicode. Per Unicode 16.0, 154.998 titik kode ditetapkan dari 1.114.112 …

Kebijakan stabilitas Unicode

Jaminan bahwa setelah karakter ditetapkan, titik kode dan namanya tidak pernah berubah. Properti dapat disempurnakan tetapi penetapan bersifat permanen.

Konsorsium Unicode

Organisasi nirlaba yang mengembangkan dan memelihara Standar Unicode. Anggotanya mencakup Apple, Google, Microsoft, Meta, dan banyak lainnya.

Nilai skalar Unicode

Setiap titik kode kecuali titik kode surrogate (U+D800–U+DFFF). Kumpulan nilai valid yang dapat merepresentasikan karakter sebenarnya, berjumlah 1.112.064.

Pengganti

Titik kode U+D800–U+DFFF yang dicadangkan khusus untuk pasangan surrogate UTF-16. Bukan nilai skalar Unicode yang valid dan tidak boleh muncul …

Ruang kode

Rentang lengkap titik kode Unicode yang mungkin ada: U+0000 hingga U+10FFFF (total 1.114.112), dibagi menjadi 17 bidang masing-masing berisi 65.536 …

Titik kode

Nilai numerik dalam ruang kode Unicode (U+0000 hingga U+10FFFF), ditulis sebagai U+XXXX. Tidak semua titik kode ditetapkan ke karakter.

Titik kode yang belum ditetapkan

Titik kode yang belum ditetapkan karakter dalam versi Unicode mana pun, dikategorikan sebagai Cn (Tidak Ditetapkan). Dapat ditetapkan dalam versi …

Titik kode yang dicadangkan

Titik kode yang disisihkan untuk standardisasi di masa mendatang, berbeda dari nonkarakter (dicadangkan secara permanen) dan area penggunaan pribadi (dapat …

Unicode

Standar pengkodean karakter universal yang menetapkan nomor unik (titik kode) untuk setiap karakter dalam setiap sistem penulisan. Versi 16.0 memuat …

Unicode Character Database (UCD)

Kumpulan file data yang dapat dibaca mesin yang mendefinisikan semua properti karakter Unicode, termasuk UnicodeData.txt, Blocks.txt, Scripts.txt, dan banyak lagi.

Unicode Standard Annex (UAX)

Normative or informative documents that are integral parts of the Unicode Standard. UAX#9 (Bidi Algorithm), UAX#11 (East Asian Width), UAX#15 …

Unicode Technical Report (UTR)

Informational documents published by the Unicode Consortium covering specific topics like security mechanisms (UTR#39), text segmentation (UTR#29), and line breaking …

Unit kode

Unit pengkodean minimal: satu byte 8-bit dalam UTF-8, satu kata 16-bit dalam UTF-16, satu kata 32-bit dalam UTF-32. Satu karakter …

Versi Unicode

Rilis utama Standar Unicode, masing-masing menambahkan karakter, skrip, dan fitur baru. Versi saat ini adalah Unicode 16.0 (September 2025).

Properti (19)

Alias nama

Nama alternatif untuk karakter, karena nama Unicode tidak dapat diubah sesuai kebijakan stabilitas. Digunakan untuk koreksi, singkatan, dan figmen.

Blok

Rentang titik kode berurutan yang dinamai (misalnya, Basic Latin = U+0000–U+007F). Unicode 16.0 mendefinisikan 336 blok; setiap titik kode termasuk …

Dapat diabaikan secara default

Karakter yang tidak memiliki efek visual dan dapat diabaikan oleh proses yang tidak mendukungnya, termasuk pemilih variasi, karakter lebar nol, …

Dekomposisi

Pemetaan karakter ke bagian-bagian komponennya. Dekomposisi kanonik mempertahankan makna (é → e + ́); dekomposisi kompatibilitas dapat mengubahnya (fi → …

East Asian Width

Unicode property (UAX#11) classifying characters as Narrow, Wide, Fullwidth, Halfwidth, Ambiguous, or Neutral. Wide characters (CJK ideographs, katakana) occupy two …

Joining Type

Unicode property controlling how Arabic and Syriac characters connect to adjacent characters. Types include Right_Joining, Left_Joining, Dual_Joining, and Non_Joining.

Kategori dua arah

Properti yang menentukan bagaimana karakter berperilaku dalam teks dua arah (LTR, RTL, lemah, netral). Digunakan oleh Algoritma Dua Arah Unicode …

Kategori umum

Klasifikasi setiap titik kode ke dalam salah satu dari 30 kategori (Lu, Ll, Nd, So, dll.) yang dikelompokkan menjadi 7 …

Kelas penggabungan

Nilai numerik (0–254) yang mengontrol pengurutan tanda penggabung selama dekomposisi kanonik, menentukan tanda penggabung mana yang dapat diatur ulang urutannya.

Kesetaraan kanonik

Dua urutan karakter yang secara semantik identik dan harus diperlakukan sama. Contoh: é (U+00E9) ≡ e + ◌́ (U+0065 + …

Kesetaraan kompatibilitas

Dua urutan karakter dengan konten abstrak yang sama yang mungkin berbeda dalam penampilan. Lebih luas dari ekivalensi kanonik. Contoh: fi …

Kluster grafem

Karakter yang dipersepsikan pengguna — yang terasa seperti satu unit. Mungkin terdiri dari beberapa titik kode (basis + tanda penggabung, …

Nilai numerik

Interpretasi numerik suatu karakter, jika ada: nilai digit (0–9), nilai desimal, atau nilai numerik umum (misalnya, ½ = 0,5, Ⅳ …

Pemetaan huruf besar/kecil

Aturan untuk mengonversi karakter antara huruf besar, huruf kecil, dan huruf judul. Dapat bergantung pada lokal (masalah huruf I Turki) …

Properti cermin

Karakter yang glifnya harus dicerminkan secara horizontal dalam konteks RTL. Contoh: ( → ), [ → ], { → }, …

Properti versi

Versi Unicode di mana karakter pertama kali ditetapkan. Berguna untuk menentukan dukungan karakter di berbagai sistem dan versi perangkat lunak.

Script Extensions

Unicode property listing all scripts that use a character, broader than the single-valued Script property. Common characters like digits have …

Sistem tulisan

Sistem penulisan yang menjadi milik suatu karakter (misalnya, Latin, Sirilik, Han). Unicode 16.0 mendefinisikan 168 skrip; properti Script penting untuk …

Tanda baca

Karakter yang digunakan untuk mengorganisasi dan memperjelas bahasa tulisan: titik, koma, tanda hubung, tanda kutip, dan lainnya. Kategori Umum Unicode …

Algoritma (15)

Algoritma dua arah

Algoritma yang menentukan urutan tampilan karakter dalam teks dengan arah campuran (misalnya, bahasa Inggris + Arab), menggunakan kategori bidi karakter …

Algoritma pemisahan baris

Aturan untuk menentukan di mana teks dapat dibungkus ke baris berikutnya, mempertimbangkan properti karakter, batas kata CJK, dan peluang pemisah.

Algoritma pengurutan

Algoritma standar untuk membandingkan dan mengurutkan string Unicode menggunakan perbandingan bertingkat: karakter dasar → aksen → huruf besar/kecil → tie-breaker. …

Batas kalimat

Posisi antar kalimat menurut aturan Unicode. Lebih kompleks dari sekadar pemisahan pada titik — menangani singkatan (Mr.), elipsis (...), dan …

Batas kata

Posisi antar kata yang ditentukan oleh aturan pemisah kata Unicode. Bukan sekadar pemisahan pada spasi — menangani CJK (tanpa spasi), …

Case Folding

Mapping characters to a common case form for case-insensitive comparison. More comprehensive than lowercasing: German ß → ss, Turkish İ …

Grapheme Cluster Boundary

Rules (UAX#29) for determining where one user-perceived character ends and another begins. Critical for cursor movement, text selection, and correctly …

NFC (Canonical Composition)

Normalization Form C: dekomposisi lalu rekomposisi secara kanonik, menghasilkan bentuk terpendek. Direkomendasikan untuk penyimpanan dan pertukaran data; bentuk standar web.

NFD (Canonical Decomposition)

Normalization Form D: dekomposisi penuh tanpa rekomposisi. Digunakan oleh sistem file macOS HFS+. é (U+00E9) → e + ◌́ (U+0065 …

NFKC (Compatibility Composition)

Normalization Form KC: dekomposisi kompatibilitas lalu komposisi kanonik. Menggabungkan karakter yang mirip secara visual (fi→fi, ²→2, Ⅳ→IV). Digunakan untuk perbandingan …

NFKD (Compatibility Decomposition)

Normalization Form KD: dekomposisi kompatibilitas tanpa rekomposisi. Normalisasi paling agresif, kehilangan informasi pemformatan terbanyak.

Normalisasi

Proses mengonversi teks Unicode ke dalam bentuk kanonik standar. Empat bentuk: NFC (terkomposisi), NFD (terdekomposisi), NFKC (kompatibilitas terkomposisi), NFKD (kompatibilitas …

Pengecualian komposisi

Karakter yang dikecualikan dari komposisi kanonik (NFC) untuk mencegah dekomposisi non-starter dan memastikan stabilitas algoritmik. Tercantum dalam CompositionExclusions.txt.

Segmentasi teks

Algoritma untuk menemukan batas dalam teks: batas gugus grafem, kata, dan kalimat. Penting untuk pergerakan kursor, pemilihan teks, dan pemrosesan …

String Comparison

Comparing Unicode strings requires normalization (NFC/NFD) and optionally collation (locale-aware sorting). Binary comparison of code points alone gives incorrect results …

Tipografi (19)

CSS unicode-range

CSS @font-face descriptor specifying which Unicode code points a font should cover. Enables downloading only the font subset needed for …

Elipsis

U+2026 HORIZONTAL ELLIPSIS (…). Karakter tunggal yang menggantikan tiga titik, secara tipografi lebih benar dan dihitung sebagai 1 karakter, bukan …

Em / En (Satuan tipografi)

Em: lebar setara ukuran font. En: setengah dari em. Digunakan untuk mendefinisikan lebar em dash, em space, en space, dan …

Fon

Implementasi spesifik dari sebuah typeface pada ukuran, ketebalan, dan gaya tertentu. Dalam tipografi digital, sebuah file font (TTF, OTF, WOFF2) …

Font Fallback

The mechanism by which a rendering engine substitutes glyphs from a secondary font when the primary font lacks coverage for …

Glyph

Representasi visual sebuah karakter yang dirender oleh font. Satu karakter bisa memiliki beberapa glyph (ligatur, bentuk kontekstual); satu glyph bisa …

Huruf kapital kecil

Bentuk huruf kapital setinggi huruf kecil. CSS: font-variant: small-caps. Unicode juga memiliki huruf kapital kecil sebenarnya di Latin Extended (ᴀ–ᴢ).

Karakter lebar nol

Karakter dengan lebar maju nol — tidak terlihat dalam rendering tetapi mempengaruhi perilaku teks. Termasuk ZWSP (pemisah kata), ZWJ (penggabung), …

Karakter penggabung

Karakter yang menempel pada karakter dasar sebelumnya untuk memodifikasinya. Kategori Umum: Mn (nonspacing), Mc (spacing combining), Me (enclosing). Contoh: ◌́ …

Karakter spasi

Karakter yang merepresentasikan ruang horizontal atau vertikal tanpa glyph yang terlihat. Unicode mendefinisikan 17+ karakter whitespace dengan lebar dan perilaku …

Kerning

Penyesuaian spasi antara pasangan karakter tertentu untuk harmoni visual (misalnya AV, To, LT). Fitur font, bukan konsep Unicode, tetapi mempengaruhi …

Ligatur

Dua karakter atau lebih yang digabungkan menjadi satu glyph. Bisa berupa ligatur tipografi (fi → fi via OpenType) atau karakter …

OpenType

Modern font format developed by Microsoft and Adobe supporting up to 65,535 glyphs, advanced typographic features (ligatures, alternates, kerning), and …

RTL (Right-to-Left)

Arah teks di mana karakter mengalir dari kanan ke kiri. Digunakan oleh bahasa Arab, Ibrani, Thaana, dan aksara lain; memerlukan …

Spasi tidak terputus

U+00A0. Spasi yang mencegah pemisahan baris di posisinya. HTML:  . Digunakan antara angka dan satuan (100 km), dalam nama diri …

Tanda diakritik

Tanda yang ditambahkan ke huruf untuk mengubah pengucapan atau maknanya. Bisa berupa precomposed (é U+00E9) atau combining (e + ◌́ …

Tanda hubung

Tanda baca yang digunakan untuk memisahkan bagian kalimat atau menunjukkan rentang. Unicode mendefinisikan berbagai dash: hyphen (‐), en dash (–), …

Tanda kutip

Tanda baca berpasangan yang mengapit ucapan langsung atau kutipan. Unicode mencakup tanda lurus (""), tanda lengkung (""), guillemets (« »), …

Web Fonts

Fonts downloaded by the browser to render text, declared via CSS @font-face. WOFF2 is the standard format. Unicode subsetting and …

Metode Input (9)

Character Palette

A system-level tool for browsing and inserting Unicode characters. macOS Character Viewer (Ctrl+Cmd+Space), Windows Character Map (charmap.exe), and Linux gucharmap …

Input heksadesimal

Entri code point Unicode langsung dengan mengetik nilai hex. Mac: tahan Option + hex + lepas. Windows: ketik hex lalu …

Input Method Editor (IME)

Komponen perangkat lunak yang memungkinkan input karakter kompleks (CJK, Korea, dll.) menggunakan keyboard standar, mengonversi urutan penekanan tombol menjadi karakter …

Kode Alt

Metode input Windows menggunakan Alt + digit numpad untuk mengetik karakter berdasarkan nomor halaman kodenya (Alt+0169 → ©, Alt+0176 → …

Metode input Unicode

Metode apa pun untuk memasukkan karakter berdasarkan code point Unicode-nya: input hex (Mac), entri U+XXXX via Ctrl+Shift+U (Linux), atau Alt+X …

Pemilih karakter

Komponen UI (native atau berbasis web) untuk menelusuri dan memilih karakter secara visual. Picker emoji di perangkat mobile adalah contoh …

Peta karakter

Utilitas GUI untuk menelusuri dan menyisipkan karakter Unicode. Windows: charmap.exe. Mac: Character Viewer (Control+Command+Space). Linux: gucharmap.

Tombol Compose

Tombol (biasanya Alt Kanan atau yang dipetakan khusus) yang memulai urutan komposisi multi-tombol. Fitur Linux/Unix: Compose + a + e …

Tombol mati

Tombol yang tidak menghasilkan output langsung tetapi memodifikasi penekanan tombol berikutnya. Digunakan untuk diakritik: menekan ` lalu e menghasilkan è. …

Web & HTML (16)

CSS Text Direction

CSS properties (direction, writing-mode, unicode-bidi) controlling text layout direction. Works with Unicode Bidi Algorithm for mixed LTR/RTL content in web …

Entitas HTML

Representasi tekstual sebuah karakter dalam HTML. Tiga bentuk: nama (&), desimal (&), heksadesimal (&). Penting untuk karakter yang bertentangan dengan …

Internationalized Domain Name (IDN)

Nama domain yang berisi karakter Unicode non-ASCII, disimpan secara internal sebagai Punycode (xn--...) tetapi ditampilkan dalam Unicode kepada pengguna. Masalah …

JavaScript Intl API

ECMAScript Internationalization API providing locale-aware string comparison (Collator), number formatting (NumberFormat), date formatting (DateTimeFormat), and segmentation (Segmenter).

Kumpulan karakter Content-Type

Parameter header HTTP yang mendeklarasikan encoding karakter dari sebuah respons (Content-Type: text/html; charset=utf-8). Mengesampingkan deklarasi encoding apa pun dalam dokumen.

Pemilih variasi

Karakter (U+FE00–U+FE0F, U+E0100–U+E01EF) yang memilih varian glyph tertentu. VS15 (U+FE0E) = tampilan teks, VS16 (U+FE0F) = tampilan emoji.

Penggabung kata

U+2060. Karakter zero-width yang mencegah pemisahan baris. Pengganti modern U+FEFF (BOM) sebagai zero-width no-break space.

Pengkodean persen (pengkodean URL)

Encoding karakter non-ASCII dan karakter khusus dalam URL dengan mengganti setiap byte dengan %XX. UTF-8 digunakan terlebih dahulu, kemudian setiap …

Properti CSS content

Properti CSS yang menyisipkan konten yang dihasilkan via pseudo-elemen ::before dan ::after menggunakan escape Unicode: content: "\2713" menyisipkan ✓.

Punycode

Encoding yang kompatibel dengan ASCII untuk nama domain Unicode, mengonversi label yang diinternasionalisasi menjadi string ASCII dengan prefiks xn--. münchen.de …

Referensi karakter bernama

HTML entity menggunakan nama yang mudah dibaca: © → ©, — → —. HTML5 mendefinisikan 2.231 referensi bernama; keduanya case-sensitive.

Referensi karakter numerik

HTML entity menggunakan nomor code point Unicode: desimal (© → ©) atau heksadesimal (© → ©). Bekerja untuk karakter Unicode …

Referensi karakter XML

Versi XML dari referensi karakter numerik: ✓ atau ✓. XML hanya memiliki 5 entitas bernama (& < > " '), …

Tampilan emoji

Merender karakter dengan glyph emoji berwarna, biasanya menggunakan Variation Selector 16 (U+FE0F). Beberapa karakter default ke tampilan emoji, yang lain …

Tampilan teks

Merender karakter dengan glyph teks monokrom biasa daripada emoji berwarna, biasanya menggunakan Variation Selector 15 (U+FE0E) untuk menggantikan tampilan emoji …

Unicode in CSS

CSS supports Unicode via escape sequences (\2713 for ✓), the content property for generated text, unicode-range for font subsetting, and …

Pemrograman & Pengembangan (13)

Ambiguitas panjang string

"Panjang" string Unicode bergantung pada satuan: code unit (JavaScript .length), code point (Python len()), atau cluster grapheme. 👨‍👩‍👧‍👦 = 7 …

Ekspresi reguler Unicode

Pola regex menggunakan properti Unicode: \p{L} (huruf apa pun), \p{Script=Greek} (aksara Yunani), \p{Emoji}. Dukungan bervariasi per bahasa dan mesin regex.

Java Unicode

Java strings use UTF-16 internally. char is 16-bit (only BMP). For supplementary characters, use codePointAt() and Character.toChars(). Java's \uXXXX escapes …

Karakter null

U+0000 (NUL). Karakter Unicode/ASCII pertama, digunakan sebagai terminator string dalam C/C++. Risiko keamanan: null byte injection dapat memotong string pada …

Karakter pengganti

U+FFFD (�). Ditampilkan saat decoder menemukan urutan byte yang tidak valid — simbol universal untuk "ada yang salah dengan decoding".

Karakter tak terlihat

Karakter apa pun tanpa glyph yang terlihat: whitespace, karakter zero-width, karakter kontrol, dan karakter pemformatan. Dapat menimbulkan masalah keamanan seperti …

Mojibake

Teks yang kacau akibat mendekode byte dengan encoding yang salah. Istilah Jepang (文字化け). Contoh: 'café' disimpan sebagai UTF-8 tetapi dibaca …

Pasangan pengganti

Dua unit kode 16-bit (high surrogate U+D800–U+DBFF + low surrogate U+DC00–U+DFFF) yang bersama-sama mengenkode karakter tambahan dalam UTF-16. 😀 = …

Pengkodean / Pendekodean

Encoding mengonversi karakter ke byte (str.encode('utf-8')); decoding mengonversi byte ke karakter (bytes.decode('utf-8')). Melakukan ini dengan benar mencegah mojibake.

Python Unicode

Python 3 uses Unicode strings by default (str = UTF-8 internally via PEP 393). Key features: \N{name} escapes, unicodedata module, …

Rust Unicode

Rust strings (str/String) are guaranteed valid UTF-8. char type represents a Unicode scalar value (4 bytes). Iteration via .chars() yields …

String

Urutan karakter dalam bahasa pemrograman. Representasi internal bervariasi: UTF-8 (Go, Rust, build Python terbaru), UTF-16 (Java, JavaScript, C#), atau UTF-32 …

Urutan escape Unicode

Sintaks untuk merepresentasikan karakter Unicode dalam kode sumber. Bervariasi per bahasa: \u2713 (Python/Java/JS), \u{2713} (JS/Ruby/Rust), \U00012345 (Python/C).

Keamanan (10)

Bidi Text Attack

Exploiting Unicode bidirectional control characters to disguise malicious code or filenames. The 'Trojan Source' attack (CVE-2021-42574) uses bidi overrides to …

Deteksi skrip campuran

Mengidentifikasi teks yang mencampur karakter dari berbagai aksara (misalnya Latin + Cyrillic). Pertahanan utama terhadap serangan homoglyph; browser menggunakan ini …

Homoglyph

Karakter dari skrip berbeda yang terlihat identik atau sangat mirip, seperti huruf Latin 'a' vs Cyrillic 'а'. Digunakan dalam serangan …

Karakter yang membingungkan

Istilah resmi Unicode untuk pasangan karakter yang dapat membingungkan secara visual, didefinisikan dalam confusables.txt (UCD). Lebih luas dari homoglyph — …

Normalization Attack

Exploiting Unicode normalization to bypass security filters. Input validated before normalization may change form after: 'fi' (U+FB01) normalizes to 'fi', …

Serangan bidi override

Menggunakan karakter penggantian arah bidireksional Unicode (U+202A–U+202E, U+2066–U+2069) untuk menyamarkan nama file atau kode berbahaya. 'readme‮fdp.exe' tampil sebagai 'readmeexe.pdf'.

Serangan homograf IDN

Menggunakan karakter Unicode yang mirip secara visual dalam nama domain untuk meniru situs sah. аpple.com (Cyrillic а) terlihat seperti apple.com. …

Spoofing Unicode

Menggunakan fitur Unicode untuk menipu pengguna: homoglyph untuk domain palsu, bidi override untuk ekstensi file palsu, atau karakter tak terlihat …

Zero Width Joiner (ZWJ)

U+200D. Meminta karakter yang berdekatan untuk digabungkan. Penting untuk urutan emoji (👩+ZWJ+💻=👩‍💻). Dalam aksara Indik, meminta pembentukan ligatur. Juga bisa …

Zero Width Non-Joiner (ZWNJ)

U+200C. Mencegah penggabungan karakter yang berdekatan. Penting dalam Persia/Arab untuk bentuk huruf yang benar dan digunakan dalam Devanagari untuk mencegah …

Emoji (6)

Lain-lain (1)