Skip to main content

Модульная библиотека для анализа, защиты и валидации данных

Project description


🔐 SecurityCore

SecurityCore — модульная библиотека Python для анализа, защиты, валидации и безопасной обработки данных.
Каждый модуль — это самостоятельный «артефакт безопасности», который можно использовать в веб‑приложениях, API‑сервисах, CLI‑утилитах и инфраструктурных системах.

Библиотека построена по принципам:

  • строгой валидации
  • безопасных дефолтов
  • отсутствия циклических зависимостей
  • чистой архитектуры
  • предсказуемого API

✨ Возможности

🔑 Криптография

  • PBKDF2‑HMAC хеширование (hash_data, verify_hash)
  • генерация криптографических ключей (generate_bytes_key, generate_hex_key, generate_hmac_key)
  • подпись и проверка данных (sign_data, verify_signature)
  • токены с подписью (generate_token, verify_token, create_token_pair)
  • анализ энтропии (entropy, total_entropy, estimate_charset_size)

🛡️ Защита

  • защита от XSS (sanitize_xss, ensure_no_xss)
  • защита от SQL‑инъекций (sanitize_sql_input, ensure_no_sql_injection)
  • безопасная работа с путями (ensure_safe_path, ensure_safe_filename)

✔️ Валидация

  • email
  • URL
  • IPv4 / IPv6
  • пароли
  • строки, длины, форматы

📜 Аудит

  • текстовый аудит (audit)
  • JSON‑аудит (audit_json)
  • безопасная сериализация и структурированные записи

📦 Установка

pip install securitycore

Или локально:

git clone https://github.com/mihhail327/SecurityCore.git
cd SecurityCore
pip install -r requirements.txt

📁 Структура библиотеки

securitycore/
    crypto/
    protection/
    validators/
    analysis/
    audit/
    utils/
    _internal/

📊 Примеры использования

Хеширование

from securitycore import hash_data, verify_hash

salt, hashed = hash_data("mypassword")
print(verify_hash("mypassword", salt, hashed))

Токены

from securitycore import generate_token, verify_token, generate_hmac_key

key = generate_hmac_key()
token = generate_token({"user_id": 42}, key)

print(verify_token(token, key))

Защита от XSS

from securitycore import sanitize_xss

print(sanitize_xss("<script>alert('XSS')</script>"))

Валидация email

from securitycore import validate_email

validate_email("user@example.com")

Аудит

from securitycore import audit

audit("user_login", {"user": "alice"})

Энтропия

from securitycore import entropy, total_entropy

print(entropy("MyP@ssw0rd"))

🧪 Тестирование

pytest -v

📜 Лицензия

MIT License — см. файл LICENSE.


🛡️ Автор

Разработано Mihhail327.
SecurityCore вырос из простого интереса к безопасности и желания разобраться в теме на практике.


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

securitycore-1.0.1.tar.gz (11.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

securitycore-1.0.1-py3-none-any.whl (11.3 kB view details)

Uploaded Python 3

File details

Details for the file securitycore-1.0.1.tar.gz.

File metadata

  • Download URL: securitycore-1.0.1.tar.gz
  • Upload date:
  • Size: 11.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for securitycore-1.0.1.tar.gz
Algorithm Hash digest
SHA256 250e19089a9157056306c3ac9014b8e027788b8aa329605ecb50e71d13ace8db
MD5 86a6630f26db2d764e406085cc96d532
BLAKE2b-256 939775be42c2f46ea161f57cac6a5f43dd89cf10e62ecd1134d9e1454b092e38

See more details on using hashes here.

File details

Details for the file securitycore-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: securitycore-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 11.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for securitycore-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 36e837cfd12c16ea86b323c4e4a01a47fdebecb8e3279465834a669d673ff605
MD5 707f6458ef0d8b05d06f1b68d4a98c02
BLAKE2b-256 50bf91d1a2551b227586529a67da6072620c45ed6b4a317d2a78757475b088ef

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page