# █████████████████████████████████████████ # █────██────█────█────█───█────█────█────█ # █─██──█─██─█─██─█─██─██─██─██─█─██─█─██─█ # █─██──█─██─█────█─██─██─██─██─█────█─██─█ # █─██──█─██─█─█─██─██─██─██─██─█─█─██─██─█ # █────██────█─█─██────██─██────█─█─██────█ # █████████████████████████████████████████ # # # Copyright 2022 t.me/Dorotoro # https://www.gnu.org/licenses/agpl-3.0.html # # meta banner: https://raw.githubusercontent.com/dorotorothequickend/DorotoroModules/main/banners/Dorotoro01code.png # meta developer: @DorotoroMods from .. import loader, utils # https://clck.ru/32dhcu (StackOverflow) @loader.tds class tocodedecodemod(loader.Module): """Ваш персональный шифратор в двоичный код.""" strings = {"name": "01code"} @loader.command() async def codeit(self, message): "<текст, который необходимо зашифровать> - шифрует ваш текст в двоичный код." args = utils.get_args_raw(message) def to_bits(args, encoding='utf-8', errors='surrogatepass'): bits = bin(int.from_bytes(args.encode(encoding, errors), 'big'))[2:] return bits.zfill(8 * ((len(bits) + 7) // 8)) result = to_bits(args) await utils.answer(message, f"🖥 Текст зашифрован:\n{result}") @loader.command() async def decode(self, message): "<код, который необходимо дешифровать> - дешифрует двоичный код." args = utils.get_args_raw(message) if not args: await utils.answer(message, "🖥 Что декодировать то?") return def from_bits(bits, encoding='utf-8', errors='surrogatepass'): n = int(bits, 2) return n.to_bytes((n.bit_length() + 7) // 8, 'big').decode(encoding, errors) or '\0' result = from_bits(args) await utils.answer(message, f"🖥 Результат дешифровки:\n{result}")