رمزگشای Base64
رشته Base64 را جایگذاری کنید و نتیجه رمزگشایی را همزمان ببینید: متن خوانا، پیشنمایش تصویر یا فایلی برای دانلود.
رمزگشایی آنلاین Base64
Base64 داده باینری را به حروف و ارقام ساده تبدیل میکند تا بتواند از دل JSON، ایمیل، HTML و URL عبور کند. وقتی در پاسخ یک API، یک فایل پیکربندی، یک secret در Kubernetes یا سورس یک ایمیل به رشتهای طولانی از چنین نویسههایی برمیخورید، رمزگشایی آن نشان میدهد واقعاً چه چیزی درونش است.
این صفحه کدگذار و رمزگشای Base64 را طوری باز میکند که همزمان با جایگذاری رمزگشایی کند. رمزگشایی در مرورگر شما انجام میشود؛ نکتهای مهم، چون رشتههای Base64 اغلب اطلاعات ورود یا دادههای شخصی در خود دارند.
رمزگشا چه کارهایی را برایتان انجام میدهد
- فاصلهها و شکست خطها، مثل بدنه ایمیلهای MIME که در ۷۶ نویسه به خط بعد میروند.
- Base64URL با
-و_که در JWT و URL به کار میرود. - padding ناقص: علامتهای
=انتهایی اختیاریاند. - Data URIها مثل
data:image/png;base64,…. - متن UTF-8، از جمله حروف دارای علائم آوایی، ایموجی و خطهای غیرلاتین مثل فارسی.
متن، تصویر یا فایل؟
پس از رمزگشایی، بایتها بررسی میشوند. اگر متن UTF-8 معتبر باشند و قالب باینری شناختهشدهای نباشند، متن نمایش داده میشود. اگر با امضای فایل PNG، JPEG، GIF، WebP، PDF یا ZIP شروع شوند، برای تصویرها پیشنمایش و یک دکمه دانلود با پسوند درست فایل میگیرید. به این ترتیب میتوانید یک پیوست یا تصویر جاسازیشده را از شکل Base64 آن بازیابی کنید.
دلیلهای رایج شکست رمزگشایی
| نشانه | علت احتمالی | راهحل |
|---|---|---|
| «Not valid Base64» | علامت نقلقول، نام کلید یا متن دیگری همراه رشته کپی شده است | فقط مقدار کدگذاریشده را جایگذاری کنید |
| بهصورت فایل ارائه میشود، در حالی که باید متن باشد | متن با UTF-8 نبوده، مثلاً Windows-1252 | آن را دانلود کنید و با همان کدگذاری باز کنید |
| خروجی خودش شبیه Base64 است | داده دو بار کدگذاری شده است | نتیجه را دوباره رمزگشایی کنید |
| «Not valid Base64» برای رشتهای طولانی و تمیز | رشته ناقص کپی شده است | مقدار کامل را کپی کنید |
رمزگشایی در کد و خط فرمان
Linux و macOS: echo 'SGVsbG8=' | base64 --decode. PowerShell: [Text.Encoding]::UTF8.GetString([Convert]::FromBase64String('SGVsbG8=')). JavaScript: new TextDecoder().decode(Uint8Array.from(atob(s), c => c.charCodeAt(0))) خروجی را بهدرستی با UTF-8 رمزگشایی میکند، کاری که atob بهتنها انجام نمیدهد. Python: base64.b64decode(s).decode().
برای بررسی یک توکن به جای Base64 خام، رمزگشای JWT سرآیند و payload آن را رمزگشایی و قالببندی میکند. برای مسیر برعکس با یک تصویر، از تبدیل عکس به Base64 استفاده کنید.