pvcli؛ ابزار کلادفلر برای دیباگ OHTTP اوپنسورس شد
خلاصهٔ کاملتر
تیم حریم خصوصی کلادفلر ابزار خط فرمانی به اسم pvcli رو اوپنسورس کرده؛ همون ابزاری که خودشون برای دیباگ پروتکلهایی مثل Oblivious HTTP در مقیاس میلیونها درخواست در ثانیه ساخته بودن. کد با لایسنس Apache-2.0 روی گیتهاب منتشر شده و برای مشارکت بازه.
به نوشتهٔ این پست، OHTTP این تضمین رو میده که هیچکس همزمان نفهمه کی درخواست داده و چی خواسته. برای همین به دو سرور نیاز داره — یه رله و یه گیتوی که دو طرفِ غیرهمدست میگردوننشون — و کل مسیر هشت مرحله بین چهار طرفه. هر مرحله یه نقطهٔ شکست بالقوهست و همین دیباگکردنش رو سخت میکنه.
نویسندهها مثال زدن که قبلاً برای یه تست ساده چی میکشیدن: کلید عمومی رو میگرفتن و بایتبهبایت طبق RFC 9458 پارس میکردن، درخواست رو با کمک اسکریپتهای دستساز به باینری HTTP (طبق RFC 9292) تبدیل و بعد رمزش میکردن. تو مثالشون جواب فقط «malformed request» بود و بعد از وارسی دستی معلوم شد یه بایت فاصلهٔ اضافی، طول پیشوندیِ BHTTP رو خراب کرده.
حالا همهٔ اون کار یه دستوره. pvcli عمداً شبیه curl طراحی شده تا آرگومانهاش آشنا باشن؛ رله رو با --first-hop و گیتوی رو با --proxy میدی و با -v تا -vvv لاگ هر مرحله رو میبینی:
pvcli --ohttp \
--first-hop https://relay-cloudflare.ohttp.info \
--proxy https://gateway.ohttp.info \
-X POST --data '{"test":1}' \
https://target.ohttp.info/anythingغیر از این، فرستادن هدر به خود رله با --first-hop-header و احراز هویت mTLS با --first-hop-client و --first-hop-key هم پشتیبانی میشه. به گفتهٔ تیم، ابزارهای اوپنسورس خوبی برای OHTTP هست ولی هیچکدوم OHTTP و پراکسی CONNECT و MASQUE رو یکجا ندارن؛ پشتیبانی از Privacy Pass، رمزنگاری پساکوانتومی و Chunked OHTTP هم تو لیست کارهای بعدیه.
نکات کلیدی:
- pvcli ابزار خط فرمان کلادفلر برای پروتکلهای حریم خصوصیه و با Apache-2.0 منتشر شده
- یه درخواست کامل OHTTP با رله، گیتوی و تارگت رو با یه دستور اجرا میکنه
- رابطش عمداً شبیه curl طراحی شده و با -v تا -vvv لاگ هر مرحله رو نشون میده
- هدر اختصاصی برای رله و احراز هویت mTLS پشتیبانی میشه
- OHTTP، پراکسی CONNECT و MASQUE رو یکجا داره؛ Privacy Pass در راهه
- روی نقشهٔ راه: رمزنگاری پساکوانتومی، Chunked OHTTP و اطلاعات تأخیر




