ডেভেলপার টুল
ওয়েব ও ব্যাকএন্ডের রোজকার কাজের জন্য আটটি টুল: JSON ফরম্যাট ও যাচাই করুন, Base64, URL ও HTML এনটিটি এনকোড-ডিকোড করুন, UUID তৈরি করুন, হ্যাশ বের করুন, JWT পড়ুন এবং রেগুলার এক্সপ্রেশন টেস্ট করুন। এগুলো ব্রাউজারের নিজস্ব API দিয়ে চলে, তাই আপনার টোকেন ও পেলোড কখনো আপনার কম্পিউটারের বাইরে যায় না।
একটি টুল বেছে নিন
- JSON ফরম্যাটারসাজান, মিনিফাই করুন, যাচাই করুন এবং কী সর্ট করুন।
- Base64UTF-8 টেক্সট ও ফাইল এনকোড বা ডিকোড করুন।
- URL এনকোডপারসেন্ট-এনকোড, ডিকোড করুন এবং কোয়েরি স্ট্রিং পড়ুন।
- UUID জেনারেটরএকসাথে অনেক র্যান্ডম v4 UUID এবং ভার্সন চেকার।
- হ্যাশ জেনারেটরটেক্সট বা ফাইলের MD5, SHA-1, SHA-256, SHA-384, SHA-512।
- JWT ডিকোডারটোকেনের হেডার, পেলোড ও মেয়াদ পড়ুন।
- Regex টেস্টারলাইভ ম্যাচ, গ্রুপ ও প্রচলিত প্যাটার্ন।
- HTML এনটিটি&, < ও অন্যান্য এস্কেপ ও আনএস্কেপ করুন।
একটি স্ট্রিং, পাঁচটি এনকোডিং
“Café & crème?” টেক্সটটি এই পেজ তৈরির সময় প্রতিটি টুলে চালানো হয়েছে। এনকোডিং উল্টানো যায়; হ্যাশ যায় না।
| পদ্ধতি | আউটপুট | দৈর্ঘ্য | উল্টানো যায় |
|---|---|---|---|
| Base64 | Q2Fmw6kgJiBjcsOobWU/ | 20 | হ্যাঁ |
| URL এনকোডিং (encodeURIComponent) | Caf%C3%A9%20%26%20cr%C3%A8me%3F | 31 | হ্যাঁ |
| HTML এনটিটি (নামযুক্ত) | Café & crème? | 31 | হ্যাঁ |
| MD5 হ্যাশ | c0fdf467ecd73617537f508352d98c19 | 32 | না (একমুখী) |
| SHA-256 হ্যাশ | 5cac0437a796074c1d26e85fa57bc828ec3e4083a790da8b8d082a8de3531320 | 64 | না (একমুখী) |
এই টুলগুলো লোকালি চলা কেন জরুরি
ডেভেলপার টুলে আপনি যা ইনপুট দেন, তা প্রায়ই সবচেয়ে স্পর্শকাতর স্ট্রিং: অ্যাক্সেস টোকেন, গ্রাহকের ডেটাসহ API রেসপন্স, অভ্যন্তরীণ হোস্টনেমসহ কনফিগারেশন। এগুলো এমন সাইটে পেস্ট করলে, যা সার্ভারে পাঠিয়ে দেয়, একটি কপি তৈরি হয় যার ওপর আপনার নিয়ন্ত্রণ নেই। এখানকার প্রতিটি টুল শুধু Web Platform দিয়েই চলে: JSON.parse ও JSON.stringify, Base64-এর জন্য TextEncoder ও atob, encodeURIComponent, crypto.randomUUID, Web Crypto-র digest ফাংশন এবং JavaScript-এর regex ইঞ্জিন। পেজ লোড করে নেটওয়ার্ক থেকে বিচ্ছিন্ন হয়েও আপনি কাজ চালিয়ে যেতে পারেন।
ইঞ্জিনটি আপনার ব্রাউজারের নিজস্ব, তাই ফলাফল আপনার ফ্রন্ট-এন্ড কোডের আচরণের সঙ্গে মিলে যায়। এখানে যে regex ঠিকভাবে চলে, আপনার JavaScript-এও তা একইভাবে চলবে; ফরম্যাটার যে JSON ডকুমেন্ট গ্রহণ করে, JSON.parse-ও তা গ্রহণ করে।
এনকোডিং, এস্কেপিং আর হ্যাশিং আলাদা জিনিস
এনকোডিং বাইট লেখার পদ্ধতি বদলায়, যাতে তা কোনো মাধ্যম দিয়ে নিরাপদে পৌঁছায়: Base64 (RFC 4648) যেকোনো বাইটকে ইমেইল ও ডেটা URL-এর জন্য ৬৪টি নিরাপদ ASCII অক্ষরে রূপ দেয়, আর পারসেন্ট-এনকোডিং (RFC 3986) টেক্সটকে URL-এর ভেতরে নিরাপদ করে। HTML এন্টিটি দিয়ে এস্কেপিং < ও & এর মতো অক্ষরকে মার্কআপ হিসেবে পড়া থেকে আটকায়। তিনটিই যে কেউ উল্টে ফেলতে পারে এবং এতে কোনো গোপনীয়তা নেই।
হ্যাশিং একমুখী: SHA-256 যেকোনো ইনপুটকে নির্দিষ্ট ২৫৬-বিটের ফিঙ্গারপ্রিন্টে পরিণত করে, যা থেকে আর ইনপুট ফেরানো যায় না। হ্যাশ দিয়ে ডাউনলোড যাচাই ও পরিবর্তন শনাক্ত করা যায়, কিন্তু পাসওয়ার্ড সংরক্ষণের জন্য সাধারণ দ্রুত হ্যাশ ভুল পছন্দ; সেজন্য bcrypt, scrypt বা Argon2-এর মতো ধীরগতির পাসওয়ার্ড হ্যাশ ব্যবহার করুন। আর JWT-র প্রচলিত সাইন করা রূপ এনকোড করা, এনক্রিপ্ট করা নয়; তাই ডিকোডার কোনো কী ছাড়াই এর বিষয়বস্তু দেখাতে পারে।
যখন ছোট অংশ নয়, পুরো ফাইল দরকার
এই টুলগুলো আপনার পেস্ট করা টেক্সটে কাজ করে। পুরো JSON এক্সপোর্টকে স্প্রেডশিটে বদলাতে JSON থেকে CSV ব্যবহার করুন; JSON, XML, YAML ও CSV ফাইলের মধ্যে রূপান্তরের জন্য ডেটা কনভার্টার ফাইল ফরম্যাট সামলায়।
সম্পর্কিত কনভার্টার:ডেটা কনভার্টারJSON থেকে CSV
সচরাচর জিজ্ঞাসা
- প্রোডাকশনের গোপন তথ্যের জন্য কি এই ডেভেলপার টুলগুলো নিরাপদ?
- এগুলো কখনো ইনপুট পাঠায় না, তবু যেখানে সম্ভব টেস্ট টোকেন ও গোপন তথ্য মুছে দেওয়া পেলোড ব্যবহার করাই নিরাপদ অভ্যাস। স্ক্রিনে যা দেখা যায়, তা স্ক্রিনশট বা স্ক্রিন শেয়ারে চলে যেতে পারে।
- কোন কোন ব্রাউজার সাপোর্ট করে?
- Chrome, Edge, Firefox ও Safari-র বর্তমান সংস্করণ। crypto.randomUUID ও Web Crypto API-র জন্য নিরাপদ (HTTPS) পেজ লাগে, আর UltKit সবসময় তা-ই দেয়।
- Base64 কি এক ধরনের এনক্রিপশন?
- না। Base64 একটি উল্টানো যায় এমন এনকোডিং, যার বর্ণমালা সবার জানা; যে কেউ তাৎক্ষণিক ডিকোড করতে পারে। এটি শুধু বাইনারি ডেটাকে টেক্সট হিসেবে পাঠানোর উপযোগী করে।
- আমার আউটপুট কমান্ড-লাইন টুলের থেকে আলাদা কেন?
- সাধারণত লাইন এন্ডিং বা ক্যারেক্টার এনকোডিংয়ের কারণে। টুলগুলো টেক্সটকে UTF-8-এ এনকোড করে এবং শেষে নতুন লাইন যোগ করে না, অথচ শেলের echo echo -n ব্যবহার না করলে একটি যোগ করে।
- ডেভেলপার টুলগুলো কি কোনো হিস্ট্রি রাখে?
- না। এক ভিজিট থেকে আরেক ভিজিটে কিছুই সংরক্ষিত হয় না; ট্যাব বন্ধ করলে আপনার ইনপুট মুছে যায়। ফলাফল রাখতে কপি বা ডাউনলোড বোতাম ব্যবহার করুন।