Git Product home page Git Product logo

ipnsoftwares / ipncore Goto Github PK

View Code? Open in Web Editor NEW
3.0 2.0 1.0 380 KB

The IPN network protocol is the connecting network for the Internet, Tor and the I2P network. The IPN network protocol is intended to create a new network that cannot be censored, is anonymous and highly available if desired.

Home Page: https://ipnsoftwares.github.io

License: MIT License

JavaScript 100.00%
network ipn p2p decentralized websocket sodium cryptography mesh-networks

ipncore's Introduction

🌍 Interplanetary Network (IPN) -- Milestone 2 👽

made-with-javascript GitHub branches GitHub commits

GitHub license Twitter

Select language: EN | DE

The Interplanetray Network is an open-source, decentralized P2P network that aims to enable a simple connection between 2 or more devices. It doesn't matter whether the device is in Tor, in i2p or in the "normal" Internet. Anyone can create an ed25519 (EdDSA / curve25519) key and use the public key as an address within the IPN to establish a P2P connection. If a direct connection at the IP level is possible, the IPN core software automatically connects to the opposite peer.

👍 The following functions are supported

  • Decentralized routing protocol (Artemis Protocol | INIP0001)
  • Bootnode support and hardcoded swarm nodes to initialize the network (INIP0003)

🌍 Supported network protocols

  • Websocket (WS/WSS)

🔐 Support cryptographic methods

  • ED25519 / Curve25519
  • xChaCha20-Poly1305

🚀🍾 Communities

📚 Available libraries / API's

Language State Full Library
NodeJs / Javascript 👩‍💻 In progress ✅ Yes
Flutter / Dart 🚫 Work not started ❌ No
C / C++ 🚫 Work not started ❌ No
Python 👩‍💻 In progress ❌ No
Rust 🚫 Work not started ❌ No
C# 🚫 Work not started ❌ No

To do list

  • (₿) Bitcoin support
  • DDoS Protection (INIP0013)
  • DNS Node seeding (INIP0003)
  • Uniform address format (INIP0010)
  • API / IPC Protocol / Support (IPN0016)
  • Commandline Console for IPN-Core Service
  • Power Routing over Distributed hash table (DHT)
  • Optimization for mobile devices
  • Network protocols:

💲 Support me

😶 Dependencies

  • @noble/hashes = 1.1.3
  • base58-js = 1.0.4
  • bech32 = 2.0.0
  • cbor = 8.1.0
  • figlet = 1.5.2
  • ip-address-validator = 1.0.7
  • ip6addr = 0.2.5
  • ipaddr.js = 2.0.1
  • js-sha3 = 0.8.0
  • libsodium-wrappers = 0.7.10
  • moment = 2.29.4
  • rfc-3548-b32 = 0.0.2
  • sha3 = 2.1.4
  • uuid = 8.3.2
  • ws = 8.8.1
  • yargs = 17.5.1
  • level = 8.0.0

⚖️ License - Much license

IPN Core is released under the terms of the MIT license. See COPYING for more information or see opensource.org

ipncore's People

Contributors

fluffelpuff avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

arvind-india

ipncore's Issues

Zeiterfassung für die Selektion der Schnellsten Routen

Bei der Auswahl der Routen für den zweiten Layer sollte nicht über die Ping Geschwindigkeit zwischen den Nodes selektiert werden. Um eine zuverlässigere Auswahl zu ermöglichen, sollte die benötigte Zeit, die es gebraucht hat um die Route zu ermitteln verwendet werden um die Schnellsten Routen zu wählen. Eine kleine Anpassung in der node.js sowie in der routing_man.js sollte hierfür vollkommend ausreichend sein.

Bug! Route cannot be reused after it has been deleted due to non-use

If no packet is sent from an address X for longer than 60 seconds and the address is not known due to the direct connection, the route for the address is deleted. During the deletion process, the AddressRawEp is signaled that no more routes are available, but the AddressRawEp is not signaled that a new route may be available.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.