more docs

This commit is contained in:
Jeff 2021-12-10 11:45:51 -05:00
parent 4bbf5522b4
commit be47299b5d
No known key found for this signature in database
GPG Key ID: F357B3B42F6F9B05
7 changed files with 74 additions and 6 deletions

3
docs/ideal-ux.md Normal file
View File

@ -0,0 +1,3 @@
# How Do I use lokinet?
`// TODO: this`

View File

@ -0,0 +1,11 @@
# Embedding Lokinet into an existing application
When all else fails and you want to deploy lokinet inside your app without the OS caring you can embed an entire lokinet client and a few of the upper network layers into your application manually.
## Why you should avoid this route
`// TODO: this`
## When you cannot avoid this route, how do i use it?
`// TODO: this`

3
docs/lokinet-ideal-ux.md Normal file
View File

@ -0,0 +1,3 @@
# How Do I use lokinet?
`// TODO: this`

View File

@ -8,15 +8,15 @@ Lokinet does not provide a web browser at this time because that is not a small
## Tor/Onion Services
While Tor Browser is the main user facing product made by Tor Project the main powerhouse is Tor itself which provides a way to anonymize tcp connections made by an inititor and optionally additionally the recipiant in the case of when using a .onion address. Lokinet provides a similar feature set but can carry anything that can be encapsulated in an IP packet (currently only unicast traffic).
While Tor Browser is the main user facing product made by Tor Project, the main powerhouse is Tor itself. Tor provides a way to anonymize tcp connections made by an initiator and optionally additionally the recipient, when using a .onion address. Lokinet provides a similar feature set but can carry anything that can be encapsulated in an IP packet (currently only unicast traffic).
Lokinet differs greatly from the UX side vs Tor as by default we do not provide exit connectivity by default. This is primarily because we cannot do this by default as in practice each user's threat model greatly varies in scope and breadth thus there exists no one size fits all way to do exits that works for everyone. Users obtain their exit node information out of band at the moment. In the future We want to add decentralized network wide service discovery not limited to just exit providers but this is currently un implemented. We think that by being hands of on exit node requirements a far more diverse set of exit nodes can exist. In addition to having totally open unrestrcited exits, permitting "specialized" exit providers that are allowed to do excessive filtering or geo blocking for security theatre checkbox compliance is something Tor does not seem to be able to provide at this time.
The Lokinet UX differs greatly from that of Tor. By default we do not provide exit connectivity. Because each user's threat model greatly varies in scope and breadth, there exists no one size fits all way to do exit connectivity. Users obtain their exit node information out-of-band at the moment. In the future we want to add decentralized network wide service discovery not limited to just exit providers, but this is currently unimplemented. We think that by being hands-off with respect to exit node requirements a far more diverse set of exit nodes can exist. In addition to having totally open unrestrcited exits, there is merit to permitting "specialized" exit providers that are allowed to do excessive filtering or geo blocking for security theatre checkbox compliance.
Lokinet additionally encourges the manual selection and pinning of edge connections to fit each user's threat model.
Lokinet additionally encourages the manual selection and pinning of edge connections to fit each user's threat model.
## I2P
Integrating applications to opt into i2p's network layer is painful and greatly stunts mainstream adoption.
Integrating applications to utilize i2p's network layer is painful and greatly stunts mainstream adoption.
Lokinet takes the inverse approach of i2p: make app integration in lokinet should require zero custom shims or modifications to code to make it work.
## DVPNs / Commercial VPN Proxies

View File

@ -1,12 +1,14 @@
# Lokinet Docs
this is the area of the repo for documentation of lokinet
This is where Lokinet documentation lives.
## High level
[How is Lokinet different to \[insert network technology name here\] ?](net-comparisons.md)
[How Do I use Lokinet?](lokinet-ideal-ux.md)
[How Do I use Lokinet?](ideal-ux.md)
[What Lokinet can't do](we-cannot-make-sandwiches.md)
## Lokinet (SN)Application Developer Portal

30
docs/snapps-dev-guide.md Normal file
View File

@ -0,0 +1,30 @@
# (SN)Apps Development Guide
## Our approach
`// TODO: this`
## Differences From Other approaches
`// TODO: this`
### SOCKS Proxy/HTTP Tunneling
`// TODO: this`
### Embedding a network stack
`// TODO: this`
## High Level Code Practices
`// TODO: this`
### Goodisms
`// TODO: this`
### Badisms
`// TODO: this`

View File

@ -0,0 +1,19 @@
# What Lokinet can't do
Lokinet does a few things very well, but obviously can't do everything.
## Anonymize OS/Application Fingerprints
Mitigating OS/Application Fingerprinting is the responsibility of the OS and Applications. Lokinet is an Unspoofable IP Packet Onion router, tuning OS fingerprints to be uniform would be a great thing to have in general even outside of the context of Lokinet. The creation of such an OS bundle is a great idea, but outside the scope of Lokinet. We welcome others to develop a solution for this.
## Malware
Lokinet cannot prevent running of malicious programs. Computer security unfortunately cannot be solved unilaterally by networking software without simply dropping all incoming and outgoing traffic.
## Phoning Home
Lokinet cannot prevent software which sends arbitrary usage data or private information to Microsoft/Apple/Google/Amazon/Facebook/etc. If you are using a service that requires the ability to phone home in order to work, that is a price you pay to use that service.
## Make Sandwiches
At its core, Lokinet is technology that anonymizes and authenticates IP traffic. At this current time Lokinet cannot make you a sandwich. No, not even as root.