DAY CODING JOURNEY)
Jan 08, 2025 am 07:05 AMContinuing my coding journey (Day 1 remains unwritten, perhaps forever!), I'm tackling a real-time user verification program to deter unauthorized access. It's a seemingly simple idea, but hear me out.
Intended Functionality:
The program discreetly runs upon system startup, periodically (e.g., hourly) prompting for a password. Crucially, it maintains high priority, preventing closure or minimization. Incorrect password entry results in system shutdown.
from tkinter import * import subprocess import threading import time import getpass # Added for secure password input window = Tk() window.title("User Verification") window.config(background="black") # Initialize password (should be replaced with a more secure method) q = getpass.getpass("Set initial password: ") entry = Entry(window, fg='#00FF00', bg='black', font=('Arial',30), show='*') # Mask password input entry.pack(side=RIGHT) def verify_user(): global q while True: y = entry.get() if y != q: subprocess.run('shutdown /s', shell=True) break # Exit the loop after shutdown else: print('Verification successful.') # Replace password here (securely!) q = getpass.getpass("Set new password: ") entry.delete(0, END) # Clear entry field time.sleep(3600) # Check every hour def start_verification(): verification_thread = threading.Thread(target=verify_user) verification_thread.daemon = True # Allow program to exit even if thread is running verification_thread.start() u = Button(window, text='Start Verification', # Changed button text fg='#00FF00', bg='black', command=start_verification) u.pack(side=BOTTOM) t = Label(window, text='Enter Password:', # Simplified label text font=('Arial',15), fg='#00FF00', bg='black') t.pack(side=LEFT) window.mainloop()
Planned Enhancements:
This is a rudimentary version. Future improvements include:
-
Dynamic Password Changes: Implement a secure method for changing the password after each successful verification. The current
getpass
module provides a start, but more robust password management is needed. - Background Threading: The code now uses a daemon thread to run the verification process in the background, allowing the main window to remain responsive (though minimally so).
Disclaimer: This is a basic example and lacks robust security features. Use at your own risk. For production-level security, use established authentication systems. Suggestions welcome (but no guarantees of responses!).
The above is the detailed content of DAY CODING JOURNEY). For more information, please follow other related articles on the PHP Chinese website!

Hot Article

Hot tools Tags

Hot Article

Hot Article Tags

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

How Do I Use Beautiful Soup to Parse HTML?

How to Use Python to Find the Zipf Distribution of a Text File

How to Perform Deep Learning with TensorFlow or PyTorch?

Introduction to Parallel and Concurrent Programming in Python

Serialization and Deserialization of Python Objects: Part 1

How to Implement Your Own Data Structure in Python

Mathematical Modules in Python: Statistics
