🔒 Telegram — удобный мессенджер, но даже он не гарантирует полной безопасности переписки. Пользователи часто делятся в чатах личными данными, финансовой информацией и корпоративными секретами, что может привести к утечкам. Как защитить данные автоматически?
Решение — SensitiveDataMiddleware — специальный модуль для Telegram-ботов, который:
✔ Находит конфиденциальные данные (номера карт, телефоны, криптокошельки)
✔ Удаляет опасные сообщения
✔ Маскирует чувствительную информацию
✔ Оповещает участников о нарушении Middleware проверяет все сообщения в чатах с помощью регулярных выражений и ищет: def _find_sensitive_data(self, text: str) -> list:
"""Находит конфиденциальные данные в тексте"""
phones = re.findall(r'(?:\+|\b)[\d\(\)\- ]{7,}\d', text) # Телефоны
cards = re.findall(r'\b(?:\d[ \-]?){15,18}\d\b', text) # Банковские карты
wallets = re.findall(r'\b(?:\d{11,16}|[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,})\b', text) # Электронные кошельки
crypto = re.findal