


Apakah program paling hebat yang pernah anda lakukan dalam Python?
Program Python paling hebat yang pernah saya buat ialah penggodam kata laluan Python. Mari kita fahami apa itu pencincangan kata laluan Python.
Apakah pencincangan kata laluan?
Pencincangan kata laluan Python ialah bentuk penyulitan lanjutan yang boleh digunakan untuk menyimpan kata laluan dalam talian dengan selamat. Dalam dunia yang saling berkaitan hari ini, kata laluan pengguna adalah salah satu daripada maklumat sensitif yang paling terdedah di Internet. Tukar rentetan kata laluan kepada rentetan aksara rawak menggunakan algoritma pencincangan yang berbeza, yang digunakan dalam program saya. Pengguna diarahkan untuk memasukkan rentetan kata laluan dan kemudian memilih algoritma pencincangan yang sesuai untuk digunakan. Hash output kemudiannya dipaparkan, yang boleh disimpan dalam talian.
Langkah-langkah penggunaan
Buat fungsi untuk kaedah pencincangan yang berbeza
Menerima rentetan kata laluan yang dimasukkan oleh pengguna
Terima input pengguna untuk memilih kaedah pencincangan
Tukar rentetan dan berikan output
Langkah 1: Cipta fungsi untuk kaedah pencincangan yang berbeza
Pertama, kami mencipta fungsi berbeza yang mengambil rentetan kata laluan sebagai parameter dan menukarnya kepada bentuk teks sifir. Teks sifir sebenarnya adalah bentuk cipher data. Fungsi yang berbeza mengandungi algoritma pencincangan yang berbeza.
Tatabahasa
def hash_with_MD5(message): print ("MD5:", hashlib.md5(message).hexdigest())
Fungsi ini mengambil mesej sebagai parameter dan menukarkannya kepada teks sifir menggunakan algoritma pencincangan MD5. Kemudian cetak ringkasan hash untuk pengguna. Jika bukannya menggunakan MD5, anda menggunakan algoritma cincang yang lain, sintaksnya adalah sama, hanya panggilan ke fungsi cincang yang berubah.
Algoritma
Langkah 1 - Tentukan fungsi berbeza untuk algoritma pencincangan yang berbeza
Langkah 2 - Gunakan rentetan yang dimasukkan oleh pengguna sebagai parameter fungsi
Langkah 3 - Dalam badan fungsi, cetak ringkasan hex kata laluan yang dicincang
Contoh
def hash_with_MD5(message): encoded=message.encode() print ("Hashed with MD5:", hashlib.md5(encoded).hexdigest()) def hash_with_SHA(message): encoded=message.encode() print ("Hashed with SHA:", hashlib.sha256(encoded).hexdigest()) def hash_with_blake(message): encoded=message.encode() print ("Hashed with blake2b:", hashlib.blake2b(encoded).hexdigest()) message='tutorialspoint' hash_with_MD5(message) hash_with_SHA(message) hash_with_blake(message)
Output
Hashed with MD5: 6c60b3cfe5124f982eb629e00a98f01f Hashed with SHA: 15e6e9ddbe43d9fe5745a1348bf1535b0456956d18473f5a3d14d6ab06737770 Hashed with blake2b: 109f6f017d7a77bcf57e4b48e9c744280ae7f836477c16464b27a3fe62e1353c70ec4c7f938080 60ee7c311094eede0235a43151c3d2b7401a3cb5a8f8ab3fbb
Langkah 2: Dapatkan rentetan kata laluan yang dimasukkan oleh pengguna
Langkah seterusnya ialah mendapatkan input daripada pengguna untuk kata laluan yang perlu disimpan. Atas sebab keselamatan, kata laluan yang akan disimpan mesti dicincang, dan kata laluan yang dimasukkan pengguna mesti dikodkan sebelum pencincangan untuk memastikan ia sesuai untuk dihantar ke fungsi cincang. Operasi pengekodan ini dilakukan oleh fungsi encode().
Tatabahasa
password=input("message").encode()
Kata laluan yang kami terima daripada pengguna menggunakan fungsi input() tidak boleh digunakan untuk pencincangan, jadi ia dikodkan menggunakan fungsi encode(). Kedua-dua langkah ini digabungkan di sini dalam satu arahan untuk memudahkan pengekodan dan kesederhanaan.
Algoritma
Langkah 1 - Gunakan fungsi input() untuk menerima input pengguna
Langkah 2- Tukar input kepada format yang dikodkan
Contoh
password=input(“Enter the password for hashing: ”).encode()
Output
Enter the password for hashing: Python
Langkah 3: Terima input pengguna untuk memilih kaedah pencincangan
Kami akan memberikan pengguna pilihan untuk memutuskan algoritma pencincangan yang akan kami gunakan untuk mencincang kata laluan dengan selamat. Kaedah yang berbeza mempunyai kelebihan dan kekurangan yang berbeza, jadi kami membenarkan pengguna memilih kaedah yang paling sesuai untuk kata laluan tertentu. Di sini kami menggunakan struktur If-else yang mudah untuk menentukan pemilihan yang dimasukkan oleh pengguna.
Tatabahasa
while True: choice = input("Enter choice(1/2/3): ") if choice in ('1', '2', '3'): try: …………………
Di sini kami bertanya kepada pengguna jenis cincang yang mereka lakukan bersama-sama dengan senarai pilihan. Input kemudiannya disemak terhadap senarai input yang sah dan, jika benar, tindakan yang diperlukan dilakukan. Jika tidak, kawalan program akan keluar dari gelung.
Algoritma
Langkah 1 − Minta input daripada pengguna
Langkah 2- Semak sama ada input pengguna adalah sah
Langkah 3 - Lakukan tindakan terpilih
Langkah 4 - Tanya jika anda mahu melakukan lebih banyak lagi
Contoh
import hashlib def hash_with_MD5(password): #encoded=password.encode() print ("Hashed with MD5:", hashlib.md5(password).hexdigest()) def hash_with_SHA(password): #encoded=password.encode() print ("Hashed with SHA:", hashlib.sha256(password).hexdigest()) def hash_with_blake(password): #encoded=password.encode() print ("Hashed with blake2b:", hashlib.blake2b(password).hexdigest()) print("Select hashing operation.") print("1.MD5") print("2.SHA") print("3.blake") while True: # take input from the user choice = input("Enter choice(1/2/3): ") # check if choice is one of the four options if choice in ('1', '2', '3'): try: password=input('Enter the password for hashing: ').encode() except ValueError: print("Invalid input. Please enter a string.") continue if choice == '1': hash_with_MD5(password) elif choice == '2': hash_with_SHA(password) elif choice == '3': hash_with_blake(password) # checking if user wants another calculation # break the while loop if answer is no next_calculation = input("Let's do next calculation? (yes/no): ") if next_calculation == "no": break else: print("Invalid Input")
Output
Select hashing operation. 1.MD5 2.SHA 3.blake Enter choice(1/2/3): 2 Enter the password for hashing:Python Hashed with SHA: 18885f27b5af9012df19e496460f9294d5ab76128824c6f993787004f6d9a7db Let's do next calculation? (yes/no): yes Enter choice(1/2/3): 1 Enter the password for hashing:Tutorialspoint Hashed with MD5: da653faa9f00528be9a57f3474f0e437 Let's do next calculation? (yes/no): no
Kesimpulan
Jadi di sini kami membina program untuk mencincang kata laluan pengguna dan mengembalikannya untuk storan selamat. Program ini berjalan dengan jayanya dan mempunyai tujuan yang penting. Pengubahsuaian selanjutnya boleh dibuat untuk melaksanakan fungsi yang lebih baharu, yang akan kami lakukan kemudian.
Atas ialah kandungan terperinci Apakah program paling hebat yang pernah anda lakukan dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Penyelesaian kepada Isu Kebenaran Semasa Melihat Versi Python di Terminal Linux Apabila anda cuba melihat versi Python di Terminal Linux, masukkan Python ...

Bagaimana Mengajar Asas Pengaturcaraan Pemula Komputer Dalam masa 10 jam? Sekiranya anda hanya mempunyai 10 jam untuk mengajar pemula komputer beberapa pengetahuan pengaturcaraan, apa yang akan anda pilih untuk mengajar ...

Apabila menggunakan Perpustakaan Pandas Python, bagaimana untuk menyalin seluruh lajur antara dua data data dengan struktur yang berbeza adalah masalah biasa. Katakan kita mempunyai dua DAT ...

Cara mengelakkan dikesan semasa menggunakan fiddlerevery di mana untuk bacaan lelaki-dalam-pertengahan apabila anda menggunakan fiddlerevery di mana ...

Ekspresi biasa adalah alat yang berkuasa untuk memadankan corak dan manipulasi teks dalam pengaturcaraan, meningkatkan kecekapan dalam pemprosesan teks merentasi pelbagai aplikasi.

Bagaimanakah Uvicorn terus mendengar permintaan HTTP? Uvicorn adalah pelayan web ringan berdasarkan ASGI. Salah satu fungsi terasnya ialah mendengar permintaan HTTP dan teruskan ...

Artikel ini membincangkan perpustakaan Python yang popular seperti Numpy, Pandas, Matplotlib, Scikit-Learn, Tensorflow, Django, Flask, dan Permintaan, memperincikan kegunaan mereka dalam pengkomputeran saintifik, analisis data, visualisasi, pembelajaran mesin, pembangunan web, dan h

Di Python, bagaimana untuk membuat objek secara dinamik melalui rentetan dan panggil kaedahnya? Ini adalah keperluan pengaturcaraan yang biasa, terutamanya jika perlu dikonfigurasikan atau dijalankan ...
