Haftungsausschluss:
Verschlüsselung ist ein entscheidender Aspekt der Datensicherheit, und zwar sollten mit größter Sorgfalt behandelt werden. Eine falsche Implementierung der Verschlüsselung kann Ihre Daten anfällig für Angriffe machen. Erwägen Sie die Verwendung etablierter Bibliotheken und befolgen Sie Best Practices für eine sichere Verschlüsselung.
Die Kryptografiebibliothek von Python bietet eine benutzerfreundliche und sichere Lösung zum Verschlüsseln von Zeichenfolgen mithilfe eines Kennworts. Fernet ist ein integriertes Rezept in der Kryptographie, das den Verschlüsselungsprozess vereinfacht.
Generieren eines Schlüssels:
Um Fernet verwenden zu können, müssen Sie zunächst einen geheimen Schlüssel generieren. Es ist wichtig, diesen Schlüssel geheim zu halten.
<code class="python">from cryptography.fernet import Fernet key = Fernet.generate_key() # Store this securely</code>
Verschlüsselung:
<code class="python">from cryptography.fernet import Fernet def encrypt(message: bytes, key: bytes) -> bytes: return Fernet(key).encrypt(message)</code>
Entschlüsselung:
<code class="python">from cryptography.fernet import Fernet def decrypt(token: bytes, key: bytes) -> bytes: return Fernet(key).decrypt(token)</code>
Beispielverwendung:
<code class="python">message = "John Doe" encrypted_token = encrypt(message.encode(), key) decrypted_message = decrypt(encrypted_token, key).decode() print(decrypted_message) # Output: John Doe</code>
Wenn Sie Daten verschleiern statt verschlüsseln müssen, können Sie die Base64-Kodierung verwenden:
<code class="python">import base64 def obscure(data: bytes) -> bytes: return base64.b64encode(data) def unobscure(obscured: bytes) -> bytes: return base64.b64decode(obscured)</code>
Beispielverwendung:
<code class="python">data = b"Hello world!" obscured = obscure(data) unobscured = unobscure(obscured) print(unobscured.decode()) # Output: Hello world!</code>
Wenn Sie die Datenintegrität ohne Verschlüsselung sicherstellen müssen, können Sie HMAC-Signaturen verwenden:
<code class="python">import hmac import hashlib def sign(data: bytes, key: bytes) -> bytes: return hmac.new(key, data, hashlib.sha256).digest() def verify(signature: bytes, data: bytes, key: bytes) -> bool: return hmac.compare_digest(hmac.new(key, data, hashlib.sha256).digest(), signature)</code>
Beispielverwendung:
<code class="python">data = b"Hello world!" key = secrets.token_bytes(32) signature = sign(data, key) if verify(signature, data, key): print("Signature is valid") else: print("Signature is invalid")</code>
Das obige ist der detaillierte Inhalt vonWie kann man Strings mithilfe von Passwörtern in Python sicher verschlüsseln und verschleiern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!