अजगर passlib: - इससे पहले कि उपयोगकर्ताओं को नाराज हो रही शुरू 400 मि.से क्या "दौर"
सबसे सार्वजनिक संपर्क वाले सेवाओं के लिए से
के लिए सबसे अच्छा मूल्य है, तो आप आम तौर पर साइन इन 250ms के ऊपर ले हो सकता है।
तो एक लॉग इन/पंजीकरण अगर हम पर विचार है कि वहाँ एक लॉगिन प्रयास के लिए डेटाबेस के लिए कॉल में rounds
के लिए सबसे अच्छा मूल्य क्या है, और यह का उपयोग करता गैर अवरुद्ध साथ MongoDB पर कॉल करें। (Mongotor उपयोग कर, और _id
के रूप में ईमेल का उपयोग कर, इसलिए यह डिफ़ॉल्ट अनुक्रमित द्वारा होता है, क्वेरी तेज है: .00299978256226 और पाठ्यक्रम एक डेटाबेस 3 रिकॉर्ड है कि के साथ परीक्षण के ...)
import passlib.hash
import time
hashh = passlib.hash.pbkdf2_sha512
beg1 = time.time()
password = hashh.encrypt("test", salt_size = 32, rounds = 12000)
print time.time()- beg1 # returns 0.142999887466
beg2 = time.time()
hashh.verify("test", password) # returns 0.143000125885
print time.time()- beg2
अब अगर मैं आधा मूल्य का उपयोग करें:
password = hashh.encrypt("test", salt_size = 32, rounds = 4000) # returns 0.0720000267029
hashh.verify("test", password) # returns 0.0709998607635
उपयोग कर रहा हूँ विंडोज 7 डेल एक्सपीएस 15 i7 2.0 Ghz
बिट्सएनबी: स्थापित bcrypt, और जाहिर है, यह एक असली दर्द यह सीधे का उपयोग कर अपने मूलभूत मूल्यों के रूप में (rounds = 12
) है:
hashh = passlib.hash.bcrypt
beg1 = time.time()
password = hashh.encrypt("test", rounds = 12) # returns 0.406000137329
print time.time()- beg1
beg2 = time.time()
hashh.verify("test", password) # returns 0.40499997139
print time.time()- beg2
आधा मूल्य:
password = hashh.encrypt("test", rounds = 12) # 0.00699996948242 wonderful?
hashh.verify("test", password) # 0.00600004196167
तुम मुझे एक अच्छा सुझाव दे सकते हैं pbkdf2_sha512
का उपयोग करते समय राउंड मूल्य जो उत्पादन के लिए अच्छा होगा?
पहले: आप इस खूबसूरत पुस्तकालय के लिए, तो धन्यवाद: सुरक्षा के बारे में क्या, क्या एक सुरक्षित आवेदन के लिए सबसे अच्छा मूल्य (न्यूनतम) है (न नासा सुरक्षित अनुप्रयोग, बस एक साधारण आवेदन है कि बचा जाता है स्क्रिप्ट kiddies)? –
खुशी है कि यह उपयोगी है! पुन: सुरक्षित न्यूनतम - मैंने 500 प्रतिक्रियाओं तक मेरी प्रतिक्रिया को संपादित करने का प्रयास किया, लेकिन छोड़ दिया और इसे ऊपर दिए गए मेरे उत्तर में एक परिशिष्ट के रूप में जोड़ा - मुझे उम्मीद है कि यह बहुत लंबा नहीं है। यह अनिवार्य रूप से कुछ पाठ का एक साफ़ संस्करण है जिसे मैं पासलिब मैनुअल (अंततः) में जोड़ने की योजना बना रहा हूं। –
वाह! धन्यवाद! उन सभी जानकारी उपयोगी हैं, और सबकुछ के लिए फिर से धन्यवाद :) –