کدگذاری/کدگشایی Base58

پردازش ۱۰۰٪ سمت کاربر (بدون آپلود سرور). متن را جایگذاری کنید، الفبای Base58 (بیت‌کوین، Flickr، یا Ripple/XRP) و مجموعه کاراکتر را انتخاب کنید، سپس روی «کدگذاری» کلیک کنید تا خروجی Base58 تولید شود که می‌توانید کپی یا دانلود کنید. نیاز به جهت مخالف دارید؟ از صفحه دیگر استفاده کنید.

Loading…

درباره کدگذاری Base58 (متن)

این صفحه فقط بر روی کدگذاری متمرکز است: متن را وارد کنید، الفبای Base58 (بیت‌کوین، Flickr، یا Ripple/XRP) و مجموعه کاراکتر مورد استفاده برای تبدیل متن به بایت را انتخاب کنید، سپس روی «کدگذاری» کلیک کنید تا خروجی Base58 تولید شود. می‌توانید پیش‌نمایش زنده را برای ورودی‌های کوچک فعال کنید، خطوط را برای خوانایی بپیچید و قالب‌بندی خروجی را با جداکننده خط انتخاب شده سازگار نگه دارید. زمان اجرا ۱۰۰٪ پردازش سمت کاربر است (بدون آپلود سرور).

ویژگی‌ها

  • کدگذاری متن به خروجی Base58 مستقیماً در مرورگر شما
  • انتخاب الفبا: بیت‌کوین (پیش‌فرض)، Flickr، یا Ripple/XRP
  • انتخاب مجموعه کاراکتر (متن → بایت) با بازگشت ایمن به UTF-8 در صورت عدم پشتیبانی
  • پیش‌نمایش زنده برای تکرار سریع روی ورودی‌های کوچک
  • پیچیدن اختیاری خطوط (۰–۱۲۰) برای بلوک‌های خوانای Base58
  • پایان‌های خط خروجی سازگار (LF یا CRLF) برای کپی در محیط‌های مختلف
  • پردازش ۱۰۰٪ سمت کاربر (بدون آپلود سرور).

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

1

متن خود را جایگذاری کنید

متن ساده خود را در ویرایشگر ورودی جایگذاری یا تایپ کنید (یا یک فایل متنی رها کنید). برای محتوای غیر-ASCII، «مجموعه کاراکتر» صحیح را انتخاب نگه دارید تا بایت‌ها به طور سازگار تولید شوند.

2

روی «کدگذاری» کلیک کنید

مطمئن شوید «عمل» روی «کدگذاری» تنظیم شده است، «الفبا» (بیت‌کوین/Flickr/Ripple) را انتخاب کنید، گزینه‌های قالب‌بندی مانند طول پیچش را در صورت نیاز تنظیم کنید، سپس روی «کدگذاری» کلیک کنید.

3

کپی/دانلود

خروجی Base58 را از ویرایشگر نتیجه کپی کنید، یا اگر از گردش کار فایل شروع کرده‌اید، آن را از رابط کاربری ابزار دانلود کنید.

مشخصات فنی

مدل اجرا

افشای زمان اجرا و محدودیت‌های این صفحه کدگذاری Base58.

جنبهجزئیات
اجراپردازش ۱۰۰٪ سمت کاربر (بدون آپلود سرور).
حوزه عملکدگذاری متن → Base58 (این صفحه). نیاز به جهت مخالف دارید؟ از صفحه دیگر استفاده کنید.
ورودی‌هاورودی متن (ویرایشگر یا منطقه رهاسازی)؛ کدگذاری اختیاری خط به خط
الفباهابیت‌کوین (پیش‌فرض)، فلیکر، ریپل / XRP
رمزگذاری متنمتن ورودی با استفاده از «مجموعه کاراکترها» به بایت تبدیل می‌شود (انتخاب‌های پشتیبانی‌نشده به UTF-8 بازمی‌گردند)
قالب‌بندی خروجیطول بسته‌بندی اختیاری (۰–۱۲۰)، خط جدید پایانی اختیاری، جداکننده خط LF/CRLF
محدودیت‌هاحدود ۱–۲ مگابایت کاراکتر؛ زمان‌بندی حدود ۲۵۰۰۰ میلی‌ثانیه
نگهداریهمه پردازش‌ها به صورت محلی در مرورگر شما انجام می‌شود (بدون آپلود)
حتی با اجرای محلی، از رمزگذاری اسرار حساس در دستگاه‌های اشتراکی یا با افزونه‌های مرورگر غیرمطمئن خودداری کنید. برای داده‌های پرخطر، ابزارهای آفلاین را ترجیح دهید.

مثال کوچک

یک مثال کوچک با استفاده از نمونه داخلی (انتخاب الفبا نتیجه را تغییر می‌دهد).

فیلدمقدار
ورودی (متن)سلام
عملرمزگذاری
الفبابیت‌کوین (پیش‌فرض)
خروجی (Base58)9Ajdvzr
برای بازتولید دقیق خروجی‌ها در محیط‌های مختلف، هر دو «الفبا» و «مجموعه کاراکترها» را ثابت نگه دارید.

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

دام‌های رایج و مواردی که هنگام رفتار غیرمنتظره رمزگذاری Base58 باید بررسی شوند.

نشانهعلت احتمالیچه چیزی را بررسی کنیم
ورودی خیلی بزرگ است (حداکثر ۲ مگابایت)متن از حد مجاز اندازه ابزار فراتر رفته استورودی را تقسیم کنید، «پیش‌نمایش زنده» را غیرفعال کنید یا از رمزگذار محلی برای بارهای بزرگ استفاده کنید
خروجی با ابزار دیگر متفاوت استالفبای Base58 متفاوتی انتخاب شده است«الفبا» را تأیید کنید (بیت‌کوین در مقابل فلیکر در مقابل ریپل/XRP)
کاراکترهای غیر-ASCII متفاوت رمزگذاری می‌شوندرمزگذاری متن به بایت متفاوتی استفاده شده است«مجموعه کاراکترها» را مطابقت دهید (مقادیر پشتیبانی‌نشده به UTF-8 بازمی‌گردند)
شکست‌های خط غیرمنتظره در خروجیبسته‌بندی یا خط جدید پایانی فعال شده است«بسته‌بندی خطوط در» را روی ۰ تنظیم کنید و/یا «درج خط جدید پایانی» را تغییر دهید
تایپ کند / محاسبه مجدد مکررپیش‌نمایش زنده در هر ویرایش مجدداً محاسبه می‌شودبرای ورودی‌های بزرگتر، "پیش‌نمایش زنده" را غیرفعال کرده و در صورت نیاز روی "رمزگذاری" کلیک کنید

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

برای اتوماسیون، CI یا محتوای حساس، اجرای محلی را ترجیح دهید. Base58 بخشی از coreutils استاندارد POSIX نیست، بنابراین یک زبان اسکریپت‌نویسی گزینه‌ای استاندارد است.

Node.js (همه پلتفرم‌ها)

رمزگذاری به Base58 (الفبای بیت‌کوین) با استفاده از یک کتابخانه رایج

node -e "const bs58=require('bs58'); const input=Buffer.from('Hello','utf8'); console.log(bs58.encode(input));"

بایت‌های UTF-8 را با استفاده از یک کتابخانه پرکاربرد Base58 رمزگذاری می‌کند. مطمئن شوید که رفتار الفبا/کتابخانه با اکوسیستم هدف شما یکسان است.

Python (همه پلتفرم‌ها)

رمزگذاری به Base58 (الفبای بیت‌کوین) با استفاده از یک کتابخانه

python -c "import base58; print(base58.b58encode(b'Hello').decode())"

بایت‌ها را به Base58 رمزگذاری می‌کند. برای ورودی‌های متنی، از بایت‌هایی استفاده کنید که با مجموعه کاراکتر مورد نظر شما (مانند UTF-8) مطابقت دارند.

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

اشتراک‌گذاری شناسه‌های فشرده بدون کاراکترهای مبهم

  • تولید رشته‌های Base58 که از کاراکترهای مشابه مانند 0/O و I/l اجتناب می‌کنند
  • تولید توکن‌های مناسب برای کپی/پیست از ورودی‌های متنی

تولید رشته‌های Base58 سازگار با یک اکوسیستم خاص

  • مطابقت با یک سیستم شریک که انتظار الفبای بیت‌کوین، فلیکر یا ریپل را دارد
  • استانداردسازی تنظیمات الفبا + مجموعه کاراکتر برای خروجی یکسان تیم

رمزگذاری مناسب برای عملکرد با حجم داده‌های کوچک در مرورگر

  • استفاده از پیش‌نمایش زنده برای رشته‌های کوتاه برای تکرار سریع
  • غیرفعال کردن پیش‌نمایش زنده برای ورودی‌های بزرگتر برای کاهش محاسبات مجدد

بردارهای تست CI و بررسی‌های تکرارپذیری

  • ایجاد خروجی‌های قطعی Base58 با ثابت نگه داشتن الفبا + مجموعه کاراکتر
  • مقایسه خروجی مرورگر با اسکریپت‌های مرجع محلی Node/Python

آموزش مبانی رمزگذاری

  • نشان دادن اینکه چگونه انتخاب الفبا خروجی رمزگذاری شده را تغییر می‌دهد
  • نشان دادن اهمیت سازگاری در رمزگذاری متن (مجموعه کاراکتر)

❓ Frequently Asked Questions

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

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

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

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

آیا باید کلیدهای API و رمزهای عبور را اینجا کدگذاری کنم؟

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

چرا خروجی Base58 من با وب‌سایت یا کتابخانه دیگری مطابقت ندارد؟

رایج‌ترین دلیل عدم تطابق الفبا (بیت‌کوین در مقابل Flickr در مقابل Ripple/XRP) است. دلیل متداول دیگر تفاوت در کدگذاری متن به بایت است: همان کاراکترها ممکن است تحت کدگذاری‌های مختلف بایت‌های متفاوتی تولید کنند. مطمئن شوید که «الفبا» و «مجموعه کاراکتر» با محیط هدف شما مطابقت دارند.

Pro Tips

Best Practice

ابتدا الفبا را انتخاب کنید (بیت‌کوین/Flickr/Ripple) و در سراسر پروژه خود آن را ثابت نگه دارید تا از عدم تطابق‌های سخت‌عیب‌یابی جلوگیری کنید.

Best Practice

اگر به نتایج قابل تکرار در پلتفرم‌های مختلف نیاز دارید، هر دو «الفبا» و «مجموعه کاراکتر» را استاندارد کنید (UTF-8 امن‌ترین پیش‌فرض است).

Best Practice

برای ورودی‌های بزرگ، «پیش‌نمایش زنده» را غیرفعال کنید و فقط در صورت نیاز کدگذاری کنید تا از کار تکراری هنگام تایپ جلوگیری شود.

Best Practice

برای داده‌های پرریسک، به ابزارهای مرورگر اعتماد نکنید؛ یک اسکریپت محلی (Node/Python) اجرا کنید تا اسرار هرگز وارد یک نشست مرورگر نشوند.

Best Practice

هنگام اشتراک‌گذاری خروجی کدگذاری شده در سیستم‌های حساس به انتهای خط، «جداکننده خط» (LF در مقابل CRLF) را به صراحت تنظیم کنید تا با محیط شما مطابقت داشته باشد.

Additional Resources

Other Tools