This document outlines the security architecture, signing expectations, and vulnerability reporting procedures for the Kitewell project.
Kitewell adheres to a non-custodial, client-side cryptographic architecture designed to prevent key exposure:
- Freighter-Only Client-Side Signing: All cryptographic transaction signing and credential authorization must occur strictly client-side via the Freighter browser extension or compatible SEP-0007 / wallet providers.
- Zero Backend Secret Keys: The backend service and API layers must never receive, request, persist, log, or forward secret keys (
S...), seed phrases, or private key material. All transactions are constructed as unsigned XDR blobs, signed in the user's browser, and submitted directly to the Horizon / Soroban RPC network. - Principle of Least Privilege: Public keys (
G...) are treated purely as public identifiers for querying on-chain state and account balances.
- Testnet-Only by Default: The default configuration for all contracts, indexers, and frontend applications is strictly locked to Stellar Testnet (
Test SDF Network ; September 2015). - Mainnet Protection: The network selector offers Testnet and Futurenet only. Testnet is the default. Transactions are signed with the selected network's passphrase. The selector rejects any other network id, including public mainnet. Do not deploy or run production funds against un-audited experimental smart contract endpoints.
We take the security of our platform and user assets seriously. If you discover a security vulnerability, please report it responsibly:
- Please do not open public GitHub issues for security vulnerabilities or exploit demonstrations.
- Email your findings directly to the repository maintainers or security team with a detailed description and steps to reproduce.
- Description: Clear summary of the issue, attack scenario, and potential blast radius.
- Affected Components: Specific files, routes, or contract functions impacted.
- Proof of Concept (PoC): Non-destructive reproduction steps or script on Testnet.
- Remediation: Any suggested architectural or code-level mitigations.
- Acknowledgment: Within 48 hours of initial receipt.
- Triage & Patching: High/critical issues are triaged immediately and patched in a hotfix branch prior to public release.
Last Updated: September 2026