-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit e02fb6c
Showing
19 changed files
with
1,532 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
_examples |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
kinetra.de/net License | ||
Version: 1.0.0 | ||
|
||
Copyright (c) 2024 deneonet | ||
|
||
1. Permission is granted to use the software in personal or commercial projects. | ||
2. You may not reproduce, distribute, or publicly display the software or its derivatives in any form without prior written permission from deneonet. | ||
3. You may modify the software for your personal use or to integrate into your own projects, provided that it is not distributed or shared with others. | ||
4. This license is effective until terminated. You may terminate it at any time by destroying all copies of the software. | ||
5. The software is provided "as is," without warranty of any kind, express or implied. | ||
6. deneonet shall not be liable for any damages arising from the use of the software. | ||
|
||
By using this software, you agree to abide by these terms. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
# kinetra.de/net | ||
|
||
A library to handle secure TCP connections over a custom protocol. | ||
**Warning:** This library is not complete and contains unfinished code. | ||
|
||
## Security | ||
|
||
**kinetra.de/net** uses AES-256 for data encryption, ECDH P521 for key exchange, and ECDSA P521 for signing. | ||
|
||
## Data Encoding | ||
|
||
To efficiently encode data, **kinetra.de/net** utilizes [benc](https://github.com/deneonet/benc) as its serializer. | ||
|
||
## Key Rotations | ||
|
||
If the private key of the server's certificate is compromised or just expired, simply generate a new one and update the client's root key as well. **cosair.gg** encodes a version field into the certificate and root key to verify that the client is always in sync with the server. If the versions do not match, a clear error will be returned. | ||
|
||
## Generating Certificates | ||
|
||
As simple as `go run kinetra.de/net/gen -v {VERSION_NUMBER}`, everything is done locally on your machine. To ensure that the root key is in sync with the certificate, it will be generated as well. | ||
|
||
## The Handshake Process | ||
|
||
1. **[Client]**: I want your certificate to prove your identity as **[Server]**. | ||
2. **[Server]**: Sure, here’s my certificate. | ||
3. **[Client]**: I'll check the signature using my root key, verifying that the public key was not compromised, is not expired, and matches the expected version. | ||
4. **[Client]**: I verified it; it's valid. Here’s my public key. I'll create a shared secret using your public key. | ||
5. **[Server]**: I have the shared secret now too. Let me verify that we have the same and that your public key was not compromised as well. I’ll send you an encrypted message using the shared secret. | ||
6. **[Client]**: I successfully decrypted the message. Our connection is now secure! | ||
|
||
## Examples | ||
|
||
Find examples [here](https://github.com/deneonet/cosair.gg-net-examples). |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Oops, something went wrong.