فك ترميز Protobuf
فك ترميز بيانات Protocol Buffers الثنائية دون مخطط. الصق hex أو base64 أو أفلت ملف .bin وافحص أرقام الحقول وأنواع الأسلاك والرسائل المتداخلة مباشرة في متصفحك.
هل يمكن فك ترميز protobuf دون مخطط .proto؟
نعم. كل رسالة protobuf هي سلسلة من أزواج مفتاح-قيمة يحمل المفتاح فيها رقم الحقل ونوع السلك معًا. وهذان العنصران مضمّنان في البيانات الثنائية نفسها، لذا يستطيع فاكك الترميز الخام المرور على البايتات وإعادة بناء البنية — أرقام الحقول وأنواع الأسلاك والرسائل المتداخلة والنصوص — حتى دون معرفة معنى كل حقل.
ماذا تعني أنواع الأسلاك varint و64-bit وlength-delimited و32-bit؟
النوع 0 (varint) عدد صحيح متغير الطول؛ والنوع 1 (64-bit) قيمة ثابتة من 8 بايتات مثل double أو fixed64؛ والنوع 2 (length-delimited) كتلة سابقتها بادئة طول قد تكون نصًا أو بايتات أو رسالة متداخلة؛ والنوع 5 (32-bit) قيمة ثابتة من 4 بايتات مثل float أو fixed32.
لماذا يظهر حقل كنص وآخر كرسالة متداخلة؟
الحقول من نوع length-delimited غامضة بطبيعتها: البايتات نفسها قد تكون نصًا أو رسالة فرعية. يتحقق فاكك الترميز أولًا مما إذا كانت البايتات نص UTF-8 قابلًا للطباعة؛ فإن لم تكن، يحاول قراءتها كرسالة متداخلة، ولا يعرض معاينة hex إلا إذا فشل التفسيران معًا.
هل تُعرض الأعداد السالبة بشكل صحيح؟
نعم. يخزّن protobuf الأعداد السالبة int32/int64 كمتغيرات varint بطول 10 بايتات، وتعرض الأداة القيمة غير الموقعة مع تفسيرها الموقّع. أما حقول sint32/sint64 فتستخدم ترميز ZigZag، فتظهر السالبة الصغيرة كقيم غير موقعة صغيرة.
هل تُرفع بياناتي إلى أي مكان؟
لا. يتم فك الترميز بالكامل في متصفحك بجافاسكربت — البايتات لا تغادر جهازك أبدًا. وهذا مهم عند فحص حمولات خاصة أو حساسة.
ما صيغ الإدخال المدعومة؟
نص hex (مع أو بدون مسافات ونقطتين وفواصل وبادئة 0x)، وbase64 بالأبجدية القياسية والآمنة للروابط، والملفات الثنائية بالسحب والإفلات. عند الغموض يُفضَّل hex، ويمكنك التحويل بين hex وbase64 بنقرة واحدة.
فيما يفيد هذه الأداة؟
الهندسة العكسية لواجهات برمجة غير موثقة، وتصحيح خدمات gRPC وطوابير الرسائل المبنية على protobuf، وفحص ذاكرة التخزين المؤقت والملفات المتسلسلة، وتعلم تنسيق wire، والتحقق من أن المرمِّز الخاص بك ينتقل البايتات المتوقعة تمامًا.
هل يخبرني بأسماء الحقول؟
لا. أسماء الحقول موجودة في مخطط .proto لا في البيانات الثنائية. تعرض الأداة أرقام الحقول، وعندما تربط الرقم باسم في مخططك تقرأ الشجرة كاملة مباشرة.
ماذا تعني إزاحة البايت في رسالة الخطأ؟
عندما تكون البيانات تالفة أو مبتورة، يتوقف فك الترميز عند أول بايت يتعذر تحليله. الإزاحة المذكورة تشير إلى ذلك البايت تحديدًا في الإدخال لتعثر موضع الضرر فورًا.
كيفية استخدام فك ترميز Protobuf
يقرأ مفكك Protobuf هذا رسائل protocol buffer الخام دون أي مخطط .proto. كل حمولة protobuf تحمل أرقام حقولها وأنواع أسلاكها بنفسها، فيتمكن المفكك من إعادة بناء بنية الرسالة كاملة — varints وقيم ثابتة 32/64 بت وسلاسل UTF-8 ورسائل فرعية متداخلة — ويعرضها كشجرة قابلة للتوسيع. كل شيء يعمل محليًا في متصفحك: لا تُرفع بايتاتك أبدًا.
- ألصق بياناتك في صندوق الإدخال بصيغة hex (تُقبل المسافات والنقاط والفواصل وسوابق 0x) أو base64 — يُظهر التنسيق المكتشف بجانب الأزرار.
- أفلت ملف .bin على منطقة الإدخال بدلًا من ذلك إن كانت حمولتك ثنائية خام؛ يُقرأ ويُفك فورًا.
- اضغط «عرض توضيحي» لتحميل عينة مدمجة تضم سلسلة UTF-8 وvarints متعرجة وحقلًا متكررًا معبأً وقيمة double ورسالة متداخلة بمستويين.
- تصفح شجرة النتائج: يعرض كل صف رقم الحقل ونوع سلكه (varint / 64-bit / length-delimited / 32-bit) والقيمة المفسَّرة؛ وتنفتح الصفوف ذات السهم في رسائل فرعية متداخلة.
- استخدم زرَّي «→ Base64» و«→ HEX» لتحويل الإدخال الحالي بين الترميزين، أو «نسخ HEX» لوضع سلسلة hex المكافئة في الحافظة.
- إن كانت البيانات تالفة أو مقطوعة، يتوقف فك الترميز عند أول بايت سيئ ويخبرك سطر الخطأ بالإزاحة الدقيقة بالبايت.
عندما يحتوي حقل محدد الطول على رسالة متداخلة يُعرض كشجرة فرعية قابلة للتوسيع؛ وإن كنت توقعت نصًا فالسبب فقط أن البايتات لم تكن UTF-8 قابلة للطباعة — هكذا تعمل قواعد إزالة الغموض في protobuf وليس عيبًا.
أدوات ذات صلة
- ترميز/فك ترميز Base64 مشفر ومفكك ترميز Base64 مجاني عبر الإنترنت. حوّل النص إلى Base64 و Base64 إلى نص فورًا. بدون رفع إلى الخادم، خصوصية 100%.
- عارض سداسي عشري عرض محتويات الملفات بتنسيق سداسي عشري مع البحث والتنقل بالإزاحة والتمرير الافتراضي
- ثنائي إلى نص تحويل الكود الثنائي إلى نص مقروء. فك تشفير السلاسل الثنائية إلى نص ASCII.
- فك تشفير JWT فك تشفير JWT مجاني عبر الإنترنت. فك تشفير JSON Web Tokens فورًا لعرض الرأس والحمولة والتوقيع. بدون تسجيل.
- فك ترميز شهادات X.509 فك ترميز شهادات X.509 مجاني عبر الإنترنت. الصق شهادة PEM أو DER بـ base64 لعرض الموضوع والمُصدِر والصلاحية والأسماء البديلة ونوع المفتاح والبصمات. معالجة محلية 100%، لا يُرفع شيء.
- مدقق التجزئة احسب وتحقق من تجزئات MD5 وSHA-1 وSHA-256 وSHA-512 محليًا
- حاسبة Chmod حاسبة chmod مجانية عبر الإنترنت لتصور وحساب أذونات ملفات Linux بمربعات اختيار. تحويل فوري بين التدوين الرقمي (755، 644) والرمزي (rwxr-xr-x). يدعم الأذونات الخاصة مثل setuid وsetgid وsticky bit.
- جدول ASCII مرجع كامل لترميز أحرف ASCII مع الأكواد العشرية والسداسية العشرية والثمانية والثنائية وكيانات HTML وأوصاف الأحرف. البحث والتصفية الفورية.