जैसा कि कुछ उत्तरों ने कहा है, आपकी वेब सेवा को हर किसी के लिए बंद करना एक बड़ी परेशानी होगी।सबसे अच्छा आप उम्मीद कर सकते हैं कि हैकरों के लिए आपकी वेब साइट का उपयोग करने के लिए आसान बनाना है ...
ऐसा करने का एक और सुझाव, सर्वर पर random seed से यादृच्छिक संख्याएं उत्पन्न करना है और ग्राहक। सर्वर को ट्रैक करने की आवश्यकता होगी कि सभी क्लाइंट यादृच्छिक संख्याओं के क्रम में कहां हैं, और क्लाइंट द्वारा भेजे गए नंबर पर उस नंबर से मेल खाते हैं।
ग्राहक भी सर्वर तक पहुँच दी जानी रजिस्टर करना होगा। यह एक प्रमाणीकरण तंत्र के रूप में भी काम करेगा।
तो:
//Client code:
$sequence = file_get_contents('sequence.txt');
$seed = file_get_contents('seed.txt');
$sequence++;
//Generate the $sequence-th random number
srand($seed);
for ($i = 0; $i <= $sequence; $i++) {
$num = rand();
}
//custom fetch function
get_info($main_url . '?num=' . $num . '&id' = $my_id);
यह इस के लिए एक अनुरोध समान उत्पन्न करेगा:
http://webservice.com/get_info.php?num=3489347&id=3
//Server Code: (I'm used to PHP)
//Get the ID and the random number
$id = (int)$_REQUEST['id'];
$rand = (int)$_REQUEST['num'];
$stmt = $db->prepare('SELECT `sequence`, `seed` FROM `client_list` WHERE `id` = :id');
if ($stmt->execute(array(':id' => $id)) {
list($sequence, $seed) = $stmt->fetch(PDO::FETCH_ASSOC);
}
$sequence++;
//Generate the $sequence-th random number
srand($seed);
for ($i = 0; $i <= $sequence; $i++) {
$num = rand();
}
if ($num == $rand) {
//Allow Access
} else {
//Deny Access
}
प्रत्येक ग्राहक के लिए आ विभिन्न बीज का उपयोग करके आप यह सुनिश्चित करें कि हैकर्स नहीं कर सकते भविष्यवाणी की गई पिछली संख्याओं को ट्रैक करके एक यादृच्छिक संख्या भविष्यवाणी करें। यदि आपके ऐप को अनुरोधों के साथ डिवाइस आईडी भेजने -
कैसे है कि सेवा तक पहुंचने से HTTPS का उपयोग करके किसी अन्य अनुप्रयोग रोक रहा है? हां, हैकर को प्रमाणीकरण विवरण का उपयोग करने की आवश्यकता होगी, लेकिन अगर हम एक संसाधन हैकर मानते हैं, तो मुझे नहीं लगता कि यह उन्हें रोक देगा। –
जैसा कि आपने खुद से पूछा था: प्रश्न यह है कि वह सेवा को सुरक्षित रखने के लिए कितना प्रयास करना चाहता है। निश्चित रूप से, संसाधन संसाधन हैकर एसएसएल-एन्क्रिप्टेड ट्रैफ़िक से उपयोगकर्ता नाम/पासवर्ड लाने के लिए एमआईटीएम हमले का उपयोग कर सकता है, लेकिन मुझे लगता है कि यह लाभ और लागत के बीच एक अच्छा संतुलन है। – Javier