Как зашифровать текст? Имеется программа и к ней нужно прикрутить шифрование. Пользователь нажимает кнопку 1, вводит пароль - текст шифруется. Пользователь нажимает кнопку 2, вводит пароль - текст дешифруется. При этом сам пароль не должен отображаться в RAM компьютера и соответственно на диске во время дешифровки Я думал над алгоритмом RSA (Единственный алгоритм, который мне на минимальном уровне известен), но тогда возникает необходимость где-то хранить оба ключа во время работы программы. А это уже не то. Язык программирования Python, но я готов спустится и на более низкоуровневые языки, вплоть до ассемблера
Для шифрования и дешифрования текста без хранения пароля в RAM или на диске можно использовать алгоритм симметричного шифрования, например AES (Advanced Encryption Standard).
Вот пример кода на Python, который использует библиотеку cryptography для шифрования и дешифрования текста с помощью AES:
from cryptography.fernet import Fernet # Генерируем ключ key = Fernet.generate_key() cipher = Fernet(key) def encrypt_text(text): return cipher.encrypt(text.encode()) def decrypt_text(encrypted_text): return cipher.decrypt(encrypted_text).decode() # Пример использования text = "Hello, World!" encrypted_text = encrypt_text(text) print("Encrypted text:", encrypted_text) decrypted_text = decrypt_text(encrypted_text) print("Decrypted text:", decrypted_text)
Данный код выше использует библиотеку cryptography, которую можно установить с помощью pip install cryptography.
При каждом запуске программы будет генерироваться новый ключ для шифрования, и его нужно будет сохранить в безопасном месте, если вы хотите дешифровать текст в будущем. Ключ нельзя хранить вместе с зашифрованным текстом, так как это позволит злоумышленникам легко расшифровать данные.
Надеюсь, это поможет вам реализовать шифрование и дешифрование текста без хранения пароля на диске или в RAM.
Для шифрования и дешифрования текста без хранения пароля в RAM или на диске можно использовать алгоритм симметричного шифрования, например AES (Advanced Encryption Standard).
Вот пример кода на Python, который использует библиотеку cryptography для шифрования и дешифрования текста с помощью AES:
from cryptography.fernet import Fernet# Генерируем ключ
key = Fernet.generate_key()
cipher = Fernet(key)
def encrypt_text(text):
return cipher.encrypt(text.encode())
def decrypt_text(encrypted_text):
return cipher.decrypt(encrypted_text).decode()
# Пример использования
text = "Hello, World!"
encrypted_text = encrypt_text(text)
print("Encrypted text:", encrypted_text)
decrypted_text = decrypt_text(encrypted_text)
print("Decrypted text:", decrypted_text)
Данный код выше использует библиотеку cryptography, которую можно установить с помощью pip install cryptography.
При каждом запуске программы будет генерироваться новый ключ для шифрования, и его нужно будет сохранить в безопасном месте, если вы хотите дешифровать текст в будущем. Ключ нельзя хранить вместе с зашифрованным текстом, так как это позволит злоумышленникам легко расшифровать данные.
Надеюсь, это поможет вам реализовать шифрование и дешифрование текста без хранения пароля на диске или в RAM.