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.0.tar.gz (10.9 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.0-py3-none-any.whl (10.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: securitycore-1.0.0.tar.gz
  • Upload date:
  • Size: 10.9 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.0.tar.gz
Algorithm Hash digest
SHA256 fd591a709fd2db7de654525fee87a1eaa2e7ee766096f61c1ed11724cd8dd221
MD5 6011cd351d727805af231beb7816fa36
BLAKE2b-256 6eb609784ae9ee98468a510ada968049359052f9a8356dfd02e84f25f1b1ffbb

See more details on using hashes here.

File details

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

File metadata

  • Download URL: securitycore-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 10.8 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6128b74b995a7aec16f687042d1bc1ae2be23b1edc605c70192cae90e78defe5
MD5 6524fb117385a125e22242a5e0a18557
BLAKE2b-256 7f684b7b05c0773d8bec95ebdfe760388c1038a502a0199cc403d85db3c41dd6

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