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.2.tar.gz (20.8 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.2-py3-none-any.whl (28.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: securitycore-1.0.2.tar.gz
  • Upload date:
  • Size: 20.8 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.2.tar.gz
Algorithm Hash digest
SHA256 ace8c31b1a84b2d286b6c039ce39d28e878a51ad5a0537a2b3661763270b7bfe
MD5 d0cddc98bd09fa50140d9d22edf432de
BLAKE2b-256 44ea443793945effdd9b1644ff62dd3ab8fe5b505db684d227d056ae8be32cf5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: securitycore-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 28.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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6d8a779e6fd098ac9f5ad49e9cdca8e4f5e4b947c71f3c67fc6872d4ffad24cf
MD5 6abfa5c39596b5d46bc24adf7155ab47
BLAKE2b-256 6805025fc1e35e1294d8c26d62b62ad6345ccc76f37e5650d00f46d4eaf638bb

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