WikiDer > CBOR - Vikipediya
Bu maqola juda ko'p narsalarga tayanadi ma'lumotnomalar ga asosiy manbalar. (Aprel 2020) (Ushbu shablon xabarini qanday va qachon olib tashlashni bilib oling) |
| Fayl nomi kengaytmasi | .cbor |
|---|---|
| Internet-media turi | dastur / cbor |
| Format turi | Ma'lumotlarni almashtirish |
| Standart | RFC 8949 |
| Ochiq format? | Ha |
| Veb-sayt | cbor |
Qisqa ikkilik ob'ekt vakili (CBOR) ikkilik ma'lumotdir seriyalash formatga asoslangan holda erkin shakllanadi JSON. JSON singari u o'z ichiga olgan ma'lumotlar ob'ektlarini uzatishga imkon beradi ism-qiymat juftliklari, ammo aniqroq. Bu narx bo'yicha qayta ishlash va uzatish tezligini oshiradi inson tomonidan o'qilishi mumkin. Bu IETFda belgilangan RFC 8949.[1]
Boshqa maqsadlar qatorida, uchun tavsiya etilgan ma'lumotlarni ketma-ketlashtirish qatlami CoAP Internet of Things protokol to'plami[2][tekshirib bo'lmadi] va ma'lumotlar formati COSE xabarlar asoslangan. Shuningdek, u Mijozdan autentifikatorga protokol (CTAP) FIDO2 loyihasi doirasida.[3]
CBOR kodlashning spetsifikatsiyasi
CBOR kodlangan ma'lumotlar ma'lumotlar elementlari oqimi sifatida qaraladi. Masalan,
| CBOR ma'lumotlari | Ma'lumotlar elementi 1 | Ma'lumotlar elementi 2 | Ma'lumot elementi X ... | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Baytlar soni | 1 bayt (CBOR ma'lumotlar elementining sarlavhasi) | O'zgaruvchan | O'zgaruvchan | 1 bayt (CBOR ma'lumotlar elementining sarlavhasi) | O'zgaruvchan | O'zgaruvchan | va boshqalar... | ||
| Tuzilishi | Asosiy turi | Qo'shimcha ma'lumot | Yuk ko'tarish uzunligi (ixtiyoriy) | Ma'lumotlar uchun foydali yuk (ixtiyoriy) | Asosiy turi | Qo'shimcha ma'lumot | Yuk ko'tarish uzunligi (ixtiyoriy) | Ma'lumotlar uchun foydali yuk (ixtiyoriy) | va boshqalar... |
| Bitlar soni | 3 bit | 5 bit | 8 bit × o'zgaruvchan | 8 bit × o'zgaruvchan | 3 bit | 5 bit | 8 bit × o'zgaruvchan | 8 bit × o'zgaruvchan | va boshqalar.. |
Har bir ma'lumot elementida asosiy va qo'shimcha turdagi ishlov berish
Ma'lumotlar elementlarining har bir xatti-harakati asosiy va qo'shimcha turlar bilan belgilanadi. Asosiy tur har bir ma'lumot elementining asosiy harakatini yoki turini tanlash uchun ishlatiladi.
Qo'shimcha tur - bu aniq xatti-harakatlar asosiy turdagi qiymatga bog'liq bo'lgan qo'shimcha ma'lumotlar.
CBOR ma'lumotlar elementlari maydonini kodlash
Mayda maydonlarni kodlash
| Baytlar soni | 1 bayt (CBOR ma'lumotlar elementining sarlavhasi) | |
|---|---|---|
| Tuzilishi | Asosiy turi | Qo'shimcha ma'lumotlar (qiymati) |
| Bitlar soni | 3 bit | 5 bit |
Qisqa maydonlarni kodlash
| Baytlar soni | 1 bayt (CBOR ma'lumotlar elementining sarlavhasi) | O'zgaruvchan | |
|---|---|---|---|
| Tuzilishi | Asosiy turi | Qo'shimcha ma'lumot | Qiymat |
| Bitlar soni | 3 bit | 5 bit | 8 bit × (Value_Field_Byte_Count) |
Uzoq maydonlarni kodlash
| Baytlar soni | 1 bayt (CBOR ma'lumotlar elementining sarlavhasi) | O'zgaruvchan | O'zgaruvchan | |
|---|---|---|---|---|
| Tuzilishi | Asosiy turi | Qo'shimcha ma'lumotlar (uzunlik maydoni hajmi) | Yuk ko'tarish uzunligi (qiymat maydoni uzunligi) | Qiymat |
| Bitlar soni | 3 bit | 5 bit | 8 bit × (Length_Field_Byte_Count) | 8 bit × (Value_Field_Byte_Count) |
CBOR ma'lumotlar elementining sarlavhasi
Quyidagi jadval CBOR ma'lumotlar elementi sarlavhasi qanday ishlashini tasvirlaydi.
| Asosiy turi | Asosiy turdagi qiymat | Qo'shimcha turdagi qiymat (imzosiz) | Qo'shimcha turdagi ma'no | Mahsulot hajmi baytlarda | Dala kodlash turi | |
|---|---|---|---|---|---|---|
| Ijobiy / Belgilanmagan tamsayı | 0 | 0b000 | 5-bitli qo'shimcha ma'lumot - bu butun sonning o'zi (qo'shimcha ma'lumot qiymatlari uchun 0 dan 23 gacha) yoki qo'shimcha ma'lumotlarning uzunligi. | |||
| 0 dan 23 gacha (0x0 dan 0x17 gacha) (0b00000 dan 0b10111 gacha) | To'g'ridan-to'g'ri ma'lumotlar qiymati sifatida ishlatiladi. Shunday qilib ixcham hajmni saqlash. | 1 | Kichkina | |||
| 24 | Keyingi bayt ma'lumotlar qiymati qismida uint8_t | 2 | Qisqa | |||
| 25 | Keyingi 2 bayt uint16_t ma'lumotlar qiymati bo'limida | 3 | Qisqa | |||
| 26 | Keyingi 4 bayt ma'lumotlar qiymati qismida uint32_t | 5 | Qisqa | |||
| 27 | Keyingi 8 bayt ma'lumotlar qiymati qismida uint64_t | 9 | Qisqa | |||
| ... | ... | ... | ... | |||
| 31 | ... | ... | ... | |||
| Salbiy tamsayı | 1 | 0b001 | Kodlash imzo qo'yilmagan tamsayılar qoidalariga (0 asosiy turi) amal qiladi, faqat qiymati kodlangan belgisiz tamsayı -1 dan minusga teng bo'ladi. | |||
| 0 dan 23 gacha (0x0 dan 0x17 gacha) (0b00000 dan 0b10111 gacha) | To'g'ridan-to'g'ri ma'lumotlar qiymati sifatida ishlatiladi. Shunday qilib ixcham hajmni saqlash. | 1 | Kichkina | |||
| 24 | Keyingi bayt ma'lumotlar qiymati qismida uint8_t | 2 | Qisqa | |||
| 25 | Keyingi 2 bayt uint16_t ma'lumotlar qiymati bo'limida | 3 | Qisqa | |||
| 26 | Keyingi 4 bayt ma'lumotlar qiymati qismida uint32_t | 5 | Qisqa | |||
| 27 | Keyingi 8 bayt ma'lumotlar qiymati qismida uint64_t | 9 | Qisqa | |||
| ... | ... | ... | ... | |||
| 31 | ... | ... | ... | |||
| Bayt qatori | 2 | 0b010 | Ipning baytdagi uzunligi musbat tamsayılar qoidalariga rioya qilgan holda ifodalanadi (asosiy 0 turi). | |||
| 0 dan 23 gacha (0x0 dan 0x17 gacha) (0b00000 dan 0b10111 gacha) | To'g'ridan-to'g'ri ma'lumotlar uzunligini aniqlovchi sifatida ishlatiladi. Shunday qilib ixcham hajmni saqlash. | 1 + 23 gacha | Qisqa | |||
| 24 | Keyingi bayt foydali yuk uzunligi uchun uint8_t | 2 + 2 ^ 8-1 gacha | Uzoq | |||
| 25 | Keyingi 2 bayt foydali yuk uzunligi uchun uint16_t | 3 + 2 ^ 16-1 gacha | Uzoq | |||
| 26 | Keyingi 4 bayt foydali yuk uzunligi uchun uint32_t | 5 + 2 ^ 32-1 gacha | Uzoq | |||
| 27 | Keyingi 8 bayt foydali yuk uzunligi uchun uint64_t | 9 + 2 ^ 64-1 gacha | Uzoq | |||
| ... | ... | ... | ... | |||
| 31 | Noaniq satrning boshlanishi: Keyingi mos keladigan "Tanaffus" kodigacha aniq uzunlikdagi satrlarni birlashtirish. | 1 | Kichkina | |||
| Matn qatori | 3 | 0b011 | Matn qatori, xususan UTF-8 sifatida kodlangan Unicode belgilar qatori [RFC3629]. | |||
| 0 dan 23 gacha (0x0 dan 0x17 gacha) (0b00000 dan 0b10111 gacha) | To'g'ridan-to'g'ri ma'lumotlar uzunligini aniqlovchi sifatida ishlatiladi. Shunday qilib ixcham hajmni saqlash. | 1 + 23 gacha | Qisqa | |||
| 24 | Keyingi bayt foydali yuk uzunligi uchun uint8_t | 2 + 2 ^ 8-1 gacha | Uzoq | |||
| 25 | Keyingi 2 bayt foydali yuk uzunligi uchun uint16_t | 3 + 2 ^ 16-1 gacha | Uzoq | |||
| 26 | Keyingi 4 bayt foydali yuk uzunligi uchun uint32_t | 5 + 2 ^ 32-1 gacha | Uzoq | |||
| 27 | Keyingi 8 bayt foydali yuk uzunligi uchun uint64_t | 9 + 2 ^ 64-1 gacha | Uzoq | |||
| ... | ... | ... | ... | |||
| 31 | Noaniq satrning boshlanishi: Keyingi mos keladigan "Tanaffus" kodigacha aniq uzunlikdagi satrlarni birlashtirish. | 1 | Kichkina | |||
| Ma'lumotlar to'plami | 4 | 0b100 | Massivlar shuningdek ro'yxatlar, ketma-ketliklar yoki kataklar deb nomlanadi. Uzunlik bayt uzunligini emas, balki qatordagi ma'lumotlar elementlarining sonini bildiradi. | |||
| 0 dan 23 gacha (0x0 dan 0x17 gacha) (0b00000 dan 0b10111 gacha) | To'g'ridan-to'g'ri buyumlar sonini aniqlovchi sifatida ishlatiladi. Shunday qilib ixcham hajmni saqlash. | 1 | Kichkina | |||
| 24 | Keyingi bayt foydali yuk uzunligi uchun uint8_t | 2 | Qisqa | |||
| 25 | Keyingi 2 bayt foydali yuk uzunligi uchun uint16_t | 3 | Qisqa | |||
| 26 | Keyingi 4 bayt foydali yuk uzunligi uchun uint32_t | 5 | Qisqa | |||
| 27 | Keyingi 8 bayt foydali yuk uzunligi uchun uint64_t | 9 | Qisqa | |||
| ... | ... | ... | ... | |||
| 31 | Keyingi tegishli "Break" kodiga qadar noaniq qator boshlanishi. | 1 | Kichkina | |||
| Ma'lumotlar juftliklari xaritasi | 5 | 0b101 | Ma'lumotlar juftliklari xaritasi. Xaritalar jadvallar, lug'atlar, xeshlar yoki ob'ektlar (JSON da) deb ham ataladi. Uzunlik bayt uzunligini emas, balki ma'lumotlar juftlarining sonini bildiradi. Xaritaning har bir kiritilishi ketma-ket ketma-ketlikdagi ikkita ma'lumotlar elementini, asosiy ma'lumotlar elementini va qiymat ma'lumotlarini oladi. | |||
| 0 dan 23 gacha (0x0 dan 0x17 gacha) (0b00000 dan 0b10111 gacha) | To'g'ridan-to'g'ri buyumlar sonini aniqlovchi sifatida ishlatiladi. Shunday qilib ixcham hajmni saqlash. | 1 | Kichkina | |||
| 24 | Keyingi bayt foydali yuk uzunligi uchun uint8_t | 2 | Qisqa | |||
| 25 | Keyingi 2 bayt foydali yuk uzunligi uchun uint16_t | 3 | Qisqa | |||
| 26 | Keyingi 4 bayt foydali yuk uzunligi uchun uint32_t | 5 | Qisqa | |||
| 27 | Keyingi 8 bayt foydali yuk uzunligi uchun uint64_t | 9 | Qisqa | |||
| ... | ... | ... | ... | |||
| 31 | Keyingi tegishli "break" kodiga qadar noaniq xaritani boshlang. | 1 | Kichkina | |||
| Semantik yorliq | 6 | 0b110 | Boshqa asosiy turlarning ixtiyoriy semantik yorliqlari uchun ishlatiladi | |||
| Qiymat maydoni teg identifikatorini ifodalaydi: Qarang https://www.iana.org/assignments/cbor-tags/cbor-tags.xhtml har bir tegning semantik ma'nosi uchun. | ||||||
| 0 dan 23 gacha (0x0 dan 0x17 gacha) (0b00000 dan 0b10111 gacha) | To'g'ridan-to'g'ri ma'lumotlar qiymati sifatida ishlatiladi. Shunday qilib ixcham hajmni saqlash. | 1 | Kichkina | |||
| 24 | Keyingi bayt ma'lumotlar qiymati qismida uint8_t | 2 | Qisqa | |||
| 25 | Keyingi 2 bayt uint16_t ma'lumotlar qiymati bo'limida | 3 | Qisqa | |||
| 26 | Keyingi 4 bayt ma'lumotlar qiymati qismida uint32_t | 5 | Qisqa | |||
| 27 | Keyingi 8 bayt ma'lumotlar qiymati qismida uint64_t | 9 | Qisqa | |||
| ... | ... | ... | ... | |||
| 31 | ... | 1 | ... | |||
| Primitivlar masalan. tanaffus, suzmoq, oddiy qadriyatlar | 7 | 0b111 | suzuvchi nuqta raqamlari va tarkibga muhtoj bo'lmagan oddiy ma'lumotlar turlari, shuningdek "break" stop kodi[4] | |||
| 0..19 | (Tayinlanmagan) | 1 | Kichkina | |||
| 20 | Yolg'on | 1 | Kichkina | |||
| 21 | To'g'ri | 1 | Kichkina | |||
| 22 | Bekor | 1 | Kichkina | |||
| 23 | Aniqlanmagan | 1 | Kichkina | |||
| 24 | Keyingi bayt uint8_t oddiy qiymat (qiymati 32..255) | 2 | Qisqa | |||
| 25 | Keyingi 2 bayt uint16_t sifatida IEEE 754 yarim aniqlikda suzadi | 3 | Qisqa | |||
| 26 | Keyingi 4 bayt uint32_t, chunki IEEE 754 bitta aniqlikdagi suzuvchi | 5 | Qisqa | |||
| 27 | Keyingi 8 bayt uint64_t, chunki IEEE 754 ikki aniqlikdagi suzuvchi | 9 | Qisqa | |||
| 28 | Tayinlanmagan | |||||
| 29 | ||||||
| 30 | ||||||
| 31 | noaniq uzunlikdagi buyumlar uchun "break" stop kodi | 1 | Kichkina | |||
- Bayt = 8 bit
Primitivlar (asosiy tur = 7)
Primitives major tipining asosiy qiymati 7 ga teng bo'lib, u oddiy ma'lumotlar turlari, keng tarqalgan float turlari, shuningdek boshqaruv kodi uchun ishlatiladi.
| Asosiy turi | Qo'shimcha qiymat | Qo'shimcha baytlar (agar kerak bo'lsa) | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Bayt | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | |
| Bit hajmi | 3 bit | 5 bit | 8 | 8 | 8 | 8 | 8 | 8 | 8 | 8 |
| Oddiy qiymat 0 dan 23 gacha (X qiymati) | 7 | X = 0 ... 23 | Ishlatilmagan | |||||||
| 24 dan 255 gacha oddiy qiymat (X qiymati) | 7 | 24 | X = 32 ... 255 | Ishlatilmagan | ||||||
| IEEE 754 yarim aniqlikdagi suzuvchi (16 bit) | 7 | 25 | 16 bit IEEE 754 | Ishlatilmagan | ||||||
| IEEE 754 bitta aniqlikdagi suzuvchi (32 bit) | 7 | 26 | 32 bit IEEE 754 | Ishlatilmagan | ||||||
| IEEE 754 ikki aniqlikdagi suzuvchi (64 bit) | 7 | 27 | 64 bit IEEE 754 | |||||||
| Noma'lum qator yoki xaritadan uzilish | 7 | 31 | Ishlatilmagan | |||||||
Tanaffusni boshqarish kodi (qo'shimcha turdagi qiymat = 31)
Bu cheksiz uzunlik rejimiga o'rnatilgan massivlar va xaritalar bilan birgalikda ishlatiladigan meta qiymatdir. Bu tegishli xarita yoki qator darajasini yopish uchun CBOR tahlilchisiga ko'rsatiladi.
IEEE 754 Floats (qo'shimcha turdagi qiymat = 25 yoki 26 yoki 27)
Bu IEEE 754 float qiymatlari sifatida kodlangan suzuvchi vositalarni saqlashga imkon beradi.
Oddiy qiymat
Ko'pgina oddiy qadriyatlar tayinlanmagan yoki kelajakdagi yaxshilanishlar uchun saqlangan.
Biroq, ular aniqlangan.
| Oddiy qiymat | Semantik |
|---|---|
| 20 | Mantiqiy yolg'on |
| 21 | Mantiqiy to'g'ri |
| 22 | Bekor |
| 23 | Aniqlanmagan |
Semantik yorliqlarni ro'yxatdan o'tkazish
IANA joylashgan CBOR teglar registrini yaratdi https://www.iana.org/assignments/cbor-tags/cbor-tags.xhtml . Ro'yxatdan o'tish ushbu shablonni o'z ichiga olishi kerak.
| Semantik yorliq turi | Oraliq | Andoza | |||
|---|---|---|---|---|---|
| Ma'lumot elementi | Semantik tavsif (qisqa shakl) | Aloqa nuqtasi | Semantikaning tavsifi (URL) | ||
| Standart harakatlar | 0–23 | Majburiy | Majburiy | Yo'q | Yo'q |
| Shartnoma talab qilinadi | 24–255 | Majburiy | Majburiy | Yo'q | Yo'q |
| Birinchi bo'lib birinchi xizmat | 256–18446744073709551615 | Majburiy | Majburiy | Majburiy | Ta'rif ixtiyoriy. URL Internet-qoralama yoki veb-sahifani ko'rsatishi mumkin. |
https://www.rfc-editor.org/rfc/rfc8949.html#name-cbor-tags-registry
Amaliyotlar
| Ism | Asosiy muallif | Til | Litsenziya | Manba | Izohlar |
|---|---|---|---|---|---|
| cbor-js | Patrik Gansterer | JavaScript | MIT | https://github.com/paroga/cbor-js | |
| tugun-cbor | Djo Xildebrand | JavaScript | MIT | https://github.com/hildjj/node-cbor | |
| CBOREncode | Pavel Gulbin | PHP | PHP | https://github.com/2tvenom/CBOREncode | |
| cbor | Faye Amacker | Boring | MIT | https://github.com/fxamacker/cbor | Xavfsiz va tezkor, CBOR teglari, float64 / 32/16, takroriy xarita kalitlarini aniqlash, API kodlash / json + toarray va keyasint struct teglari, Canonical CBOR, CTAP2, noaniq sinovlar. |
| cbor | Pavel Gulbin | Boring | WTFPL | https://github.com/2tvenom/cbor | |
| cbor_go | Brayan Olson | Boring | APL 2.0 | https://github.com/brianolson/cbor_go | |
| kodek | Ugorji Nvoke | Boring | MIT | https://godoc.org/github.com/ugorji/go/codec | Shuningdek, JSON, MsgPack va BinC bilan ishlaydi. |
| serde_cbor | Pyfisch | Zang | MIT yoki APL 2.0 | https://github.com/pyfisch/cbor | |
| cbor-kodek | Toralf Vittner | Zang | MPL 2.0 | https://twittner.gitlab.io/cbor-codec/cbor/ | |
| SwiftCBOR | [email protected] | Tez | Litsenziyasiz | https://github.com/myfreeweb/SwiftCBOR | |
| CBOR.jl | Saurav Sachidanand | Yuliya | MIT | https://github.com/saurvs/CBOR.jl | |
| Lua-CBOR | Kim Alvefur | Lua | MIT | https://www.zash.se/lua-cbor.html | |
| org.conman.cbor | Shon Konner | Lua | LGPL-3 | https://github.com/spc476/CBOR | |
| cbor_py | Brayan Olson | Python | APL 2.0 | https://github.com/brianolson/cbor_py | |
| flynn | Fritz Konrad Grimpen | Python | MIT | https://github.com/fritz0705/flynn | |
| cbor2 | Aleks Gronxolm | Python | MIT | https://github.com/agronholm/cbor2 | |
| CBOR :: Bepul | Felipe Gasper | Perl | Badiiy va GPL | https://metacpan.org/pod/CBOR:: Bepul | |
| CBOR :: PP | Felipe Gasper | Perl | Badiiy va GPL | https://metacpan.org/pod/CBOR::PP | |
| CBOR :: XS | Mark Lehmann | Perl | GPL-3 | https://metacpan.org/pod/CBOR::XS | |
| yoqut | Sadayuki Furuhashi Karsten Borman | Yoqut | APL 2.0 | https://github.com/cabo/cbor-ruby | |
| libcbor-ruby | Pavel Kalvoda | Yoqut | MIT | https://github.com/PJK/libcbor-ruby | Libcbor bilan bog'lanish. |
| cbor-erlang | Jihyun Yu | Erlang | BSD-3-band | https://github.com/yjh0502/cbor-erlang | |
| eksbor | Karsten Bormann | Elixir | ko'rsatilmagan, muallifdan so'rang | https://github.com/cabo/excbor | |
| CBOR | R. Kayl Merfi | Xaskell | LGPL-3 | https://github.com/orclev/CBOR | |
| bork | Djo Xildebrand Fridel Zigelmayer | JavaScript | MIT | https://github.com/dignifiedquire/borc | Tugun-cbor vilkasi. |
| borc-refs | Djo Xildebrand Fridel Zigelmayer Sandro Xok | JavaScript | MIT | https://github.com/sandhawke/borc-refs | Bork vilkasi. |
| CBOR | Piter Oksil | C # | Jamoat mulki uchun dasturiy ta'minot | https://github.com/peteroupc/CBOR | Shuningdek, JSON bilan ishlaydi. |
| Dahomey.Cbor | Mixail Katanzariti | C # | MIT litsenziyasi | https://github.com/dahomey-technologies/Dahomey.Cbor | |
| Jekson | Tatu Saloranta | Java | APL-2.0 | https://github.com/FasterXML/jackson-dataformats-binary/tree/master/cbor | Shuningdek, boshqa formatlarni boshqaradi. |
| cbor-java | Konstantin rafi | Java | APL-2.0 | https://github.com/c-rack/cbor-java | |
| yakob | J.W. Yansen | Java | APL-2.0 | https://github.com/jawi/jacob | |
| kotlinx.serialization | JetBrains | Kotlin | APL-2.0 | https://github.com/Kotlin/kotlinx.serialization | O'zaro faoliyat platformani qo'llab-quvvatlaydi |
| cn-cbor | Djo Xildebrand Karsten Bormann | C | MIT | https://github.com/cabo/cn-cbor | |
| cbor-cpp | Stanislav Ovsyannikov | C ++ | APL-2.0 | https://github.com/naphaso/cbor-cpp | |
| cppbor | Devid Preece | C ++ | BSD | https://github.com/rantydave/cppbor | C ++ 17 variantlaridan foydalanadi. |
| libcbor | Pavel Kalvoda | C | MIT | https://github.com/PJK/libcbor | |
| tinikbor | Intel | C | MIT | https://github.com/01org/tinycbor | |
| NanoCBOR | Koen Zandberg | C | LGPL | https://github.com/bergzand/NanoCBOR | Tomonidan ishlatilgan RIOT-OS |
| cbor-d | Andrey Penechko | D. | Boost 1.0 | https://github.com/MrSmith33/cbor-d | |
| clj-cbor | Greg Look | Klojure | Litsenziyasiz | https://github.com/greglook/clj-cbor | |
| Zamonaviy C ++ uchun JSON | Nils Lohmann | C ++ | MIT | https://github.com/nlohmann/json | Shuningdek, JSON va MsgPack bilan ishlov beradi. |
| borabora | Kristof Engelbert | Java | APL-2.0 | https://github.com/noctarius/borabora | |
| lua-qisqachaSerializatsiya | Fransua Perrad | Lua | MIT | https://web.archive.org/web/20170322112326/https://fperrad.github.io/lua-ConciseSerialization/ | |
| chayqalmoq | Fritz Konrad Grimpen Sokolov Yura | Python | MIT | https://pypi.python.org/pypi/flunn | |
| cbor-qt | Anton Dutov | C ++ | Jamoat mulki | https://github.com/anton-dutov/cbor-qt | |
| QCborValue | Qt loyihasi | C ++ | LGPL | https://doc.qt.io/qt-5/qcborvalue.html | Qismi Qt 5.12 versiyasidan beri ramka |
| cbor11 | Yakob Varmose Bentzen | C ++ | Jamoat mulki | https://github.com/jakobvarmose/cbor11 | |
| cborcpp | Aleks Nekipelov | C ++ | MIT | https://github.com/nekipelov/cborcpp | |
| Oltin baliq | Vinsent Lascaux | C ++ | MIT | https://github.com/OneNoteDev/GoldFish | |
| Arduino-Cbor kutubxonasi | Xuanjo Tara | C ++ | APL-2.0 | https://github.com/jjtara/Library-Arduino-Cbor | |
| cborg | Dunkan Koutts | Xaskell | BSD-3-band | https://github.com/well-typed/cborg | |
| cbor | Stiv Xamblet | Dart | MIT | https://github.com/shamblett/cbor | |
| zerikarli | Matias Doenits | Scala | MPL 2.0 | https://github.com/sirthias/borer | Shuningdek, JSON bilan ishlaydi. |
| nim_cbor | Emeri Xeminguey | Nim | MIT | https://git.sr.ht/~ehmry/nim_cbor | |
| ciborium | Nataniel Makkalum Bestavrosni belgilang Enarx jamoasi | Zang | Apache 2.0 | https://github.com/enarx/ciborium |
Shuningdek qarang
Adabiyotlar
- ^ "CBOR - Ikkilik ob'ektlarning qisqacha vakili | Umumiy ma'lumotlar".
- ^ "CoAP - cheklangan dastur protokoli | Umumiy ma'lumot".
- ^ "FIDO2 loyihasi". FIDO alyansi. Olingan 2018-05-11.
- ^ RFC 8949. doi:10.17487 / RFC8949.