Skip to main content

Modular library for analysis, data protection, and validation

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.1.0.tar.gz (18.6 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.1.0-py3-none-any.whl (30.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: securitycore-1.1.0.tar.gz
  • Upload date:
  • Size: 18.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.2 CPython/3.13.12 Windows/10

File hashes

Hashes for securitycore-1.1.0.tar.gz
Algorithm Hash digest
SHA256 1fbd9a8d18bc8716839b136676c35aebac4b7c9e34067932b08f0fa1b687463b
MD5 845bc9e9121ff45df7c4070e8e51b027
BLAKE2b-256 15f3a5cacfdac88516f3716f11ff568b15ac34b095dbfcaa215727c5fabc3f8a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: securitycore-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 30.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.2 CPython/3.13.12 Windows/10

File hashes

Hashes for securitycore-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9496e0b42dcebf744876c6e1ace11ece2544dc2aef295bd09366f3859898d3c0
MD5 83851ef0869b290e25f1a82e7378041f
BLAKE2b-256 8cefc516ce1e731a01b3ec9c9e8615a73c45b891f3b25c9cc4df4f41698bae23

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