TLDR;
2007 সালে যখন তিনি গিটকে গুগলে উপস্থাপন করেছিলেন তখন আপনি লিনাস টরভাল্ডস নিজে থেকেই এটি পরীক্ষা করতে পারেন :
(জোর আমার)
আমরা চেকসামগুলি পরীক্ষা করি যা ক্রিপ্টোগ্রাফিকভাবে নিরাপদ হিসাবে বিবেচিত হয়। কেউ SHA-1 ভাঙতে সক্ষম হয় নি, তবে মুল বক্তব্যটি হ'ল SHA-1 যতটা গিট সম্পর্কিত, এমনকি কোনও সুরক্ষা বৈশিষ্ট্যও নয়। এটি নিখুঁতভাবে একটি ধারাবাহিকতা পরীক্ষা ।
সুরক্ষা যন্ত্রাংশ অন্য কোথাও। প্রচুর লোকেরা ধরে নিয়েছে যেহেতু গিটটি SHA-1 ব্যবহার করে এবং SHA-1 ক্রিপ্টোগ্রাফিকভাবে সুরক্ষিত স্টাফগুলির জন্য ব্যবহৃত হয়, তারা মনে করে এটি একটি বিশাল সুরক্ষা বৈশিষ্ট্য। সুরক্ষার সাথে এর কোনও যোগসূত্র নেই, এটি আপনি পেতে পারেন এমন সেরা হ্যাশ।
আপনার ডেটাতে বিশ্বাস রাখতে সক্ষম হওয়ার জন্য একটি ভাল হ্যাশ থাকা ভাল , এটির মতো আরও কিছু ভাল বৈশিষ্ট্যও রয়েছে বলে মনে হয়, আমরা যখন হ্যাশ অবজেক্ট করি তখন আমরা জানি হ্যাশটি ভালভাবে বিতরণ করা হয়েছে এবং নির্দিষ্ট বিতরণের সমস্যাগুলি নিয়ে আমাদের চিন্তা করার দরকার নেই means ।
অভ্যন্তরীণভাবে এটি বাস্তবায়নের দৃষ্টিকোণ থেকে বোঝা যায়, আমরা বিশ্বাস করতে পারি যে হ্যাশটি এত ভাল যে আমরা হ্যাশিং অ্যালগরিদম ব্যবহার করতে পারি এবং জানি যে কোনও খারাপ ক্ষেত্রে নেই।
তাই ক্রিপ্টোগ্রাফিক দিকটিও পছন্দ করার কিছু কারণ রয়েছে তবে এটি আপনার ডেটাতে বিশ্বাস করার ক্ষমতা সম্পর্কে সত্যই।
আমি আপনাকে গ্যারান্টি দিচ্ছি, যদি আপনি নিজের ডেটা গিটে রাখেন তবে আপনি এই বিশ্বাস করতে পারবেন যে পাঁচ বছর পরে, এটি আপনার হার্ডডিস্ক থেকে ডিভিডিতে রূপান্তরিত হওয়ার পরে যে কোনও নতুন প্রযুক্তিতে এবং আপনি এটি অনুলিপি করেছেন, পাঁচ বছর পরে আপনি ডেটা যাচাই করতে পারবেন ফিরে আসার অর্থ হ'ল ঠিক একই ডেটা। এবং এটি এমন একটি বিষয় যা আপনার উত্স কোড পরিচালন সিস্টেমে সত্যই সন্ধান করা উচিত ।
গিট 2.16 (Q1 2018) সহ ডিসেম্বর 2017 আপডেট করুন: বিকল্প এসএইচএ সমর্থন করার জন্য এই প্রচেষ্টা চলছে: দেখুন " গিট আরও আধুনিক এসএইচএ কেন ব্যবহার করে না? "।
আমি উল্লেখ করেছি " কীভাবে কোনও ব্লাটে SHA-1 সংঘর্ষকে পরিচালনা করবে? " যে আপনি একটি নির্দিষ্ট SHA1 উপসর্গ (এখনও একটি অত্যন্ত ব্যয়সাধ্য প্রচেষ্টা) সহ একটি অঙ্গীকারটি ইঞ্জিনিয়ার করতে পারেন ।
কিন্তু বিন্দু দেহাবশেষ এরিক বেসিনে "উল্লেখ করেছে : ক্রিপটোগ্র্যাফিক হ্যাশ গীত (" সংস্করণ কন্ট্রোল উদাহরণ দ্বারা (2011) বই :
এটি বরং গুরুত্বপূর্ণ যে ডিভিসিএসের সাথে একই রকম ডাইজেস্ট থাকা দুটি পৃথক টুকরো ডেটার মুখোমুখি হয় না। ভাগ্যক্রমে, ভাল ক্রিপ্টোগ্রাফিক হ্যাশ ফাংশনগুলি এ জাতীয় সংঘর্ষকে অত্যন্ত অসম্ভব হিসাবে তৈরি করার জন্য ডিজাইন করা হয়েছে।
কম সংঘর্ষের হার সহ ভাল অ-ক্রিপ্টোগ্রাফিক হ্যাশ পাওয়া শক্ত , আপনি যদি " জেনেটিক প্রোগ্রামিংয়ের সাথে স্টেট অফ দ্য-আর্ট নন-ক্রিপ্টোগ্রাফিক হ্যাশ ফাইন্ডিং " এর মতো গবেষণা বিবেচনা না করেন তবে ।
আপনি " হ্যাশিং স্পিড-আপের জন্য নন-ক্রিপ্টোগ্রাফিক হ্যাশ অ্যালগরিদমের ব্যবহার বিবেচনা করুন "ও পড়তে পারেন , যা উদাহরণস্বরূপ" এক্সএক্স্যাশ " উল্লেখ করেছে , অত্যন্ত দ্রুত নন-ক্রিপ্টোগ্রাফিক হ্যাশ অ্যালগরিদম, র্যামের সীমাটির কাছাকাছি গতিতে কাজ করে।
গিতে হ্যাশ পরিবর্তন করার বিষয়ে আলোচনা নতুন নয়:
(লিনাস টরভাল্ডস)
মজিলা কোডের বাকী কিছুই নেই , তবে ওহে, আমি এটি থেকে শুরু করেছি। প্রি-স্পেসে আমার সম্ভবত পিপিসি এসএম কোড থেকে শুরু করা উচিত ছিল যা ইতিমধ্যে অবরুদ্ধভাবে ব্লক করেছিল - তবে এটি "20/20 hindsight" ধরণের জিনিস।
হেই, মোজিলা কোডটি ক্রুডের ভয়াবহ গাদা হ'ল কেন আমি এতটা দৃ was়বিশ্বাস নিয়েছিলাম যে আমি জিনিসের উন্নতি করতে পারি। সুতরাং এটি এর জন্য এক ধরণের উত্স, এমনকি যদি এটি কোনও আসল বাকী কোডের চেয়ে প্রেরণামূলক দিক সম্পর্কে আরও বেশি থাকে;)
এবং আসল অপ্টিমাইজেশন লাভ কীভাবে পরিমাপ করা যায় সে সম্পর্কে আপনার যত্নবান হওয়া দরকার
(লিনাস টরভাল্ডস)
আমি আপনাকে অনেকটা গ্যারান্টি দিতে পারি যে এটি কেবল জিনিসের উন্নতি করে কারণ এটি সিসিপি তৈরি করে ক্রেপ কোড তৈরি করে, যা পি 4 সমস্যাগুলির মধ্যে কিছু লুকায়।
(জন টেপসেল - johnflux
)
SHA-1 থেকে নতুন অ্যালগরিদমে গিট আপগ্রেড করার জন্য ইঞ্জিনিয়ারিংয়ের ব্যয় অনেক বেশি । কীভাবে এটি ভালভাবে করা যায় আমি নিশ্চিত নই।
সবার আগে আমাদের সম্ভবত গিটের একটি সংস্করণ স্থাপন করা দরকার (আসুন এই কথোপকথনের জন্য এটি সংস্করণ 2 বলুন) যা সেই স্থানটি পড়তে বা ব্যবহার না করে এমনকি একটি নতুন হ্যাশ মান স্লট করতে দেয় - এটি কেবল ব্যবহার করে SHA-1 হ্যাশ মান যা অন্য স্লটে রয়েছে।
এইভাবে একবার আমরা শেষ পর্যন্ত গিটের আরও নতুন সংস্করণ স্থাপন করি, আসুন এটিকে সংস্করণ 3 বলুন, যা SHA-1 হ্যাশগুলি ছাড়াও SHA-3 হ্যাশগুলি উত্পাদন করে, গিট সংস্করণ 2 ব্যবহার করা লোকেরা আন্তঃচালনা চালিয়ে যেতে সক্ষম হবে।
(যদিও এই আলোচনা অনুযায়ী, তারা ঝুঁকির মধ্যে পড়তে পারে এবং যারা কেবল তাদের SHA-1-শুধুমাত্র প্যাচগুলিতে নির্ভর করে তারা সংবেদনশীল হতে পারে be)
সংক্ষেপে, যে কোনও হ্যাশে স্যুইচ করা সহজ নয়।
ফেব্রুয়ারী 2017 আপডেট করুন: হ্যাঁ, সংঘর্ষকারী SHA1: ছিন্নভিন্ন.ইও গণনা করা তাত্ত্বিকভাবে সম্ভব
জিআইটি কীভাবে প্রভাবিত হয়?
জিআইটি সমস্ত ফাইলের বিষয়বস্তুগুলির সনাক্তকরণ এবং সততা যাচাইয়ের জন্য SHA-1 এর উপর দৃ strongly়ভাবে নির্ভর করে।
একই মাথা কমিট হ্যাশ এবং বিভিন্ন বিষয়বস্তু সহ দুটি জিআইটি সংগ্রহস্থল তৈরি করা মূলত সম্ভব, একটি সৌম্য উত্স কোড এবং একটি ব্যাকডোরড বলে।
কোনও আক্রমণকারী সম্ভাব্য বাছাই করে লক্ষ্যবস্তু ব্যবহারকারীদের উভয় ভান্ডার সরবরাহ করতে পারে। এর জন্য আক্রমণকারীদের নিজস্ব সংঘর্ষ গণনা করা প্রয়োজন।
কিন্তু:
এই আক্রমণটির জন্য 9,223,372,036,854,775,808 SHA1 গণনা প্রয়োজন। এটি একক-সিপিইউ কম্পিউটারের 6,500 বছর এবং একক-জিপিইউ কম্পিউটারের 110 বছর হিসাবে সমতুল্য প্রক্রিয়াকরণ শক্তি গ্রহণ করেছে।
সুতরাং আসুন এখনও আতঙ্কিত না।
" গিট কীভাবে কোনও ব্লাবের সাথে SHA-1 সংঘর্ষের হাতল ধরবে? " এ আরও দেখুন।