PHP में रैंडम स्ट्रिंग जनरेशन: सही और सुरक्षित तरीका क्या है?
सभी को नमस्ते! मैं एक नौसिखिया PHP डेवलपर हूँ और अपनी पहली वेबसाइट बना रहा हूँ जिसमें यूज़र रजिस्ट्रेशन है। मुझे ईमेल कन्फर्मेशन के लिए रैंडम टोकन और अस्थायी पासवर्ड जनरेट करने की ज़रूरत है। मैंने एक आसान तरीका खोजा है, लेकिन मुझे यकीन नहीं है कि वह सही है।
यहाँ मैं अब क्या उपयोग कर रहा हूँ:
```php
function generateRandomString($length = 10) {
$characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
$charactersLength = strlen($characters);
$randomString = '';
for ($i = 0; $i < $length; $i++) {
$randomString .= $characters[rand(0, $charactersLength - 1)];
}
return $randomString;
}
echo generateRandomString(32); // उदाहरण: "a3F8kL9mN2..."
```
समस्याएँ जो मैं देख रहा हूँ:
1. `rand()` फंक्शन — मैंने पढ़ा है कि यह क्रिप्टोग्राफिक रूप से सुरक्षित नहीं है।
2. कोई गारंटी नहीं है कि स्ट्रिंग यूनिक होगी।
3. यह स्पष्ट नहीं है कि स्ट्रिंग में केवल अक्षर या केवल अंक कैसे शामिल करें।
कृपया बताएं कि PHP में रैंडम स्ट्रिंग्स को सही तरीके से कैसे जनरेट करें? उदाहरण चाहिए।