ToolDeck

Base64 থেকে Hex রূপান্তরকারী

Base64 ও হেক্সাডেসিমালের মধ্যে রূপান্তর করুন

Base64

Hex

স্থানীয়ভাবে চলে · গোপন তথ্য পেস্ট করা নিরাপদ
আউটপুট এখানে দেখাবে…
Base64 → Hex

Base64 থেকে Hex রূপান্তর কী?

Base64 থেকে hex রূপান্তর দুটি সাধারণ বাইনারি-টু-টেক্সট এনকোডিং পদ্ধতির মধ্যে ডেটা রূপান্তরিত করে। Base64 বাইনারি ডেটা উপস্থাপন করে 64টি ASCII অক্ষর ব্যবহার করে (A-Z, a-z, 0-9, +, /), প্রতি 3 বাইটকে 4টি অক্ষর হিসেবে এনকোড করে। হেক্সাডেসিমাল প্রতিটি বাইটকে 16-প্রতীকের বর্ণমালা (0-9, a-f) থেকে ঠিক দুটি অক্ষর হিসেবে উপস্থাপন করে। এই ফরম্যাটগুলির মধ্যে রূপান্তর একটি দুই-ধাপের প্রক্রিয়া: Base64 স্ট্রিংকে তার কাঁচা বাইটে ডিকোড করুন, তারপর সেই বাইটগুলিকে লক্ষ্য ফরম্যাটে পুনরায় এনকোড করুন।

হেক্সাডেসিমাল নোটেশন নিম্ন-স্তরের প্রোগ্রামিং, ক্রিপ্টোগ্রাফি এবং নেটওয়ার্ক প্রোটোকলে বাইনারি ডেটার মানক উপস্থাপনা। প্রতিটি hex অক্ষর সরাসরি একটি 4-বিট নিবলে ম্যাপ করে, যা পৃথক বাইট মানগুলি পড়া সহজ করে। SHA-256 হ্যাশ, উদাহরণস্বরূপ, প্রায় সবসময় একটি 64-অক্ষরের hex স্ট্রিং হিসেবে প্রদর্শিত হয়। Base64, বিপরীতভাবে, সংকোচনের জন্য অপ্টিমাইজড — একই হ্যাশ Base64-এ মাত্র 44টি অক্ষর নেয় — এবং এটি ইমেইল সংযুক্তি (MIME), ডেটা URI, এবং API পেলোডের মানক এনকোডিং।

উভয় এনকোডিং RFC 4648-এ সংজ্ঞায়িত। তাদের মধ্যে রূপান্তর ক্ষতিহীন: কোনো ডেটা যোগ বা সরানো হয় না, শুধু পাঠ্য উপস্থাপনা পরিবর্তন হয়। এটি Base64-থেকে-hex রূপান্তরকে একটি নিয়মিত কাজ করে তোলে যখন এনক্রিপ্টেড পেলোড ডিবাগ করা, সার্টিফিকেট ফিঙ্গারপ্রিন্ট পরীক্ষা করা, বা বিভিন্ন ডিসপ্লে ফরম্যাট ব্যবহারকারী সিস্টেমে হ্যাশ আউটপুট যাচাই করা হয়।

এই Base64 থেকে Hex রূপান্তরকারী কেন ব্যবহার করবেন?

এই টুলটি সরাসরি আপনার ব্রাউজারে Base64 এবং হেক্সাডেসিমালের মধ্যে রূপান্তর করে। কোনো ডেটা আপনার মেশিন ছাড়ে না, এবং আপনি টাইপ করার সাথে সাথে রূপান্তর রিয়েল টাইমে ঘটে।

তাৎক্ষণিক রূপান্তর
Base64 বা hex পেস্ট করুন এবং ফলাফল তাৎক্ষণিকভাবে দেখুন — সার্ভারে কোনো রাউন্ড-ট্রিপ নেই। দ্বিমুখী মোড আপনাকে এক ক্লিকে দিক পরিবর্তন করতে দেয়।
🔒
গোপনীয়তা-প্রথম প্রক্রিয়াকরণ
সমস্ত রূপান্তর JavaScript ব্যবহার করে আপনার ব্রাউজারে স্থানীয়ভাবে চলে। আপনার ক্রিপ্টোগ্রাফিক কী, হ্যাশ এবং টোকেন কখনো নেটওয়ার্কে প্রেরণ করা হয় না।
দ্বিমুখী মোড
একটি বোতামে Base64-থেকে-hex এবং hex-থেকে-Base64 এর মধ্যে স্যুইচ করুন। টুলটি স্বয়ংক্রিয়ভাবে মানক এবং URL-নিরাপদ Base64 উভয় ভেরিয়েন্ট শনাক্ত ও পরিচালনা করে।
📋
পরিষ্কার আউটপুট, পেস্টের জন্য প্রস্তুত
আউটপুট ডিলিমিটার বা প্রিফিক্স ছাড়া ছোট হাতের hex — অধিকাংশ API, CLI এবং প্রোগ্রামিং ভাষায় প্রত্যাশিত ফরম্যাট। এক ক্লিকে কপি করুন।

Base64 থেকে Hex ব্যবহারের ক্ষেত্র

ফ্রন্টএন্ড ডেভেলপার
বাইনারি প্রোটোকল, WebSocket ফ্রেম, বা ব্রাউজার DevTools কনসোলে ArrayBuffer বিষয়বস্তু ডিবাগ করার সময় Base64-এনকোডেড API রেসপন্সকে hex-এ রূপান্তর করুন।
ব্যাকএন্ড ইঞ্জিনিয়ার
JWT সিগনেচার বা HMAC রেসপন্স থেকে Base64 হ্যাশ ডাইজেস্টকে hex-এ অনুবাদ করুন OpenSSL বা ডেটাবেস-সংরক্ষিত মানগুলির সাথে তুলনা করতে যেগুলি hex উপস্থাপনা ব্যবহার করে।
DevOps / SRE
PEM ফাইল থেকে Base64 পাবলিক কীকে ব্রাউজার এবং মনিটরিং টুল দ্বারা প্রদর্শিত hex ফিঙ্গারপ্রিন্ট ফরম্যাটে রূপান্তর করে TLS সার্টিফিকেট ফিঙ্গারপ্রিন্ট যাচাই করুন।
নিরাপত্তা বিশ্লেষক
API ট্র্যাফিকে Base64 হিসেবে আসা এনক্রিপশন কী এবং ইনিশিয়ালাইজেশন ভেক্টর (IV) পরীক্ষা করুন — Wireshark বা CyberChef-এ বাইট-স্তরের বিশ্লেষণের জন্য hex-এ রূপান্তর করুন।
ডেটা ইঞ্জিনিয়ার
ডেটাবেস থেকে Base64-এনকোডেড বাইনারি কলাম (PostgreSQL bytea, MongoDB BinData) তুলনা, লগিং বা মাইগ্রেশন স্ক্রিপ্টের জন্য hex-এ রূপান্তর করুন।
শিক্ষার্থী / শিক্ষানবিশ
একই বাইটগুলি প্রতিটি ফরম্যাটে কীভাবে উপস্থাপিত হয় তা দেখে Base64 এবং হেক্সাডেসিমালের মধ্যে সম্পর্ক বুঝুন, এনকোডিংয়ের মৌলিক বিষয়গুলি শক্তিশালী করুন।

Base64 বনাম হেক্সাডেসিমাল এনকোডিং

Base64 এবং হেক্সাডেসিমাল উভয়ই বাইনারি ডেটাকে মুদ্রণযোগ্য টেক্সটে রূপান্তর করে, কিন্তু তারা সংকোচন এবং পঠনযোগ্যতার মধ্যে ভিন্ন আপস করে। নিচের টেবিলটি মূল পার্থক্যগুলি সংক্ষেপ করে।

বৈশিষ্ট্যBase64Hexadecimal
বর্ণমালাA-Z a-z 0-9 + / =0-9 a-f
প্রতি অক্ষরে বিট64
আকারের ওভারহেডকাঁচার চেয়ে ~৩৩% বড়কাঁচার চেয়ে ১০০% বড়
পঠনযোগ্যতাসংক্ষিপ্ত কিন্তু অস্বচ্ছপ্রতিটি বাইট ২টি অক্ষর হিসেবে দৃশ্যমান
প্রাথমিক ব্যবহারইমেইল, ডেটা URI, APIক্রিপ্টো হ্যাশ, MAC ঠিকানা, রঙ
স্পেসিফিকেশনRFC 4648IEEE 754, RFC 4648 sec 8

রূপান্তরের উদাহরণ

নিচের টেবিলটি Base64 এবং হেক্সাডেসিমাল উপস্থাপনায় অভিন্ন বাইট সিকোয়েন্স দেখায়। লক্ষ্য করুন যে hex আউটপুট সবসময় বাইট সংখ্যার ঠিক দ্বিগুণ, যেখানে Base64 দৈর্ঘ্য ceil(byteCount / 3) * 4 এর সমান।

ইনপুট (টেক্সট / বাইট)Base64Hex
HelloSGVsbG8=48656c6c6f
ABQUI=4142
0xFFMHhGRg==30784646
AAE=0001
key=vala2V5PXZhbA==6b65793d76616c
Þ­¾ï (bytes)3q2+7w==deadbeef

রূপান্তর কীভাবে কাজ করে

Base64 থেকে হেক্সাডেসিমালে রূপান্তর একটি দুই-পর্যায়ের প্রক্রিয়া। প্রথমত, Base64 স্ট্রিংকে প্রতিটি অক্ষরকে তার 6-বিট মানে ম্যাপ করে, বিটগুলি জুড়ে দিয়ে এবং সেগুলিকে 8-বিট বাইটে ভাগ করে (প্যাডিং বাদ দিয়ে) কাঁচা বাইটে ডিকোড করা হয়। এই ধাপটি RFC 4648 সেকশন 4-এ সংজ্ঞায়িত এনকোডিং উল্টে দেয়।

দ্বিতীয়ত, প্রতিটি বাইটকে তার দুই-সংখ্যার হেক্সাডেসিমাল উপস্থাপনায় রূপান্তরিত করা হয়। বাইট মান 0-255 থেকে 00-ff-এ ম্যাপ হয়। 0x4F (দশমিক 79) এর মতো একটি বাইট '4' এবং 'f' দুটি অক্ষর হয়। সম্পূর্ণ hex স্ট্রিং সহজভাবে সমস্ত দুই-অক্ষরের জোড়ার সংযোজন। বিপরীত দিক (hex থেকে Base64) এই ধাপগুলি বিপরীত ক্রমে প্রয়োগ করে: hex জোড়াগুলি বাইটে পার্স করুন, তারপর ফলাফল Base64-এনকোড করুন।

4-বিট বাইনারিHex সংখ্যা
00000
00011
00102
00113
01004
01015
01106
01117
10008
10019
1010a
1011b
1100c
1101d
1110e
1111f

কোড উদাহরণ

এই চালানোযোগ্য স্নিপেটগুলি JavaScript, Python, Go এবং কমান্ড লাইনে Base64 এবং hex-এর মধ্যে কীভাবে রূপান্তর করতে হয় তা দেখায়। প্রতিটি উদাহরণ উভয় রূপান্তর দিক কভার করে।

JavaScript (browser / Node.js)
// Base64 to Hex
function base64ToHex(b64) {
  const raw = atob(b64)
  return Array.from(raw, c =>
    c.charCodeAt(0).toString(16).padStart(2, '0')
  ).join('')
}
base64ToHex('SGVsbG8=') // → "48656c6c6f"

// Hex to Base64
function hexToBase64(hex) {
  const bytes = hex.match(/.{1,2}/g).map(b => parseInt(b, 16))
  return btoa(String.fromCharCode(...bytes))
}
hexToBase64('48656c6c6f') // → "SGVsbG8="

// Node.js Buffer shorthand
Buffer.from('SGVsbG8=', 'base64').toString('hex')   // → "48656c6c6f"
Buffer.from('48656c6c6f', 'hex').toString('base64')  // → "SGVsbG8="
Python
import base64, binascii

# Base64 to Hex
b64_str = 'SGVsbG8='
raw_bytes = base64.b64decode(b64_str)
hex_str = raw_bytes.hex()            # → '48656c6c6f'
# or: binascii.hexlify(raw_bytes).decode()

# Hex to Base64
hex_str = '48656c6c6f'
raw_bytes = bytes.fromhex(hex_str)
b64_str = base64.b64encode(raw_bytes).decode()  # → 'SGVsbG8='

# One-liner for quick conversion
base64.b64encode(bytes.fromhex('deadbeef')).decode()  # → '3q2+7w=='
Go
package main

import (
    "encoding/base64"
    "encoding/hex"
    "fmt"
)

func main() {
    // Base64 to Hex
    raw, _ := base64.StdEncoding.DecodeString("SGVsbG8=")
    hexStr := hex.EncodeToString(raw)
    fmt.Println(hexStr) // → "48656c6c6f"

    // Hex to Base64
    raw2, _ := hex.DecodeString("48656c6c6f")
    b64Str := base64.StdEncoding.EncodeToString(raw2)
    fmt.Println(b64Str) // → "SGVsbG8="
}
CLI (bash)
# Base64 to Hex (using base64 + xxd)
echo -n 'SGVsbG8=' | base64 -d | xxd -p
# → 48656c6c6f

# Hex to Base64
echo -n '48656c6c6f' | xxd -r -p | base64
# → SGVsbG8=

# OpenSSL alternative
echo -n 'SGVsbG8=' | openssl base64 -d | xxd -p
# → 48656c6c6f

সচরাচর জিজ্ঞাসিত প্রশ্ন

Base64 এবং হেক্সাডেসিমালের মধ্যে পার্থক্য কী?
Base64 64টি অক্ষর ব্যবহার করে এবং প্রতি অক্ষরে 6 বিট এনকোড করে, কাঁচা বাইটের তুলনায় প্রায় ৩৩% আকারের ওভারহেড তৈরি করে। হেক্সাডেসিমাল 16টি অক্ষর ব্যবহার করে এবং প্রতি অক্ষরে 4 বিট এনকোড করে, ১০০% ওভারহেড তৈরি করে — মূল আকারের ঠিক দ্বিগুণ। Base64 আরও সংক্ষিপ্ত; hex আরও মানব-পঠনযোগ্য কারণ প্রতিটি বাইট ঠিক দুটি অক্ষরে ম্যাপ হয়।
Base64-থেকে-hex রূপান্তর কি ক্ষতিকর?
না। Base64 এবং hex উভয়ই একই অন্তর্নিহিত বাইটের নির্ধারিত, বিপরীতযোগ্য এনকোডিং। তাদের মধ্যে রূপান্তর করা ডেটা পরিবর্তন, সংকুচিত বা এনক্রিপ্ট করে না। কাঁচা বাইট সিকোয়েন্স রূপান্তরের আগে এবং পরে একই — শুধু পাঠ্য উপস্থাপনা পরিবর্তন হয়।
আমার hex আউটপুট কেন Base64 ইনপুটের চেয়ে দীর্ঘ?
Hex সবসময় প্রতি বাইটে 2টি অক্ষর তৈরি করে, যেখানে Base64 প্রতি বাইটে প্রায় 1.33টি অক্ষর তৈরি করে। একটি 20-বাইট মান 28টি Base64 অক্ষর কিন্তু 40টি hex অক্ষর। এটি অন্তর্নিহিত আপস: hex বড় কিন্তু প্রতিটি বাইট সীমানা তাৎক্ষণিকভাবে দৃশ্যমান।
আমি কি Base64url (URL-নিরাপদ Base64) থেকে hex-এ রূপান্তর করতে পারি?
হ্যাঁ। Base64url + কে - দিয়ে এবং / কে _ দিয়ে প্রতিস্থাপন করে এবং প্যাডিং বাদ দেয়। এই টুলটি রূপান্তরের আগে স্বয়ংক্রিয়ভাবে Base64url ইনপুট স্বাভাবিক করে। কোডে, - কে + দিয়ে এবং _ কে / দিয়ে প্রতিস্থাপন করুন তারপর ডিকোড করার আগে প্যাডিং যোগ করুন: ফলে বাইটগুলি মানক Base64-এর মতো একই।
আমি কীভাবে Base64 থেকে hex-এ SHA-256 হ্যাশ রূপান্তর করব?
64-অক্ষরের hex স্ট্রিং পেতে এই টুলে Base64 হ্যাশ পেস্ট করুন। কোডে: Base64 স্ট্রিংকে বাইটে ডিকোড করুন (SHA-256-এর জন্য 32 বাইট), তারপর সেই বাইটগুলি hex-এনকোড করুন। উদাহরণস্বরূপ, Python-এ: bytes.fromhex বিপরীত — base64.b64decode(b64_hash).hex() আপনাকে hex উপস্থাপনা দেয়।
Base64 ইনপুটে ফাঁকি বা নতুন লাইন থাকলে কী হয়?
বেশিরভাগ Base64 ডিকোডার, এই টুলসহ, ডিকোড করার আগে ফাঁকি সরিয়ে দেয়। PEM-এনকোডেড সার্টিফিকেট এবং MIME-এনকোডেড বিষয়বস্তু সাধারণত প্রতি লাইনে 64 বা 76 অক্ষরে Base64 মোড়ানো হয়। লাইন বিরতিগুলি এনকোড করা ডেটার অংশ নয় এবং রূপান্তরের সময় নিরাপদে উপেক্ষা করা হয়।
আমার কখন Base64-এর পরিবর্তে hex ব্যবহার করা উচিত?
hex ব্যবহার করুন যখন আপনার বাইট-স্তরের পঠনযোগ্যতা প্রয়োজন — ক্রিপ্টোগ্রাফিক আউটপুট পরীক্ষা করা, বাইনারি প্রোটোকল ডিবাগ করা, বা রঙের মান নির্দিষ্ট করা (#ff5733)। Base64 ব্যবহার করুন যখন সংকোচন গুরুত্বপূর্ণ — JSON-এ ডেটা এম্বেড করা, ইমেইলে (MIME) প্রেরণ করা, বা ডেটা URI তৈরি করা। সংরক্ষণ এবং প্রেরণের জন্য, Base64 hex-এর তুলনায় প্রায় ৩৩% স্থান সাশ্রয় করে।