Სარჩევი:

პითონის უსაფრთხოების დაშიფვრის/გაშიფვრის პროგრამული უზრუნველყოფა: 3 ნაბიჯი
პითონის უსაფრთხოების დაშიფვრის/გაშიფვრის პროგრამული უზრუნველყოფა: 3 ნაბიჯი

ვიდეო: პითონის უსაფრთხოების დაშიფვრის/გაშიფვრის პროგრამული უზრუნველყოფა: 3 ნაბიჯი

ვიდეო: პითონის უსაფრთხოების დაშიფვრის/გაშიფვრის პროგრამული უზრუნველყოფა: 3 ნაბიჯი
ვიდეო: მარტივი DOS შეტევა Python-ით, + მისგან თავდაცვა 2024, ნოემბერი
Anonim
პითონის უსაფრთხოების დაშიფვრის/გაშიფვრის პროგრამული უზრუნველყოფა
პითონის უსაფრთხოების დაშიფვრის/გაშიფვრის პროგრამული უზრუნველყოფა
პითონის უსაფრთხოების დაშიფვრის/გაშიფვრის პროგრამული უზრუნველყოფა
პითონის უსაფრთხოების დაშიფვრის/გაშიფვრის პროგრამული უზრუნველყოფა

ამ ინსტრუქციებში მე გაჩვენებთ, თუ როგორ შეგიძლიათ მარტივი პითონის საშუალებით შეინარჩუნოთ თქვენი ფაილები უსაფრთხო ინდუსტრიული სტანდარტის AES გამოყენებით.

მოთხოვნები:

- პითონი 3.7

- PyAesCrypt ბიბლიოთეკა

- ჰასლიბის ბიბლიოთეკა

თუ არ გაქვთ ეს ბიბლიოთეკები, შეგიძლიათ მარტივად დააინსტალიროთ აკრეფით:

pip3 დააინსტალირეთ hashlib

pip3 დააინსტალირეთ PyAesCrypt

ტერმინალში (ან CMD)

ეს უკვე უნდა გქონდეს:

- შემთხვევითი ბიბლიოთეკა

- os ბიბლიოთეკა

- სისტემის ბიბლიოთეკა

მე ვიყენებ OS X- ს, მაგრამ ამას დიდი მნიშვნელობა არ უნდა ჰქონდეს, გარდა ფაილების ბილიკებში დახრილი მიმართულებებისა (OS X: /, Windows:)

გთხოვთ გაითვალისწინოთ: გარკვეული ხარვეზის გამო, კოდში ჩანაწერები რაიმე მიზეზით არ ჩანს. შესაბამისად ნაჩვენები კოდი არ იქნება ნაჩვენები, თუმცა ისინი წარმოდგენილია პითონის ფაილებში, რომლებიც მე დავამატე ბოლოს და თანდართულ სურათებში. უბრალოდ ნუ აიღებთ კოდს პირდაპირ ნაჩვენები ტექსტიდან, რადგან ის არ იმუშავებს ჩაღრმავების არარსებობის გამო

თუ თქვენ გაქვთ ყველა დამოკიდებულება დაინსტალირებული, მოდით გადავიდეთ ნაბიჯი 1 -ზე.

ნაბიჯი 1: შექმნის ფაილის დაწერა

Setup ფაილის წერა
Setup ფაილის წერა
Setup ფაილის წერა
Setup ფაილის წერა
Setup ფაილის წერა
Setup ფაილის წერა
Setup ფაილის წერა
Setup ფაილის წერა

ერთ -ერთი ფაქტორი, რაც ამას ასე უსაფრთხოდ აქცევს არის პაროლის შესამოწმებლად ჰეშების გამოყენება. დაყენების ფაილი (მე ვურეკავ ჩემს setupsafe.py) აპირებს:

- შექმენით საქაღალდე და პაროლი ფაილებისათვის

- დააყენეთ პაროლი

- დააყენეთ ფაილის ნომერი

- გაშალე პაროლი

პირველ რიგში, ჩვენ ვაპირებთ შემოვიტანოთ ჩვენი დამოკიდებულებები:

sys იმპორტიდან *

იმპორტი os

შემთხვევითი იმპორტი

იმპორტი ჰასლიბი

შემდეგი, ჩვენ შევქმნით საქაღალდეს, სადაც განთავსდება პაროლის ჰაში და საცდელი ფაილები:

სცადეთ: თუ არა os.path.exists ('desktop/safesetup'):

os.mkdir ('desktop/safesetup/')

გარდა OSError:

ბეჭდვა ("შეცდომა საქაღალდის შექმნისას")

ეს კოდი შექმნის საქაღალდეს სახელწოდებით safesetup (თუ ის უკვე არ არსებობს).

ამის შემდეგ, ჩვენ ვაპირებთ პაროლის დაყენებას და შემთხვევითი რიცხვის გენერირებას 1 – დან 100 – მდე, როგორც ჩვენი გზა დუმილი ფაილების ნავიგაციისთვის:

გლობალური პაროლი სიტყვა = argv [1]. კოდი ('utf-8')

n = random.randint (1, 101)

ახლა, როდესაც ჩვენ გვაქვს ჩვენი პაროლი და ჩვენი ფაილის ნომერი, ჩვენ ვაპირებთ შევქმნათ 99 საცდელი ფაილი safesetup– ში და ერთი რეალური ფაილი, რომელიც შეიცავს ჩვენს პაროლის ჰეშს:

x დიაპაზონში (101): თუ (x! = n):

f = ღია (("desktop/safesetup/"+str (x)), "w+")

ვ. დახურვა ()

სხვა:

პაროლი = hashlib.sha256 (პაროლი).hexdigest ()

f = ღია (("desktop/safesetup/"+str (x)), "w+")

ვ. დაწერე (პაროლი)

ვ. დახურვა ()

ბეჭდვა (n)

ნამდვილ ფაილს ქვია რასაც მთელი რიცხვი n. ეს ფაილი შეიცავს ჩვენს პაროლს sha256 ალგორითმის გამოყენებით (ეს ჰეშ ალგორითმი ფართოდ გამოიყენება კრიპტოვალუტებში, განსაკუთრებით ბიტკოინში).

დაიმახსოვრე რა არის n (ის დაიბეჭდება კონსოლში), რადგან ის ისეთივე მნიშვნელოვანია, როგორც პაროლი.

ეს არის ყველაფერი რაც ჩვენ გვჭირდება ჩვენი პროგრამის დაყენებისთვის, ამიტომ ჩვენ ახლა გადავალთ დაშიფვრის/გაშიფვრის პროგრამაზე.

ნაბიჯი 2: დაშიფვრის/გაშიფვრის ფაილი

დაშიფვრის/გაშიფვრის ფაილი
დაშიფვრის/გაშიფვრის ფაილი
დაშიფვრის/გაშიფვრის ფაილი
დაშიფვრის/გაშიფვრის ფაილი
დაშიფვრის/გაშიფვრის ფაილი
დაშიფვრის/გაშიფვრის ფაილი

ძირითადი ფაილის დაყენების განყოფილება ახდენს იმ დამოკიდებულებების იმპორტს, ატეხავს შეყვანის პაროლს და იღებს პაროლის ნამდვილ ჰეშს შეყვანილი ფაილის ნომრის გამოყენებით.

პირველ რიგში, დამოკიდებულებები:

sys იმპორტიდან *იმპორტი os

pyAesCrypt იმპორტი

იმპორტი ჰასლიბი

შემდეგი, შეყვანილი პაროლის ჰეშირება:

პაროლი = argv [1]. კოდი ('utf-8') პაროლი = hashlib.sha256 (პაროლი).hexdigest ()

დაბოლოს, ჰეშირებული პაროლის მოძიება:

file_key = str (argv [2]) hash = open (("desktop/safesetup/" + file_key), ("r +")). წაკითხული ()

დაშიფვრის ფაილის მეორე ნაწილი ადარებს ჰეშებს, ადგენს შედარების სიზუსტეს და იყენებს AESCrypt პითონის ბიბლიოთეკას თქვენი არჩეული ფაილის დაშიფვრის ან გაშიფვრის მიზნით. ეს არის კოდის საკმაოდ დიდი ნაწილი, მაგრამ მე მას დავშლი:

if (პაროლი == ჰაში): ამობეჭდვა ("პაროლი მიღებულია")

ბუფერული ზომა = 64 * 1024

ოპერაცია = str (შეყვანა ("იღებთ თუ დაშიფვრავთ ფაილებს? (r ან e)"))

თუ (ოპერაცია == 'r'):

ფაილის სახელი = str (შეყვანა ("ფაილის მოსაპოვებლად:"))

pyAesCrypt.decryptFile ((ფაილის_სახელი + ".aes"), ფაილის_სახელი, პაროლი, ბუფერული ზომა)

os.remove ((ფაილის_სახელი + ".aes"))

elif (ოპერაცია == 'e'):

ფაილის სახელი = str (შეყვანა ("დაშიფვრის ფაილი:"))

pyAesCrypt.encryptFile (ფაილის_სახელი, (ფაილის_სახელი + ".aes"), პაროლი, ბუფერული ზომა)

os.remove (ფაილის_სახელი)

სხვა:

ბეჭდვა ("შეცდომა: არასწორი შეყვანა")

სხვა:

ბეჭდვა ("წვდომა აკრძალულია")

პირველი if განცხადება განსაზღვრავს ემთხვევა თუ არა ჰეშირებული პაროლები. თუ ისინი ასე იქცევიან, ის იკითხავს, გსურთ ფაილების დაშიფვრა ან დაშიფრული ფაილების მიღება. თქვენი შეყვანის მიხედვით, ის ან დაშიფვრავს ან გაშიფრავს მოწოდებულ ფაილს. როდესაც მოგთხოვთ მიუთითოთ ფაილის სახელი, დარწმუნდით, რომ მიუთითეთ გზა, თუ ფაილი არ არის იმავე დირექტორიაში, როგორც პითონის პროგრამა. პროგრამა წაშლის ფაილს თავის წინა მდგომარეობაში, შეცვლის მას დაშიფრული.aes ფაილით, ან გაშიფრავს და ცვლის მას ორიგინალური ფაილით.

მომავალში, მე შემიძლია განვაახლო ეს, რათა შევიტანო სახის ამოცნობა Python OpenCV ბიბლიოთეკის გამოყენებით, მაგრამ ამ დროისთვის პაროლები საკმარისი იქნება.

ნაბიჯი 3: ფაილების მოქმედება

კონფიგურაციის ფაილის გასაშვებად, მიჰყევით ამ ნაბიჯებს:

1. ჩაწერეთ ტერმინალი:

python3 დირექტორია/setupname.py პაროლი (დირექტორიის, კონფიგურაციის სახელისა და პაროლის შეცვლა შესაბამისი მნიშვნელობებით)

2. ტერმინალი გამოუშვებს თქვენი ფაილის ნომერს. შეინახეთ ეს.

დაშიფვრის/გაშიფვრის პროგრამის გასაშვებად მიყევით ამ ნაბიჯებს:

1. ჩაწერეთ ტერმინალი:

python3 დირექტორია/filename.py პაროლი filenumber (დირექტორია, ფაილის სახელი, პაროლი და ფაილის ნომერი შესაბამისი მნიშვნელობებით)

2. ტერმინალი ან მიიღებს ან უარყოფს თქვენს პაროლს. თუ უარყოფილია, სცადეთ ხელახლა და დარწმუნდით, რომ ჩაწერეთ სწორი მნიშვნელობები. მას შემდეგ რაც დაშვებულია წვდომა, ტერმინალი მოგკითხავთ, გსურთ ფაილის დაშიფვრა ან ფაილის მიღება. ფაილის დასაშიფრებლად აკრიფეთ e და დაშიფრული ფაილი რომ მიიღოთ, ჩაწერეთ r.

3. თქვენ მოგეთხოვებათ მიუთითოთ ფაილის სახელი. გახსოვდეთ, რომ მოგვაწოდოთ ფაილის დირექტორია, ასევე სახელი და ასევე ფაილის გაფართოება. თუმცა, თუ თქვენ გაშიფვრავთ ფაილს, არ ჩაწეროთ.aes გაფართოების ნაწილი, რადგან კოდი ამას ითვალისწინებს.

4. შემდეგ პროგრამა დაშიფვრავს ან გაშიფრავს მიწოდებულ ფაილს და წაშლის ფაილს წინა მდგომარეობაში (ინარჩუნებს დაშიფრულ ან გაშიფრულ ფაილს).

ვოილა! გმადლობთ, რომ აქტუალური გახადეთ, მე ვიცი, რომ კოდის გაკვეთილების კითხვა არ არის ყველაზე გასართობი. პითონის ფაილები მოთავსებულია ამ ნაბიჯში, მათთვის, ვისაც სურს ეს გააკეთოს. კიდევ ერთხელ, მადლობა კითხვისთვის და გისურვებთ წარმატებებს თქვენს მომავალ კოდირების მცდელობებში.

გირჩევთ: