{"id":13413779,"url":"https://github.com/number571/go-peer","last_synced_at":"2026-05-24T05:02:43.706Z","repository":{"id":45804639,"uuid":"217566321","full_name":"number571/go-peer","owner":"number571","description":"🔐 Library for developing secure, decentralized, anonymous and quantum-resistant networks in Go language","archived":false,"fork":false,"pushed_at":"2026-01-19T22:26:50.000Z","size":202150,"stargazers_count":314,"open_issues_count":0,"forks_count":16,"subscribers_count":8,"default_branch":"master","last_synced_at":"2026-01-20T05:31:46.235Z","etag":null,"topics":["anonymity","anonymous","cryptography","decentralized","e2e-encryption","f2f","friend-to-friend","golang","gp12","hidden-lake","library","network","p2p","peer-to-peer","post-quantum","privacy","protocol","qb-nets","research","research-paper"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/number571.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","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":"2019-10-25T15:45:23.000Z","updated_at":"2026-01-19T22:26:36.000Z","dependencies_parsed_at":"2023-02-16T11:15:59.799Z","dependency_job_id":"c174f577-60ae-475f-b175-b4b29a863553","html_url":"https://github.com/number571/go-peer","commit_stats":null,"previous_names":["number571/gopeer"],"tags_count":99,"template":false,"template_full_name":null,"purl":"pkg:github/number571/go-peer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/number571%2Fgo-peer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/number571%2Fgo-peer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/number571%2Fgo-peer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/number571%2Fgo-peer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/number571","download_url":"https://codeload.github.com/number571/go-peer/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/number571%2Fgo-peer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28681304,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-23T04:33:33.518Z","status":"ssl_error","status_checked_at":"2026-01-23T04:33:30.433Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["anonymity","anonymous","cryptography","decentralized","e2e-encryption","f2f","friend-to-friend","golang","gp12","hidden-lake","library","network","p2p","peer-to-peer","post-quantum","privacy","protocol","qb-nets","research","research-paper"],"created_at":"2024-07-30T20:01:49.133Z","updated_at":"2026-05-24T05:02:43.683Z","avatar_url":"https://github.com/number571.png","language":"Go","funding_links":[],"categories":["Security","安全","Encryption"],"sub_categories":["HTTP Clients","HTTP客户端"],"readme":"\u003cp align=\"center\"\u003e\n    \u003cimg src=\"images/go-peer_logo.png\" alt=\"go-peer_logo.png\"/\u003e\n\u003c/p\u003e\n\n\u003ch2\u003e\n\t\u003cp align=\"center\"\u003e\n    \t\u003cstrong\u003e\n        \tAnonymity and Security without compromise\n   \t\t\u003c/strong\u003e\n\t\u003c/p\u003e\n\t\u003cp align=\"center\"\u003e\n\t\t\u003ca href=\"https://github.com/topics/golang\"\u003e\n        \t\u003cimg src=\"https://img.shields.io/github/go-mod/go-version/number571/go-peer\" alt=\"Go\" /\u003e\n\t\t\u003c/a\u003e\n\t\t\u003ca href=\"https://github.com/number571/go-peer/releases\"\u003e\n        \t\u003cimg src=\"https://img.shields.io/github/v/release/number571/go-peer.svg\" alt=\"Release\" /\u003e\n\t\t\u003c/a\u003e\n\t\t\u003ca href=\"https://github.com/number571/go-peer/blob/master/LICENSE\"\u003e\n        \t\u003cimg src=\"https://img.shields.io/github/license/number571/go-peer.svg\" alt=\"License\" /\u003e\n\t\t\u003c/a\u003e\n\t\t\u003ca href=\"https://github.com/number571/go-peer/actions\"\u003e\n        \t\u003cimg src=\"https://github.com/number571/go-peer/actions/workflows/build.yml/badge.svg\" alt=\"Build\" /\u003e\n\t\t\u003c/a\u003e\n\t\t\u003ca href=\"https://github.com/number571/go-peer/blob/ee4b08c309d6966bd31621ceb7b0826708ca5dfb/Makefile#L55\"\u003e\n        \t\u003cimg src=\"test/result/badge_coverage.svg\" alt=\"Coverage\" /\u003e\n\t\t\u003c/a\u003e\n\t\t\u003ca href=\"https://godoc.org/github.com/number571/go-peer\"\u003e\n        \t\u003cimg src=\"https://godoc.org/github.com/number571/go-peer?status.svg\" alt=\"GoDoc\" /\u003e\n\t\t\u003c/a\u003e\n\t\t\u003ca href=\"https://github.com/avelino/awesome-go\"\u003e\n        \t\u003cimg src=\"https://awesome.re/mentioned-badge.svg\" alt=\"Awesome\" /\u003e\n\t\t\u003c/a\u003e\n\t\u003c/p\u003e\n\t\u003cp align=\"center\"\u003e\n\t\t\u003ca href=\"https://goreportcard.com/report/github.com/number571/go-peer\"\u003e\n        \t\u003cimg src=\"https://goreportcard.com/badge/github.com/number571/go-peer\" alt=\"GoReportCard\" /\u003e\n\t\t\u003c/a\u003e\n\t\t\u003ca href=\"https://github.com/number571/go-peer/pulse\"\u003e\n        \t\u003cimg src=\"https://img.shields.io/github/commit-activity/m/number571/go-peer\" alt=\"Activity\" /\u003e\n\t\t\u003c/a\u003e\n\t\t\u003ca href=\"https://github.com/number571/go-peer/commits/master\"\u003e\n        \t\u003cimg src=\"https://img.shields.io/github/last-commit/number571/go-peer.svg\" alt=\"Commits\" /\u003e\n\t\t\u003c/a\u003e\n\t\t\u003ca href=\"https://github.com/number571/go-peer/blob/ee4b08c309d6966bd31621ceb7b0826708ca5dfb/Makefile#L55\"\u003e\n        \t\u003cimg src=\"test/result/badge_codelines.svg\" alt=\"Code Lines\" /\u003e\n\t\t\u003c/a\u003e\n\t\t\u003ca href=\"https://img.shields.io/github/languages/code-size/number571/go-peer.svg\"\u003e\n        \t\u003cimg src=\"https://img.shields.io/github/languages/code-size/number571/go-peer.svg\" alt=\"CodeSize\" /\u003e\n\t\t\u003c/a\u003e\n\t\t\u003ca href=\"https://img.shields.io/github/downloads/number571/go-peer/total.svg\"\u003e\n        \t\u003cimg src=\"https://img.shields.io/github/downloads/number571/go-peer/total.svg\" alt=\"Downloads\" /\u003e\n\t\t\u003c/a\u003e\n\t\u003c/p\u003e\n\t\u003cp align=\"center\"\u003e\n\t\t\u003ca href=\"https://vk.me/join/6Px6b0Qh/uZIK4ixUYWQm4Krepzq5xbYjYw=\"\u003e\n        \t\u003cimg src=\"https://img.shields.io/badge/вконтакте-%232E87FB.svg?\u0026style=for-the-badge\u0026logo=vk\u0026logoColor=white\" alt=\"VKontakte\" /\u003e\n\t\t\u003c/a\u003e\n\t\t\u003ca href=\"https://t.me/+9Kcxr8NyeU8zZDZi\"\u003e\n        \t\u003cimg src=\"https://img.shields.io/badge/Telegram-2CA5E0?style=for-the-badge\u0026logo=telegram\u0026logoColor=white\" alt=\"Telegram\" /\u003e\n\t\t\u003c/a\u003e\n\t\u003c/p\u003e\n\tAbout project\n\u003c/h2\u003e\n\nThe `go-peer` library contains a large number of functions necessary to ensure the security of transmitted or stored information, as well as for the anonymity of nodes in the decentralized form. The library can be divided into several main `pkg` modules:\n\n1. The `crypto` module represents cryptographic primitives: 1) asymmetric encryption, decryption; 2) asymmetric signing and signature verification; 3) symmetric encryption and decryption; 4) hashing; 5) key building; 6) computational problems (puzzles); 7) cryptographically stable pseudorandom number generator.\n2. The `crypto/scheme/layer2/hybrid` module for encrypting and decrypting information with the attached data integrity (hash) and authentication (signature). It is a basic part of the `anonymity/qb` module.\n3. The `crypto/scheme/layer2/symmetric` alternative module for `crypto/scheme/layer2/hybrid` designed to minimize packet size, based on symmetric cryptography.\n4. The `network` module is a decentralized communication between network nodes. Allows you to delimit networks and give information a random appearance using the network key.\n5. The `anonymity/qb` module to ensure anonymity based on the fifth^ stage. Presents the main functions for working with the network on top of the `anonymity/qb/adapters` and `anonymity/qb/queue` modules.\n6. The `anonymity/qb/queue` module represents the generation, storage and issuance of encrypted messages every time the period specified by the application is reached. Uses the `crypto/scheme/layer2` and `crypto/scheme/layer1` modules.\n\n\u003e Examples of works in the directories [pkg/network/examples](pkg/network/examples/), [pkg/anonymity/qb/examples](pkg/anonymity/qb/examples/), [pkg/anonymity/qb/queue/examples](pkg/anonymity/qb/queue/examples/);\n\n## Coverage map\n\n\u003cp align=\"center\"\u003e\u003cimg src=\"test/result/coverage.svg\" alt=\"coverage.svg\"/\u003e\u003c/p\u003e\n\n## Installation\n\n```bash\n$ go get github.com/number571/go-peer\n```\n\n## Requirements\n\n1. Go version `\u003e= 1.23`\n\n## Releases\n\nAll cmd programs are compiled for {`amd64`, `arm64`} ARCH and {`windows`, `linux`, `darwin`} OS as pattern = `appname_arch_os`. In total, one application is compiled into six versions. The entire list of releases can be found here: [github.com/number571/go-peer/releases](https://github.com/number571/go-peer/releases \"releases\"). \n\n## Dependencies\n\n1. Go library [go.etcd.io/bbolt](https://github.com/etcd-io/bbolt \"bbolt\") (used by `pkg/storage/database`)\n2. Go library [golang.org/x/crypto](https://golang.org/x/crypto \"x/crypto\") (used by `pkg/crypto/keybuilder`)\n3. Go library [gopkg.in/yaml.v2](https://gopkg.in/yaml.v2 \"yaml.v2\") (used by `pkg/encoding`)\n4. Go library [github.com/cloudflare/circl](https://github.com/cloudflare/circl \"circl\") (used by `pkg/crypto/asymmetric`)\n\n### Makefile\n\nThere are a number of dependencies that represent separate applications for providing additional information about the quality of the code. These applications are not entered into the project, but are loaded via the `make install-deps` command. The list of applications is as follows:\n\n1. golangci-lint [github.com/golangci/golangci-lint@v2.1.2](https://github.com/golangci/golangci-lint/tree/v2.1.2)\n2. go-cover-treemap [github.com/nikolaydubina/go-cover-treemap@v1.4.2](https://github.com/nikolaydubina/go-cover-treemap/tree/v1.4.2)\n\n## Theoretical works\n\n1. [Theory of the structure of hidden systems](https://github.com/number571/go-peer/blob/master/docs/theory_of_the_structure_of_hidden_systems.pdf \"TotSoHS\")\n2. [Monolithic cryptographic protocol](https://github.com/number571/go-peer/blob/master/docs/monolithic_cryptographic_protocol.pdf \"MCP\")\n3. [Abstract anonymous networks](https://github.com/number571/go-peer/blob/master/docs/abstract_anonymous_networks.pdf \"AAN\")\n4. [Decentralized key exchange protocol](https://github.com/number571/go-peer/blob/master/docs/decentralized_key_exchange_protocol.pdf \"DKEP\")\n\nAlso, the composition of these works can be found in the book `The general theory of anonymous communications` ([Ridero](https://ridero.ru/books/obshaya_teoriya_anonimnykh_kommunikacii/)). This book can be purchased in a tangible form on the [Ozon](https://www.ozon.ru/product/obshchaya-teoriya-anonimnyh-kommunikatsiy-vtoroe-izdanie-kovalenko-a-g-1193224608/) and [Wildberries](https://www.wildberries.ru/catalog/177390621/detail.aspx) marketplaces. You can download the book in digital form for free [here](https://github.com/number571/go-peer/blob/master/docs/general_theory_of_anonymous_communications.pdf).\n\n## How can you help the project\n\n1. Find bugs, vulnerabilities, and errors in the code\n2. Suggest improvements, ask questions, create issues\n3. Append new theoretical works or update current\n4. Create new secure / anonymity applications\n5. Popularize technology and applications\n\n## Library based applications\n\n1. Anonymous network «[Hidden Lake](https://github.com/number571/hidden-lake)»\n2. Console messenger «[secpy-chat](https://github.com/number571/secpy-chat)» based on Hidden Lake services `HLT`, `HLE`\n\n## Star History\n\n[![Star History Chart](https://api.star-history.com/svg?repos=number571/go-peer\u0026type=Date)](https://star-history.com/#number571/go-peer\u0026Date)\n\n## License\n\nLicensed under the MIT License. See [LICENSE](LICENSE) for the full license text.\n\n**[⬆ back to top](#installation)**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnumber571%2Fgo-peer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnumber571%2Fgo-peer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnumber571%2Fgo-peer/lists"}