- Notifications
You must be signed in to change notification settings - Fork18
🔐 Library for developing secure, decentralized, anonymous and quantum-resistant networks in Go language
License
number571/go-peer
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Thego-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 mainpkg
modules:
- 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. - The
client
module for encrypting and decrypting information with the attached data integrity (hash) and authentication (signature). It is a basic part of theanonymity
module. - 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. - The
anonymity
module to ensure anonymity based on the fifth^ stage. Presents the main functions for working with the network on top of theanonymity/adapters
andanonymity/queue
modules. - The
anonymity/queue
module represents the generation, storage and issuance of encrypted messages every time the period specified by the application is reached. Uses theclient
,message/layer1
andmessage/layer2
modules.
Examples of works in the directoriespkg/client/examples,pkg/network/examples,pkg/anonymity/examples,pkg/anonymity/queue/examples;
$ go get github.com/number571/go-peer
- Go version
>= 1.23
All 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.
- Go librarygo.etcd.io/bbolt (used by
pkg/storage/database
) - Go librarygolang.org/x/crypto (used by
pkg/crypto/keybuilder
) - Go librarygopkg.in/yaml.v2 (used by
pkg/encoding
) - Go librarygithub.com/cloudflare/circl (used by
pkg/crypto/asymmetric
)
There 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 themake install-deps
command. The list of applications is as follows:
- golangci-lintgithub.com/golangci/golangci-lint/cmd/golangci-lintv1.60.0
- go-cover-treemapgithub.com/nikolaydubina/go-cover-treemap@v1.4.2
- Theory of the structure of hidden systems
- Monolithic cryptographic protocol
- Abstract anonymous networks
- Decentralized key exchange protocol
Also, the composition of these works can be found in the bookThe general theory of anonymous communications
(Ridero). This book can be purchased in a tangible form on theOzon andWildberries marketplaces. You can download the book in digital form for freehere.
- Find bugs, vulnerabilities, and errors in the code
- Suggest improvements, ask questions, create issues
- Append new theoretical works or update current
- Create new secure / anonymity applications
- Popularize technology and applications
- Anonymous network «Hidden Lake»
- Console messenger «secpy-chat» based on Hidden Lake services
HLT
,HLE
- Generator of asymmetric keys «tkeygen» in
PrivKey{hex}
,PubKey{hex}
format - Serverless and stateless password manager «tpmanager»
Licensed under the MIT License. SeeLICENSE for the full license text.
About
🔐 Library for developing secure, decentralized, anonymous and quantum-resistant networks in Go language