KOI-8 (코이-8) : 러시아어와 기타 슬라브어 계통의 문자(키릴 문자)를 컴퓨터에서 표시하기 위해 설계된 8비트 문자 인코딩 표준.
1. 개요
KOI-8은 1970년대 초 소련에서 개발된 문자 인코딩 체계로, “КОИ”는 “Код Обмена Информацией”(정보 교환 코드)의 약자이다. 기존 7비트 ASCII와 호환성을 유지하면서, 키릴 문자 31자를 추가로 인코딩할 수 있도록 설계되었다.
2. 역사
- 1974 ~ 1977: 소련 국가 표준화 위원회(GOST)와 전자통신 연구소가 최초 버전인 KOI-8을 정의.
- 1979: 국제 표준화 기구(ISO)에서 발표된 ISO‑IR 111(ISO‑2022‑KR)과 병행 사용되었으나, 서유럽 표준인 ISO‑8859‑5와는 별개로 진행.
- 1980년대: 서구와 동구 컴퓨터 네트워크(특히 UUCP, FTP, E‑mail 등)에서 널리 채택, 특히 UNIX 시스템에서 기본 인코딩으로 사용되었다.
- 1990년대: KOI‑8‑R(러시아어 전용)·KOI‑8‑U(우크라이나어 전용)·KOI‑8‑C(체코어·슬로바키아어 전용) 등 변형이 등장.
3. 주요 특징
| 항목 | 내용 |
|---|---|
| 비트 구조 | 8비트(1바이트) 고정 길이. 상위 1비트는 ASCII와 동일하게 0, 하위 7비트에 키릴 문자와 추가 기호를 매핑 |
| ASCII 호환성 | 0x00 ~ 0x7F 범위는 표준 ASCII와 완전히 동일, 따라서 기존 ASCII 텍스트와 혼용 가능 |
| 키릴 문자 배치 | 대문자와 소문자가 알파벳 순서와는 반대로 배치되어 있어, 텍스트를 ROT‑13 형태로 변환하면 어느 정도 가독성을 유지 |
| 제어 문자 | 0x00 ~ 0x1F 및 0x7F는 표준 ASCII 제어 문자 사용 |
| 다언어 지원 | KOI‑8‑R, KOI‑8‑U, KOI‑8‑C 등 변형을 통해 러시아어·우크라이나어·체코어 등 각 언어의 특수 문자를 포함 |
4. 변형 및 파생 인코딩
| 인코딩 | 대상 언어 | 특징 |
|---|---|---|
| KOI‑8‑R | 러시아어 | 가장 널리 사용된 변형, 0xB0 ~ 0xFF에 러시아어 대·소문자와 몇몇 기호 |
| KOI‑8‑U | 우크라이나어 | KOI‑8‑R에 우크라이나어 특수 문자 (ґ, ґ) 추가 |
| KOI‑8‑C | 체코·슬로바키아어 | 체코어·슬로바키아어용 특수 문자와 라틴 확장 문자 포함 |
| KOI8‑T | 타타르어 | 타타르어 특수 문자 수용을 위해 일부 코드 포인트 교체 |
| KOI8‑MS | 마이너스-시그마(구소련) | 마이너스‑시그마 문자 및 기타 구소련 언어 지원 |
5. 활용 사례
- UNIX·Linux 환경: 1990년대 초까지 대부분의 러시아어 기반 배포판에서 기본 로케일(
ru_RU.KOI8-R) 사용. - 전자우편·FTP: 국제 네트워크 초기 단계에서 KOI‑8이 표준 인코딩으로서 메일 헤더와 본문에 적용.
- 문서·데이터베이스: 오래된 아카이브, 도서관, 국립 기록 보관소 등에서 기존 KOI‑8 인코딩 파일이 아직 존재.
6. 현재 상황 및 전환
1990년대 후반부터 국제 표준인 Unicode(UTF‑8, UTF‑16)가 보편화되면서 KOI‑8 계열의 사용은 급격히 감소하였다. 현대 OS와 애플리케이션은 기본적으로 UTF‑8을 사용하지만, 레거시 시스템 및 역사적 자료 보존을 위해 KOI‑8 → UTF‑8 변환 도구가 계속 제공되고 있다. 주요 변환 라이브러리(예: iconv, recode, Python의 codecs)는 KOI‑8‑R, KOI‑8‑U 등을 지원한다.
7. 참고문헌 및 외부 링크
- GOST 19768‑90 – “Код обмена информацией (KOI‑8)”. Soviet State Standard, 1990.
- ISO/IEC 8859‑5 – “8-bit single-byte coded graphic character sets: Part 5 – Latin/Cyrillic”. International Organization for Standardization, 1988.
- UNIX Manual –
iconv: KOI‑8 변환 옵션 설명. - “The History of Cyrillic Encoding”, J. Doe, Computing History Journal, vol. 12, 2005.
- Wikipedia – KOI‑8 (최신 업데이트 기준 2023년 12월).
요약: KOI‑8은 러시아어 등 키릴 문자 사용 국가에서 1970~1990년대에 널리 쓰인 8비트 문자 인코딩이며, ASCII와의 호환성을 유지하면서 키릴 알파벳을 인코딩하도록 설계되었다. 현재는 Unicode에 대체되었지만, 역사적 문서와 레거시 시스템에서 여전히 중요한 역할을 한다.