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

From Script | Spoken-Tutorial
Jump to: navigation, search
Time Narration
00:00 নমস্কাৰ । যদি আপুনি php সুৰক্ষাৰ বিষয়ে পৰিচিত, তেন্তে এই টিউট’ৰিয়েলটোৱে আপোনাক MD5 ফাংচনটোৰ দ্বাৰা লৈ যাব
00:09 ই এটা পূৰ্বেসূচীত ফাংচন যি এটা ষ্ট্ৰিংগক MD5 হেচ (hash) এটালৈ পৰিবৰ্ত্তন কৰে আৰু আপোনাক আপোনাৰ দাতা সুৰক্ষিত কৰিবলৈ অনুমতি দিয়ে
00:16 'MD5 হেচটোৱে এটা একক পথৰ ৰিদ’ম (rhythm) ব্যৱ্হাৰ কৰে সেইবাবে ইয়াক দিক্ৰিপ্ত (decrypt) কৰিব নোৱাৰি; ইয়াক মাত্ৰ এনক্ৰিপ্ত (encrypt) কৰিব পাৰি
00:21 'MD5 হেচ (hash)' এটাক বিচৰাৰ একমাত্ৰ পদ্ধতিটো হৈছে ষ্ট্ৰিংগ (string) এটাক 'MD5 হেচ (hash)' এটালৈ পৰিবৰ্ত্তন কৰা আৰু ইয়াক ষ্ট্ৰিংগ এটালৈ তুলনা কৰা যাক ইতিমধ্যে হেচ এটালৈ পৰিবৰ্ত্তন কৰা হৈছে
00:31 যদি আপুনি মই কি বুজাইছো নাজানে, মই এই টিউট’ৰিয়েলটোত ইয়াৰ দ্বাৰা যাম
00:38 মই ষ্ট্ৰিংগ (string) এটাক পূৰ্বেসূচীত কৰি আৰম্ভ কৰিম যিটো মোৰ পাচৱৰ্দ হ’ব
00:45 মই ইয়াক ইউজাৰ পাচৱৰ্দ ($user password) বুমি ক’ম আৰু তাৰ মানটো হ’ব "abc"
00:55 পাছ্ত মই '$ইউজাৰ পাচৱৰ্দ e n c' নামৰ এটা নতুন ভেৰিয়েবল বনাম যি হৈছে এনক্ৰিপচনৰ বাবে আৰু মই মোৰ 'MD5' ফাংচনচ সূচীত কৰিম যি হৈছে মূলত m,d আৰু 5
01:09 ইয়াত যিকোনো যাব পাৰে গতিকে আপুনি যিকোনো দিব পাৰে যাক আপুনি ইয়াত এনক্ৰিপ্ত কৰিব বিচাৰে
01:13 কিন্তু এতিয়াৰ বাবে মই মোৰ ইউজাৰ পাচৱৰ্দ ($user password) ভেৰিয়েবলটো এনক্ৰিপ্ত কৰিম যাক আমি ওপৰত ইয়াত সূচীত কৰিছিলো
01:18 আৰু যদি আমি মাত্ৰ ইয়াক একৌ (echo) কৰো, আপুনি দেখিছে যে আমি পাওঁ আমাৰ....,
01:27 'MD5' এনক্ৰিপ্ত কৰা স্ক্ৰিপ্তৰ মানটো যি হৈছে এইটো
01:32 আপুনি দেখিছে যে ই নাইন হানদ্ৰেদৰে আৰম্ভ হৈছে আৰু মই ভাবো ইয়াত কমেওঁ 20 কমন কেৰেক্তাৰচ আছে
01:39 কিন্তু মই মানটোক যিহলৈকে নসলাওঁ কিয়, ইয়াৰ দৈৰ্ঘ্যটো একে থাকিব
01:44 সলনি হ’বলগা একমাত্ৰ বস্তুটো হৈছে বিষবস্তুটো
01:52 গতিকে, আমাৰ এটা এনক্ৰিপ্ত হোৱা ষ্ট্ৰিংগ (string) আছে যাৰদ্বাৰা আপুনি ইয়াত দেখা হেচটো 'abc'ৰ সমান হয়
02:00 এতিয়া মই ইয়াত তৎক্ষণাত এটা প্ৰোগ্ৰাম বা এটা স্ক্ৰিপ্ত বনাম যি উপভোক্তাৰ পৰা এটা ইনপুত ল’ব আৰু ই পাচৱৰ্দটো 'abc' হয় নেকি পৰীক্ষা কৰিব
02:10 এতিয়া আমি ইয়াক ঐতিহ্যগতভাবে কৰাৰ পদ্ধতিটো হৈছে আমাৰ এনক্ৰিপচনটো উঠাই লোৱাতো
02:17 আমি এটা সাধাৰণ পৰীক্ষা কৰিব পাৰো কৈ যে যদি প’ষ্ট (POST) পাচৱৰ্দটো আমাৰ ইউজাৰ পাচৱৰ্দৰ ($user password) সমান হয় তেন্তে কিবা এটা কৰক অন্যথা আন কিবা এটা কৰক
02:29 গতিকে, উদাহৰণস্বৰূপে, আপোনাৰ এটা এৰ’ৰ (error) থাকিব পাৰে কৈ ইনকাৰেক্ট পাচৱৰ্দ ('incorrect password') আৰু ইয়াত আপুনি ক’ব পাৰে 'ইয়’ৰ (your) পাচৱৰ্দ (password) হেজ (has) চাক্সেচফুলি (successfully) মেতচদ (matched) দ (the) ইউজাৰ (user) পাচৱৰ্দ (password)'
02:38 গতিকে যেতিয়া আমি একাউন্ট দাতালৈ লৈছো যি আমাৰ হয়তো প’ষ্ট (POST) ভেৰিয়েবলত নাইবা দাতাবেচটোত অৱস্থিত,...
02:45 এই মানক হয়তো দাতাবেচটোৰ পৰা নিদৰ্শিত কৰা হৈছে আৰু দাতাবেচসমূহ হঠাতে ভাঙিব পাৰি
02:51 সেইবাবে যদি দাতাবেচ এটাক ভাঙিব পাৰি, আপুনি আপোনাৰ উপভোক্তালৈ উপলদ্ধ প্ৰতিটো পাচৱৰ্দ এনক্ৰিপ্ত হোৱাটো বিচাৰিব, যাতে সিহতক বিচৰাটো অধিক কঠিন হয়
03:04 নিশ্বিতভাবে, 'abc'টো ভাঙিবলৈ সহজ এটা হ’ব কাৰণ abc এটা সাধাৰণ পাচৱৰ্দ হ’ব
03:12 'abc'ক এটা MD5 হেচলৈ পৰিবৰ্ত্তন কৰি আপুনি ইয়াক ইতিমধ্যে আপোনাৰ দাতাবেচত জমা হৈ থকা MD5 হেচ এটাৰ লগত তুলনা কৰিব পাৰে আৰু যদি এই হেচ দুটা সদৃশ হয় তেন্তে সিহঁতে জানিব যে MD5 হেচটো 'abc'ৰ সমান, যিদৰে সিহঁতে ইতিমধ্যে হেচ কৰিলে আৰম্ভ কৰিবলৈ
03:29 যিকিনহওঁক, আমি যি কৰিম সেইয়া হৈছে আমি ইয়াত এই মানটো ল’ম - আমাৰ 'ইউজাৰ পাচৱৰ্দ এনক্ৰিপ্তেদ' - আৰু আমি আমাৰ প’ষ্টেদ পাচৱৰ্দক এনক্ৰিপ্তেদ পাচৱৰ্দৰ লগত তুলনা কৰিম
03:47 এতিয়া আমি প্ৰকৃততে যি কৰিব লাগিব সেইয়া হৈছে $ইউজাৰ পাচৱৰ্দ encক তুলনা কৰিবলৈ সক্ষম হোৱাতো
03:55 এইটো, ই থকাৰ দৰে, এনক্ৰিপ্তেদ হয় আৰু এই প’ষ্টেদ পাচৱৰ্দটো ই থকাৰ দৰে এনক্ৰিপ্তেদ নহয়
04:01 গতিকে, যদি আপুনি প’ষ্টেদ পাচৱৰ্দটোৰ MD5 হেচটো লয় আৰু তাক জমাহৈ থকা পাচৱৰ্দটোৰ MD5 হেচটোলৈ তুলনা কৰে, আমি আমাৰ উপভোক্তাক জনাব পাৰো যদি তেওঁলোকে শুদ্ধ বা সঠিক পাচৱৰ্দটো এন্টাৰ কৰিছে
04:14 গতিকে মই ক’ম, যদি প’ষ্টেদ পাচৱৰ্দ এটাৰ MD5 হেচটো সমান হয় জমাহৈ থকা পাচৱৰ্দটোৰ MD5 হেচটোৰ, যিটো ইয়াত আছে, এইটোৱেই হৈছে আমি ইয়াত ব্যৱ্হাৰ কৰি থকা ভেৰিয়েবলটো, তেন্তে আমি শুদ্ধ বাৰ্তাটো দৰ্শিত কৰিব পাৰো বা আমি এটা এৰ’ৰ বাৰ্তা দৰ্শিত কৰিব পাৰো
04:33 আৰু যদি সিহঁত সদৃশ হয় তেন্তে মই ক’ম এই স্ক্ৰিপ্তটো চাফা কৰক আৰু কাৰেক্ট ("Correct") লিখক অন্যথা মই স্ক্ৰিপ্তটো শেষ কৰিম আৰু ক’ম ইনকাৰেক্ট ("Incorrect")
04:48 এই মূহুৰ্ত্তত, আমি এইবোৰক তুলনা কৰিব নোৱাৰো কাৰণ আমি কোনো ভেৰিয়েবলচ প’ষ্ট কৰা নাই
04:53 তলত ইয়াত মই এখন ফৰ্ম (form) বনাম
04:57 মেথ’দ (Method) টোওঁ প’ষ্ট (POST) হ’ব কাৰণ আমি ওপৰত ইয়াত প’ষ্ট মেথ’দ (method) টো ব্যৱ্হাৰ কৰিছো
05:01 আৰু একচন (action)টো হ’ব মোৰ পৃষ্ঠাটো যিটো বৰ্ত্তমান হৈছে 'md5 দত (dot) php'
05:08 পাছত মই ইয়াৰ দুটা উপাদান বনাম যি হৈছে এটা ইনপুত (input) টেকস্ত ব’ক্স (text box) আৰু মই পাচৱৰ্দৰ ('password') নেম (name)টো দিম
05:14 মই ইয়াক টেকস্ত ('text') টাইপ (type) হিচাবে ব্যৱ্হাৰ কৰাৰ একমাত্ৰ কাৰণটো হৈছে - আপুনি বিষয়বস্তুটো দেখিছে অন্যথা আপুনি ইয়াক এটা পাচৱৰ্দ ('password') দিব পাৰে কেৰেক্তাৰচক নেদেখা কৰিবলৈ
05:22 পাছত, মোৰ এটা ইনপুত ব’ক্স (input box) থাকিব আৰু ই ক’ব, ধৰক কওঁ, ল’গিন ('Login') এতিয়াৰ বাবে কাৰণ এইটো হৈছে MD5 এনক্ৰিপচন এটাৰ বাবে জটিল ব্যৱ্হাৰ এটা যিটো ল’গ-ইন স্ক্ৰিপ্ত এটা হ’ব
05:34 যেতিয়া মই মোৰ পৃষ্ঠাটো ৰিফ্ৰেছ কৰো আপুনি এই মূহুৰ্ত্তত ইনকাৰেক্ট (Incorrect) দেখিছে
05:38 তাৰ কাৰণটো হৈছে আমি আমাৰ প’ষ্ট (POST) ভেৰিয়েবলটোৰ বাবে পৰীক্ষা কৰা নাই
05:41 ইয়াত মই ক’ব পাৰো ইফ (if) পাচৱৰ্দ ('password') উপলদ্ধ তেন্তে আমি এই সকলো ক’ড (code) একৌ (echo) কৰিব পাৰো আৰু আমি ইয়াক অধিক পাঠযোগ্য কৰিবলৈ সংভৃত (indent) কৰিব পাৰো
06:00 ঠিক আছে, গতিকে যদি আমাৰ পাচৱৰ্দ ('password')টো ভৰ্ত্তি কৰা হৈছে যি বুজায় এই ফৰ্ম (form)ক এই মানৰ সৈতে ভৰ্ত্তি কৰা হৈছে তেন্তে আমি কৈছো "এনক্ৰিপ্তেদ পাচৱৰ্দটোৰ MD5 হেচটো যি হৈছে ফৰ্ম (form)ত এন্টাৰ কৰা পাচৱৰ্দটো যি হৈছে ইয়াত আমাৰ প’ষ্ট ভেৰিয়েবলটো, জমাহৈ থকা পাচৱৰ্দটোৰ হেচটোৰ সমান হয়নে"?
06:18 গতিকে, আমি ইয়াত এই ইফ (if) ষ্টেতমেন্তটোত এনক্ৰিপ্তেদ দাতাৰ সৈতে কাম কৰিছো
06:23 যদি এইটো মিলিছে তেন্তে আমি ইয়াক দৰ্শিত কৰিব পাৰো, অন্যথা আমি ইনকাৰেক্ট ("Incorrect") দৰ্শিত কৰিব পাৰো । গতিকে আহক তাক পুনৰ ৰিফ্ৰেছ কৰো
06:29 এতিয়া মোৰ পাচৱৰ্দ হৈছে 'abc' । গতিকে, যদি মই মোৰ পাচৱৰ্দ হিচাবে এলেক্স ('Alex') লিখো, আপুনি দেখিছে আমি এটা ইনকাৰেক্ট ('Incorrect') এৰ’ৰ (error) বাৰ্তা পাওঁ
06:37 যদি আমি 'abc' আমাৰ পাচৱৰ্দ হিচাবে লিখো, যিটো শুদ্ধ, আপুনি দেখিছে আমি এটা কাৰেক্ট ("Correct") বাৰ্তা পাওঁ
06:43 আপোনাক বিষয়বস্তুটোৰ এটা বুদ্ধি দিবলৈ মই ইয়াত যি কৰিব পাৰো সেইয়া হৈছে মই ক’ব পাৰো একৌ (echo) আৰু মই ক’ব পাৰো কম্পেয়াৰেদ ("compared") আৰু আহক আমাৰ '$ইউজাৰ পাচৱৰ্দ' লওঁ - প্ৰকৃততে, নহয় - আহক আমাৰ এনক্ৰিপ্তেদ পাচৱৰ্দটো লওঁ
07:07 গতিকে কম্পেয়াৰ "$ইউজাৰ পাচৱৰ্দ enc তু" - মই তাত কনকাতিনেত কৰিম আৰু প’ষ্টেদ পাচৱৰ্দটো ('password')
07:14 আমি ইয়াৰ সকলো এনক্ৰিপ্তেদ হোৱাতো বিচাৰিছো গতিকে ইয়াত মই লিখিম 'md5'
07:20 ইয়াক কৰাৰ উত্তম পদ্ধতিটো হৈছে ইয়াত 'md5' কৈ এটা নতুন ভেৰিয়েবল বনোৱাতো - ইয়াক কাত কৰক - গতিকে 'enc' বা '$চাবমিতেত enc' সমান সেইটো
07:37 তাৰপাছত আমি আমাৰ ভেৰিয়েবলটো ইয়াত স্থানান্তৰ কৰিব পাৰো যাতে ই ইয়াক কিছু অধিক...., কিছু অধিক শব্দবহুল (fluent) বনায়
07:49 ই ইয়াক কিবা উন্নত বা কিবা কম কাম কৰা নবনায়
07:56 কিন্তু ইয়াত যেতিয়া আমি 'abc' নিৰ্বাচিত কৰো আৰু আমি ল’গিন (Login)ত টিপো আৰু আমি এটা এৰ’ৰ (error) পালো
08:01 আহক ঘূৰি আহো আৰু চাওঁ..... আৰু ইয়াৰ কাৰণটো হৈছে আমি এইবোৰ মাজু বন্ধনীৰ ভিতৰত থ’ব লাগিব যিহেতু আমি ইয়াত ক’ডৰ দুটা শাৰী পাইছো
08:16 আহক ঘূৰি যাওঁ, পাচলৈ টিপক, 'abc' নিৰ্বাচিত কৰক আৰু আমি ইয়াক ইয়াত তুলনা কৰিছো, ইয়াত ইয়ালৈ
08:26 আহক ইয়াত ব্ৰেক (break) দিওঁ, যাতে আমি চাব পাৰো কি হৈ আছে
08:34 ঠিক আছে, গতিকে আমি ইয়াত ইয়াক ইয়াত ইয়ালৈ তুলনা কৰিছো
08:38 আপুনি চাব পাৰে সিহত একেবাৰে একেটা MD5 হেচ । যিকিনহওঁক, ইয়াত এইটো হৈছে জমাহৈ থকা পাচৱৰ্দ আৰু এইটো হৈছে আমি ভৰ্ত্তি কৰা পাচৱৰ্দটো
08:46 গতিকে, আপুনি দেখিছে যে আমি আমাৰ ভৰ্ত্তি কৰা এনক্ৰিপ্তেদটোক আমাৰ জমাহৈ থকা এনক্ৰিপ্তেদটোলৈ পৰীক্ষা কৰিছো
08:51 ইয়াৰ বহুতো ব্যৱ্হাৰ আছে, আপুনি ইয়াক দাতাবেচত ব্যৱ্হাৰ কৰিব পাৰে যেতিয়া উপভোক্তা এজনক পঞ্জীয়ণ কৰে, পাচৱৰ্দটোক এনক্ৰিপ্ত কৰক তাৰপাছত ইয়াক জমা কৰক
08:59 যদি আপুনি ল’গ-ইন ফৰ্ম (log-in form) এখনত পাচৱৰ্দ এটাৰ বাবে পৰীক্ষা কৰিছে, উপভোক্তাই এন্টাৰ কৰা পাচৱৰ্দটোক এনক্ৰিপ্ত কৰক আৰু তাক দাতাবেচত এনক্ৰিপ্তেদ পাচৱৰ্দটোলৈ পৰীক্ষা কৰক
09:08 গতিকে, ইয়াৰ বহুতো ব্যৱ্হাৰ আছে আৰু ইয়াক দিক্লেয়াৰ কৰাতো সঁচাকৈ সহ্জ । আপোনাৰ মাত্ৰ ইয়াত এটা md5() ফাংচন থাকিব লাগিব
09:16 এইয়াই আপুনি এতিয়া MD5 ফাংচনচৰ বিষয়ে প্ৰকৃততে জানিব লগা সকলো আৰু সিহতক কেনেকৈ ব্যৱ্হাৰ আৰু ফৰ্মচ (forms)লৈ প্ৰয়োগ কৰিব লাগে
09:23 ঠিক আছে, দৰ্শনৰ বাবে ধন্যবাদ
09:26 মোৰ কিছু অন্য সুৰক্ষাৰ টিউট’ৰিয়েলচ আছে যি আহি আছে; গতিকে তাৰ বাবে চাব । বিদায়
09:29 মই মৌচুম হাজৰিকাই স্প’কেন টিউট’ৰিয়েল প্ৰকল্পৰ বাবে অনুবাদ কৰিছো

Contributors and Content Editors

Mausamh9