کدگذاری/کدگشایی Base62 (باینری)
پردازش ۱۰۰٪ سمت کاربر (بدون آپلود سرور). فایلها/بایتهای باینری را به متن Base62 با الفباهای قابل انتخاب، شکستن خط اختیاری و پردازش خط به خط کدگذاری کنید، به همراه اعتبارسنجی دقیق و پشتیبانی از data: URI هنگام رمزگشایی به بایت.
ویژگیها
- آپلود/کشیدن و رها کردن فایلهای باینری (.bin, .dat, آرشیوها) با پشتیبانی دستهای چند فایلی
- دو عمل: کدگذاری (باینری → متن Base62) و رمزگشایی (متن Base62 → فایل قابل دانلود)
- انتخاب الفبا: 0-9A-Za-z (معمول)، 0-9a-zA-Z، A-Za-z0-9، a-zA-Z0-9
- شکستن خط اختیاری (حالت کدگذاری): شکستن در عرض ستون انتخاب شده یا غیرفعال کردن (0)
- انتخاب جداکننده خط: LF ( ) یا CRLF ( ) برای خروجی شکسته شده
- پردازش خط به خط برای بارهای چند رکوردی (مفید وقتی هر خط یک قطعه Base62 جداگانه است)
- رمزگشایی میتواند پیشوند data:*;base62, را بپذیرد (قابل تغییر)
- تغییر وضعیت اعتبارسنجی دقیق برای رد کاراکترهای نامعتبر برای الفبای انتخاب شده
- حالت پیشنمایش زنده برای ورودیهای کوچک (برای بارهای بزرگ غیرفعال کنید)
- پردازش ۱۰۰٪ سمت کاربر (بدون آپلود سرور).
نحوه استفاده for base62-binary-encoder
رها کردن یک فایل (یا چسباندن متن Base62)
برای کدگذاری، یک یا چند فایل باینری را در منطقه رها کردن بکشید و رها کنید. برای رمزگشایی، متن Base62 دریافتی را بچسبانید (در صورت فعال بودن، اختیاری با پیشوند data:*;base62,).
عمل/حالت را انتخاب کرده و اجرا کنید
"عمل" (کدگذاری یا رمزگشایی) را انتخاب کنید، سپس دکمه مربوطه را کلیک کنید. برای کدگذاری، "الفبا" مورد نیاز خود را انتخاب کنید و اختیاری "شکستن خط در" و جداکننده خط را تنظیم کنید. برای رمزگشایی، "اعتبارسنجی دقیق" را برای شناسایی زودهنگام کاراکترهای نامعتبر فعال کنید، و "پذیرش پیشوند data:*;base62," را اگر ورودی شما شامل آن است، تغییر دهید.
کپی خروجی یا دانلود فایل رمزگشایی شده
پس از کدگذاری، متن خروجی Base62 (شکسته شده و جدا شده طبق پیکربندی) را کپی کنید. پس از رمزگشایی، فایل باینری بازسازی شده را دانلود کنید (قوانین نام فایل معمولاً .b62 را حذف میکنند و در صورت نیاز به .bin بازمیگردند).
مشخصات فنی
مدل اجرا
افشای زمان اجرا، محدودیتها و مدیریت داده.
| جنبه | جزئیات |
|---|---|
| حالت | پردازش ۱۰۰٪ سمت کاربر (بدون آپلود سرور). |
| محدوده عمل | کدگذاری باینری → متن Base62 (اصلی)، به علاوه رمزگشایی Base62 → دانلود باینری |
| ورودیها | رمزگذاری: فایل/Blob/Uint8Array/ArrayBuffer/TypedArray. رمزگشایی: رشته Base62 (با پیشوند اختیاری data:*;base62) |
| خروجیها | رمزگذاری: متن Base62. رمزگشایی: بایتها به عنوان یک فایل قابل دانلود |
| محدودیتها | حدود ۱ تا ۲ مگابایت کاراکتر؛ زمانسنج حدود ۲۵۰۰۰ میلیثانیه |
| نگهداری | همه پردازشها به صورت محلی در مرورگر شما انجام میشود (بدون آپلود) |
مثال کوچک
یک دنباله بایت کوچک که با الفبای رایج «0-9A-Za-z» رمزگذاری شده است. خروجی بسته به تنظیمات الفبا و بستهبندی متفاوت است.
| مورد | مقدار |
|---|---|
| بایتهای ورودی (هگز) | 00 01 02 03 04 05 06 07 08 09 |
| خروجی (Base62) | (بستگی به پیادهسازی/الفبا دارد) |
| چه چیزی خروجی را تغییر میدهد | ترتیب الفبا، بستهبندی اختیاری، جداکننده خط، و اینکه آیا به صورت یک بلاب واحد یا به صورت قطعات خط به خط رمزگذاری میکنید |
خطاها و موارد خاص
حالتهای شکست رایج و نحوه رفع آنها.
| نشانه | علت احتمالی | چه چیزی را بررسی کنید |
|---|---|---|
| ورودی برای رمزگشایی باید یک رشته باشد | شما سعی کردید رمزگشایی کنید اما به جای متن Base62، بایت/فایل ارائه دادید | عمل را روی رمزگشایی تنظیم کنید و متن Base62 را جایگذاری کنید؛ برای فایلهای آپلود شده از رمزگذاری استفاده کنید |
| این ابزار داده باینری را رمزگذاری میکند... نه یک رشته متنی | شما سعی کردید با جایگذاری متن در رمزگذار باینری، رمزگذاری کنید | یک فایل آپلود کنید (یا بایتها را ارسال کنید). اگر نیاز به تبدیل متن→بایت دارید، ابتدا از یک ابزار مبتنی بر متن استفاده کنید |
| خطای اعتبارسنجی دقیق / کاراکترهای نامعتبر | ورودی حاوی کاراکترهایی است که در الفبای Base62 انتخاب شده وجود ندارند (یا شامل جداکنندهها/پیشوندها است) | الفبای صحیح را انتخاب کنید، حالت دقیق را غیرفعال کنید تا ورودیهای آسانگیر را آزمایش کنید، و فاصلههای اضافی را حذف کنید؛ اگر ورودی دارای پیشوند data:*;base62 است، گزینه پذیرش URI داده را فعال کنید |
| فایل رمزگشایی شده خراب به نظر میرسد | عدم تطابق الفبا یا تولیدکننده از یک نوع متفاوت Base62 استفاده کرده است | ترتیب الفبا را با تولیدکننده تأیید کنید (0-9A-Za-z در مقابل 0-9a-zA-Z و غیره) و آن را در هر دو طرف یکسان نگه دارید |
| خطوط جدید یا مرزهای قطعه غیرمنتظره | ورودی/خروجی بستهبندی شده است یا شما از پردازش خط به خط به اشتباه استفاده کردهاید | برای یک محموله واحد، تنظیم بستهبندی خطوط را روی 0 قرار دهید و خط به خط را خاموش نگه دارید؛ برای جریانهای چند رکوردی، خط به خط را فعال کنید و اطمینان حاصل کنید که هر خط یک قطعه Base62 دارد |
| ورودی بیش از حد بزرگ (حداکثر ۲ مگابایت) / زمانبندی به پایان رسید | بار مفید از محدودههای ایمن فراتر رفته یا دستگاه کند است | بار مفید را تقسیم کنید، پیشنمایش زنده را غیرفعال کنید یا برای فایلهای بزرگ به یک اسکریپت/ابزار محلی سوئیچ کنید |
گزینهها و قوانین خروجی
چگونگی تأثیر گزینههای رابط کاربری بر رفتار کدگذاری/کدگشایی.
| گزینه | اعمال بر | اثر |
|---|---|---|
| عملیات | کدگذاری / کدگشایی | کدگذاری بایتها را به متن Base62 تبدیل میکند؛ کدگشایی متن Base62 را به یک فایل باینری قابل دانلود تبدیل میکند. |
| الفبا | کدگذاری / کدگشایی | ترتیب مجموعه ۶۲ کاراکتری را تعریف میکند. برای کدگشایی صحیح باید بین سیستمها مطابقت داشته باشد. |
| شکستن خطوط در | فقط کدگذاری | اگر > ۰ باشد، در عرض انتخاب شده شکست خط وارد میکند؛ ۰ شکستن خط را غیرفعال میکند. |
| جداکننده خط | کدگذاری / کدگشایی (قالببندی) | کنترل میکند که هنگام شکستن خط یا تولید خروجی مبتنی بر خط، از کدام دنباله خط جدید استفاده شود: LF یا CRLF. |
| پیشنمایش زنده | هر دو | به طور خودکار با تغییرات اجرا میشود (بهترین برای ورودیهای کوچک). برای بارهای مفید بزرگ غیرفعال کنید تا از پایان زمان جلوگیری شود. |
| پردازش خط به خط | هر دو | هر خط را به عنوان یک رکورد جداگانه در نظر میگیرد. برای لیستها/جریانهای قطعات Base62 مفید است. |
| پذیرش پیشوند data:*;base62, | فقط کدگشایی | ورودیهایی را که با یک پیشوند شبیه به URI داده شروع میشوند، مجاز میکند تا ابزار بتواند قبل از کدگشایی آن را حذف کند. |
| اعتبارسنجی سختگیرانه | فقط کدگشایی | کاراکترهای خارج از الفبای انتخاب شده را رد میکند و ورودیهای نادرست را زود تشخیص میدهد. |
جایگزینهای خط فرمان
در اکثر سیستمعاملها، یک CLI جهانی برای Base62 وجود ندارد. برای نتایج قابل تکرار در CI یا برای فایلهای بزرگ، از یک کتابخانه نگهداریشده استفاده کنید و نگاشت الفبای مورد استفاده توسط سیستم خود را به صراحت مستند کنید.
همه پلتفرمها (پایتون)
کدگذاری/کدگشایی Base62 با استفاده از یک کتابخانه نگهداریشده (نسخه ثابت + الفبا)
python -c "import sys; print('Base62 در کتابخانه استاندارد پایتون موجود نیست. از یک کتابخانه Base62 نگهداریشده استفاده کنید، نسخه آن را ثابت نگه دارید و الفبا را به صراحت پیکربندی کنید (مثلاً ۰-۹A-Za-z در مقابل ۰-۹a-zA-Z).')"کتابخانه استاندارد پایتون شامل Base62 نمیشود. برای صحت و قابلیت تکرار، از یک کتابخانه معتبر استفاده کنید، نسخه وابستگی را ثابت نگه دارید و الفبا را در بین سرویسها یکسان حفظ کنید.
Node.js
رمزگذاری/رمزگشایی Base62 با استفاده از یک کتابخانه نگهداریشده (الفبای مستند)
node -e "console.error('Base62 در هسته Node ساختهنشده است. از یک کتابخانه معتبر Base62 استفاده کنید، نسخه آن را ثابت نگه دارید و الفبا (0-9A-Za-z، 0-9a-zA-Z و غیره) را مستند/پیکربندی کنید تا از ناهماهنگی جلوگیری شود.')"Node یک رمزگذار/رمزگشای Base62 در هسته خود ارائه نمیدهد. یک کتابخانه معتبر را ترجیح دهید و انتخاب الفبا را یادداشت کنید تا رمزگذاری/رمزگشایی در طول زمان سازگار بماند.
موارد استفاده
تعبیه آثار باینری در کانالهای متنی
- ضمیمه کردن باینریهای کوچک درون JSON، YAML یا سیستمهای مبتنی بر محیط که محمولههای الفبایی-عددی را ترجیح میدهند
- اشتراکگذاری فیکسچرهای آزمایشی به عنوان متن Base62 وقتی بایتهای خام مناسب نیستند
- ذخیره شناسهها یا محمولههای نسبتاً فشرده بدون الفباهای سنگین از علائم نگارشی
آزمایش قابلیت همکاری بین الفباها
- مقایسه خروجیها در ترتیبهای مختلف الفبا برای درک محدودیتهای سازگاری
- آموزش تفاوت بین Base64 (استاندارد) و Base62 (مبتنی بر گونههای مختلف)
- نشان دادن دلیل اهمیت اعتبارسنجی دقیق و الفباهای صریح
بررسیهای سلامت CI برای آثار کوچک
- اعتبارسنجی اینکه Base62 تولیدشده با موفقیت به بایتها رمزگشایی میشود (بررسیهای رفت و برگشت)
- اجبار به انتخاب یک الفبای واحد در مخازن مختلف برای قابل تکرار ماندن ساختها
- یکسانسازی بستهبندی/جداکنندهها تا تفاوتها پایدار بمانند
کاهش ابهام و خطرات رمزگشایی
- فعالسازی اعتبارسنجی دقیق برای رد زودهنگام کاراکترهای غیرمنتظره
- اجتناب از کپی کردن اسرار در ابزارهای مرورگر؛ استفاده از اسکریپتهای محلی برای دادههای حساس
- مستندسازی و قفل کردن انتخابهای الفبا برای جلوگیری از خرابی تصادفی بین سیستمها
❓ Frequently Asked Questions
آیا یک API عمومی برای این ابزار وجود دارد؟
API عمومی ارائه نمیدهد.پردازش محلی است یا از راه دور؟
آیا میتوانم با خیال راحت اسرار یا فایلهای حساس را اینجا رمزگذاری کنم؟
چرا رمزگشایی با خطای اعتبارسنجی/تجزیه ناموفق میشود؟
چرا فایل رمزگشاییشده من حتی با موفقیت رمزگشایی، خراب است؟
Pro Tips
Base62 را بهعنوان یک متغیر وابسته در نظر بگیرید: همیشه الفبا (0-9A-Za-z در مقابل 0-9a-zA-Z و غیره) را در کنار دادهها ثبت کنید.
برای خروجیهای پایدار، قابلیت بستهبندی را غیرفعال نگه دارید (wrapLineLength=0) مگر اینکه لایه انتقالی داشته باشید که به خطوط با عرض ثابت نیاز دارد.
هنگام اشکالزدایی، اعتبارسنجی سختگیرانه را فعال کنید: این کار فاصلههای اضافی، کاراکترهای نادرست و عدم تطابق الفبا را زود تشخیص میدهد.
در CI، یک آزمون رفت و برگشتی (رمزگذاری → رمزگشایی) روی نمونههای نماینده اضافه کنید و نسخه کتابخانه Base62 خود را ثابت نگه دارید.
Additional Resources
Other Tools
- زیباکننده CSS
- زیباکننده HTML
- زیباکننده JavaScript
- زیباکننده PHP
- انتخابگر رنگ
- استخراجکننده اسپرایت
- رمزگذار باینری Base32
- رمزگشای Base32
- رمزگذار Base32
- رمزگذار باینری Base58
- رمزگشای Base58
- رمزگذار Base58
- رمزگشای Base62
- رمزگذار Base62
- رمزگذار باینری Base64
- دیکودر 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