Repository navigation
Deployment
Secure Package V14 should be deployed as a PHP application whose public web root is only the public/ directory.
server/
├── app/ private
├── bin/ private
├── config/ private
├── public/ web root
├── storage/ private
├── tests/ private
├── bootstrap.php private
├── composer.json private
└── VERSION private
Do not expose the repository root through Apache/Nginx.
Recommended production baseline:
SPK_REQUIRE_HTTPS=1
SPK_PUBLIC_ORIGIN=https://your-host.example
SPK_NAME_PEPPER=<long-random-secret>
Set to 1 to force HTTPS for the application session layer.
Set this explicitly in production so same-origin validation does not depend on dynamic host reconstruction.
Use a long random secret managed by the deployment environment.
If it is absent, V14 can generate a persistent local fallback at storage/secrets/name-pepper.bin, but controlled production secret management is preferable.
The main server workspace requires:
- PHP >= 8.2
- Sodium
- Zip
-
random_bytes()support
pdo_mysql is optional for the current application core.
The health endpoint reports Zip as a required component and returns degraded status when it is unavailable.
The project disables Composer plugins by configuration.
For a release, generate a real lockfile in a normal development environment:
composer update
composer validate --strict --no-check-publish
composer audit --no-interactionCommit the real composer.lock.
CI should then use:
composer install --no-interaction --prefer-dist --no-progress
composer audit --no-interactionDo not fabricate a lockfile in CI.
Use restrictive permissions for:
storage/- package archives
- upload staging
- job state
- account storage
- rate-limit state
- audit logs
- release private keys
- deployment environment files
The web server should not have permission to execute files from package storage.
The application emits security headers at the PHP layer, but infrastructure should still be configured correctly.
Use TLS termination that preserves the correct HTTPS signal to PHP.
Do not weaken the application's CSP or cross-origin policy merely to make a nonessential third-party asset load.
Keep the Ed25519 private release key:
- outside the repository;
- outside the public web root;
- outside application storage;
- out of CI logs.
Sign the active source tree and distribute the exact release archive checksum with the independently trusted public key.
For high-assurance deployment, configure:
SECURE_PACKAGE_TRUSTED_RELEASE_KEY_HEX=<64 lowercase hex chars>
The verifier then checks that the embedded release key matches this external pinned trust root.
Without an external key, embedded-key verification establishes self-consistency, not independent trust.
A V14 recovery key grants package restore without the password/pattern. Treat it as an independent credential.
Recommended handling:
- display once;
- copy to a secure offline location;
- use a password manager or secret manager with appropriate controls;
- never store it in the package itself;
- never place it in Git, issues, logs, screenshots, or analytics.
The service exposes:
/health.php
It checks:
- PHP version
- Sodium
- Zip
- PDO MySQL as optional
- randomness API
- storage availability
The endpoint returns HTTP 200 only when all required checks pass.
Run:
php bin/self-check.php
php bin/source-audit.php
php bin/security-test.php --full
composer validate --strict --no-check-publish
composer audit --no-interactionThen run the release signing and verification procedure.
No deployment guide can compensate for a compromised operating system, leaked environment secret, compromised release key, malicious PHP runtime, or compromised administrator account. Infrastructure security remains part of the overall trust model.
Secure Package V14 · SECURE-PKG-V14 · Version 14.1.0 · MIT License · Author: ElmanCod110
This Wiki describes the implementation currently documented by the repository. Security-sensitive behavior should be verified against the active source tree before production deployment.
Start
V14 Engine
Security
Integration
Operations
- Storage and Data Lifecycle
- Deployment
- Testing and Validation
- Release and Supply Chain
- Migration V13 to V14
Contributing