Librería utilitaria para operaciones básicas - POC BanCoppel
Project description
🏦 etribe-bancoppel
Governed & Secure Utility Library — POC BanCoppel
🚀 etribe-bancoppel v0.2.0 — Secure Release
Librería utilitaria con cadena de suministro verificada y análisis de vulnerabilidades potenciado por IA (Claude). Cada release pasa por un pipeline de seguridad enterprise-grade antes de publicarse.
🔐 Supply Chain Security
| Control | Herramienta | Estado | |
|---|---|---|---|
| 🛡️ | SAST (Static Analysis) | Bandit | ✅ Gate HIGH/CRITICAL |
| 📦 | SCA (Dependencies) | pip-audit | ✅ Gate HIGH/CRITICAL |
| 🧱 | SBOM | SPDX + Cosign OIDC | ✅ Firmado Keyless |
| 🔐 | Provenance | SLSA in-toto + Cosign | ✅ Firmada + Verificada |
| 🤖 | AI Security Analysis | Claude (Anthropic) | ✅ En caliente |
| 🏗️ | Build Isolation | GitHub Actions | ✅ Jobs separados |
| 📋 | Audit Reports | Auto-commit | ✅ Historial en reports/ |
🧠 AI-Powered Vulnerability Analysis
Cuando el pipeline detecta vulnerabilidades, Claude analiza automáticamente:
┌─────────────────────────────────────────────────────┐
│ Bandit scan ──┐ │
│ ├──→ 🤖 Claude API ──→ Análisis: │
│ pip-audit ──┘ │ │
│ ├── Resumen ejecutivo │
│ ├── Riesgo real │
│ ├── Prioridad remediación │
│ └── Fix recomendado │
└─────────────────────────────────────────────────────┘
📜 Verificación de firma
# Verificar SBOM
cosign verify-blob \
--bundle sbom.spdx.bundle \
--certificate-identity-regexp "github.com/techoffice-beep/etribe-bancoppel-poc" \
--certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
sbom.spdx.json
⚡ Instalación
pip install etribe-bancoppel
🚀 Uso rápido
from etribe_bancoppel import hello, add, subtract, multiply, version
# Saludo personalizado
print(hello("BanCoppel")) # → "Hola, BanCoppel!"
# Operaciones matemáticas
print(add(2, 3)) # → 5
print(subtract(10, 4)) # → 6
print(multiply(3, 7)) # → 21
# Versión
print(version()) # → "0.2.0"
📐 API Reference
| Función | Descripción | Input | Output |
|---|---|---|---|
hello(name) |
Saludo personalizado | str |
"Hola, {name}!" |
add(a, b) |
Suma | float, float |
float |
subtract(a, b) |
Resta | float, float |
float |
multiply(a, b) |
Multiplicación | float, float |
float |
version() |
Versión actual | — | str |
🔄 Pipeline de Seguridad
┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐
│ Push │───▶│ Scans │───▶│ Build │───▶│ Sign │
│ main │ │ SAST+SCA │ │ Isolated │ │ SBOM+ │
└──────────┘ └────┬─────┘ └──────────┘ │ Provenance│
│ └─────┬────┘
▼ │
┌──────────┐ ▼
│ 🤖 AI │ ┌──────────┐
│ Claude │ │ Publish │
│ Analysis │ │ PyPI │
└──────────┘ └──────────┘
Flujo detallado
| Paso | Job | Qué hace |
|---|---|---|
| 1 | Security Scans | Bandit (SAST) + pip-audit (SCA) + Gate |
| 2 | AI Analysis | Claude analiza vulnerabilidades detectadas |
| 3 | Build | Genera wheel/sdist + SHA256 hashes |
| 4 | Provenance | Genera SLSA in-toto + firma Cosign OIDC |
| 5 | SBOM | Genera SPDX + firma Cosign OIDC + verificación |
| 6 | Publish | Publica a PyPI con API token |
| 7 | Release | Tag + Summary |
🏗️ Arquitectura de Supply Chain
┌─────────────────────────────────────────────────────────────┐
│ 🛡️ Security Layer │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────────────┐ │
│ │ Bandit SAST │ │ pip-audit │ │ 🤖 Claude AI │ │
│ │ Code Vulns │ │ Dep Vulns │ │ Risk Analysis │ │
│ └─────────────┘ └─────────────┘ └─────────────────────┘ │
├─────────────────────────────────────────────────────────────┤
│ 🏗️ Build Layer │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────────────┐ │
│ │ Isolated │ │ SHA256 │ │ Dependency Lock │ │
│ │ Build Job │ │ Hashes │ │ with Hashes │ │
│ └─────────────┘ └─────────────┘ └─────────────────────┘ │
├─────────────────────────────────────────────────────────────┤
│ 🔐 Signing Layer │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────────────┐ │
│ │ SBOM (SPDX) │ │ Provenance │ │ Cosign OIDC │ │
│ │ Signed │ │ (in-toto) │ │ Keyless Signing │ │
│ └─────────────┘ └─────────────┘ └─────────────────────┘ │
├─────────────────────────────────────────────────────────────┤
│ 📦 Distribution Layer │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ PyPI Publish + Git Tag + Audit Reports ││
│ └─────────────────────────────────────────────────────────┘│
└─────────────────────────────────────────────────────────────┘
📊 Security Metrics
| Métrica | Valor |
|---|---|
| Dependencias externas | 0 (core) |
| Vulnerabilidades conocidas | 0 |
| SBOM firmado | ✅ Cosign OIDC |
| Provenance firmada | ✅ in-toto + Cosign |
| Build aislado | ✅ Job separado |
| AI Analysis | ✅ Claude (Anthropic) |
| Nivel SLSA | Level 1 + signed provenance |
📄 Licencia
MIT
👤 Autor
Arturo Gutierrez Rubio Rojas — etribe
Built with 🔐 by etribe
Secure Software Supply Chain — POC BanCoppel
https://pypi.org/project/etribe-bancoppel/
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file etribe_bancoppel-0.3.0.tar.gz.
File metadata
- Download URL: etribe_bancoppel-0.3.0.tar.gz
- Upload date:
- Size: 4.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9a3f57b0c4573c46a178d0631a6eb5184a579a9434b3386f69e14094fe4a4459
|
|
| MD5 |
f4408e307b7e6d2ed39b0deebf1574f1
|
|
| BLAKE2b-256 |
82899b330076c7e27120041200274001e09bd2ad5154134bf90fcfc1dbd11ec7
|
File details
Details for the file etribe_bancoppel-0.3.0-py3-none-any.whl.
File metadata
- Download URL: etribe_bancoppel-0.3.0-py3-none-any.whl
- Upload date:
- Size: 4.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
056085c1803c7431fe7aec838e8eb8a14dc06d2d6ddad2e4dd04493fdc0873db
|
|
| MD5 |
836176828019bba44d58641410b82bb7
|
|
| BLAKE2b-256 |
81586d9f7418fc7b070c42cb8ff37def89099886fa7c481f23ea00146c0e10ab
|