php पीएचसी में एईएस-256-सीबीसी का उपयोग करके उचित प्रमाणीकरण के साथ डेटा को कैसे सही ढंग से एन्क्रिप्ट किया जाए?




encryption cryptography (2)

लेकिन मैं एईएस सीबीसी के साथ प्रमाणित एन्क्रिप्शन के विचार से संघर्ष कर रहा हूं। जब मैं डेटा को डिक्रिप्ट करने के बारे में जानता हूं, तो मैं मूल रूप से कैसे प्रमाणित करूं?

एक यादृच्छिक IV के साथ डेटा को एन्क्रिप्ट करने के बाद, दोनों सिफरटेक्स्ट और IV को एक दूसरे कुंजी के साथ hash_hmac() रखें।

यदि आप पूछ रहे हैं क्योंकि आपको उत्पादन में तैनाती की आवश्यकता है, तब तक इंतजार करें जब तक कि defuse / php-encryption के संस्करण 2 जारी नहीं किया जाता है और इसके बजाय इसका उपयोग करें (यह एईएस -256-सीटीआर एईएस -256-सीबीसी नहीं है, लेकिन सीटीआर मोड में सीबीसी मोड की तुलना में कम हमले की सतह होती है, यानी अगर आप एचएमएसी को हराने के लिए कोई भी पैडिंग ऑरेकल हमलों नहीं करते हैं।)

RNCryptor का उपयोग न करें

RNCryptor क्रिप्टोग्राफी कोडन मानकों के अनुसार नहीं लिखा गया था, न तो PHP में , और न ही पायथन में भी

RNCryptor सचमुच क्रिप्टोग्राफी कोडिंग मानकों के नियम 1 का लगातार उल्लंघन करता है ऐसी अन्य समस्याएं हो सकती हैं जो अभी तक अनदेखी नहीं हुई हैं। यदि आप भाषाओं में पोर्टेबिलिटी चाहते हैं, तो लिब्सोडियम का उपयोग करें

मैं पीएचपी में एईएस -256-सीबीसी के साथ डेटा एन्क्रिप्ट करने के लिए openssl फ़ंक्शन का उपयोग कर रहा हूं। मैं इसे प्रत्येक नए एन्क्रिप्शन के लिए एक अनन्य IV (openssl_random_sesee_bytes के साथ पैदा करके) का उपयोग करके एन्क्रिप्ट करने में सक्षम हूं।

लेकिन मैं एईएस सीबीसी के साथ प्रमाणित एन्क्रिप्शन के विचार से संघर्ष कर रहा हूं। जब मैं डेटा को डिक्रिप्ट करने के बारे में जानता हूं, तो मैं मूल रूप से कैसे प्रमाणित करूं?

क्या मुझे पीबीकेडीएफ 2, ब्लॉफ़िश या हैश_हामाक () की तरह कुछ का उपयोग करने की आवश्यकता है?

मुझे किसी तरह की कुंजी को हश करने की ज़रूरत है?

कोई मदद बेहद सराहना की है।


सरल समाधान, आरएनसीरिप्टर का उपयोग करें जो कि php और कई अन्य भाषाओं के लिए उपलब्ध है। कार्यान्वयन विवरण के लिए यह रीडई देखें।

यहां तक ​​कि अगर आप RNCryptor का उपयोग नहीं करते हैं तो विधियां सही और सुरक्षित हैं I

साइट से कुछ विवरण:

  • एईएस -256 एन्क्रिप्शन
  • सीबीसी मोड
  • PBKDF2 के साथ पासवर्ड खींच रहा है
  • पासवर्ड लेटिंग
  • रैंडम IV
  • एन्क्रिप्ट-तो-हैश एचएमएसी
  • संस्करण




aes