PHP-and-MySQL/C4/MD5-Encryption/Gujarati

From Script | Spoken-Tutorial
Revision as of 12:59, 26 February 2013 by Krupali (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Time Narration
0:00 નમસ્કાર. જો તમે php ની સલામતી વિશે ચિંતિત છે, તો આ ટ્યુટોરીયલ MD5 ફંક્શન વિષે બતાવશે.
0:09 આ એક પૂર્વનિર્ધારિત ફંક્શન છે જે સ્ટ્રીંગને MD5 હેશમાં બદલે છે અને ડેટા ને સુરક્ષિત કરવાં માટે પરવાનગી આપે છે.
0:16 MD5 હેશ એક તરફની રીધમ ઉપયોગમાં લે છે જેથી તે ડીક્રીપ્ટ થઇ શકતું નથી - તે ફક્ત એનક્રીપ્ટ થઇ શકે છે.
0:21 MD5 હેશને શોધવાનો ફક્ત એક જ માર્ગ છે કે સ્ટ્રીંગને MD5 હેશમાં બદલો અને એ સાથે એની સરખામણી એવી સ્ટ્રીંગ સાથે કરો જે પહેલાથી જ હેશમાં બદલાયેલી છે.
0:31 હું શું કહી રહ્યી છું જો તે સમજાતું નથી તો હું આ ટ્યુટોરીયલમાં તે શીખવીશ.
0:38 હું સ્ટ્રીંગની પૂર્વનિર્ધારણ દ્વારા શરૂઆત કરીશ જે પાસવર્ડ રહેશે.
0:45 આને 'user password' તરીકે સંબોધીશ અને આ 'abc' વેલ્યુ ધરાવશે.
0:55 આગળ હું 'user password e n c' નામનું નવું વેરીએબલ બનાવીશ જે એનક્રીપ્શન માટે હશે અને MD5 ફંકશનોને વ્યાખ્યાયિત કરીશ, જે m,d અને 5 છે.
1:09 અહીં અંદર કઈપણ હોય શકે છે તેથી તમે કંઈપણ આપી શકો છો જે એનક્રીપ્ટ કરવાં ઈચ્છો છો
1:13 પણ હમણાં હું યુઝર પાસવર્ડ વેરીએબલને એનક્રીપ્ટ કરીશ જે અહીં વ્યાખ્યાયિત કર્યું છે.
1:18 અને જો આને એકો કરીએ, તમે જોશો કે આપણને....,
1:27 MD5 એનક્રીપ્ટ થયેલી સ્ક્રીપ્ટની વેલ્યું મળે છે જે આ છે.
1:32 તમે જોશો કે આ નવસો થી ચાલુ થાય છે અને અહીં લગભગ 20 સામાન્ય અક્ષરો છે.
1:39 પરંતુ જે કઈપણ વેલ્યુ માં બદલીશ, આ એટલી જ લંબાઈનું રહેશે.
1:44 ફક્ત જે વસ્તુ બદલાશે તે છે કંટેંટ.
1:52 તો આપણી પાસે એનક્રીપ્ટ થયેલ સ્ટ્રીંગ છે જેમાં આ હેશ 'abc' સમાન છે.
2:00 હવે અહીં હું એક પ્રોગ્રામ અથવા સ્ક્રીપ્ટ બનાવીશ જે યુઝરથી ઇનપુટ લેશે અને તે તપાસશે કે પાસવર્ડ 'abc' છે કે નહી.
2:10 હવે આ પરંપરાગત રીતે કરી શકવાનો માર્ગ એ છે કે એનક્રીપ્શનને બહાર કાઢો.
2:17 આ માટે આપણે એક સરળ તપાસ કરી શકીએ છીએ કે જો પોસ્ટ પાસવર્ડ યુઝર પાસવર્ડ બરાબર હોય તો કંઈક કરો, નહી તો બીજું કંઈક કરો.
2:29 ઉદાહરણ તરીકે 'incorrect password' દર્શાવતી એરર હોઈ શકે છે અને અહીં 'your password has successfully matched the user password' કહી શકો છો.
2:38 પરંતુ જ્યારે એ ડેટાને ગણતરીમાં લઈએ છીએ જે ક્યાં તો તે પોસ્ટ વેરીએબલોમાં છે અથવા ડેટાબેઝમાં છે...
2:45 આ વેલ્યુને ડેટાબેઝથી સુચન કરવામાં આવેલ હોઈ શકે છે અને ડેટાબેઝ દુર્ભાગ્યે તૂટી શકે છે.
2:51 એટલા માટે જો ડેટાબેઝ તૂટી શકે છે તો તમે ઇચ્છશો કે યુઝરો સાથે જોડાયેલા તમામ પાસવર્ડ એનક્રીપ્ટ થાય, જેથી તેને શોધવું અત્યંત મુશ્કેલભર્યું રહે.
3:04 'abc' બ્રેક કરવા માટે સરળ છે જેમ વારો આવે છે કારણ કે abc સામાન્ય પાસવર્ડ છે.
3:12 'abc' ને MD5 હેશમાં બદલી તમે તેની સરખામણી ડેટાબેઝમાં પહેલાથી જ સંગ્રહીત થયેલ MD5 હેશ સાથે કરી શકો છો અને જો આ બે હેશો મેચ થાય તો તમને જાણ થશે કે MD5 હેશ 'abc' બરાબર છે, જે શરૂ કરવા માટે પહેલાથી જ હેશ થયેલ હતા.
3:29 આ વેલ્યુને અહીં લઈશું - user password encrypted - અને પોસ્ટ થયેલ પાસવર્ડની એનક્રીપ્ટ થયેલ પાસવર્ડ સાથે સરખામણી કરીશું.
3:47 હવે વાસ્તવમાં 'user password enc' ની તુલના કરવાં માટે સમર્થ બનવાની જરૂર છે.
3:55 આ એનક્રીપ્ટ થયેલ માટે છે અને આ પોસ્ટ કરેલ પાસવર્ડ ન કરેલાં એનક્રીપ્ટ માટે છે.
4:01 તેથી જો તમે પોસ્ટ કરેલ પાસવર્ડની MD5 હેશ લઈ અને તેની સરખામણી સંગ્રહીત કરેલ પાસવર્ડની MD5 હેશ સાથે કરો, તો યુઝરને જણાવી શકીએ છીએ કે તેમણે સાચો પાસવર્ડ દાખલ કર્યો છે કે નહી.
4:14 તેથી હું કહીશ કે જો પોસ્ટ કરેલ પાસવર્ડની MD5 હેશ એ સંગ્રહીત પાસવર્ડની MD5 હેશનાં બરાબર છે, જે અહીં છે, આ વેરીએબલ છે જે અહીં વાપરી રહ્યાં છીએ, તો એક બરાબર મેસેજ દર્શાવીશું અથવા એક એરર મેસેજ દર્શાવીશું.
4:33 અને જો તે મેચ ન થાય તો હું કહીશ આ સ્ક્રીપ્ટ ક્લીયર કરો અને 'correct' લખો, નહી તો સ્ક્રીપ્ટને કીલ કરી 'incorrect' લખો.
4:48 આ સમયે આની સરખામણી કરી શકતા નથી કારણ કે કોઈપણ વેરીએબલોને પોસ્ટ કર્યા નથી
4:53 અહીં નીચે હું ફોર્મ બનાવીશ.
4:57 Method [મેથડ] પણ POST [પોસ્ટ] હશે કારણ કે અહીં પોસ્ટ મેથડ ઉપયોગમાં લઇ રહ્યા છીએ
5:01 અને action [એક્શન] પેજ હશે જે હમણાં 'MD5 dot php' છે.
5:08 આગળ હું આનાં બે ઘટકો બનાવીશ જે એક ઇનપુટ ટેક્સ્ટ બોક્સ છે અને હું પાસવર્ડનું નામ આપીશ.
5:14 હું આ type text તરીકે વાપરી રહ્યી છું તેનું ફક્ત એક જ કારણ છે કે તમે કંટેટ [ઘટકો] જોઈ શકો, નહી તો અક્ષરો ખાલી કરવાં માટે તમે તે પાસવર્ડ આપી શકો છો.
5:22 આગળ, એક ઇનપુટ બોક્સ છે જે કહેશે, હમણાં માટે ફક્ત લોગીન કહીએ કારણ કે MD5 એનક્રીપ્શન માટે આ એક લાક્ષણિક ઉપયોગ છે જે લોગ-ઇન સ્ક્રીપ્ટ હશે.
5:34 જયારે હું પેજ રીફ્રેશ કરીશ તો તમે આ સમયે 'incorrect' જોઈ શકો છો.
5:38 કારણ કે આપણે પોસ્ટ વેરીએબલ માટે તપાસી રહ્યાં નથી.
5:41 અહીં હું ફક્ત લખી શકું, જો પાસવર્ડ અસ્તિત્વમાં છે ત્યારે આ સંપૂર્ણ કોડને એકો કરીશું અને આને વધું વાંચવા લાયક બનાવવા માટે ઇન્ડેન્ટ કરીશું. હું આ ફરીથી અહીં લઇ આઉં.
6:00 તો જો પાસવર્ડ સબમીટ થયો છે, જેનો અર્થ એ છે કે આ ફોર્મ આ વેલ્યુ સાથે સબમિટ થયું છે ત્યારબાદ કહીશું કે "શું એનક્રીપ્ટ કરેલ પાસવર્ડનું MD5 હેશ જે કે ફોર્મમાં દાખલ કરેલ પાસવર્ડ છે, તે અહીં પોસ્ટ વેરીએબલ છે, સંગ્રહીત પાસવર્ડનાં હેશ ની બરાબર છે?"
6:18 તેથી અહીં આ if સ્ટેટમેંટમાં એનક્રીપ્ટ કરેલ ડેટા સાથે કામ કરી રહ્યા છીએ.
6:23 જો આ મેચ થાય છે તો આ દર્શાવીશું, નહી તો 'incorrect' દર્શાવીશું. તો ફરીથી રીફ્રેશ કરીએ.
6:29 હવે પાસવર્ડ 'abc' છે તો જો હું 'Alex' ને પાસવર્ડ તરીકે ટાઈપ કરું, તમે જોશો કે 'incorrect' એરર મેસેજ મળે છે.
6:37 જો 'abc' ને પાસવર્ડ તરીકે ટાઈપ કરીએ, જે બરાબર છે, તમે જોશો કે 'correct' મેસેજ મળે છે
6:43 તમને કંટેંટનો હેતુ બતાવવા માટે હું અહીં શું કરીશ, હું લખીશ એકો અને 'compared' લખીશ અને યુઝર પાસવર્ડ લઈએ - વાસ્તવમાં, નહી - એનક્રીપ્ટ કરેલ પાસવર્ડ લઈએ.
7:07 તેથી 'user password enc' ને સરખામણી કરવા માટે - હું ફક્ત આ અને પોસ્ટ કરેલ પાસવર્ડ ને કોનકેટ કરીશ
7:14 આ તમામને એનક્રીપ્ટ કરવાં ઈચ્છીએ છીએ તેથી હું અહીં MD5 ટાઈપ કરીશ.
7:20 આ કરવાનો શ્રેષ્ઠ માર્ગ એ છે કે અહીં ઉપર નવું વેરીએબલ બનાવીએ, MD5 - આને કટ કરો - તો 'enc' અથવા કે 'submitted enc' આ બરાબર હશે.
7:37 ત્યારબાદ અહીં વેરીએબલોની ફેરબદલી કરી શકીએ છીએ તેથી તે તેને થોડું વધારે સહજ બનાવે.
7:49 તે તેનું કાર્ય વધારે સારું કે ઓછું બનાવતું નથી.
7:56 પરંતુ અહીં જયારે 'abc' ને પસંદ કરી અને લોગ ઇન પર ક્લિક કરીએ છીએ તો એક એરર મળે છે.
8:01 પાછા આવી તપાસીએ..... અને આનું કારણ છે કે આને છગડીયા કૌંસમાં રાખવાની જરૂર છે કારણ કે અહીં કોડની બે લાઈનો છે.
8:16 પાછા જઈએ, back પર ક્લિક કરીએ, 'abc' પસંદ કરીએ અને અહીં આની સરખામણી આના સાથે કરીશું.
8:26 આ અહીં બ્રેક કરીએ જેથી આપણે જોઈ શકીએ કે શું થઇ રહ્યું છે.
8:34 તો અહીં આની સરખામણી આ સાથે કરી છે.
8:38 તમે જોશો કે તે સમાન MD5 હેશ છે, જયારે કે આ અહીં સંગ્રહીત પાસવર્ડ છે અને આ એ પાસવર્ડ છે જે સબમીટ કર્યા છે.
8:46 તો તમે જોશો કે સબમીટ કરેલ encrypted ને સંગ્રહીત encrypted થી તપાસી રહ્યા છીએ.
8:51 આના ઘણા ઉપયોગો છે, તમે આને ડેટાબેઝોમાં વાપરી શકો છો જયારે ડેટાબેઝમાં યુઝરને રજીસ્ટર કરી રહ્યા હોવ, પાસવર્ડ એનક્રીપ્ટ કરી તેને સંગ્રહીત કરો.
8:59 જો તમે પાસવર્ડ માટે લોગ ઇન ફોર્મમાં તપાસ કરી રહ્યા છો, તો લોગ ઇન ફોર્મમાં યુઝર દ્વારા દાખલ કરેલ પાસવર્ડને એનક્રીપ્ટ કરો અને તેને ડેટાબેઝનાં એનક્રીપ્ટ કરેલ પાસવર્ડ સાથે તપાસો.
9:08 તો તમે જોશો કે આનાં ઘણાં ઉપયોગ છે જો વાપરવામાં આવે અને ડીકલેર કરવામાં આ ખરેખર સરળ છે. તમને અહીં ફક્ત MD5 ફંક્શનની જરૂર છે.
9:16 અત્યારે ખરેખર તમને MD ફંકશનો પર બસ આટલું જ જાણવાની અને કેવી રીતે આને વાપરવું છે અને આને ફોર્મમાં કેવી રીતે લાગુ કરવું એ જાણવાની જરૂર છે.
9:23 ઠીક છે જોડાવા બદલ આભાર.
9:26 મારી પાસે બીજાં કેટલાક સિક્યુંરીટી ટ્યુટોરીયલો છે જે આવી રહ્યાં છે તેથી એ માટે જુઓ. આવજો.
9:29 IIT Bombay તરફથી સ્પોકન ટ્યુટોરીયલ પ્રોજેક્ટ માટે ભાષાંતર કરનાર હું, જ્યોતી સોલંકી વિદાય લઉં છું.

Contributors and Content Editors

Jyotisolanki, Krupali