Base64 এনকোড/ডিকোড (টেক্সট)
⚡ ডেভেলপার এবং পাওয়ার ব্যবহারকারীদের জন্য বিনামূল্যের অনলাইন বেস৬৪ এনকোডার। মুহূর্তেই টেক্সট, JSON এবং বাইনারি ফাইলগুলিকে বেস৬৪ স্ট্রিংয়ে রূপান্তর করুন। 🔐 API, হেডার, ডেটা URI এবং পরীক্ষার জন্য উপযুক্ত। সমস্ত এনকোডিং আপনার ব্রাউজারেই ঘটে।
কেন এই Base64 এনকোডার ব্যবহার করবেন
- টেক্সট, JSON এবং ছোট বাইনারি পেলোডের জন্য তাৎক্ষণিক Base64 এনকোডিং
- ফাইল সমর্থন (টেক্সট, ইমেজ, বাইনারি) দ্রুত Base64 স্ট্রিংয়ে রূপান্তরের জন্য
- JWT, ক্যোয়ারী প্যারামিটার এবং ওয়েব-নিরাপদ প্রসঙ্গের জন্য URL-নিরাপদ অপশন
- CLI টুল বা ইমেইল / PEM ফরম্যাট অনুকরণের জন্য ঐচ্ছিক লাইন র্যাপিং
- হেডার, কনফিগ এবং কোডে সহজ পুনঃব্যবহারের জন্য এক-ক্লিক কপি
- রেসপন্সিভ UI যা ডেস্কটপ এবং মোবাইলে ভাল কাজ করে
- এনকোডিং আপনার ব্রাউজারে ঘটে — আপনার ডেটা কোনো রিমোট সার্ভারে পাঠানো হয় না
🔧 Base64 এনকোডিং কিভাবে কাজ করে (ধাপে ধাপে) for base64-encoder
ইনপুট প্রদান করুন
আপনার টেক্সট, JSON বা স্নিপেট ইনপুট এরিয়াতে পেস্ট করুন, অথবা একটি ফাইল ড্রপ করুন এর কাঁচা বাইটকে Base64-এ রূপান্তর করতে। টুলটি বাইটগুলো ঠিক যেমন আছে তেমন পড়ে।
বাইটে রূপান্তর করুন
এনকোডারটি অক্ষর (যেমন UTF-8 টেক্সট) বা ফাইল কন্টেন্টকে বাইটে রূপান্তর করে। প্রতিটি বাইট হল 0 থেকে 255 এর মধ্যে একটি 8-বিট মান।
বিটগুলিকে Base64 সূচকে পুনরায় গ্রুপ করুন
প্রতি 3 বাইট (3 × 8 = 24 বিট) 6 বিটের 4টি গ্রুপে পুনরায় গ্রুপ করা হয় (4 × 6 = 24)। প্রতিটি 6-বিট গ্রুপ Base64 বর্ণমালার একটি সূচক।
Base64 অক্ষরে ম্যাপ করুন এবং প্যাড করুন
প্রতিটি 6-বিট সূচক একটি Base64 অক্ষরে রূপান্তরিত হয়। ইনপুট যদি 3 বাইট দ্বারা বিভাজ্য না হয়, তাহলে '=' প্যাডিং যোগ করা হয় যাতে আউটপুট দৈর্ঘ্য সর্বদা 4 অক্ষরের গুণিতক হয়।
প্রযুক্তিগত বিবরণ
অক্ষর সেট (RFC 4648)
এই এনকোডারটি RFC 4648 দ্বারা সংজ্ঞায়িত স্ট্যান্ডার্ড Base64 বর্ণমালা ব্যবহার করে।
| রেঞ্জ / প্রকার | অক্ষর | নোট |
|---|---|---|
| সূচক 0–25 | A–Z | বড় হাতের অক্ষর |
| সূচক 26–51 | a–z | ছোট হাতের অক্ষর |
| সূচক ৫২–৬১ | ০–৯ | সংখ্যা |
| সূচক ৬২–৬৩ | + / | স্ট্যান্ডার্ড Base64 চিহ্ন |
| প্যাডিং | = | আউটপুটের দৈর্ঘ্য ৪-এর গুণিতক নিশ্চিত করে |
আকার ও ওভারহেড
Base64 শুধুমাত্র পাঠ্য চ্যানেলের নিরাপত্তার জন্য আকারের বিনিময় করে। এনকোডিংয়ের পরে প্রায় এক-তৃতীয়াংশ বেশি ডেটা আশা করুন।
| মূল আকার | Base64 আকার (আনুমানিক) | ওভারহেড |
|---|---|---|
| ৩ বাইট | ৪ অক্ষর | ~৩৩% বড় |
| ১ কিলোবাইট | ≈ ১.৩৭ কিলোবাইট | ~৩৭% প্যাডিং এবং নতুন লাইন সহ |
| ১ মেগাবাইট | ≈ ১.৩৭ মেগাবাইট | বড় স্কেলে একই অনুপাত |
কর্মক্ষমতা ও ব্যবহারিক সীমা
এনকোডিং নিজেই দ্রুত, কিন্তু বড় বাফার ব্রাউজার মেমরি এবং প্রতিক্রিয়াশীলতাকে প্রভাবিত করতে পারে।
| পেলোড আকার | ব্যবহারকারীর অভিজ্ঞতা | সুপারিশ |
|---|---|---|
| কয়েক কিলোবাইট | তাত্ক্ষণিক | হেডার, কনফিগ স্নিপেট এবং টেস্ট ডেটার জন্য আদর্শ |
| ১০০ কিলোবাইট – ১ মেগাবাইট | খুব প্রতিক্রিয়াশীল | API পেলোড এবং ফিক্সচারের জন্য সাধারণ |
| ১–৫ মেগাবাইট | আধুনিক হার্ডওয়্যারে সাধারণত ভাল | যদি প্রায়ই করেন তবে CLI টুল বিবেচনা করুন |
| > ৫–১০ মেগাবাইট | ব্রাউজারে ধীর বা মেমরি-ভারী মনে হতে পারে | স্ট্রিমিং এনকোডার বা CLI ইউটিলিটি ব্যবহার করুন |
কমান্ড-লাইন বেস৬৪ এনকোডিং
বড় ফাইল, অটোমেশন বা CI ওয়ার্কফ্লোর জন্য, আপনার প্ল্যাটফর্মে নেটিভ বেস৬৪ ইউটিলিটি ব্যবহার করুন।
লিনাক্স / 🍏 ম্যাকওএস
একটি স্ট্রিং এনকোড করুন
echo -n 'text' | base64নিউলাইন যোগ না করে 'text' স্ট্রিংটি বেস৬৪ হিসেবে এনকোড করে।
একটি ফাইল এনকোড করুন
base64 input.bin > output.b64input.bin থেকে বাইনারি ডেটা পড়ে এবং output.b64-এ বেস৬৪ টেক্সট লেখে।
উইন্ডোজ / পাওয়ারশেল
পাওয়ারশেল দিয়ে স্ট্রিং এনকোড করুন
[Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes("text"))'text'-এর জন্য UTF-8 বাইটগুলিকে একটি বেস৬৪ স্ট্রিং-এ রূপান্তর করে।
certutil (CMD) দিয়ে ফাইল এনকোড করুন
certutil -encode input.bin output.b64বেস৬৪-এনকোডেড ফাইল তৈরি করতে উইন্ডোজের অন্তর্নির্মিত টুল ব্যবহার করে।
ব্যবহারিক প্রয়োগ
ওয়েব ডেভেলপমেন্ট ও ডেটা URI
ছোট অ্যাসেট এবং রিসোর্স সরাসরি HTML, CSS বা JavaScript-এ অন্তর্ভুক্ত করুন।
- লোগো, আইকন এবং ছোট ছবির জন্য data:image/...;base64,... তৈরি করুন।
- CSS নিয়মে ফন্ট বা SVG কন্টেন্ট ইনলাইন করুন।
- ছোট পেলোডগুলি বেস৬৪ স্ট্রিং হিসেবে LocalStorage-এ সংরক্ষণ করুন।
<img src="data:image/png;base64,iVBORw0KGgo...">document.styleSheets[0].insertRule("@font-face{src:url('data:font/woff2;base64,...')}" );API ডেভেলপমেন্ট ও হেডার
ক্রেডেনশিয়াল এবং ছোট পেলোডগুলি শুধুমাত্র টেক্সট চ্যানেলের মাধ্যমে নিরাপদে পরিবহন করুন।
- ব্যবহারকারী:পাসওয়ার্ড জোড়া থেকে Authorization: Basic হেডার তৈরি করুন।
- কাস্টম হেডার বা ক্যোয়ারী প্যারামিটারের জন্য JSON পেলোড বেস৬৪-এ এনকোড করুন।
- JSON-এ বাইনারি ব্লবগুলিকে বেস৬৪ স্ট্রিং হিসেবে মোড়ক করুন।
Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=fetch(url, { headers: { 'X-Payload': btoa(JSON.stringify(data)) } });টেস্টিং, ফিক্সচার ও ডিবাগিং
টেস্ট এবং ডিবাগিং সেশনের জন্য স্থিতিশীল, শুধুমাত্র টেক্সট ফিক্সচার তৈরি করুন।
- বাইনারি ফিক্সচার (ছবি, PDF) এনকোড করে এবং সেগুলি টেস্ট কোডে এম্বেড করুন।
- নমুনা পেলোডগুলি বাইনারি ফাইল কমিট করার পরিবর্তে বেস৬৪ স্ট্রিং হিসেবে সংরক্ষণ করুন।
- Base64-এনকোডেড ফিল্ড আশা করে এমন সার্ভিসের জন্য প্রোটোটাইপ পেলোড।
// উদাহরণ: Base64 ফিক্সচার ব্যবহার করে জেস্ট টেস্ট
const payload = Buffer.from(base64Fixture, 'base64');
expect(processPayload(payload)).toBeTruthy();
❓ Frequently Asked Questions
❓Base64 কেন '=' প্যাডিং ব্যবহার করে?
Base64 ইনপুটকে ৩ বাইট (২৪ বিট) ব্লকে ভাগ করে এবং ৪টি অক্ষর (৪ × ৬ বিট) আউটপুট দেয়। যখন ইনপুটের দৈর্ঘ্য ৩ দ্বারা বিভাজ্য না হয়, তখন শেষ ব্লকটি ছোট তা নির্দেশ করতে '=' প্যাডিং অক্ষর যোগ করা হয়। প্যাডিং এনকোডিং ফরম্যাটের অংশ, মূল ডেটার নয়।🔗কিভাবে URL-সেফ Base64 তৈরি করব?
Base64 '+' কে '-' এবং '/' কে '_' দিয়ে প্রতিস্থাপন করে, এবং প্রায়ই শেষের '=' প্যাডিং সরিয়ে দেয়। অনেক লাইব্রেরিতে URL-সেফ মোড থাকে। যদি ম্যানুয়ালি করতে চান, স্ট্যান্ডার্ড Base64 থেকে শুরু করে, তারপর এই প্রতিস্থাপনগুলো প্রয়োগ করুন এবং আপনার ব্যবহারের ক্ষেত্রে '=' ট্রিম করুন।🔒Base64 এনকোডিং কি একটি নিরাপত্তা ব্যবস্থা?
Base64 একটি বিপরীতমুখী **এনকোডিং** যা বাইনারি ডেটাকে টেক্সট হিসেবে নিরাপদে পরিবহন করতে সক্ষম করে (যেমন JSON, HTML বা হেডারে)। এটি নিজে থেকে কোন গোপনীয়তা বা অখণ্ডতা প্রদান করে না। নিরাপত্তার জন্য সর্বদা HTTPS/TLS এবং সঠিক ক্রিপ্টোগ্রাফি (যেমন AES বা পাবলিক-কি স্কিম) ব্যবহার করুন।📏আমি এখানে সর্বোচ্চ কত আকারের ফাইল এনকোড করতে পারি?
Pro Tips
খুব ছোট অ্যাসেটের জন্য (< ১০ KB), Base64 ডেটা URI হিসেবে ইনলাইন করা HTTP রিকোয়েস্ট কমাতে পারে, কিন্তু বড় ছবি বা ফন্টের জন্য এটি এড়িয়ে চলুন।
প্রোডাকশনে শুধু ছাঁটা Base64 পেলোড (বা হ্যাশ) লগ করুন যাতে লগে সংবেদনশীল কনটেন্ট ফাঁস না হয়।
যদি আপনার ব্যাকএন্ড Base64 আশা করে, সার্ভার-সাইডে ইনপুট ভ্যালিডেট এবং নরমালাইজ করুন যাতে ভুলভাবে গঠিত বা অযৌক্তিকভাবে বড় পেলোড প্রত্যাখ্যান করা যায়।
Additional Resources
Other Tools
- সিএসএস সৌন্দর্যবর্ধক
- এইচটিএমএল সৌন্দর্যবর্ধক
- জাভাস্ক্রিপ্ট সৌন্দর্যবর্ধক
- পিএইচপি সৌন্দর্যবর্ধক
- রং নির্বাচক
- স্প্রাইট এক্সট্র্যাক্টর
- বেস৩২ বাইনারি এনকোডার
- বেস৩২ ডিকোডার
- বেস৩২ এনকোডার
- বেস৫৮ বাইনারি এনকোডার
- বেস৫৮ ডিকোডার
- বেস৫৮ এনকোডার
- বেস৬২ বাইনারি এনকোডার
- বেস৬২ ডিকোডার
- বেস৬২ এনকোডার
- বেস৬৪ বাইনারি এনকোডার
- বেস৬৪ ডিকোডার
- হেক্স বাইনারি এনকোডার
- হেক্স ডিকোডার
- হেক্স এনকোডার
- সি-শার্প ফরম্যাটার
- সিএসভি ফরম্যাটার
- Dockerfile Formatter
- এলম ফরম্যাটার
- ইএনভি ফরম্যাটার
- গো ফরম্যাটার
- গ্রাফকিউএল ফরম্যাটার
- এইচসিএল ফরম্যাটার
- আইএনআই ফরম্যাটার
- জেসন ফরম্যাটার
- ল্যাটেক ফরম্যাটার
- মার্কডাউন ফরম্যাটার
- অবজেক্টিভসি ফরম্যাটার
- Php Formatter
- প্রোটো ফরম্যাটার
- পাইথন ফরম্যাটার
- রুবি ফরম্যাটার
- রাস্ট ফরম্যাটার
- স্কালা ফরম্যাটার
- শেল স্ক্রিপ্ট ফরম্যাটার
- এসকিউএল ফরম্যাটার
- SVG ফরম্যাটার
- Swift ফরম্যাটার
- TOML ফরম্যাটার
- Typescript Formatter
- XML ফরম্যাটার
- YAML ফরম্যাটার
- Yarn ফরম্যাটার
- সিএসএস মিনিফায়ার
- Html Minifier
- Javascript Minifier
- জেসন মিনিফায়ার
- XML মিনিফায়ার
- এইচটিটিপি হেডার ভিউয়ার
- পিডিএফ থেকে টেক্সট
- রেজেক্স টেস্টার
- সার্প র্যাংক চেকার
- Whois লুকআপ