Base64 এনকোড/ডিকোড (টেক্সট)

Loading dropzone…

Input

Output

এই Base64 এনকোডার সম্পর্কে অনলাইন Base64 এনকোডার

Encode64 "Base64 স্টুডিও"-এর অংশ, এই এনকোডারটি টেক্সট, JSON এবং ছোট বাইনারি অ্যাসেটগুলিকে Base64 স্ট্রিংয়ে পরিণত করে যা হেডার, HTML/CSS, এনভায়রনমেন্ট ভেরিয়েবল বা টেস্ট ফিক্সচারে পেস্ট করার জন্য প্রস্তুত। কোনো লগইন নেই, কোনো ইন্সটল নেই এবং কোনো সার্ভার-সাইড প্রসেসিং নেই।

কেন এই Base64 এনকোডার ব্যবহার করবেন

  • টেক্সট, JSON এবং ছোট বাইনারি পেলোডের জন্য তাৎক্ষণিক Base64 এনকোডিং
  • ফাইল সমর্থন (টেক্সট, ইমেজ, বাইনারি) দ্রুত Base64 স্ট্রিংয়ে রূপান্তরের জন্য
  • JWT, ক্যোয়ারী প্যারামিটার এবং ওয়েব-নিরাপদ প্রসঙ্গের জন্য URL-নিরাপদ বিকল্প
  • CLI টুল বা ইমেইল / PEM ফরম্যাট অনুকরণের জন্য ঐচ্ছিক লাইন র‍্যাপিং
  • হেডার, কনফিগ এবং কোডে সহজ পুনর্ব্যবহারের জন্য এক-ক্লিক কপি
  • রেসপন্সিভ UI যা ডেস্কটপ এবং মোবাইলে ভাল কাজ করে
  • এনকোডিং আপনার ব্রাউজারে ঘটে — আপনার ডেটা দূরবর্তী সার্ভারে প্রেরণ করা হয় না

🔧 Base64 এনকোডিং কিভাবে কাজ করে (ধাপে ধাপে) for base64-encoder

1

ইনপুট প্রদান করুন

আপনার টেক্সট, JSON বা স্নিপেট ইনপুট এলাকায় পেস্ট করুন, অথবা একটি ফাইল ড্রপ করে এর কাঁচা বাইট Base64-এ রূপান্তর করুন। টুলটি বাইটগুলি ঠিক যেমন আছে সেভাবে পড়ে।

2

বাইটে রূপান্তর করুন

এনকোডারটি অক্ষর (যেমন UTF-8 টেক্সট) বা ফাইল কন্টেন্টকে বাইটে রূপান্তর করে। প্রতিটি বাইট 0 থেকে 255 এর মধ্যে একটি 8-বিট মান।

3

বেস64 সূচকে বিট পুনরায় গ্রুপ করুন

প্রতি 3 বাইট (3 × 8 = 24 বিট) 6 বিটের 4 গ্রুপে (4 × 6 = 24) পুনরায় গ্রুপ করা হয়। প্রতিটি 6-বিট গ্রুপ Base64 বর্ণমালার একটি সূচক।

4

Base64 অক্ষরে ম্যাপ করুন এবং প্যাড করুন

প্রতিটি 6-বিট সূচক একটি Base64 অক্ষরে রূপান্তরিত হয়। যদি ইনপুট 3 বাইট দ্বারা বিভাজ্য না হয়, '=' প্যাডিং যোগ করা হয় যাতে আউটপুট দৈর্ঘ্য সর্বদা 4 অক্ষরের গুণিতক হয়।

প্রযুক্তিগত বিবরণ

অক্ষর সেট (RFC 4648)

এই এনকোডার RFC 4648 দ্বারা সংজ্ঞায়িত স্ট্যান্ডার্ড Base64 বর্ণমালা ব্যবহার করে।

রেঞ্জ / প্রকারঅক্ষরনোট
সূচক 0–25A–Zবড় হাতের অক্ষর
সূচক 26–51a–zছোট হাতের অক্ষর
সূচক ৫২–৬১০–৯সংখ্যা
সূচক ৬২–৬৩+ /স্ট্যান্ডার্ড Base64 চিহ্ন
প্যাডিং=নিশ্চিত করে আউটপুটের দৈর্ঘ্য ৪-এর গুণিতক

আকার ও ওভারহেড

Base64 শুধুমাত্র টেক্সট চ্যানেলে নিরাপত্তার বিনিময়ে আকার বাড়ায়। এনকোডিংয়ের পরে প্রায় এক-তৃতীয়াংশ বেশি ডেটা আশা করুন।

মূল আকারBase64 আকার (আনুমানিক)ওভারহেড
৩ বাইট৪ অক্ষর~৩৩% বড়
১ কিলোবাইট≈ ১.৩৭ কিলোবাইট~৩৭% প্যাডিং ও নিউলাইন সহ
১ মেগাবাইট≈ ১.৩৭ মেগাবাইটবড় স্কেলেও একই অনুপাত
Base64 ব্যবহার করুন যখন নিরাপদ টেক্সট পরিবহন প্রয়োজন (যেমন HTTP হেডার, JSON, HTML), কম্প্রেশন পদ্ধতি হিসেবে নয়।

কর্মক্ষমতা ও ব্যবহারিক সীমা

এনকোডিং নিজেই দ্রুত, কিন্তু বড় বাফার ব্রাউজার মেমরি ও প্রতিক্রিয়াশীলতাকে প্রভাবিত করতে পারে।

পেলোড আকারব্যবহারকারীর অভিজ্ঞতাসুপারিশ
কয়েক কিলোবাইটতাত্ক্ষণিকহেডার, কনফিগ স্নিপেট ও টেস্ট ডেটার জন্য আদর্শ
১০০ কিলোবাইট – ১ মেগাবাইটখুব প্রতিক্রিয়াশীলAPI পেলোড ও ফিক্সচারের জন্য সাধারণ
১–৫ মেগাবাইটআধুনিক হার্ডওয়্যারে সাধারণত ঠিক আছেযদি প্রায়ই করেন তবে CLI টুল বিবেচনা করুন
> ৫–১০ মেগাবাইটব্রাউজারে ধীর বা মেমরি-ভারী মনে হতে পারেস্ট্রিমিং এনকোডার বা CLI ইউটিলিটি ব্যবহার করুন

কমান্ড-লাইন বেস৬৪ এনকোডিং

বড় ফাইল, অটোমেশন বা CI ওয়ার্কফ্লোর জন্য আপনার প্ল্যাটফর্মের নেটিভ বেস৬৪ ইউটিলিটি ব্যবহার করুন।

লিনাক্স / 🍏 ম্যাকওএস

একটি স্ট্রিং এনকোড করুন

echo -n 'text' | base64

নিউলাইন যোগ না করে 'text' স্ট্রিংটি বেস৬৪ হিসেবে এনকোড করে।

একটি ফাইল এনকোড করুন

base64 input.bin > output.b64

input.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 তৈরি করব?

URL-সেফ Base64 '+' কে '-' এবং '/' কে '_' দিয়ে প্রতিস্থাপন করে, এবং প্রায়ই শেষের '=' প্যাডিং সরিয়ে দেয়। অনেক লাইব্রেরিতে URL-সেফ মোড থাকে। যদি ম্যানুয়ালি করতে চান, স্ট্যান্ডার্ড Base64 থেকে শুরু করে আপনার ব্যবহারের ক্ষেত্রে এই প্রতিস্থাপন প্রয়োগ করুন এবং '=' ট্রিম করুন।

🔒Base64 এনকোডিং কি একটি নিরাপত্তা ব্যবস্থা?

না। Base64 একটি বিপরীতমুখী **এনকোডিং** যা বাইনারি ডেটাকে টেক্সট হিসেবে নিরাপদে পরিবহন করতে সক্ষম করে (যেমন JSON, HTML বা হেডারে)। এটি নিজে থেকে কোন গোপনীয়তা বা অখণ্ডতা প্রদান করে না। নিরাপত্তার জন্য সর্বদা HTTPS/TLS এবং সঠিক ক্রিপ্টোগ্রাফি (যেমন AES বা পাবলিক-কি স্কিম) ব্যবহার করুন।

📏এখানে এনকোড করার জন্য সর্বোচ্চ ফাইল সাইজ কত?

এই অনলাইন এনকোডার কয়েক মেগাবাইট পর্যন্ত পেলোডের সাথে সবচেয়ে আরামদায়ক। বড় বাইনারিগুলো এখনও কাজ করতে পারে কিন্তু ব্রাউজারে ধীর বা মেমরি-নিবিড় হতে পারে। বড় ফাইলের জন্য কমান্ড-লাইন টুলস বা স্ট্রিমিং এনকোডার বেশি শক্তিশালী।

Pro Tips

Best Practice

খুব ছোট অ্যাসেট (< ১০ KB) এর জন্য, Base64 ডেটা URI হিসেবে ইনলাইন করা HTTP রিকোয়েস্ট কমাতে পারে, কিন্তু বড় ইমেজ বা ফন্টের জন্য এটি এড়িয়ে চলুন।

Best Practice

প্রোডাকশনে শুধু ট্রাঙ্কেটেড Base64 পেলোড (বা হ্যাশ) লগ করুন যাতে লগে সংবেদনশীল কনটেন্ট লিক না হয়।

Best Practice

যদি আপনার ব্যাকএন্ড Base64 আশা করে, সার্ভার-সাইড ইনপুট ভ্যালিডেট এবং নরমালাইজ করুন যাতে ভুল ফরম্যাট বা অযৌক্তিক বড় পেলোড রিজেক্ট হয়।

Additional Resources

Other Tools