🔧 رمزگذار باینری Base64 — رمزگذاری فایلها/بایتها به Base64 (با گزینههای Base64url + MIME)
پردازش ۱۰۰٪ سمت کاربر (بدون آپلود سرور). فایلها/بایتهای باینری را به Base64 با پیشتنظیمهای قالب (RFC 4648، Base64url، بستهبندی MIME)، کنترل padding، اعتبارسنجی سختگیرانه و پشتیبانی از چند فایل به صورت دستهای رمزگذاری کنید. همچنین از رمزگشایی Base64 به یک فایل قابل دانلود پشتیبانی میکند.
ویژگیها
- آپلود یا کشیدن و رها کردن فایلهای باینری (پشتیبانی از چند فایل به صورت دستهای)
- دو عملیات: رمزگذاری فایل → Base64، یا رمزگشایی Base64 → دانلود فایل
- پیشتنظیمهای قالب: RFC 4648 (استاندارد)، RFC 4648 URL-safe (Base64url)، RFC 2045 MIME (بستهبندی ۷۶ + CRLF)
- کنترل padding: خودکار، همیشه شامل "="، یا حذف padding
- طول اختیاری بستهبندی خط برای خروجی رمزگذاری شده (۰ غیرفعال میکند؛ MIME معمولاً از ۷۶ استفاده میکند)
- حالت اعتبارسنجی سختگیرانه برای رد کاراکترها/padding نامعتبر (مفید برای اشکالزدایی)
- خط جدید اختیاری در انتهای خروجی Base64 (حالت رمزگذاری)
- پردازش ۱۰۰٪ سمت کاربر (بدون آپلود سرور).
نحوه استفاده for base64-binary-encoder
یک یا چند فایل را رها کنید (یا Base64 را برای رمزگشایی جایگذاری کنید)
برای رمزگذاری، فایل(های) باینری خود را در ناحیه آپلود بکشید و رها کنید. برای رمزگشایی، رشته Base64 دریافتی (مثلاً از JSON، یک لاگ، یا یک ایمیل) را جایگذاری کنید.
عملیات/حالت را انتخاب کرده و اجرا کنید
"Action" را انتخاب کنید: "Encode file → Base64" یا "Decode Base64 → file"، سپس دکمه Run مربوطه (Encode/Decode) را کلیک کنید. در صورت نیاز، یک پیشتنظیم "Format" (استاندارد/Base64url/MIME) انتخاب کنید، padding و بستهبندی را تنظیم کنید و "Strict validation" را هنگام اشکالزدایی Base64 نادرست فعال کنید.
خروجی Base64 را کپی کنید یا فایل رمزگشایی شده را دانلود کنید
پس از رمزگذاری، متن Base64 را کپی کنید (اختیاری: بستهبندی شده/پایانیافته با خط جدید بر اساس تنظیمات شما). پس از رمزگشایی، فایل باینری بازسازی شده را دانلود کنید (نامگذاری فایل در صورت امکان از قوانین ابزار پیروی میکند).
مشخصات فنی
مدل اجرا
افشای زمان اجرا، محدودیتها و آنچه برای دادههای شما اتفاق میافتد.
| جنبه | جزئیات |
|---|---|
| حالت | پردازش ۱۰۰٪ سمت کاربر (بدون آپلود سرور). |
| محدوده عملیات | رمزگذاری باینری → Base64 (اصلی)، به علاوه رمزگشایی Base64 → دانلود باینری |
| ورودیها | رمزگذاری: File/Blob/Uint8Array/ArrayBuffer/TypedArray. رمزگشایی: رشته Base64 |
| خروجیها | رمزگذاری: متن Base64. رمزگشایی: بایتها به عنوان یک فایل قابل دانلود |
| محدودیتها | حدود ۱ تا ۲ مگابایت کاراکتر؛ زمانبندی حدود ۲۵۰۰۰ میلیثانیه |
| نگهداری | همه پردازشها به صورت محلی در مرورگر شما انجام میشود (بدون آپلود) |
مثال کوچک
یک دنباله بایت کوچک رمزگذاری شده به Base64 (استاندارد RFC 4648).
| مورد | مقدار |
|---|---|
| بایتهای ورودی (هگز) | 00 01 02 03 04 05 06 07 08 09 |
| خروجی Base64 | AAECAwQFBgcICQ== |
| وقتی خروجی متفاوت است | Base64url کاراکترهای "+"/"/" را به "-"/"_" تغییر میدهد؛ ممکن است padding حذف شود؛ MIME ممکن است خطوط را بپیچاند |
خطاها و موارد خاص
حالتهای شکست رایج و اقدامات بعدی.
| نشانه | علت احتمالی | چه چیزی را بررسی کنید |
|---|---|---|
| ورودی برای رمزگشایی باید یک رشته باشد | شما سعی کردید رمزگشایی کنید اما به جای متن 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.txtBSD 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 عمومی ارائه نمیدهد.پردازش محلی است یا از راه دور؟
Base64 به صورت محلی در مرورگر شما پردازش میشوند.آیا میتوانم اسرار (کلیدها، توکنها، رمزهای عبور) را اینجا به صورت امن کدگذاری کنم؟
چرا رمزگشایی با خطای «کاراکترهای نامعتبر» یا «padding بد» شکست میخورد؟
چرا نمیتوانم با چسباندن مستقیم متن، کدگذاری کنم؟
Base64 متنی استفاده کنید تا کدگذاری متن به بایت صریح باشد.Pro Tips
اگر به توکنهای ایمن برای URL نیاز دارید، پیشتنظیم Base64url را انتخاب کنید؛ این گزینه «+» و «/» را با «-» و «_» جایگزین میکند و اغلب بسته به تنظیمات شما، padding را حذف میکند.
هنگام اشکالزدایی یک رمزگشایی ناموفق، اعتبارسنجی سختگیرانه را فعال کنید تا خطاها زودتر و واضحتر ظاهر شوند، سپس پس از شناسایی مشکلات تولیدکننده، آن را کاهش دهید.
برای diffهای پایدار در CI، قالببندی و خط جدید نهایی را استاندارد کنید تا خروجیهای Base64 شما بین محیطها تغییر نکنند.
برای فایلهای بزرگ یا هر چیز حساس، ابزارهای CLI محلی را ترجیح دهید؛ این کار از محدودیتهای مرورگر جلوگیری کرده و خطر نشت تصادفی از طریق کلیپبورد یا افزونهها را کاهش میدهد.
Additional Resources
Other Tools
- زیباکننده CSS
- زیباکننده HTML
- زیباکننده JavaScript
- زیباکننده PHP
- انتخابگر رنگ
- استخراجکننده اسپرایت
- رمزگذار باینری Base32
- رمزگشای Base32
- رمزگذار Base32
- رمزگذار باینری Base58
- رمزگشای Base58
- رمزگذار Base58
- رمزگذار باینری Base62
- رمزگشای Base62
- رمزگذار Base62
- دیکودر Base64
- انکودر Base64
- رمزگذار باینری هگز
- رمزگشای هگز
- رمزگذار هگز
- فرمتدهنده C#
- فرمتدهنده CSV
- Dockerfile Formatter
- فرمتدهنده Elm
- فرمتدهنده ENV
- فرمتدهنده Go
- فرمتدهنده GraphQL
- فرمتدهنده HCL
- فرمتدهنده INI
- فرمتدهنده JSON
- فرمتدهنده LaTeX
- فرمتدهنده Markdown
- فرمتدهنده Objective-C
- Php Formatter
- فرمتدهنده Proto
- فرمتدهنده Python
- فرمتدهنده Ruby
- فرمتدهنده Rust
- فرمتدهنده Scala
- فرمتدهنده اسکریپت شل
- فرمتدهنده SQL
- قالببندی SVG
- قالببندی Swift
- قالببندی TOML
- Typescript Formatter
- قالببندی XML
- قالببندی YAML
- قالببندی Yarn
- کوچککننده CSS
- Html Minifier
- Javascript Minifier
- کوچککننده JSON
- کوچککننده XML
- نمایشگر هدرهای HTTP
- PDF به متن
- تستکننده Regex
- بررسیکننده رتبه SERP
- جستجوی Whois