पीएचपी ट्यूटोरियल

पीएचपी होम पीएचपी परिचय पीएचपी इंस्टाल पीएचपी सिंटैक्स पीएचपी टिप्पणियाँ पीएचपी चर पीएचपी इको / प्रिंट पीएचपी डेटा प्रकार पीएचपी स्ट्रिंग्स पीएचपी नंबर पीएचपी गणित पीएचपी स्थिरांक पीएचपी ऑपरेटर्स पीएचपी अगर ... और ... Elseif पीएचपी स्विच पीएचपी लूप्स पीएचपी कार्य पीएचपी सरणियाँ पीएचपी सुपरग्लोबल्स पीएचपी रेगेक्स

पीएचपी फॉर्म

PHP फॉर्म हैंडलिंग PHP फॉर्म सत्यापन पीएचपी फॉर्म की आवश्यकता पीएचपी फॉर्म यूआरएल/ई-मेल PHP फॉर्म पूर्ण

पीएचपी उन्नत

पीएचपी दिनांक और समय पीएचपी शामिल करें पीएचपी फाइल हैंडलिंग PHP फ़ाइल खोलें/पढ़ें PHP फ़ाइल बनाएँ/लिखें पीएचपी फ़ाइल अपलोड पीएचपी कुकीज़ पीएचपी सत्र पीएचपी फिल्टर पीएचपी फिल्टर उन्नत PHP कॉलबैक फ़ंक्शंस पीएचपी JSON पीएचपी अपवाद

पीएचपी ओओपी

पीएचपी ओओपी क्या है पीएचपी क्लासेस/ऑब्जेक्ट्स पीएचपी कंस्ट्रक्टर पीएचपी विनाशक पीएचपी एक्सेस संशोधक पीएचपी विरासत पीएचपी स्थिरांक पीएचपी सार वर्ग पीएचपी इंटरफेस पीएचपी लक्षण PHP स्टेटिक तरीके पीएचपी स्टेटिक गुण पीएचपी नेमस्पेस पीएचपी Iterables

MySQL डेटाबेस

MySQL डेटाबेस MySQL कनेक्ट MySQL डीबी बनाएँ MySQL तालिका बनाएँ MySQL डेटा डालें MySQL अंतिम आईडी प्राप्त करें MySQL एकाधिक सम्मिलित करें MySQL तैयार MySQL डेटा का चयन करें MySQL कहाँ MySQL ऑर्डर बाय MySQL डेटा हटाएं MySQL अद्यतन डेटा MySQL सीमा डेटा

पीएचपी एक्सएमएल

पीएचपी एक्सएमएल पार्सर्स पीएचपी सिंपलएक्सएमएल पार्सर पीएचपी सिंपलएक्सएमएल - प्राप्त करें पीएचपी एक्सएमएल एक्सपैट पीएचपी एक्सएमएल डोम

पीएचपी - AJAX

AJAX परिचय अजाक्स पीएचपी AJAX डेटाबेस अजाक्स एक्सएमएल AJAX लाइव खोज AJAX पोल

पीएचपी उदाहरण

पीएचपी उदाहरण पीएचपी संकलक पीएचपी प्रश्नोत्तरी पीएचपी व्यायाम पीएचपी प्रमाणपत्र

पीएचपी संदर्भ

पीएचपी सिंहावलोकन पीएचपी सरणी पीएचपी कैलेंडर पीएचपी तिथि पीएचपी निर्देशिका पीएचपी त्रुटि पीएचपी अपवाद पीएचपी फाइल सिस्टम पीएचपी फ़िल्टर पीएचपी एफ़टीपी पीएचपी JSON पीएचपी कीवर्ड पीएचपी लिबक्सएमएल पीएचपी मेल पीएचपी गणित पीएचपी विविध पीएचपी MySQLi पीएचपी नेटवर्क पीएचपी आउटपुट नियंत्रण पीएचपी रेगेक्स पीएचपी सिंपलएक्सएमएल पीएचपी स्ट्रीम पीएचपी स्ट्रिंग
ऐडकस्लैश () जोड़ () बिन2हेक्स () चॉप () सीआर () चंक_स्प्लिट () कन्वर्ट_सीर_स्ट्रिंग () कन्वर्ट_यूडकोड () कन्वर्ट_यूएनकोड () गिनती_चार्स () सीआरसी32 () तहखाना () गूंज () विस्फोट() एफप्रिंट () get_html_translation_table() हेब्रेव () हेब्रेवीसी () hex2bin () html_entity_decode() htmlइकाइयाँ () htmlspecialchars_decode() एचटीएमएलस्पेशलचर्स () इंपोड () शामिल हों () एलसीफर्स्ट () लेवेनशेटिन () लोकेलकॉनव () लिट्रिम () एमडी5 () एमडी5_फाइल () रूपक () मनी_फॉर्मेट () nl_langinfo () nl2br () संख्या स्वरूप() शब्दों() पार्स_स्ट्र () प्रिंट () प्रिंटफ () उद्धृत_प्रिंट करने योग्य_डीकोड () उद्धृत_प्रिंट करने योग्य_एन्कोड () कोटमेटा () आरट्रिम () सेटलोकेल () sha1 () sha1_file () समान_पाठ () साउंडेक्स () स्प्रिंटफ () एसस्कैनफ () str_getcsv () str_ireplace () str_pad() str_repeat () str_replace () str_rot13 () str_shuffle () str_split () str_word_count () स्ट्रैसेकम्प () स्ट्रैचर () strcmp () स्ट्रोक () स्ट्रक्सपीएन () स्ट्रिप_टैग () स्ट्रिपस्लैश () स्ट्रिप्सलाश () कॉमिक्स () पट्टी () स्ट्रेलेन () strnatcasecmp () strnatcmp () strncasecmp () strncmp () स्ट्रेपब्रक () स्ट्रॉप्स () स्ट्रैचर () स्ट्रेव () स्ट्रिपोस () स्ट्रॉप्स () स्ट्रस्पन () स्ट्रस्ट्र () स्ट्रोक () स्ट्रेटोलोवर () स्ट्रटौपर () स्ट्रेट () पदार्थ () सबस्ट्र_कंपेयर () सबस्ट्र_काउंट () substr_replace () ट्रिम () यूकफर्स्ट () यूकवर्ड्स () वीएफप्रिंटफ () वीप्रिंटफ () बनामप्रिंटफ () वर्ड रैप()
पीएचपी वैरिएबल हैंडलिंग पीएचपी एक्सएमएल पार्सर पीएचपी ज़िप पीएचपी समयक्षेत्र

PHP क्रिप्ट () फ़ंक्शन


❮ पीएचपी स्ट्रिंग संदर्भ

परिभाषा और उपयोग

क्रिप्ट () फ़ंक्शन DES, ब्लोफिश, या MD5 एल्गोरिदम का उपयोग करके एक हैशेड स्ट्रिंग देता है।

यह फ़ंक्शन अलग-अलग ऑपरेटिंग सिस्टम पर अलग-अलग व्यवहार करता है। PHP जाँचता है कि कौन से एल्गोरिदम उपलब्ध हैं और स्थापित होने पर कौन से एल्गोरिदम का उपयोग करना है।

नमक पैरामीटर वैकल्पिक है। हालाँकि, क्रिप्ट () नमक के बिना एक कमजोर पासवर्ड बनाता है। बेहतर सुरक्षा के लिए एक मजबूत पर्याप्त नमक निर्दिष्ट करना सुनिश्चित करें।

कुछ स्थिरांक हैं जिनका उपयोग क्रिप्ट () फ़ंक्शन के साथ किया जाता है। इन स्थिरांक का मान PHP द्वारा स्थापित होने पर सेट किया जाता है।

स्थिरांक:

  • [CRYPT_STD_DES] - मानक डीईएस-आधारित हैश, "./0-9A-Za-z" वर्णमाला से दो वर्ण वाले नमक के साथ। नमक में अमान्य वर्णों का उपयोग करने से यह कार्य विफल हो जाएगा।
  • [CRYPT_EXT_DES] - नौ वर्ण वाले नमक के साथ विस्तारित DES-आधारित हैश जिसमें अंडरस्कोर होता है और उसके बाद 4 बाइट्स की पुनरावृत्ति गणना और 4 बाइट्स नमक होता है। इन्हें प्रिंट करने योग्य वर्णों के रूप में एन्कोड किया गया है, प्रति वर्ण 6 बिट, कम से कम महत्वपूर्ण वर्ण पहले। 0 से 63 के मान "./0-9A-Za-z" के रूप में एन्कोड किए गए हैं। नमक में अमान्य वर्णों का उपयोग करने से कार्य विफल हो जाएगा।
  • [CRYPT_MD5] - $1$ . से शुरू होने वाले 12 वर्ण के नमक के साथ MD5 हैशिंग
  • [CRYPT_BLOWFISH] - 2a$, $2x$, या $2y$ से शुरू होने वाले नमक के साथ ब्लोफिश हैशिंग, दो अंकों का लागत पैरामीटर "$", और वर्णमाला "./0-9A-Za-z" से 22 वर्ण . वर्णमाला के बाहर वर्णों का उपयोग करने से यह फ़ंक्शन शून्य-लंबाई वाली स्ट्रिंग लौटाएगा। "$" पैरामीटर अंतर्निहित ब्लोफिश-बैशेड हैशिंग एल्गोरिथम के लिए पुनरावृत्ति गणना का आधार-2 लघुगणक है और 04-31 की सीमा में होना चाहिए। इस सीमा के बाहर के मान फ़ंक्शन को विफल कर देंगे।
  • [CRYPT_SHA_256] - SHA-256 हैश, जिसमें 16 वर्ण का नमक है, $5$ से शुरू होता है। यदि नमक स्ट्रिंग "राउंड = <एन> $" से शुरू होती है, तो एन के संख्यात्मक मान का उपयोग यह इंगित करने के लिए किया जाता है कि हैशिंग लूप को कितनी बार निष्पादित किया जाना चाहिए, ब्लोफिश पर लागत पैरामीटर की तरह। राउंड की डिफ़ॉल्ट संख्या 5000 है, न्यूनतम 1000 और अधिकतम 999,999,999 है। इस सीमा के बाहर N के किसी भी चयन को निकटतम सीमा तक छोटा कर दिया जाएगा।
  • [CRYPT_SHA_512] - SHA-512 हैश के साथ 16 वर्ण का नमक $6$ से शुरू होता है। यदि नमक स्ट्रिंग "राउंड = <एन> $" से शुरू होती है, तो एन के संख्यात्मक मान का उपयोग यह इंगित करने के लिए किया जाता है कि हैशिंग लूप को कितनी बार निष्पादित किया जाना चाहिए, ब्लोफिश पर लागत पैरामीटर की तरह। राउंड की डिफ़ॉल्ट संख्या 5000 है, न्यूनतम 1000 और अधिकतम 999,999,999 है। इस सीमा के बाहर N के किसी भी चयन को निकटतम सीमा तक छोटा कर दिया जाएगा।

सिस्टम पर जहां यह फ़ंक्शन एकाधिक एल्गोरिदम का समर्थन करता है, ऊपर स्थिरांक समर्थित होने पर "1" और अन्यथा "0" पर सेट होते हैं।

नोट: कोई डिक्रिप्ट फ़ंक्शन नहीं है। क्रिप्ट () फ़ंक्शन एक-तरफ़ा एल्गोरिथम का उपयोग करता है।


वाक्य - विन्यास

crypt(str,salt)

पैरामीटर मान

Parameter Description
str Required. Specifies the string to be hashed
salt Optional. A salt string to base the hashing on


टेक्निकल डिटेल

प्रतिलाभ की मात्रा: एन्कोडेड स्ट्रिंग या एक स्ट्रिंग लौटाता है जो 13 वर्णों से छोटा है और विफलता पर नमक से अलग होने की गारंटी है
पीएचपी संस्करण: 4+
चेंजलॉग: PHP 5.6.0 - नमक छोड़े जाने पर E_NOTICE सुरक्षा चेतावनी दिखाता है।
PHP 5.3.7 - $2x$ और $2y$ ब्लोफिश मोड जोड़ा गया।
PHP 5.3.2 - SHA-256 और SHA-512 जोड़ा गया। अमान्य राउंड पर फिक्स्ड ब्लोफिश व्यवहार "विफलता" स्ट्रिंग ("*0" या "*1") लौटाता है, बजाय डेस पर वापस आने के।
PHP 5.3.0 - PHP में अब MD5 क्रिप्ट, स्टैंडर्ड डीईएस, विस्तारित डीईएस और ब्लोफिश एल्गोरिदम के लिए अपना कार्यान्वयन शामिल है और यदि सिस्टम में एक या अधिक एल्गोरिदम के लिए समर्थन की कमी है तो इसका उपयोग करेगा।

और ज्यादा उदाहरण

उदाहरण

इस उदाहरण में हम विभिन्न एल्गोरिदम का परीक्षण करेंगे:

<?php
// 2 character salt
if (CRYPT_STD_DES == 1)
{
echo "Standard DES: ".crypt('something','st')."\n<br>";
}
else
{
echo "Standard DES not supported.\n<br>";
}

// 4 character salt
if (CRYPT_EXT_DES == 1)
{
echo "Extended DES: ".crypt('something','_S4..some')."\n<br>";
}
else
{
echo "Extended DES not supported.\n<br>";
}

// 12 character salt starting with $1$
if (CRYPT_MD5 == 1)
{
echo "MD5: ".crypt('something','$1$somethin$')."\n<br>";
}
else
{
echo "MD5 not supported.\n<br>";
}

// Salt starting with $2a$. The two digit cost parameter: 09. 22 characters
if (CRYPT_BLOWFISH == 1)
{
echo "Blowfish: ".crypt('something','$2a$09$anexamplestringforsalt$')."\n<br>";
}
else
{
echo "Blowfish DES not supported.\n<br>";
}

// 16 character salt starting with $5$. The default number of rounds is 5000.
if (CRYPT_SHA256 == 1)
{
echo "SHA-256: ".crypt('something','$5$rounds=5000$anexamplestringforsalt$')."\n<br>"; }
else
{
echo "SHA-256 not supported.\n<br>";
}

// 16 character salt starting with $6$. The default number of rounds is 5000.
if (CRYPT_SHA512 == 1)
{
echo "SHA-512: ".crypt('something','$6$rounds=5000$anexamplestringforsalt$');
}
else
{
echo "SHA-512 not supported.";
}
?>

उपरोक्त कोड का आउटपुट (ऑपरेटिंग सिस्टम के आधार पर) हो सकता है:

Standard DES: stqAdD7zlbByI
Extended DES: _S4..someQXidlBpTUu6
MD5: $1$somethin$4NZKrUlY6r7K7.rdEOZ0w.
Blowfish: $2a$09$anexamplestringforsaleLouKejcjRlExmf1671qw3Khl49R3dfu
SHA-256: $5$rounds=5000$anexamplestringf$KIrctqsxo2wrPg5Ag/hs4jTi4PmoNKQUGWFXlVy9vu9
SHA-512: $6$rounds=5000$anexamplestringf$Oo0skOAdUFXkQxJpwzO05wgRHG0dhuaPBaOU/
oNbGpCEKlf/7oVM5wn6AN0w2vwUgA0O24oLzGQpp1XKI6LLQ0.


❮ पीएचपी स्ट्रिंग संदर्भ