Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Шифратор и дешифратор scratch

Семён Сманцерев Ученик (174), на голосовании 10 месяцев назад
мне нужно хранить текст в облачной переменной scratch но так как там можно хранить только цифры мне нужен шифратор и дешифратор. Можете кто-то создать спрайт с кодом или написать как этот код сделать не могу найти решение в интернете, ничего не работает
Голосование за лучший ответ
Влад Канаев Профи (738) 11 месяцев назад
Вы можете использовать алгоритм шифрования, такой как AES (Advanced Encryption Standard), для шифрования текста перед сохранением его в облачной переменной Scratch. Затем, когда вы хотите получить доступ к тексту, вы можете использовать тот же алгоритм для дешифрования данных.

Вот пример простого дешифратора и шифратора на Python:
```
import base64
from cryptography.hazmat.primitives.ciphers import Cipher, algorithms, modes
from cryptography.hazmat.backends import default_backend
from cryptography.fernet import Fernet
import os

def encrypt(text):
key = Fernet.generate_key()
f = Fernet(key=key)
encrypted = f.encrypt(text.encode())
return base64.b64encode(encrypted)

def decrypt(encrypted):
with open(os.path.join(os.getcwd(), 'key.pem'), 'wb') as key:
key.write(base64.urlsafe_b64decode(encrypted))
with open('key.pem', 'rb') as key:
Семён Сманцерев Ученик (174) 11 месяцев назад
Влад Канаев Профи (738) Семён Сманцерев , ``` from cryptography.hazmat.primatives.ciphers.aead import AESGCM from cryptography.hazmat.primitives import serialization from cryptography.hazmat.primatives import hashes from cryptography import fernet from base64 import urlsafe_b64encode, urlsafe_b64decode key = b"your-encryption-key" iv = bytes(16) cipher = AESGCM(key) encryptor = cipher.encryptor() def encode(text): encoded_text = urlsafe_b64encode(encryptor.update(text.encode())) if iv: encoded_text += urlsafe_b64encode(iv) return encoded_text def decode(text): decoded_text = urlsafe_b64decode(text) if len(decoded_text) == len(key): iv = decoded_text[len(key):] decoded_text = decoded_text[:len(key)] decrypted_text = decryptor.
Влад КанаевПрофи (738) 11 месяцев назад
Щас погодите не весь код написал
Похожие вопросы