🔧 رمزگذار باینری Base64 — رمزگذاری فایل‌ها/بایت‌ها به Base64 (با گزینه‌های Base64url + MIME)

پردازش ۱۰۰٪ سمت کاربر (بدون آپلود سرور). فایل‌ها/بایت‌های باینری را به Base64 با پیش‌تنظیم‌های قالب (RFC 4648، Base64url، بسته‌بندی MIME)، کنترل padding، اعتبارسنجی سخت‌گیرانه و پشتیبانی از چند فایل به صورت دسته‌ای رمزگذاری کنید. همچنین از رمزگشایی Base64 به یک فایل قابل دانلود پشتیبانی می‌کند.

Loading…

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

این ابزار عمدتاً برای رمزگذاری فایل‌های باینری (بایت‌ها) به متن Base64 برای انتقال (JSON، لاگ‌ها، ایمیل، پیکربندی‌ها) است. همچنین شامل عملیات رمزگشایی برای تبدیل Base64 به یک فایل باینری قابل دانلود می‌شود. همه چیز به صورت محلی در مرورگر شما اجرا می‌شود (بدون آپلود)، با گزینه‌های واضح برای Base64 در مقابل Base64url در مقابل بسته‌بندی MIME، رفتار padding و اعتبارسنجی سخت‌گیرانه.

ویژگی‌ها

  • آپلود یا کشیدن و رها کردن فایل‌های باینری (پشتیبانی از چند فایل به صورت دسته‌ای)
  • دو عملیات: رمزگذاری فایل → Base64، یا رمزگشایی Base64 → دانلود فایل
  • پیش‌تنظیم‌های قالب: RFC 4648 (استاندارد)، RFC 4648 URL-safe (Base64url)، RFC 2045 MIME (بسته‌بندی ۷۶ + CRLF)
  • کنترل padding: خودکار، همیشه شامل "="، یا حذف padding
  • طول اختیاری بسته‌بندی خط برای خروجی رمزگذاری شده (۰ غیرفعال می‌کند؛ MIME معمولاً از ۷۶ استفاده می‌کند)
  • حالت اعتبارسنجی سخت‌گیرانه برای رد کاراکترها/padding نامعتبر (مفید برای اشکال‌زدایی)
  • خط جدید اختیاری در انتهای خروجی Base64 (حالت رمزگذاری)
  • پردازش ۱۰۰٪ سمت کاربر (بدون آپلود سرور).

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

1

یک یا چند فایل را رها کنید (یا Base64 را برای رمزگشایی جایگذاری کنید)

برای رمزگذاری، فایل(های) باینری خود را در ناحیه آپلود بکشید و رها کنید. برای رمزگشایی، رشته Base64 دریافتی (مثلاً از JSON، یک لاگ، یا یک ایمیل) را جایگذاری کنید.

2

عملیات/حالت را انتخاب کرده و اجرا کنید

"Action" را انتخاب کنید: "Encode file → Base64" یا "Decode Base64 → file"، سپس دکمه Run مربوطه (Encode/Decode) را کلیک کنید. در صورت نیاز، یک پیش‌تنظیم "Format" (استاندارد/Base64url/MIME) انتخاب کنید، padding و بسته‌بندی را تنظیم کنید و "Strict validation" را هنگام اشکال‌زدایی Base64 نادرست فعال کنید.

3

خروجی Base64 را کپی کنید یا فایل رمزگشایی شده را دانلود کنید

پس از رمزگذاری، متن Base64 را کپی کنید (اختیاری: بسته‌بندی شده/پایان‌یافته با خط جدید بر اساس تنظیمات شما). پس از رمزگشایی، فایل باینری بازسازی شده را دانلود کنید (نام‌گذاری فایل در صورت امکان از قوانین ابزار پیروی می‌کند).

مشخصات فنی

مدل اجرا

افشای زمان اجرا، محدودیت‌ها و آنچه برای داده‌های شما اتفاق می‌افتد.

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

مثال کوچک

یک دنباله بایت کوچک رمزگذاری شده به Base64 (استاندارد RFC 4648).

موردمقدار
بایت‌های ورودی (هگز)00 01 02 03 04 05 06 07 08 09
خروجی Base64AAECAwQFBgcICQ==
وقتی خروجی متفاوت استBase64url کاراکترهای "+"/"/" را به "-"/"_" تغییر می‌دهد؛ ممکن است padding حذف شود؛ MIME ممکن است خطوط را بپیچاند
رمزگذاری قطعی است: بایت‌های یکسان + گزینه‌های یکسان → خروجی Base64 یکسان.

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

حالت‌های شکست رایج و اقدامات بعدی.

نشانهعلت احتمالیچه چیزی را بررسی کنید
ورودی برای رمزگشایی باید یک رشته باشدشما سعی کردید رمزگشایی کنید اما به جای متن Base64، بایت/فایل ارائه دادیدبرای فایل‌ها، Action را روی "Encode" تنظیم کنید؛ برای Decode، یک رشته Base64 جایگذاری کنید
این ابزار داده‌های باینری را رمزگذاری می‌کند... نه یک رشته متنیشما سعی کردید با جایگذاری متن در رمزگذار باینری، رمزگذاری کنیدبرای Encode، یک فایل آپلود کنید (یا بایت ارائه دهید)؛ برای گردش کارهای متنی خالص، از ابزار Base64 متنی استفاده کنید
کاراکترهای نامعتبر / شکست اعتبارسنجی دقیقBase64 حاوی کاراکترهای مجاز توسط قالب انتخاب شده نیست، یا padding نامناسب دارد"Format" (استاندارد در مقابل Base64url در مقابل MIME) و "Padding" را تأیید کنید؛ برای پذیرش ورودی آسان‌گیر، Strict را غیرفعال کنید
خطاهای طول/padding (به ویژه وقتی Strict روشن است)Base64 قطع‌شده، padding اشتباه "=", یا الفبای ترکیبیبار کامل را دوباره کپی کنید؛ مطمئن شوید که "=" انتهایی را از دست نداده‌اید، یا Padding را روی "Auto" تنظیم کنید
ورودی خیلی بزرگ است (حداکثر ۲ مگابایت)بار از حد ایمنی ابزار فراتر رفته استفایل/بار را تقسیم کنید یا برای داده‌های بزرگ‌تر از یک CLI/اسکریپت محلی استفاده کنید
فراخوانی Adapter زمان‌بندی شدپردازش از زمان‌بندی حدود ۲۵ ثانیه فراتر رفت (وابسته به اندازه/دستگاه)ورودی‌های کوچکتر را امتحان کنید، پیش‌نمایش زنده را غیرفعال کنید یا به ابزارهای خط فرمان محلی سوئیچ کنید

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

برای فایل‌های بزرگ، اسرار یا استفاده در CI، رمزگذاری/رمزگشایی Base64 را به صورت محلی اجرا کنید. در زیر گزینه‌های استاندارد و گسترده‌ی موجود آمده است.

لینوکس/مک‌اواس (coreutils)

رمزگذاری یک فایل به Base64 (بدون خط‌بندی)

base64 -w 0 input.bin > output.b64.txt

فایل input.bin را به Base64 رمزگذاری می‌کند. پرچم -w 0 خط‌بندی را غیرفعال می‌کند (GNU coreutils).

رمزگذاری یک فایل به Base64 با خط‌بندی سبک MIME (۷۶ کاراکتر در هر خط)

base64 -w 76 input.bin > output.mime.b64.txt

با طول خط رایج MIME مطابقت دارد. (پایان خط‌ها ممکن است بسته به پلتفرم با CRLF متفاوت باشد.)

رمزگشایی Base64 به فایل اصلی

base64 -d input.b64.txt > output.bin

متن Base64 را به بایت‌های خام رمزگشایی می‌کند.

مک‌اواس (BSD base64) / یونیکس

رمزگذاری یک فایل به Base64

base64 < input.bin > output.b64.txt

BSD base64 از پرچم‌های متفاوتی نسبت به GNU استفاده می‌کند؛ این فرم به طور گسترده کار می‌کند.

رمزگشایی Base64 به فایل اصلی

base64 -D < input.b64.txt > output.bin

در مک‌اواس/BSD، رمزگشایی معمولاً با -D انجام می‌شود (نه -d).

OpenSSL (قابل حمل)

رمزگذاری یک فایل به Base64 (تک خط)

openssl base64 -A -in input.bin -out output.b64.txt

پرچم -A یک خط واحد تولید می‌کند (بدون خط‌بندی).

رمزگشایی Base64 به بایت

openssl base64 -d -in input.b64.txt -out output.bin

زمانی مفید است که coreutils base64 در دسترس نباشد.

Node.js

رمزگذاری یک فایل به Base64

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

بایت‌ها را خوانده و Base64 را چاپ می‌کند.

رمزگشایی Base64 به یک فایل

node -e "const fs=require('fs'); const s=fs.readFileSync('input.b64.txt','utf8').trim(); fs.writeFileSync('output.bin', Buffer.from(s,'base64'))"

متن Base64 را به بایت‌های خام رمزگشایی می‌کند.

پایتون

رمزگذاری یک فایل به Base64

python -c "import base64,sys; sys.stdout.write(base64.b64encode(open('input.bin','rb').read()).decode('ascii'))" > output.b64.txt

بایت‌های فایل را به Base64 ASCII رمزگذاری می‌کند.

رمزگشایی Base64 به فایل اصلی

python -c "import base64; open('output.bin','wb').write(base64.b64decode(open('input.b64.txt','rb').read()))"

داده‌های Base64 را به بایت‌های خام رمزگشایی می‌کند.

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

جاسازی داده‌های باینری در کانال‌های متنی

  • ضمیمه کردن فایل‌های باینری کوچک درون محموله‌های JSON
  • چسباندن یک فایل به صورت Base64 در ردیاب‌های مسئله یا مستندات
  • انتقال بایت‌ها از طریق سیستم‌هایی که فقط متن را می‌پذیرند

اشکال‌زدایی Base64 تولید شده توسط سیستم دیگر

  • تغییر بین پیش‌تنظیم‌های استاندارد/Base64url/MIME برای مطابقت با تولیدکننده
  • فعال کردن اعتبارسنجی سختگیرانه برای تشخیص اشتباهات در padding یا الفبا
  • استفاده از رمزگشایی برای تأیید بازسازی فایل اصلی توسط محموله

بررسی‌های خط لوله در CI برای مصنوعات کوچک

  • تأیید رمزگشایی یک مصنوع بدون خطا قبل از انتشار
  • یکسان‌سازی خروجی Base64 (پیچیدن/padding) برای diffهای پایدار

اشتراک‌گذاری امن‌تر قطعات باینری غیرمحرمانه

  • اشتراک‌گذاری قطعات تست قابل تکرار بدون ایمیل کردن فایل‌های باینری خام
  • دور نگه داشتن اسرار از ابزار مرورگر؛ استفاده از CLI محلی برای کلیدها/توکن‌ها

❓ Frequently Asked Questions

آیا یک API عمومی برای این ابزار وجود دارد؟

خیر. این صفحه یک ابزار درون مرورگری است و یک نقطه پایانی API عمومی ارائه نمی‌دهد.

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

100٪ پردازش سمت کلاینت (بدون آپلود سرور). داده‌های فایل/Base64 به صورت محلی در مرورگر شما پردازش می‌شوند.

آیا می‌توانم اسرار (کلیدها، توکن‌ها، رمزهای عبور) را اینجا به صورت امن کدگذاری کنم؟

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

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

اکثر شکست‌های رمزگشایی ناشی از عدم تطابق قالب (استاندارد در مقابل Base64url در مقابل MIME پیچیده شده)، ورودی قطع شده یا padding نادرست است. سعی کنید پیش‌تنظیم «قالب» صحیح را انتخاب کنید، Padding را روی «خودکار» تنظیم کنید و موقتاً «اعتبارسنجی سختگیرانه» را غیرفعال کنید تا ببینید آیا ورودی فقط کمی غیراستاندارد است یا خیر.

چرا نمی‌توانم با چسباندن مستقیم متن، کدگذاری کنم؟

این نوع باینری (فایل/بایت) است. کدگذاری انتظار بایت (File/Blob/Uint8Array/ArrayBuffer) دارد. اگر ورودی شما متن ساده است، از یک کدگذار Base64 متنی استفاده کنید تا کدگذاری متن به بایت صریح باشد.

Pro Tips

Best Practice

اگر به توکن‌های ایمن برای URL نیاز دارید، پیش‌تنظیم Base64url را انتخاب کنید؛ این گزینه «+» و «/» را با «-» و «_» جایگزین می‌کند و اغلب بسته به تنظیمات شما، padding را حذف می‌کند.

Best Practice

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

CI Tip

برای diffهای پایدار در CI، قالب‌بندی و خط جدید نهایی را استاندارد کنید تا خروجی‌های Base64 شما بین محیط‌ها تغییر نکنند.

Best Practice

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

Additional Resources

Other Tools

🔧 رمزگذار باینری Base64 — رمزگذاری فایل‌ها/بایت‌ها به Base64 (با گزینه‌های Base64url + MIME) | Encode64