मान लीजिए कि आप लोगों के लिए अपनी फाइल अपलोड करने के लिए एक फ़ाइल होस्टिंग साइट बनाना चाहते हैं और बाद में इसे पुनर्प्राप्त करने के लिए अपने दोस्तों को एक लिंक भेजना चाहते हैं और आप बीमा करना चाहते हैं कि फाइलें डुप्लिकेट की गई हैं जहां हम उन्हें स्टोर करते हैं, PHP का sha1_file अच्छा है कार्य के लिए पर्याप्त है? क्या इसके बजाय md5_file का उपयोग करने का कोई कारण नहीं है?क्या एसएचए फाइल डुप्लिकेशन की जांच के लिए पर्याप्त है? (PHP में sha1_file)
फ्रंटेंड के लिए, यह डेटाबेस में मूल फ़ाइल नाम स्टोर का उपयोग करके अस्पष्ट हो जाएगा, लेकिन कुछ अतिरिक्त चिंताएं होंगी यदि यह मूल पोस्टर के बारे में कुछ भी प्रकट करेगी। क्या किसी फ़ाइल को इसके साथ किसी भी मेटा जानकारी का उत्तराधिकारी मिलता है जैसे अंतिम संशोधित या इसे पोस्ट किया गया या यह सामग्री फाइल सिस्टम में आधारित है?
इसके अलावा, इंद्रधनुष तालिका हमले के संबंध में सुरक्षा के बाद से नमक बेकार का उपयोग कर रहा है इसका मतलब कुछ भी नहीं है और हैश को बाद में चेकसम के रूप में उपयोग किया जा सकता है?
एक आखिरी बात, मापनीयता? शुरुआत में, यह केवल छोटी फाइलों के लिए उपयोग किया जा रहा है, लेकिन कुछ ...
संपादित करें 1: हैश का बिंदु प्राथमिक रूप से फ़ाइल डुप्लिकेशन से बचने के लिए है, न कि अस्पष्टता पैदा करने के लिए।
नहीं - हालांकि sha1 एल्गोरिदम अधिक जटिल है/उच्च आदेश है, PHP में वास्तविक कार्यान्वयन sha1 हैश बनाता है md5 से कम से कम तेज़ है (कम से कम पिछली बार जब मैंने PHP 5.1 या कुछ पर चेक किया था) – symcbean
@symcbean आप हैं शायद सही, मैं PHP विनिर्देशों को नहीं जानता। – ykaganovich