SHA-1 হ্যাশ জেনারেটর

লিগ্যাসি সামঞ্জস্যতা পরীক্ষা করার জন্য একটি SHA-1 ডাইজেস্ট তৈরি করুন৷ নিরাপদ প্রমাণীকরণের সাথে SHA-1 বিভ্রান্ত না করে সঠিক ইনপুট তুলনা করুন।

০ বাইটUTF-8 · স্পেস বা লাইন ব্রেক বদলানো হয় না

ফলাফল

ফলাফল দেখতে হ্যাশ তৈরি করুন। খালি টেক্সটও বৈধ ইনপুট।

গণনা আপনার ব্রাউজারেই হয়। কোনো ফাইল আপলোড করা হয় না।

অন্যান্য হ্যাশ এবং চেকসাম টুল

এই টুলটি কী হিসাব করে

SHA-1 160 বিট তৈরি করে, 40 হেক্সাডেসিমেল অক্ষর হিসাবে লেখা। এই পৃষ্ঠাটি বিদ্যমান সিস্টেমগুলি পরীক্ষা করার উদ্দেশ্যে করা হয়েছে যা এখনও SHA-1-এর জন্য অনুরোধ করে, যেমন পুরানো ম্যানিফেস্ট এবং সামঞ্জস্যপূর্ণ ফিক্সচার৷ একটি SHA-1 ফলাফলকে সরাসরি MD5 মান বা SHA-256 মানের সাথে তুলনা করা যায় না, অক্ষরের ক্ষেত্রে নির্বিশেষে।

একটি ঐতিহাসিক ডাইজেস্ট পুনরুত্পাদন করার জন্য ঐতিহাসিক বাইট প্রয়োজন, শুধু একই টেক্সট নয়। একটি অনুলিপি করা নতুন লাইন, একটি সম্পাদকের বাইট-অর্ডার চিহ্ন, বা একটি ভিন্ন ইউনিকোড উপস্থাপনা উত্তরটি পরিবর্তন করতে পারে। টেক্সট বক্সে ডকুমেন্ট বডি কপি করার পরিবর্তে প্রকৃত সংরক্ষিত আর্টিফ্যাক্টের জন্য ফাইল মোড ব্যবহার করুন।

SHA-1-এর সংঘর্ষের দুর্বলতা জানা আছে। একটি পুরানো প্রোটোকল এর উপস্থিতি একটি নতুন নকশা জন্য একটি অনুমোদন নয়. একটি আধুনিক অ্যালগরিদম পছন্দ করুন যেখানে আপনি বিন্যাস নিয়ন্ত্রণ করেন এবং একটি কীড প্রমাণীকরণ নির্মাণ ব্যবহার করুন যখন টাস্কের জন্য একটি সাধারণ আঙ্গুলের ছাপের পরিবর্তে একটি ভাগ করা গোপন প্রমাণের প্রয়োজন হয়৷

কাজের উদাহরণ

UTF-8 · abc · SHA-1

a9993e364706816aba3e25717850c26c9cd0d89d

কীভাবে গণনা এবং তুলনা করবেন

  1. ইনপুট টেক্সট-এ সঠিক টেক্সট লিখুন বা abc লোড করতে উদাহরণ বেছে নিন। পাঠ্যটি UTF-8 হিসাবে এনকোড করা হয়েছে; স্পেস এবং লাইন শেষ সংরক্ষিত হয়.
  2. একক-টেক্সট মোডে, একটি সংক্ষিপ্ত বিরতির পরে 64 KiB পর্যন্ত অ-খালি ইনপুট আপডেট হয়। খালি ইনপুট বা বড় পাঠ্যের জন্য হ্যাশ তৈরি করুন এ ক্লিক করুন। ইনপুট পরিবর্তন পূর্ববর্তী ফলাফল সাফ করে।
  3. পরিবর্তে একটি সংরক্ষিত ফাইল চেক করতে, ফাইল চেকসাম খুলুন, অ্যালগরিদম নিশ্চিত করুন এবং ফাইলটি চয়ন বা ড্রপ করুন৷ ফাইল মোড এর আসল বাইট পড়ে এবং স্বয়ংক্রিয়ভাবে শুরু হয়।

লাইন-বাই-লাইন ফলাফলের জন্য, প্রতি লাইনে একটি করে হ্যাশ সক্ষম করুন, খালি লাইন অন্তর্ভুক্ত করবেন কিনা তা বেছে নিন, তারপর হ্যাশ তৈরি করুন এ ক্লিক করুন। লাইন মোড স্বয়ংক্রিয়ভাবে গণনা করে না। CRLF, LF এবং CR পৃথক রেকর্ড এবং প্রতিটি লাইনের ডাইজেস্টে অন্তর্ভুক্ত নয়। ডুপ্লিকেট লাইন তাদের আসল লাইন সংখ্যা ধরে রাখে।

প্রত্যাশিত মান তুলনা করুন (ঐচ্ছিক) এ শুধুমাত্র সম্পূর্ণ হেক্সাডেসিমেল রেফারেন্স পেস্ট করুন এবং যাচাই করুন এ ক্লিক করুন। বড় বা ছোট হাতের অক্ষর এবং আশেপাশে আটকানো হোয়াইটস্পেস উপেক্ষা করা হয়; অভ্যন্তরীণ স্থান এবং ভুল দৈর্ঘ্য প্রত্যাখ্যান করা হয়। কপি করুন সম্পূর্ণ ফলাফল ধরে রাখে। TXT এবং CSV রপ্তানিতে শনাক্তকারী, অ্যালগরিদমের নাম এবং ডাইজেস্ট অন্তর্ভুক্ত, উৎস টেক্সট বা গোপন কী নয়।

সীমা, গোপনীয়তা এবং পরবর্তী পদক্ষেপ

পাঠ্য 10 MiB এবং লাইন মোড 10,000 রেকর্ডে সীমাবদ্ধ, ফিল্টার করার আগে খালি রেকর্ড সহ। ফাইলগুলি 50টি সারি এন্ট্রি এবং 1 GiB প্রতিটিতে সীমাবদ্ধ, 2 MiB খণ্ডে পর্যায়ক্রমে পড়ুন৷ এই সীমাগুলি ব্রাউজার সম্পদ রক্ষা করে; তারা প্রতিটি ফোনে দ্রুত প্রক্রিয়াকরণের গ্যারান্টি দেয় না। প্রয়োজনে বাতিল করুন। গণনা ব্রাউজারে সঞ্চালিত হয়, যখন সাধারণ পৃষ্ঠা এবং সম্পদের অনুরোধগুলি এখনও হোস্টিং পরিষেবাতে পৌঁছায়।

একটি গিট অবজেক্ট আইডির সাথে বিভ্রান্ত না করে SHA-1 পুনরুত্পাদন করা হচ্ছে

এই পৃষ্ঠাটি সঠিক টেক্সট বা ফাইল বাইট হ্যাশ করে। একটি SHA-1 গিট সংগ্রহস্থলে, একটি অবজেক্ট আইডি কেবল দৃশ্যমান ফাইলের বিষয়বস্তুর SHA-1 নয়: গিট একটি অবজেক্ট হেডার অন্তর্ভুক্ত করে এবং ফিল্টারগুলি একটি ব্লবের জন্য ব্যবহৃত বাইটগুলিকেও প্রভাবিত করতে পারে। গিট হ্যাশ-অবজেক্ট থেকে একটি পার্থক্য তাই নিজেই একটি ত্রুটিপূর্ণ SHA-1 বাস্তবায়ন নির্দেশ করে না।

একটি লিগ্যাসি ইন্টিগ্রেশনের জন্য, প্রথমে এটির ক্ষেত্রটি একটি কাঁচা ফাইল ডাইজেস্ট, একটি বস্তু শনাক্তকারী বা একটি বৃহত্তর স্বাক্ষরিত কাঠামোর মধ্যে একটি ডাইজেস্ট আশা করে কিনা তা নির্ধারণ করুন৷ এখানে কাঁচা SHA-1 মান পুনরুত্পাদন করুন; সংগ্রহস্থল আইডিগুলির জন্য গিট এর নিজস্ব অবজেক্ট কমান্ড ব্যবহার করুন। SHA-1 কে চুপচাপ লম্বা হ্যাশ দিয়ে প্রতিস্থাপন না করে ফলাফলের সাথে প্রোটোকলের অ্যালগরিদমের নাম রাখুন।

কাঁচা ফাইল SHA-1 এবং Git blob SHA-1

তিনটি বাইটের abc-এর জন্য, Git-এর SHA-1 ব্লব উপস্থাপনা বাইট ব্লব 3 দিয়ে শুরু হয় এবং তারপরে একটি শূন্য বাইট। সম্পাদকে একটি দৃশ্যমান ব্যাকস্ল্যাশ-শূন্য টাইপ করবেন না: এই উদাহরণটি এই টুলে একটি গিট মোড নয়, বস্তুর উপস্থাপনা ব্যাখ্যা করে।

SHA-1 / raw abc:
a9993e364706816aba3e25717850c26c9cd0d89d
SHA-1 / Git blob (62 6c 6f 62 20 33 00 61 62 63):
f2ba8f84ab5c1bce84a7b441cb1959cfc7093b7f

সাধারণ SHA-1 সামঞ্জস্যের ফাঁদ

পর্যবেক্ষণ করা সমস্যাকেন এটা হয়কি করতে হবে
একটি গিট অবজেক্ট আইডি মেলে নাগিট একটি বস্তুর উপস্থাপনাকে হ্যাশ করে, কেবলমাত্র কাঁচা ফাইলের বিষয়বস্তু নয়গিট হ্যাশ-অবজেক্ট এবং সংগ্রহস্থলের ফিল্টার নিয়ম ব্যবহার করুন।
রেফারেন্সটিতে 64টি হেক্সাডেসিমেল অক্ষর আছেএটি SHA-256 হতে পারে, SHA-1 নয়সিস্টেমটি SHA-256 চায় কি না যাচাই করুন।
পুরোনো ফাইল সম্পাদনার পরে যাচাই ব্যর্থ হয়সংরক্ষণে লাইন-ব্রেক বা এনকোডিং বদলে যেতে পারেমূল ফাইলটি অপরিবর্তিত রেখে তার হ্যাশ হিসাব করুন।

সম্পর্কিত টুলস এবং গাইড

FIPS 180-4 · Git অবজেক্ট ফরম্যাট

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

সংঘর্ষ-প্রতিরোধী না হলে SHA-1 এখনও উপলব্ধ কেন?

এটি নতুন নিরাপত্তা ডিজাইনের সুপারিশ হিসাবে নয়, উত্তরাধিকার ফর্ম্যাট এবং সামঞ্জস্যপূর্ণ ফিক্সচারগুলি পুনরুত্পাদনের জন্য সরবরাহ করা হয়েছে৷

কেন আমার ফাইলের SHA-1 গিট হ্যাশ-অবজেক্ট থেকে আলাদা?

একটি গিট অবজেক্ট এর বিষয়বস্তুর আগে একটি টাইপ-এবং-দৈর্ঘ্য হেডার অন্তর্ভুক্ত করে। ফিল্টারও প্রযোজ্য হতে পারে। অবজেক্ট আইডি পুনরুত্পাদন করতে গিট কমান্ড ব্যবহার করুন; এই পৃষ্ঠাটি একটি কাঁচা ডাইজেস্ট গণনা করে।

আমি কি একটি লিগ্যাসি SHA-1 ফিল্ডকে SHA-256 দিয়ে প্রতিস্থাপন করতে পারি?

পার্শ্ববর্তী বিন্যাস বা প্রোটোকল পরিবর্তন ছাড়া না. দৈর্ঘ্য এবং অ্যালগরিদম শনাক্তকারী ভিন্ন। সামঞ্জস্যের জন্য SHA-1 পুনরুত্পাদন করুন এবং আলাদাভাবে স্থানান্তরের পরিকল্পনা করুন।

একটি মিলে যাওয়া SHA-1 কি একটি পুরানো রিলিজকে প্রমাণীকরণ করে?

নিজে থেকে নয়। প্রত্যাশিত মান অবশ্যই একটি বিশ্বস্ত উত্স থেকে আসতে হবে এবং SHA-1-এর সংঘর্ষের দুর্বলতা রয়েছে৷ উপলব্ধ হলে একটি বিশ্বস্ত স্বাক্ষর-যাচাই প্রক্রিয়া অনুসরণ করুন।