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

From Script | Spoken-Tutorial
Revision as of 16:15, 14 January 2013 by Jyotisolanki (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 સ્પોકન ટ્યુટોરીયલ યોજના માટે ભાષાંતર કરનાર હું, જ્યોતી સોલંકી આઈઆઈટી મુંબઈ તરફથી વિદાય લઉં છું.

Contributors and Content Editors

Jyotisolanki, Krupali