تبدیل Base64 به Hex
تبدیل بین Base64 و هگزادسیمال
Base64
Hex
تبدیل Base64 به Hex چیست؟
تبدیل Base64 به hex، دادهها را بین دو روش رایج کدگذاری باینری-به-متن جابجا میکند. Base64 دادههای باینری را با ۶۴ کاراکتر ASCII (A-Z، a-z، 0-9، +، /) نمایش میدهد و هر ۳ بایت را به ۴ کاراکتر تبدیل میکند. هگزادسیمال هر بایت را دقیقاً به دو کاراکتر از الفبای ۱۶ نمادی (0-9، a-f) نمایش میدهد. تبدیل بین این دو فرمت یک فرایند دو مرحلهای است: رشته Base64 را به بایتهای خام تبدیل کنید، سپس آن بایتها را در فرمت هدف بازکدگذاری کنید.
نمایش هگزادسیمال، نمایش استاندارد دادههای باینری در برنامهنویسی سطح پایین، رمزنگاری و پروتکلهای شبکه است. هر کاراکتر hex مستقیماً به یک nibble چهاربیتی نگاشت میشود که خواندن مقادیر تکتک بایتها را آسان میکند. یک هش SHA-256، برای نمونه، تقریباً همیشه بهصورت یک رشته hex ۶۴ کاراکتری نمایش داده میشود. Base64 در مقابل برای فشردگی بهینه شده است — همان هش تنها ۴۴ کاراکتر در Base64 میگیرد — و کدگذاری استاندارد برای پیوستهای ایمیل (MIME)، data URI و محمولههای API است.
هر دو کدگذاری در RFC 4648 تعریف شدهاند. تبدیل بین آنها بدون اتلاف است: هیچ دادهای اضافه یا حذف نمیشود، تنها نمایش متنی تغییر میکند. این ویژگی، تبدیل Base64 به hex را به یک عملیات معمول در رفع اشکال محمولههای رمزشده، بررسی اثرانگشت گواهینامهها، یا تأیید خروجی هش در سیستمهایی با فرمتهای نمایش متفاوت تبدیل میکند.
چرا از این مبدل Base64 به Hex استفاده کنیم؟
این ابزار مستقیماً در مرورگر شما بین Base64 و هگزادسیمال تبدیل میکند. هیچ دادهای دستگاه شما را ترک نمیکند و تبدیل در لحظه تایپ انجام میشود.
موارد استفاده از تبدیل Base64 به Hex
مقایسه کدگذاری Base64 و هگزادسیمال
Base64 و هگزادسیمال هر دو دادههای باینری را به متن قابل چاپ تبدیل میکنند، اما مصالحههای متفاوتی بین فشردگی و خوانایی دارند. جدول زیر تفاوتهای کلیدی را خلاصه میکند.
| ویژگی | Base64 | Hexadecimal |
|---|---|---|
| الفبا | A-Z a-z 0-9 + / = | 0-9 a-f |
| بیت در هر کاراکتر | 6 | 4 |
| سربار اندازه | ~۳۳٪ بزرگتر از خام | ۱۰۰٪ بزرگتر از خام |
| خوانایی | فشرده اما مبهم | هر بایت بهصورت ۲ کاراکتر قابل مشاهده |
| استفاده اصلی | ایمیل، data URIها، APIها | هشهای رمزنگاری، آدرسهای MAC، رنگها |
| مشخصه فنی | RFC 4648 | IEEE 754, RFC 4648 sec 8 |
نمونههای تبدیل
جدول زیر توالیهای بایتی یکسان را در نمایش Base64 و هگزادسیمال نشان میدهد. توجه کنید که طول خروجی hex همیشه دقیقاً دو برابر تعداد بایتهاست، در حالی که طول Base64 برابر ceil(byteCount / 3) * 4 است.
| ورودی (متن / بایتها) | Base64 | Hex |
|---|---|---|
| Hello | SGVsbG8= | 48656c6c6f |
| AB | QUI= | 4142 |
| 0xFF | MHhGRg== | 30784646 |