کدگذاری/کدگشایی هگز (باینری)

پردازش ۱۰۰٪ سمت کاربر (بدون آپلود سرور). فایل‌های باینری را به متن هگز (ساده، 0x…، C \xHH، یا %HH) تبدیل کنید و متن هگز را با اعتبارسنجی سختگیرانه، مدیریت جداکننده‌ها و قالب‌بندی خروجی قابل پیش‌بینی، به فایل برگردانید.

Loading…

درباره رمزگذاری/رمزگشایی هگز (باینری)

این ابزار فایل‌های باینری را به متن هگز تبدیل می‌کند و همچنین متن هگز را به فایل باینری بازمی‌گرداند، تماماً در مرورگر شما. یک عمل را انتخاب کنید (رمزگذاری فایل → هگز یا رمزگشایی هگز → فایل)، قالب هگز مورد نظر خود را انتخاب کنید (ساده، 0x…، سبک C \xHH، یا %HH)، و جزئیات قالب‌بندی مانند حالت حروف، جداکننده‌های بایت، پیچیدن و پایان خط را کنترل کنید. برای رمزگشایی، می‌توانید سبک‌های رایج توکن‌ها (0x، \xHH، %HH) را بپذیرید، جداکننده‌ها/فاصله‌های سفید را مجاز کنید و اختیاریاً کاراکترهای غیرهگز را نادیده بگیرید یا با اعتبارسنجی سختگیرانه سریعاً خطا دهید.

ویژگی‌ها

  • پردازش ۱۰۰٪ سمت کاربر (بدون آپلود سرور).
  • آپلود و پردازش دسته‌ای چندین فایل از طریق منطقه رهاسازی (چند فایله فعال).
  • دو عمل: رمزگذاری فایل → متن هگز، یا رمزگشایی متن هگز → فایل.
  • قالب‌های خروجی هگز: ساده (deadbeef)، پیشوند 0x…، فرار C (\xHH)، و درصد (%HH).
  • کنترل حالت حروف: ارقام هگز کوچک یا بزرگ.
  • جداکننده‌های بایت برای خوانایی: هیچ، فاصله، دونقطه (:)، خط تیره (-)، زیرخط (_)، ویرگول (,).
  • پیچیدن فقط برای رمزگذاری: پیچیدن بایت‌ها در هر خط (0 غیرفعال می‌کند) + جداکننده خط قابل انتخاب (LF یا CRLF).
  • تغییرات فقط برای رمزگذاری: درج خط جدید نهایی؛ اختیاری 0x برای هر بایت (0xDE 0xAD …) برای خروجی سبک 0x.
  • کنترل‌های تجزیه فقط برای رمزگشایی: پذیرش پیشوند 0x، پذیرش فرار‌های \xHH، پذیرش رمزگذاری %HH، مجاز کردن جداکننده‌ها/فاصله‌های سفید، نادیده گرفتن کاراکترهای غیرهگز، و مدیریت طول فرد (خطا یا پر کردن چپ با 0).
  • حالت اعتبارسنجی سختگیرانه برای رد ورودی نادرست در ابتدا به جای تجزیه با بهترین تلاش.

نحوه استفاده for hex-binary-encoder

1

رها کردن یک فایل یا چسباندن متن هگز

برای رمزگذاری، یک یا چند فایل باینری را در منطقه رهاسازی بیندازید. برای رمزگشایی، متن هگز را در ویرایشگر خروجی بچسبانید (یا یک فایل .hex/.txt حاوی هگز را رها کنید).

2

انتخاب عمل و اجرا

عمل را انتخاب کنید: «رمزگذاری فایل → هگز» یا «رمزگشایی هگز → فایل»، سپس دکمه مربوطه (رمزگذاری/رمزگشایی) را کلیک کنید. گزینه‌ها را در صورت نیاز پیکربندی کنید: قالب (ساده/0x/\xHH/%HH)، حالت حروف، جداکننده‌ها، پیچیدن + جداکننده خط (رمزگذاری)، یا پذیرش-تغییرات + مدیریت جداکننده + قوانین طول فرد (رمزگشایی).

3

کپی یا دانلود نتیجه

اگر رمزگذاری کردید، متن هگز تولید شده را از ویرایشگر کپی کنید یا آن را به عنوان خروجی متنی دانلود کنید. اگر رمزگشایی کردید، فایل باینری بازسازی شده را دانلود کنید (ابزار در صورت امکان پسوند .hex را حذف می‌کند و در غیر این صورت به .bin بازمی‌گردد).

مشخصات فنی

مدل اجرا

این ابزار تماماً در مرورگر شما اجرا می‌شود و ورودی شما را به سرور آپلود نمی‌کند.

جنبهجزئیات
زمان اجراپردازش ۱۰۰٪ سمت کاربر (بدون آپلود سرور).
حوزه عملرمزگذاری (فایل باینری → متن هگز) و رمزگشایی (متن هگز → فایل باینری) در همان صفحه.
ورودیکدگذاری: باینری (فایل/Blob/Uint8Array/ArrayBuffer/TypedArray). کدگشایی: متن (رشته هگز با توکن‌ها و جداکننده‌های اختیاری).
خروجیکدگذاری: متن (هگز). کدگشایی: بایت‌ها (فایل باینری قابل دانلود).
محدودیت‌ها~۱–۲ مگابایت کاراکتر؛ ~۲۵۰۰۰ میلی‌ثانیه زمان‌انتظار
نگهداریهمه پردازش‌ها به صورت محلی در مرورگر شما انجام می‌شود (بدون آپلود)
حتی با پردازش محلی، از مدیریت اسرار مهمی که توانایی افشای آن‌ها را ندارید اجتناب کنید (اشتراک‌گذاری صفحه، افزونه‌ها، تاریخچه کلیپ‌برد، آسیب‌پذیری دستگاه). برای داده‌های حساس یا گردش‌های کاری مطابقت، پردازش محلی CLI را ترجیح دهید.

مثال کوچک

مثال‌های کوچک برای نشان دادن هر دو عمل و فرمت‌های رایج.

کدگذاری (بایت‌های باینری): 48 65 6c 6c 6f 0a
خروجی (ساده، کوچک): 48656c6c6f0a

کدگشایی (متن هگز): 48 65 6c 6c 6f 0a
نتیجه (بایت‌های فایل): 48 65 6c 6c 6f 0a
گزینه‌های قالب‌بندی (حروف، جداکننده‌ها، پیچیدن، پایان خط) فقط نمایش متن هگز را تغییر می‌دهند. رفتار کدگشایی به toggleهای پذیرش انتخاب شده، مدیریت جداکننده، حالت سختگیرانه و سیاست طول فرد بستگی دارد.

خطاها و موارد خاص

شکست‌های معمول هنگام تبدیل بین متن هگز و بایت‌های خام، و چگونگی تأثیر گزینه‌های رابط کاربری بر آن‌ها.

نشانهعلت محتملچه چیزی را بررسی کنید
کدگذاری می‌گوید یک فایل آپلود کنیدشما ورودی متنی به عمل کدگذاری داده‌ایداین ابزار داده باینری را کدگذاری می‌کند. برای ورودی متن هگز به کدگشایی تغییر دهید، یا برای کدگذاری یک فایل/بایت آپلود کنید.
خطای کدگشایی: هگز نامعتبر / توکن‌های بدشکلورودی شامل کاراکترهای غیرهگز یا یک سبک توکن غیرفعال شده است«پذیرش پیشوند 0x» / «پذیرش escapeهای \xHH» / «پذیرش کدگذاری %HH» را به طور مناسب فعال کنید؛ تصمیم بگیرید که آیا اجازه جداکننده‌ها/فضای خالی داده شود.
کدگشایی روی جداکننده‌ها یا فضای خالی شکست می‌خوردجداکننده‌ها وجود دارند اما مجاز نیستند (یا حالت سختگیرانه آن‌ها را رد می‌کند)«اجازه جداکننده‌ها/فضای خالی» را فعال کنید؛ اگر می‌خواهید تجزیه سختگیرانه داشته باشید، «نادیده گرفتن کاراکترهای غیرهگز» را خاموش نگه دارید و به پذیرش صریح توکن‌ها تکیه کنید.
تعداد فرد ارقام هگزجریان هگز قطع شده یا یک نیبل گم شده است«ارقام هگز فرد» را روی «خطا» تنظیم کنید تا سریع شکست بخورد، یا اگر عمداً ورودی‌های طول فرد را می‌پذیرید، روی «پر کردن چپ با 0» تنظیم کنید.
اندازه خروجی غیرمنتظره یا بایت‌های ناهماهنگنادیده گرفتن کاراکترهای غیرهگز، کاراکترهای معنادار را حذف کرده است، یا حالت سختگیرانه خاموش است و تجزیه به صورت بهترین تلاش استوقتی صحت مهم است از «اعتبارسنجی سختگیرانه» استفاده کنید؛ اگر انتظار دارید فقط توکن‌های خوش‌شکل باشند، «نادیده گرفتن کاراکترهای غیرهگز» را غیرفعال کنید.
پیچیدن/خطوط جدید خروجی مطابق انتظار شما نیست (کدگذاری)تنظیمات bytesPerLine، جداکننده خط، یا خط جدید نهایی فعال هستند«پیچیدن بایت در هر خط» را روی 0 تنظیم کنید، LF در مقابل CRLF را انتخاب کنید، و در صورت نیاز «درج خط جدید نهایی» را toggle کنید.

جایگزین‌های خط فرمان

برای اتوماسیون، CI، یا داده‌های حساس، ابزارهای خط فرمان محلی را ترجیح دهید. مثال‌های زیر استاندارد و معمولاً در دسترس هستند.

لینوکس/macOS

کدگذاری یک فایل به هگز ساده (xxd)

xxd -p -c 256 input.bin > output.hex.txt

فایل را به صورت هگز ساده چاپ می‌کند (بدون توکن‌های 0x/\x). از -c برای کنترل عرض خط استفاده کنید.

تبدیل هگز ساده به فایل (xxd)

xxd -r -p output.hex.txt > restored.bin

تبدیل هگز ساده به بایت‌های خام. اگر متن هگز شما شامل جداکننده یا پیشوند است، ابتدا آن را نرمال کنید.

Node.js

تبدیل فایل به هگز (Node Buffer)

node -e "const fs=require('fs');const b=fs.readFileSync('input.bin');process.stdout.write(b.toString('hex'))" > output.hex.txt

هگز پیوسته با حروف کوچک تولید می‌کند. در صورت نیاز به جداکننده یا شکست خط، قالب‌بندی خود را اضافه کنید.

تبدیل متن هگز ساده به فایل (Node Buffer)

node -e "const fs=require('fs');const hex=fs.readFileSync('output.hex.txt','utf8').trim();fs.writeFileSync('restored.bin',Buffer.from(hex,'hex'));"

فقط هگز ساده را تجزیه می‌کند. قبل از رمزگشایی، توکن‌های 0x/\x/% و جداکننده‌ها را حذف کنید.

موارد استفاده

اشکال‌زدایی محموله‌های باینری

  • تبدیل یک فایل باینری کوچک به هگز قابل خواندن برای گزارش خطا و بررسی
  • مقایسه دو خروجی باینری با تبدیل هر دو به نمایش نرمال‌شده هگز

قابلیت همکاری بین ابزارها

  • تولید هگز با پیشوند 0x یا جداکننده برای تطابق با انتظارات ابزارهای پایین‌دستی
  • رمزگشایی دامپ‌های هگز که شامل توکن‌های \xHH به سبک C یا بایت‌های %HH به سبک درصد هستند

فیکسچرهای CI و بردارهای تست

  • ذخیره فیکسچرهای باینری کوچک به صورت متن هگز برای diff آسان در بررسی کد
  • استفاده از اعتبارسنجی دقیق برای شکست سریع هنگام خرابی ورودی‌های تست

آموزش بایت‌ها و نمایش‌ها

  • نشان دادن چگونگی نمایش بایت‌های یکسان به صورت هگز ساده، توکن‌های با پیشوند 0x، یا \xHH
  • نشان دادن دلیل صریح بودن انتخاب‌های تجزیه برای جداکننده‌ها و مدیریت طول فرد

❓ Frequently Asked Questions

آیا API عمومی وجود دارد؟

خیر. این ابزار برای استفاده تعاملی مرورگر طراحی شده و API عمومی ارائه نمی‌دهد.

پردازش محلی است یا از راه دور؟

100% پردازش سمت کلاینت (بدون آپلود سرور). تمام رمزگذاری و رمزگشایی به صورت محلی در مرورگر شما اجرا می‌شود.

آیا می‌توانم از این برای اسرار (کلیدهای API، اعتبارنامه‌ها، فایل‌های اختصاصی) استفاده کنم؟

ایمن‌تر این است که استفاده نکنید. اگرچه پردازش محلی است، اما اسرار همچنان می‌توانند از طریق اشتراک‌گذاری صفحه، افزونه‌ها، تاریخچه کلیپ‌بورد یا نفوذ به دستگاه فاش شوند. برای داده‌های حساس، ابزارهای CLI محلی را ترجیح دهید.

چرا رمزگشایی با «هگز نامعتبر» یا «ورودی ناقص» شکست می‌خورد؟

اکثر شکست‌ها ناشی از کاراکترهای غیرهگز، غیرفعال بودن پذیرش توکن (0x, \xHH, %HH)، مدیریت جداکننده‌ها/فاصله‌های سفید، یا تعداد فرد ارقام هگز است. کلیدهای «پذیرش» مربوطه را فعال کنید، تصمیم بگیرید که آیا جداکننده‌ها مجاز هستند یا خیر، یک سیاست برای طول فرد انتخاب کنید و از «اعتبارسنجی دقیق» استفاده کنید وقتی می‌خواهید تجزیه سریعاً شکست بخورد.

Pro Tips

Best Practice

برای مقایسه‌های پایدار، با قالبی ثابت (ساده)، حالت حروف ثابت و بدون جداکننده‌ها کدگذاری کنید؛ سپس جداکننده‌ها/پیچیدن را فقط برای خوانایی اضافه کنید.

Best Practice

هنگام رمزگشایی خروجی‌ها از کد یا گزارش‌ها، گزینه‌های پذیرش توکن مورد انتظار (0x، \xHH، %HH) را روشن کنید و اجازه دهید جداکننده‌ها/فضای خالی برای جلوگیری از پاکسازی دستی اعمال شوند.

Best Practice

از «اعتبارسنجی سختگیرانه» استفاده کنید (و در نظر بگیرید که «نادیده گرفتن کاراکترهای غیرهگز» را غیرفعال کنید) زمانی که صحت مهم‌تر از بازیابی با حداکثر تلاش است.

CI Tip

ورودی‌ها را زیر حدود ۱–۲ مگابایت نگه دارید و برای فایل‌های بزرگ یا خطوط لوله CI از ابزارهای محلی CLI استفاده کنید تا از محدودیت‌ها/وقفه‌های مرورگر جلوگیری کنید.

Additional Resources

Other Tools

🔧 رمزگذاری/رمزگشایی هگز (باینری) — باینری ↔ هگز | Encode64