{"id":49044725,"url":"https://github.com/trusts-stack-network/tsn-snapshots","last_synced_at":"2026-05-15T07:01:53.702Z","repository":{"id":351341313,"uuid":"1210572853","full_name":"trusts-stack-network/tsn-snapshots","owner":"trusts-stack-network","description":"TSN Blockchain Snapshots — Signed and verified state snapshots for instant chain restoration","archived":false,"fork":false,"pushed_at":"2026-04-28T21:29:41.000Z","size":8,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-28T22:29:32.382Z","etag":null,"topics":["blockchain","ed25519","post-quantum","snapshots"],"latest_commit_sha":null,"homepage":"https://explorer.tsnchain.com","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/trusts-stack-network.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-14T14:46:18.000Z","updated_at":"2026-04-14T22:06:57.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/trusts-stack-network/tsn-snapshots","commit_stats":null,"previous_names":["trusts-stack-network/tsn-snapshots"],"tags_count":47,"template":false,"template_full_name":null,"purl":"pkg:github/trusts-stack-network/tsn-snapshots","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trusts-stack-network%2Ftsn-snapshots","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trusts-stack-network%2Ftsn-snapshots/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trusts-stack-network%2Ftsn-snapshots/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trusts-stack-network%2Ftsn-snapshots/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/trusts-stack-network","download_url":"https://codeload.github.com/trusts-stack-network/tsn-snapshots/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trusts-stack-network%2Ftsn-snapshots/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32518744,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"online","status_checked_at":"2026-05-01T02:00:05.856Z","response_time":64,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blockchain","ed25519","post-quantum","snapshots"],"created_at":"2026-04-19T16:00:39.017Z","updated_at":"2026-05-02T01:01:03.961Z","avatar_url":"https://github.com/trusts-stack-network.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TSN Blockchain Snapshots\n\nSigned state snapshots for fast chain restoration on the [Trust Stack Network](https://tsnchain.com).\n\n## What is this?\n\nThis repository contains verified state snapshots of the TSN blockchain. Each snapshot allows a new node to synchronize in seconds instead of replaying the entire chain history.\n\n## Security Model\n\nEvery snapshot is cryptographically verified through a multi-seed confirmation process:\n\n1. **Producer signature** — The seed that exports the snapshot signs the manifest with its Ed25519 key\n2. **Cross-seed confirmations** — At least 2 other independent seed nodes verify the block hash and state root at the snapshot height, then sign their own confirmation\n3. **SHA256 integrity** — The compressed snapshot file hash is embedded in the manifest\n4. **State root verification** — After import, the node recomputes the state root and compares it with the manifest\n\n## Snapshot Format\n\nEach snapshot consists of two files:\n\n- `snapshot-{height}.json.gz` — Compressed state snapshot (gzip JSON)\n- `manifest-{height}.json` — Signed manifest with confirmations\n\n## Verification\n\nTo verify a snapshot manually:\n\n```bash\n# Download and verify\n./scripts/verify-snapshot.sh manifest-12000.json snapshot-12000.json.gz\n```\n\nThis checks:\n- Producer Ed25519 signature against the known public key\n- SHA256 of the snapshot file matches the manifest\n- At least 2 seed confirmations are cryptographically valid\n\n## Public Keys\n\nSeed signing public keys are in `public-keys/`. These are the Ed25519 verification keys for each seed node.\n\n## Retention Policy\n\nSnapshots are retained for **24 hours** on a rolling basis. Older snapshots are automatically purged from both this repository and the seed nodes.\n\n## Restoring from a Snapshot\n\n```bash\n# Stop your node\nsystemctl stop tsn-node\n\n# Download latest snapshot + manifest\ncurl -LO https://github.com/trusts-stack-network/tsn-snapshots/releases/latest/download/snapshot.json.gz\ncurl -LO https://github.com/trusts-stack-network/tsn-snapshots/releases/latest/download/manifest.json\n\n# Verify before importing\n./scripts/verify-snapshot.sh manifest.json snapshot.json.gz\n\n# Import (your node handles this automatically during fast-sync)\nsystemctl start tsn-node\n```\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrusts-stack-network%2Ftsn-snapshots","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftrusts-stack-network%2Ftsn-snapshots","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrusts-stack-network%2Ftsn-snapshots/lists"}