সুচিপত্র:

পাইথন সিকিউরিটি এনক্রিপশন/ডিক্রিপশন সফটওয়্যার:। টি ধাপ
পাইথন সিকিউরিটি এনক্রিপশন/ডিক্রিপশন সফটওয়্যার:। টি ধাপ
Anonim
পাইথন সিকিউরিটি এনক্রিপশন/ডিক্রিপশন সফটওয়্যার
পাইথন সিকিউরিটি এনক্রিপশন/ডিক্রিপশন সফটওয়্যার
পাইথন সিকিউরিটি এনক্রিপশন/ডিক্রিপশন সফটওয়্যার
পাইথন সিকিউরিটি এনক্রিপশন/ডিক্রিপশন সফটওয়্যার

এই নির্দেশনায় আমি আপনাকে দেখাব কিভাবে কিছু সহজ পাইথনের সাহায্যে আপনি শিল্পের মান AES ব্যবহার করে আপনার ফাইলগুলিকে সুরক্ষিত রাখতে পারেন।

প্রয়োজনীয়তা:

- পাইথন 3.7

- PyAesCrypt লাইব্রেরি

- হ্যাশলিব লাইব্রেরি

আপনার যদি এই লাইব্রেরি না থাকে, আপনি সহজেই টাইপ করে ইনস্টল করতে পারেন:

pip3 হ্যাশলিব ইনস্টল করুন

pip3 PyAesCrypt ইনস্টল করুন

টার্মিনালে (অথবা CMD)

আপনার ইতিমধ্যে এগুলি থাকা উচিত:

- এলোমেলো লাইব্রেরি

- ওএস লাইব্রেরি

- সিস্টেম লাইব্রেরি

আমি ওএস এক্স ব্যবহার করছি, কিন্তু ফাইল পাথের স্ল্যাশের দিক ব্যতীত এটি খুব বেশি গুরুত্বপূর্ণ নয় (ওএস এক্স: /, উইন্ডোজ:)

দয়া করে মনে রাখবেন: কিছু ত্রুটির কারণে, কোডের ইন্ডেন্টেশনগুলি কিছু কারণে দেখায় না। ফলস্বরূপ প্রদর্শিত কোডে কোন ইন্ডেন্টেশন থাকবে না, তবে তারা পাইথন ফাইলগুলিতে উপস্থিত আছে যা আমি শেষে সংযুক্ত করেছি, এবং সংযুক্ত ছবিগুলিতে। শুধু প্রদর্শিত পাঠ্য থেকে সরাসরি কোডটি নেবেন না, কারণ এটি ইন্ডেন্টেশনের অভাবের কারণে কাজ করবে না।

যদি আপনার সমস্ত নির্ভরতা ইনস্টল করা থাকে, তাহলে ধাপ 1 এ যান।

ধাপ 1: সেটআপ ফাইল লেখা

সেটআপ ফাইল লেখা
সেটআপ ফাইল লেখা
সেটআপ ফাইল লেখা
সেটআপ ফাইল লেখা
সেটআপ ফাইল লেখা
সেটআপ ফাইল লেখা
সেটআপ ফাইল লেখা
সেটআপ ফাইল লেখা

এটিকে এতটা নিরাপদ করে তোলার অন্যতম কারণ হল পাসওয়ার্ড চেক করার জন্য হ্যাশের ব্যবহার। সেটআপ ফাইল (আমি আমার setupsafe.py কল করছি) যাচ্ছে:

- পাসওয়ার্ডের জন্য একটি ফোল্ডার এবং ডামি ফাইল তৈরি করুন

- পাসওয়ার্ড সেট করুন

- ফাইল নম্বর সেট করুন

- পাসওয়ার্ড হ্যাশ করুন

প্রথমত, আমরা আমাদের নির্ভরতা আমদানি করতে যাচ্ছি:

sys আমদানি থেকে *

আমদানি ওএস

এলোমেলোভাবে আমদানি করুন

হ্যাশলিব আমদানি করুন

পরবর্তী আমরা পাসওয়ার্ড হ্যাশ এবং ডামি ফাইল রাখার জন্য একটি ফোল্ডার তৈরি করব:

চেষ্টা করুন: যদি os.path.exists না হয় ('ডেস্কটপ/সেফসেটআপ'):

os.mkdir ('ডেস্কটপ/সেফসেটআপ/')

OSError ছাড়া:

মুদ্রণ ("ফোল্ডার তৈরিতে ত্রুটি")

এই কোডটি সেফসেটআপ নামে একটি ফোল্ডার তৈরি করবে (যদি না এটি আগে থেকেই থাকে)।

এর পরে, আমরা পাসওয়ার্ড সেট করতে যাচ্ছি, এবং ডামি ফাইলগুলিতে নেভিগেট করার উপায় হিসাবে 1 থেকে 100 এর মধ্যে একটি এলোমেলো সংখ্যা তৈরি করব:

গ্লোবাল পাসওয়ার্ড পাসওয়ার্ড = argv [1].encode ('utf-8')

n = random.randint (1, 101)

এখন যেহেতু আমাদের পাসওয়ার্ড এবং আমাদের ফাইল নম্বর আছে, আমরা সেফসেটের ভিতরে 99 ডামি ফাইল তৈরি করতে যাচ্ছি, এবং একটি বাস্তব ফাইল যা আমাদের পাসওয়ার্ড হ্যাশ ধারণ করবে:

x এর পরিসরে (101): যদি (x! = n):

f = open (("desktop/safesetup/"+str (x)), "w+")

f.close ()

অন্য:

পাসওয়ার্ড = hashlib.sha256 (পাসওয়ার্ড).hexdigest ()

f = open (("desktop/safesetup/"+str (x)), "w+")

f.write (পাসওয়ার্ড)

f.close ()

মুদ্রণ (এন)

প্রকৃত ফাইলকে বলা হয় যাই হোক না কেন পূর্ণসংখ্যা n। Sha256 অ্যালগরিদম ব্যবহার করে হ্যাশ করার পরে এই ফাইলটিতে আমাদের পাসওয়ার্ড রয়েছে (এই হ্যাশ অ্যালগরিদমটি ক্রিপ্টোকারেন্সিতে ব্যাপকভাবে ব্যবহৃত হয়, বিশেষ করে বিটকয়েন)।

মনে রাখবেন n কী (এটি কনসোলে মুদ্রিত হবে), কারণ এটি পাসওয়ার্ডের মতোই গুরুত্বপূর্ণ।

আমাদের সেটআপ প্রোগ্রামের জন্য আমাদের এতটুকুই দরকার, তাই আমরা এখন এনক্রিপশন/ডিক্রিপশন প্রোগ্রামে চলে যাব।

ধাপ 2: এনক্রিপশন/ডিক্রিপশন ফাইল

এনক্রিপশন/ডিক্রিপশন ফাইল
এনক্রিপশন/ডিক্রিপশন ফাইল
এনক্রিপশন/ডিক্রিপশন ফাইল
এনক্রিপশন/ডিক্রিপশন ফাইল
এনক্রিপশন/ডিক্রিপশন ফাইল
এনক্রিপশন/ডিক্রিপশন ফাইল

মূল ফাইলের সেটআপ বিভাগ নির্ভরতা আমদানি করে, ইনপুট করা পাসওয়ার্ড হ্যাশ করে এবং ইনপুট করা ফাইল নম্বর ব্যবহার করে আসল পাসওয়ার্ড হ্যাশ পুনরুদ্ধার করে।

প্রথম, নির্ভরতা:

sys আমদানি *আমদানি ওএস থেকে

pyAesCrypt আমদানি করুন

হ্যাশলিব আমদানি করুন

পরবর্তী, ইনপুট করা পাসওয়ার্ডের হ্যাশিং:

পাসওয়ার্ড = argv [1].encode ('utf-8') পাসওয়ার্ড = hashlib.sha256 (পাসওয়ার্ড).hexdigest ()

অবশেষে, হ্যাশেড পাসওয়ার্ড পুনরুদ্ধার:

file_key = str (argv [2]) hash = open (("desktop/safesetup/" + file_key), ("r +")) পড়ুন ()

এনক্রিপশন ফাইলের দ্বিতীয় বিভাগ হ্যাশের তুলনা করে, তুলনার সত্যতা নির্ধারণ করে এবং আপনার পছন্দের ফাইল এনক্রিপ্ট বা ডিক্রিপ্ট করতে AESCrypt পাইথন লাইব্রেরি ব্যবহার করে। এটি কোডের একটি বড় অংশ, কিন্তু আমি এটি ভেঙে দেব:

যদি (পাসওয়ার্ড == হ্যাশ): মুদ্রণ ("পাসওয়ার্ড গৃহীত")

বাফার সাইজ = 64 * 1024

অপারেশন = str (ইনপুট ("আপনি কি ফাইলগুলি পুনরুদ্ধার করছেন বা এনক্রিপ্ট করছেন? (r বা e)"))

যদি (অপারেশন == 'আর'):

file_name = str (ইনপুট ("পুনরুদ্ধারের জন্য ফাইল:"))

pyAesCrypt.decryptFile ((file_name + ".aes"), file_name, password, bufferSize)

os.remove ((file_name + ".aes"))

এলিফ (অপারেশন == 'ই'):

file_name = str (ইনপুট ("এনক্রিপ্ট করার জন্য ফাইল:"))

pyAesCrypt.encryptFile (file_name, (file_name + ".aes"), পাসওয়ার্ড, বাফার সাইজ)

os.remove (file_name)

অন্য:

মুদ্রণ ("ত্রুটি: ভুল ইনপুট")

অন্য:

মুদ্রণ ("অ্যাক্সেস অস্বীকার")

প্রথম if স্টেটমেন্ট নির্ধারণ করে যে হ্যাশ করা পাসওয়ার্ড মিলছে কিনা। যদি তারা তা করে, তাহলে এটি জিজ্ঞাসা করে যে আপনি ফাইল এনক্রিপ্ট করতে চান বা এনক্রিপ্ট করা ফাইলগুলি পুনরুদ্ধার করতে চান। আপনার ইনপুটের উপর নির্ভর করে, এটি প্রদত্ত ফাইলটি এনক্রিপ্ট বা ডিক্রিপ্ট করবে। ফাইলের নাম দেওয়ার জন্য অনুরোধ করা হলে, পাথটি নির্দিষ্ট করতে ভুলবেন না যদি না ফাইলটি পাইথন প্রোগ্রামের মতো একই ডিরেক্টরিতে থাকে। প্রোগ্রামটি তার আগের অবস্থায় ফাইলটি মুছে ফেলে, এটি একটি এনক্রিপ্ট করা.aes ফাইল দিয়ে প্রতিস্থাপন করে, অথবা এটি ডিক্রিপ্ট করে এবং মূল ফাইলের সাথে প্রতিস্থাপন করে।

ভবিষ্যতে, আমি পাইথন ওপেনসিভি লাইব্রেরি ব্যবহার করে মুখের স্বীকৃতি অন্তর্ভুক্ত করার জন্য এটি আপডেট করতে পারি, তবে আপাতত পাসওয়ার্ডগুলি যথেষ্ট হবে।

ধাপ 3: ফাইল অপারেশন

সেটআপ ফাইলটি চালানোর জন্য, এই পদক্ষেপগুলি অনুসরণ করুন:

1. টার্মিনালে টাইপ করুন:

python3 ডিরেক্টরি/setupname.py পাসওয়ার্ড (ডিরেক্টরি, সেটআপ নাম, এবং পাসওয়ার্ড তাদের নিজ নিজ মান দিয়ে প্রতিস্থাপন)

2. টার্মিনাল আপনার ফাইল নম্বর আউটপুট করবে। এটা রাখ.

এনক্রিপশন/ডিক্রিপশন প্রোগ্রাম চালানোর জন্য, এই পদক্ষেপগুলি অনুসরণ করুন:

1. টার্মিনালে টাইপ করুন:

python3 ডিরেক্টরি/filename.py পাসওয়ার্ড ফাইল নম্বর (ডিরেক্টরি, ফাইলের নাম, পাসওয়ার্ড এবং ফাইল নম্বর তাদের নিজ নিজ মান দিয়ে প্রতিস্থাপন)

2. টার্মিনাল তখন আপনার পাসওয়ার্ড গ্রহণ বা প্রত্যাখ্যান করবে। যদি প্রত্যাখ্যাত হয়, আবার চেষ্টা করুন এবং নিশ্চিত করুন যে আপনি সঠিক মানগুলি টাইপ করেছেন। একবার অ্যাক্সেস মঞ্জুর হয়ে গেলে, টার্মিনাল আপনাকে জিজ্ঞাসা করবে আপনি একটি ফাইল এনক্রিপ্ট করতে চান বা একটি ফাইল পুনরুদ্ধার করতে চান। একটি ফাইল এনক্রিপ্ট করতে, টাইপ করুন e, এবং একটি এনক্রিপ্ট করা ফাইল পুনরুদ্ধার করতে, r টাইপ করুন।

3. তারপর আপনাকে ফাইলের নাম দিতে বলা হবে। ফাইলের ডিরেক্টরি এবং নাম এবং ফাইল এক্সটেনশন প্রদান করতে ভুলবেন না। যাইহোক, যদি আপনি একটি ফাইল ডিক্রিপ্ট করছেন, এক্সটেনশনের.aes অংশটি টাইপ করবেন না, কারণ কোডটি এর জন্য অ্যাকাউন্ট।

4. প্রোগ্রাম তারপর প্রদত্ত ফাইল এনক্রিপ্ট বা ডিক্রিপ্ট করে, এবং ফাইলটিকে তার আগের অবস্থায় মুছে ফেলে (এনক্রিপ্ট করা বা ডিক্রিপ্ট করা ফাইল ধরে রাখে)।

ভয়েলা! এটি এতদূর নির্দেশযোগ্য করার জন্য ধন্যবাদ, আমি জানি কোড টিউটোরিয়াল পড়া সবচেয়ে বিনোদনমূলক জিনিস নয়। এই ধাপে পাইথন ফাইলগুলি সংযুক্ত করা হয়েছে, আপনারা যারা এটি একটি শট দিতে চান তাদের জন্য। আবারও, পড়ার জন্য ধন্যবাদ, এবং আমি আপনার ভবিষ্যতের কোডিং প্রচেষ্টার জন্য শুভ কামনা করি।

প্রস্তাবিত: