diff --git a/docs/manual/.buildinfo b/docs/manual/.buildinfo index 700bd39..5e301fa 100644 --- a/docs/manual/.buildinfo +++ b/docs/manual/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 450b6695e9c51c393c691ba688e02b3c +config: d4963122ff51d6bca74c9598f37a0cc1 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/docs/manual/_sources/gettingstartedfast.rst.txt b/docs/manual/_sources/gettingstartedfast.rst.txt index 3e9cc9f..14bf306 100644 --- a/docs/manual/_sources/gettingstartedfast.rst.txt +++ b/docs/manual/_sources/gettingstartedfast.rst.txt @@ -161,20 +161,25 @@ by adding one of the following interfaces to your ``.reticulum/config`` file: .. code:: - # For connecting over TCP/IP: - [[RNS Testnet Frankfurt]] + # TCP/IP interface to the Dublin hub + [[RNS Testnet Dublin]] type = TCPClientInterface - interface_enabled = yes - outgoing = True - target_host = frankfurt.rns.unsigned.io + enabled = yes + target_host = dublin.connect.reticulum.network target_port = 4965 + # TCP/IP interface to the Frankfurt hub + [[RNS Testnet Dublin]] + type = TCPClientInterface + enabled = yes + target_host = frankfurt.connect.reticulum.network + target_port = 5377 - # For connecting over I2P: - [[RNS Testnet I2P Node A]] + # Interface to I2P hub A + [[RNS Testnet I2P Hub A]] type = I2PInterface - interface_enabled = yes - peers = ykzlw5ujbaqc2xkec4cpvgyxj257wcrmmgkuxqmqcur7cq3w3lha.b32.i2p + enabled = yes + peers = uxg5kubabakh3jtnvsipingbr5574dle7bubvip7llfvwx2tgrua.b32.i2p Many other Reticulum instances are connecting to this testnet, and you can also join it via other entry points if you know them. There is absolutely no control over the network diff --git a/docs/manual/_sources/support.rst.txt b/docs/manual/_sources/support.rst.txt index 57949a9..d64d277 100644 --- a/docs/manual/_sources/support.rst.txt +++ b/docs/manual/_sources/support.rst.txt @@ -14,9 +14,7 @@ Donations are gratefully accepted via the following channels: .. code:: text Monero: - 84FpY1QbxHcgdseePYNmhTHcrgMX4nFf - BYtz2GKYToqHVVhJp8Eaw1Z1EedRnKD1 - 9b3B8NiLCGVxzKV17UMmmeEsCrPyA5w + 84FpY1QbxHcgdseePYNmhTHcrgMX4nFfBYtz2GKYToqHVVhJp8Eaw1Z1EedRnKD19b3B8NiLCGVxzKV17UMmmeEsCrPyA5w Ethereum: 0x81F7B979fEa6134bA9FD5c701b3501A2e61E897a diff --git a/docs/manual/_sources/understanding.rst.txt b/docs/manual/_sources/understanding.rst.txt index 568312b..a3e827a 100644 --- a/docs/manual/_sources/understanding.rst.txt +++ b/docs/manual/_sources/understanding.rst.txt @@ -117,29 +117,29 @@ Reticulum uses the singular concept of *destinations*. Any application using Ret networking stack will need to create one or more destinations to receive data, and know the destinations it needs to send data to. -All destinations in Reticulum are represented as a 10 byte hash, derived from truncating a full +All destinations in Reticulum are _represented_ as a 16 byte hash. This hash is derived from truncating a full SHA-256 hash of identifying characteristics of the destination. To users, the destination addresses -will be displayed as 10 bytes in hexadecimal representation, as in the following example: ``<80e29bf7cccaf31431b3>``. +will be displayed as 16 hexadecimal bytes, like this example: ``<13425ec15b621c1d928589718000d814>``. -The truncation size of 10 bytes (80 bits) for destinations has been choosen as a reasonable tradeoff between address space +The truncation size of 16 bytes (128 bits) for destinations has been choosen as a reasonable tradeoff +between address space and packet overhead. The address space accomodated by this size can support many billions of simultaneously active devices on the same network, while keeping packet overhead low, which is essential on low-bandwidth networks. In the very unlikely case that this address space nears congestion, a one-line code change can upgrade the Reticulum address space all the way up to 256 bits, ensuring the Reticulum address space could potentially support galactic-scale networks. -This is obviusly complete and ridiculous over-allocation, and as such, the current 80 bits should +This is obviusly complete and ridiculous over-allocation, and as such, the current 128 bits should be sufficient, even far into the future. By default Reticulum encrypts all data using elliptic curve cryptography. Any packet sent to a destination is encrypted with a derived ephemeral key. Reticulum can also set up an encrypted -channel to a destination with *Forward Secrecy* and *Initiator Anonymity* using a elliptic -curve cryptography and ephemeral keys derived from a Diffie Hellman exchange on Curve25519. In -Reticulum terminology, this is called a *Link*. The multi-hop transport, coordination, verification +channel to a destination, called a *Link*. Both data sent over Links and single packets offer +*Forward Secrecy* and *Initiator Anonymity*, by using an Elliptic Curve Diffie Hellman key exchange +on Curve25519 to derive ephemeral keys. The multi-hop transport, coordination, verification and reliability layers are fully autonomous and also based on elliptic curve cryptography. Reticulum also offers symmetric key encryption for group-oriented communications, as well as -unencrypted packets for broadcast purposes, or situations where you need the communication to be in -plain text. +unencrypted packets for local broadcast purposes. Reticulum can connect to a variety of interfaces such as radio modems, data radios and serial ports, and offers the possibility to easily tunnel Reticulum traffic over IP links such as the Internet or @@ -186,7 +186,7 @@ Destination Naming ^^^^^^^^^^^^^^^^^^ Destinations are created and named in an easy to understand dotted notation of *aspects*, and -represented on the network as a hash of this value. The hash is a SHA-256 truncated to 80 bits. The +represented on the network as a hash of this value. The hash is a SHA-256 truncated to 128 bits. The top level aspect should always be a unique identifier for the application using the destination. The next levels of aspects can be defined in any way by the creator of the application. @@ -202,7 +202,7 @@ application name, a device type and measurement type, like this: aspects : remotesensor, temperature full name : environmentlogger.remotesensor.temperature - hash : fa7ddfab5213f916dea + hash : 4faf1b2e0a077e6a9d92fa051f256038 For the *single* destination, Reticulum will automatically append the associated public key as a destination aspect before hashing. This is done to ensure only the correct destination is reached, @@ -683,7 +683,7 @@ Wire Format A Reticulum packet is composed of the following fields: - [HEADER 2 bytes] [ADDRESSES 10/20 bytes] [CONTEXT 1 byte] [DATA 0-477 bytes] + [HEADER 2 bytes] [ADDRESSES 16/32 bytes] [CONTEXT 1 byte] [DATA 0-465 bytes] * The HEADER field is 2 bytes long. * Byte 1: [IFAC Flag], [Header Type], [Propagation Type], [Destination Type] and [Packet Type] @@ -695,15 +695,15 @@ Wire Format capabilities and configuration. * The ADDRESSES field contains either 1 or 2 addresses. - * Each address is 10 bytes long. + * Each address is 16 bytes long. * The Header Type flag in the HEADER field determines whether the ADDRESSES field contains 1 or 2 addresses. - * Addresses are Reticulum hashes truncated to 10 bytes. + * Addresses are SHA-256 hashes truncated to 16 bytes. * The CONTEXT field is 1 byte. * It is used by Reticulum to determine packet context. - * The DATA field is between 0 and 477 bytes. + * The DATA field is between 0 and 465 bytes. * It contains the packets data payload. IFAC Flag @@ -714,8 +714,8 @@ Wire Format Header Types ----------------- - type 1 0 Two byte header, one 10 byte address field - type 2 1 Two byte header, two 10 byte address fields + type 1 0 Two byte header, one 16 byte address field + type 2 1 Two byte header, two 16 byte address fields Propagation Types @@ -747,7 +747,7 @@ Wire Format HEADER FIELD DESTINATION FIELDS CONTEXT FIELD DATA FIELD _______|_______ ________________|________________ ________|______ __|_ | | | | | | | | - 01010000 00000100 [HASH1, 10 bytes] [HASH2, 10 bytes] [CONTEXT, 1 byte] [DATA] + 01010000 00000100 [HASH1, 16 bytes] [HASH2, 16 bytes] [CONTEXT, 1 byte] [DATA] || | | | | || | | | +-- Hops = 4 || | | +------- Packet Type = DATA @@ -762,7 +762,7 @@ Wire Format HEADER FIELD DESTINATION FIELD CONTEXT FIELD DATA FIELD _______|_______ _______|_______ ________|______ __|_ | | | | | | | | - 00000000 00000111 [HASH1, 10 bytes] [CONTEXT, 1 byte] [DATA] + 00000000 00000111 [HASH1, 16 bytes] [CONTEXT, 1 byte] [DATA] || | | | | || | | | +-- Hops = 0 || | | +------- Packet Type = DATA @@ -777,7 +777,7 @@ Wire Format HEADER FIELD IFAC FIELD DESTINATION FIELD CONTEXT FIELD DATA FIELD _______|_______ ______|______ _______|_______ ________|______ __|_ | | | | | | | | | | - 10000000 00000111 [IFAC, N bytes] [HASH1, 10 bytes] [CONTEXT, 1 byte] [DATA] + 10000000 00000111 [IFAC, N bytes] [HASH1, 16 bytes] [CONTEXT, 1 byte] [DATA] || | | | | || | | | +-- Hops = 0 || | | +------- Packet Type = DATA diff --git a/docs/manual/_sources/using.rst.txt b/docs/manual/_sources/using.rst.txt index 186e64d..9d3c5cf 100644 --- a/docs/manual/_sources/using.rst.txt +++ b/docs/manual/_sources/using.rst.txt @@ -223,7 +223,7 @@ interfaces, similar to the ``ifconfig`` program. Traffic : 8.49 KB↑ 9.23 KB↓ - Reticulum Transport Instance <5245a8efe1788c6a70e1> running + Reticulum Transport Instance <5245a8efe1788c6a1cd36144a270e13b> running .. code:: text @@ -248,10 +248,10 @@ destinations on the Reticulum network. .. code:: text # Run rnpath - rnpath eca6f4e4dc26ae329e61 + rnpath c89b4da064bf66d280f0e4d8abfd9806 # Example output - Path found, destination is 4 hops away via <56b115c30cd386cad69c> on TCPInterface[Testnet/frankfurt.rns.unsigned.io:4965] + Path found, destination is 4 hops away via on TCPInterface[Testnet/frankfurt.connect.reticulu.network:4965] .. code:: text @@ -285,11 +285,11 @@ destinations will not have this option enabled, and will not be probable. .. code:: text # Run rnprobe - rnprobe example_utilities.echo.request 9382f334de63217a4278 + rnprobe example_utilities.echo.request 2d03725b327348980d570f739a3a5708 # Example output - Sent 16 byte probe to <9382f334de63217a4278> - Valid reply received from <9382f334de63217a4278> + Sent 16 byte probe to <2d03725b327348980d570f739a3a5708> + Valid reply received from <2d03725b327348980d570f739a3a5708> Round-trip time is 38.469 milliseconds over 2 hops .. code:: text @@ -319,10 +319,10 @@ files through Reticulum. # Run rncp on the receiving system, specifying which identities # are allowed to send files - rncp --receive -a 940ea3f9e1037d38758f -a e28d5aee4317c24a9041 + rncp --receive -a 1726dbad538775b5bf9b0ea25a4079c8 -a c50cc4e4f7838b6c31f60ab9032cbc62 # From another system, copy a file to the receiving system - rncp ~/path/to/file.tgz 256320d405d6d525d1e9 + rncp ~/path/to/file.tgz 73cbd378bb0286ed11a707c13447bb1e You can specify as many allowed senders as needed, or complete disable authentication. @@ -362,21 +362,21 @@ output. # Run rnx on the listening system, specifying which identities # are allowed to execute commands - rncp --listen -a 8111c4ff2968ab0c1286 -a 590256654482b4ba4038 + rncp --listen -a 941bed5e228775e5a8079fc38b1ccf3f -a 1b03013c25f1c2ca068a4f080b844a10 # From another system, run a command - rnx ad9a4c9da60089d41c29 "cat /proc/cpuinfo" + rnx 7a55144adf826958a9529a3bcf08b149 "cat /proc/cpuinfo" # Or enter the interactive mode pseudo-shell - rnx ad9a4c9da60089d41c29 -x + rnx 7a55144adf826958a9529a3bcf08b149 -x # The default identity file is stored in # ~/.reticulum/identities/rnx, but you can use # another one, which will be created if it does # not already exist - rnx ad9a4c9da60089d41c29 -i /path/to/identity + rnx 7a55144adf826958a9529a3bcf08b149 -i /path/to/identity -x -You can specify as many allowed senders as needed, or complete disable authentication. +You can specify as many allowed senders as needed, or completely disable authentication. .. code:: text diff --git a/docs/manual/_sources/whatis.rst.txt b/docs/manual/_sources/whatis.rst.txt index 8f37ab3..1ba9475 100644 --- a/docs/manual/_sources/whatis.rst.txt +++ b/docs/manual/_sources/whatis.rst.txt @@ -50,7 +50,7 @@ What does Reticulum Offer? * Low cost of keeping links open at only 0.62 bits per second -* Reliable and efficient transfer of arbritrary amounts of data +* Reliable and efficient transfer of arbitrary amounts of data * Reticulum can handle a few bytes of data or files of many gigabytes diff --git a/docs/manual/_static/documentation_options.js b/docs/manual/_static/documentation_options.js index 7e48cb9..c5dd76c 100644 --- a/docs/manual/_static/documentation_options.js +++ b/docs/manual/_static/documentation_options.js @@ -1,6 +1,6 @@ var DOCUMENTATION_OPTIONS = { URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'), - VERSION: '0.3.8 beta', + VERSION: '0.3.9 beta', LANGUAGE: 'None', COLLAPSE_INDEX: false, BUILDER: 'html', diff --git a/docs/manual/examples.html b/docs/manual/examples.html index 09e66b9..87d0b75 100644 --- a/docs/manual/examples.html +++ b/docs/manual/examples.html @@ -5,7 +5,7 @@ - Code Examples — Reticulum Network Stack 0.3.8 beta documentation + Code Examples — Reticulum Network Stack 0.3.9 beta documentation @@ -31,7 +31,7 @@
  • previous |
  • - + @@ -2394,7 +2394,7 @@ interface to efficiently pass files of any size over a Reticulum previous | - + diff --git a/docs/manual/genindex.html b/docs/manual/genindex.html index 4910d95..6251788 100644 --- a/docs/manual/genindex.html +++ b/docs/manual/genindex.html @@ -5,7 +5,7 @@ - Index — Reticulum Network Stack 0.3.8 beta documentation + Index — Reticulum Network Stack 0.3.9 beta documentation @@ -23,7 +23,7 @@
  • index
  • - + @@ -440,7 +440,7 @@
  • index
  • - + diff --git a/docs/manual/gettingstartedfast.html b/docs/manual/gettingstartedfast.html index 1b14410..520b9ba 100644 --- a/docs/manual/gettingstartedfast.html +++ b/docs/manual/gettingstartedfast.html @@ -5,7 +5,7 @@ - Getting Started Fast — Reticulum Network Stack 0.3.8 beta documentation + Getting Started Fast — Reticulum Network Stack 0.3.9 beta documentation @@ -31,7 +31,7 @@
  • previous |
  • - + @@ -164,20 +164,25 @@ easier setup, use TCP.

    Connect to the Public Testnet

    An experimental public testnet has been made accessible over both I2P and TCP. You can join it by adding one of the following interfaces to your .reticulum/config file:

    -
    # For connecting over TCP/IP:
    -[[RNS Testnet Frankfurt]]
    +
    # TCP/IP interface to the Dublin hub
    +[[RNS Testnet Dublin]]
       type = TCPClientInterface
    -  interface_enabled = yes
    -  outgoing = True
    -  target_host = frankfurt.rns.unsigned.io
    +  enabled = yes
    +  target_host = dublin.connect.reticulum.network
       target_port = 4965
     
    +# TCP/IP interface to the Frankfurt hub
    +[[RNS Testnet Dublin]]
    +  type = TCPClientInterface
    +  enabled = yes
    +  target_host = frankfurt.connect.reticulum.network
    +  target_port = 5377
     
    -# For connecting over I2P:
    -[[RNS Testnet I2P Node A]]
    +# Interface to I2P hub A
    +[[RNS Testnet I2P Hub A]]
       type = I2PInterface
    -  interface_enabled = yes
    -  peers = ykzlw5ujbaqc2xkec4cpvgyxj257wcrmmgkuxqmqcur7cq3w3lha.b32.i2p
    +  enabled = yes
    +  peers = uxg5kubabakh3jtnvsipingbr5574dle7bubvip7llfvwx2tgrua.b32.i2p
     

    Many other Reticulum instances are connecting to this testnet, and you can also join it @@ -414,7 +419,7 @@ section of this manual.

  • previous |
  • - +
    diff --git a/docs/manual/hardware.html b/docs/manual/hardware.html index 82ca7d0..8895c60 100644 --- a/docs/manual/hardware.html +++ b/docs/manual/hardware.html @@ -5,7 +5,7 @@ - Communications Hardware — Reticulum Network Stack 0.3.8 beta documentation + Communications Hardware — Reticulum Network Stack 0.3.9 beta documentation @@ -31,7 +31,7 @@
  • previous |
  • - +
    @@ -307,7 +307,7 @@ connectivity for client devices.

  • previous |
  • - + diff --git a/docs/manual/index.html b/docs/manual/index.html index f958bf9..bc0b94e 100644 --- a/docs/manual/index.html +++ b/docs/manual/index.html @@ -5,7 +5,7 @@ - Reticulum Network Stack Manual — Reticulum Network Stack 0.3.8 beta documentation + Reticulum Network Stack Manual — Reticulum Network Stack 0.3.9 beta documentation @@ -27,7 +27,7 @@
  • next |
  • - + @@ -246,7 +246,7 @@ to participate in the development of Reticulum itself.

  • next |
  • - + diff --git a/docs/manual/interfaces.html b/docs/manual/interfaces.html index 984f64f..87b60cf 100644 --- a/docs/manual/interfaces.html +++ b/docs/manual/interfaces.html @@ -5,7 +5,7 @@ - Supported Interfaces — Reticulum Network Stack 0.3.8 beta documentation + Supported Interfaces — Reticulum Network Stack 0.3.9 beta documentation @@ -31,7 +31,7 @@
  • previous |
  • - + @@ -811,7 +811,7 @@ that a large span of network types can seamlessly co-exist and intercon
  • previous |
  • - + diff --git a/docs/manual/networks.html b/docs/manual/networks.html index 13af7dd..c943188 100644 --- a/docs/manual/networks.html +++ b/docs/manual/networks.html @@ -5,7 +5,7 @@ - Building Networks — Reticulum Network Stack 0.3.8 beta documentation + Building Networks — Reticulum Network Stack 0.3.9 beta documentation @@ -16,8 +16,8 @@ - - + + @@ -234,11 +234,11 @@ connected outliers are now an integral part of the network.

    Previous topic

    -

    Using Reticulum on Your System

    -

    Next topic

    Supported Interfaces

    + title="previous chapter">Supported Interfaces

    +

    Next topic

    +

    API Reference

    This Page

    diff --git a/docs/manual/reference.html b/docs/manual/reference.html index 4d87bac..00b2b5c 100644 --- a/docs/manual/reference.html +++ b/docs/manual/reference.html @@ -5,7 +5,7 @@ - API Reference — Reticulum Network Stack 0.3.8 beta documentation + API Reference — Reticulum Network Stack 0.3.9 beta documentation @@ -31,7 +31,7 @@
  • previous |
  • - + @@ -1366,7 +1366,7 @@ will announce it.

  • previous |
  • - + diff --git a/docs/manual/search.html b/docs/manual/search.html index 4433206..431df63 100644 --- a/docs/manual/search.html +++ b/docs/manual/search.html @@ -5,7 +5,7 @@ - Search — Reticulum Network Stack 0.3.8 beta documentation + Search — Reticulum Network Stack 0.3.9 beta documentation @@ -29,7 +29,7 @@
  • index
  • - + @@ -85,7 +85,7 @@
  • index
  • - + diff --git a/docs/manual/searchindex.js b/docs/manual/searchindex.js index aa6a9d5..5cf1357 100644 --- a/docs/manual/searchindex.js +++ b/docs/manual/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["examples","gettingstartedfast","hardware","index","interfaces","networks","reference","support","understanding","using","whatis"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["examples.rst","gettingstartedfast.rst","hardware.rst","index.rst","interfaces.rst","networks.rst","reference.rst","support.rst","understanding.rst","using.rst","whatis.rst"],objects:{"RNS.Destination":{accepts_links:[6,1,1,""],announce:[6,1,1,""],app_and_aspects_from_name:[6,1,1,""],clear_default_app_data:[6,1,1,""],create_keys:[6,1,1,""],decrypt:[6,1,1,""],deregister_request_handler:[6,1,1,""],encrypt:[6,1,1,""],full_name:[6,1,1,""],get_private_key:[6,1,1,""],hash:[6,1,1,""],hash_from_name_and_identity:[6,1,1,""],load_private_key:[6,1,1,""],register_request_handler:[6,1,1,""],set_default_app_data:[6,1,1,""],set_link_established_callback:[6,1,1,""],set_packet_callback:[6,1,1,""],set_proof_requested_callback:[6,1,1,""],set_proof_strategy:[6,1,1,""],sign:[6,1,1,""]},"RNS.Identity":{CURVE:[6,2,1,""],KEYSIZE:[6,2,1,""],TRUNCATED_HASHLENGTH:[6,2,1,""],decrypt:[6,1,1,""],encrypt:[6,1,1,""],from_bytes:[6,1,1,""],from_file:[6,1,1,""],full_hash:[6,1,1,""],get_private_key:[6,1,1,""],get_public_key:[6,1,1,""],get_random_hash:[6,1,1,""],load_private_key:[6,1,1,""],load_public_key:[6,1,1,""],recall:[6,1,1,""],recall_app_data:[6,1,1,""],sign:[6,1,1,""],to_file:[6,1,1,""],truncated_hash:[6,1,1,""],validate:[6,1,1,""]},"RNS.Link":{CURVE:[6,2,1,""],ESTABLISHMENT_TIMEOUT_PER_HOP:[6,2,1,""],KEEPALIVE:[6,2,1,""],KEEPALIVE_TIMEOUT_FACTOR:[6,2,1,""],STALE_GRACE:[6,2,1,""],STALE_TIME:[6,2,1,""],get_remote_identity:[6,1,1,""],identify:[6,1,1,""],inactive_for:[6,1,1,""],no_inbound_for:[6,1,1,""],no_outbound_for:[6,1,1,""],request:[6,1,1,""],set_link_closed_callback:[6,1,1,""],set_packet_callback:[6,1,1,""],set_remote_identified_callback:[6,1,1,""],set_resource_callback:[6,1,1,""],set_resource_concluded_callback:[6,1,1,""],set_resource_started_callback:[6,1,1,""],set_resource_strategy:[6,1,1,""],teardown:[6,1,1,""]},"RNS.Packet":{ENCRYPTED_MDU:[6,2,1,""],PLAIN_MDU:[6,2,1,""],resend:[6,1,1,""],send:[6,1,1,""]},"RNS.PacketReceipt":{get_rtt:[6,1,1,""],get_status:[6,1,1,""],set_delivery_callback:[6,1,1,""],set_timeout:[6,1,1,""],set_timeout_callback:[6,1,1,""]},"RNS.RequestReceipt":{get_progress:[6,1,1,""],get_request_id:[6,1,1,""],get_response:[6,1,1,""],get_response_time:[6,1,1,""],get_status:[6,1,1,""]},"RNS.Resource":{advertise:[6,1,1,""],cancel:[6,1,1,""],get_data_size:[6,1,1,""],get_hash:[6,1,1,""],get_parts:[6,1,1,""],get_progress:[6,1,1,""],get_segments:[6,1,1,""],get_transfer_size:[6,1,1,""],is_compressed:[6,1,1,""]},"RNS.Reticulum":{ANNOUNCE_CAP:[6,2,1,""],MTU:[6,2,1,""],should_use_implicit_proof:[6,1,1,""],transport_enabled:[6,1,1,""]},"RNS.Transport":{PATHFINDER_M:[6,2,1,""],deregister_announce_handler:[6,1,1,""],has_path:[6,1,1,""],hops_to:[6,1,1,""],next_hop:[6,1,1,""],next_hop_interface:[6,1,1,""],register_announce_handler:[6,1,1,""],request_path:[6,1,1,""]},RNS:{Destination:[6,0,1,""],Identity:[6,0,1,""],Link:[6,0,1,""],Packet:[6,0,1,""],PacketReceipt:[6,0,1,""],RequestReceipt:[6,0,1,""],Resource:[6,0,1,""],Reticulum:[6,0,1,""],Transport:[6,0,1,""]}},objnames:{"0":["py","class","Python class"],"1":["py","method","Python method"],"2":["py","attribute","Python attribute"]},objtypes:{"0":"py:class","1":"py:method","2":"py:attribute"},terms:{"0":[0,4,6,8,9,10],"00":[8,9],"000":[],"00000000":8,"00000100":8,"00000111":8,"01":8,"01010000":8,"02":[],"05":0,"07":[],"0x81f7b979fea6134ba9fd5c701b3501a2e61e897a":7,"1":[0,4,6,8,9],"10":[4,8,9],"100":[0,4,8],"1000":0,"10000000":8,"1024":0,"11":8,"115200":[4,9],"12":4,"1200":8,"125":4,"125000":4,"127":4,"128":[6,8,10],"13":9,"14":8,"141":[],"15":4,"150":[4,9],"150m":4,"151":8,"16":[4,9],"17":9,"18":[],"180":[],"182":[],"187":9,"2":[0,4,6,8,9],"20":[4,8,9],"200":[4,9],"2000000":[],"205":[],"211":[],"23":9,"237":[8,10],"24":4,"240":[],"24ghz":[],"25":[0,3,10],"255":4,"256":[6,8],"256320d405d6d525d1e9":9,"27":9,"270":[],"2f":0,"3":[0,4,8,9,10],"30":9,"323":[],"33":8,"34":[],"360":6,"3600":[0,4],"367":[],"37":[],"37428":9,"37429":9,"38":9,"383":6,"3cpmacgm34qyvr6xwlvejmi2ane3pzquuq":7,"3e12fc71692f8ec47bc5":1,"3w3lha":[],"4":[6,8,9],"409":[],"4242":4,"430":8,"45":0,"460":[],"464":6,"469":9,"476":[],"477":8,"48555":4,"49":9,"49555":4,"4965":[1,9],"5":[0,4,6,9],"500":[6,8,10],"5001":4,"507":6,"512":[4,6,8],"5245a8efe1788c6a70e1":9,"55":4,"56b115c30cd386cad69c":9,"5757":4,"590256654482b4ba4038":9,"5urvjicpzi7q3ybztsef4i5ow2aq4soktfj7zedz53s47r54jnqq":4,"6":9,"60":0,"600":4,"62":[8,10],"63":9,"64":[8,9],"7":[4,9],"72":4,"720":6,"7200":4,"74":9,"77":8,"7c565719ec7a8cdb1fe2":[],"7ca6f4e4dc26ae329e61":[],"8":[0,4,9],"80":[8,9],"8001":4,"80e29bf7cccaf31431b3":8,"8111c4ff2968ab0c1286":9,"83":[8,9],"84fpy1qbxhcgdseepynmhthcrgmx4nff":7,"86":9,"867":4,"867200000":4,"868":8,"88":4,"9":9,"900":8,"9382f334de63217a4278":9,"940ea3f9e1037d38758f":9,"95":8,"9b3b8nilcgvxzkv17ummmeescrpya5w":7,"\u00ec2pd":[],"abstract":8,"break":[6,8,10],"byte":[0,6,8,9,10],"case":[1,2,4,5,8,9],"class":[0,3,5,10],"default":[0,1,2,4,5,6,8,9],"do":[0,1,2,4,6,8,10],"export":1,"final":[6,8],"float":[0,6],"function":[0,1,2,3,4,5,6,7,9,10],"import":[0,1,2,4,5,7,8],"int":0,"long":[0,1,2,4,8],"new":[0,4,5,6,8,9],"public":[0,3,4,6],"return":[0,6,9],"short":[2,8,9],"static":6,"switch":[4,8],"throw":[],"true":[0,1,4,6,9],"try":[0,3,4],"while":[0,1,2,4,5,6,8,10],A:[0,1,4,5,6,8,9,10],And:0,As:[1,2,4,5,6,8,10],At:[5,8],Be:[6,9],But:8,By:[0,1,4,6,8,9],For:[1,2,4,5,6,8,10],IF:[],IN:[0,6],If:[0,1,2,4,5,6,8,9,10],In:[0,1,2,4,5,6,8,9,10],It:[0,1,2,4,6,8,9,10],No:[1,4,8,9,10],On:[0,1,4,9],One:[2,6],Or:[4,9,10],That:8,The:[0,1,2,3,4,5,6,10],Then:1,There:[1,5,8,10],These:[1,4,8,9],To:[0,1,2,4,5,8,9,10],Will:6,With:[3,4,5,8,9],_:8,__:8,______:8,_______:8,________:8,________________:8,__init__:0,__main__:0,__name__:0,_exit:0,_imag:[],_other_:[],_with_:[],aarch64:1,ab:0,abil:[1,2],abl:[0,1,4,5,6,8,9],about:[0,1,2,4,5,6,8],abov:[1,2,4,8,9],absolut:[1,2,7,10],abund:2,accept:[6,7,8,9],accept_al:[0,6],accept_app:6,accept_non:6,accepts_link:6,access:[1,3,4,5,6,9],access_point:4,accomod:8,accord:8,accordingli:0,acheiv:[4,8],achiev:[6,8],acknowledg:10,across:[2,5],act:[1,6,8,9],action:0,activ:[0,1,4,6,8],actor:8,actual:[0,1,4,8],ad9a4c9da60089d41c29:9,ad:[0,2,3,4,5,6,8,10],adapt:5,add:[0,1,4,5,9],add_argu:0,addit:[1,2,4,8,9,10],additio:[],addition:4,addr1:[],addr2:[],address:[0,1,4,5,6,8,10],adher:6,admin:4,administr:9,adress:[0,1,5,6,8,10],advanc:8,advantag:6,adversari:1,advertis:[0,6],advis:8,ae:[8,10],affect:4,after:[0,4,5,6,8,9],again:[1,4,8,9],against:8,agenc:8,agent:8,agnost:[5,8],agnostic:8,aim:[3,8],air:[2,10],airmax:2,airtim:4,aliv:[6,8],all:[0,1,2,3,4,5,6,7,8,9,10],allevi:2,alloc:[4,6,8,9],allow:[0,1,2,4,5,6,8,9,10],allow_al:[0,6],allow_list:6,allow_non:6,allowed_hash:9,allowed_list:6,almost:[2,4,8,9],alo:8,alon:4,along:[4,5,8],alreadi:[0,1,2,5,8,9],als:[],also:[0,1,2,4,5,6,8,9,10],alter:8,altern:[0,4,9],although:[8,10],alwai:[1,4,6,8,9],amateur:[4,10],amet:[],amount:[4,5,6,8,10],an:[0,1,2,4,5,6,8,9,10],analyt:7,android:3,ani:[0,1,2,4,5,6,7,8,9,10],annouce_cap:4,announc:[3,6,9],announce_cap:[4,6],announce_handl:0,announce_rate_grac:4,announce_rate_penalti:4,announce_rate_target:4,announced_ident:[0,6],announceloop:0,announcesampl:0,announec:[],anonym:[1,5,6,8,10],anoth:[1,6,8,9],answer:[8,9],antenna:2,anymor:1,anyon:[0,1,2,5,6,8,9],anyth:[4,8,9,10],anywher:[0,4],ap:4,apart:[],api:[1,3,8,10],apk:1,app:[0,1,6,8],app_and_aspects_from_nam:6,app_data:[0,6],app_nam:[0,6],app_timeout:0,append:[0,8],appli:[6,8],applic:[0,4,5,6,8,9],approach:[2,8,9],approv:8,approxim:[],apt:1,ar:[0,1,2,4,5,6,7,8,9,10],arbitrari:[6,8],arbritrari:10,architectur:1,area:[2,4,5,8,10],arg:0,argon:0,argpars:0,argument:[0,6,9],argumentpars:0,arm64:3,around:8,arriv:[0,8],ask:[0,2,6],aspect:[0,2,4,6,8],aspect_filt:[0,6],assign:[8,9],associ:[1,6,8],assum:[4,8],asymmetr:[8,10],atmega1284p:2,attached_interfac:[],attack:1,attempt:[2,6],attribut:6,audit:10,auth:9,authent:[1,4,5,6,8,9,10],author:8,auto:[1,2,3,6,8],auto_compress:6,autoconfigur:[4,10],autodiscov:4,autoinstal:2,autointerfac:[1,2,4,9],autom:[2,7,8],automat:[0,1,2,4,5,6,8,9,10],autonom:[5,8],autoomat:0,avail:[0,1,2,4,5,6,8,9,10],availadbl:[],averag:8,avoid:[2,8,9],avr:2,awai:[0,4,5,8,9],awar:8,ax25kissinterfac:4,ax:[3,10],b32:[1,4],b:[0,5,9],back:[0,4,8,10],backbon:2,backend:8,background:[1,4],backhaul:[2,5],balanc:4,band:[2,8],bandwidth:[1,4,5,6,8,10],bare:0,barrier:8,base32:4,base:[3,4,5,6,8,9,10],basi:[4,6,8,9,10],basic:[0,1,3,6,9],baud:4,beacon:4,beam:[],becaus:[5,8],becki:0,becom:[0,1,5,8],been:[0,1,2,4,5,6,8,10],befor:[0,1,4,6,8,9],begin:[0,2,6],begun:6,behalf:4,behav:2,behaviour:[4,9],behind:[1,8],being:[4,6,8],beings:8,belief:8,below:[1,2,4,9],benefici:[4,9],best:[1,8,10],beta:10,better:4,between:[0,4,5,6,8],bgp:[],bi:8,bidirect:8,billion:[5,8],bin:9,binari:[0,1,8],bind:4,bit:[4,6,8,9,10],bitcoin:7,bitrat:4,blob:[0,8],block:4,board:[1,3,8,10],board_tbeam_alt:[],boil:2,boot:9,both:[1,2,4,5,6,8,9,10],boundari:4,box:2,bp:[],breviti:9,bridg:[2,3],briefli:8,bring:4,broad:2,broadcast:[1,3,4,6,8],broadcast_destin:0,broadcastloop:0,broader:[],brought:[4,9],browser:1,buffer:4,bug:10,build:[0,1,2,3,4,8,10],built:[1,4,8,10],bundl:0,bytz2gkytoqhvvhjp8eaw1z1eedrnkd1:7,c:[0,5],cabl:5,cad:[],calcul:[6,8],call:[0,5,6,8,10],callabl:6,callback:[0,6],callsign:4,can:[0,1,2,3,4,5,6,7,8,9],cancel:6,candid:5,cannot:[0,1],cap:4,capabl:8,capac:[2,4,6,8],carambola:0,care:[1,2,6,10],carefulli:1,cargo_build_target:1,carri:[4,6,8,9],carrier:[5,10],cat:9,categori:2,caution:4,caveat:3,cb:8,cbc:[8,10],cd:1,cdma:4,censor:8,censorship:8,central:[2,5,8],centralis:8,certain:[0,4,5,7,8],chain:4,challeng:8,chanc:2,chang:[0,1,4,6,8,9,10],channel:[0,4,5,7,8,10],channelarg:0,chapter:[1,2,4,5,8,9,10],charact:0,characterist:8,cheap:[2,8],cheapli:1,check:[0,1,6,8],checksum:[6,10],choos:[0,1,4,8],choosen:8,chose:8,chosen:5,chunk:0,ciphertext:6,ciphertext_token:6,circumst:[7,8],cl:0,clear:[0,6,8],clear_default_app_data:6,clear_screen:0,client:[0,1,2,3,6],client_connect:0,client_disconnect:0,client_ident:0,client_loop:0,client_packet_receiv:0,client_request:0,clone:1,close:[0,5,6,9],closed_callback:6,closer:8,closest:8,cluster:8,co:[2,4,10],code:[1,2,3,4,9],codingr:4,collect:7,com:[0,1,7],combin:[1,3,5,8],come:[1,8],comma:4,command:[0,1,4,9],comment:[4,9],common:[2,3,5,8,9,10],commonli:2,commun:[0,1,3,4,5,6,7,8,9,10],compat:[1,2,4,6,8],compil:1,complet:[0,1,2,4,5,6,8,9,10],complex:[4,8],compon:[2,7,8],compos:8,compress:[0,6,8],comput:[1,8,10],concaten:6,conceiv:2,concept:[3,8,9],conceptu:8,conclud:[0,6],concurr:[2,8,9],condit:8,config:[0,1,2,5,9],configarg:0,configdir:6,configpath:0,configur:[0,1,2,3,4,5,6,8,10],confirm:[8,10],confus:[2,8],congest:8,conjunct:4,connect:[0,2,3,4,5,6,8,9,10],consequ:8,conserv:4,consid:[2,6,8,10],consider:[],consist:8,constant:6,constantli:8,construct:8,consumpt:[],contact:8,contain:[0,5,6,8,9],contend:8,content:[1,5,9],context:8,contin:4,continu:[7,10],contribut:3,control:[0,1,2,3,5,6,8],conveni:0,convent:0,converg:[3,8],coordin:[5,6,8,10],copi:9,core:[5,8,10],correct:[0,8],correctli:0,correspond:8,cost:[2,8,10],could:[0,1,4,5,6,8,10],count:8,counter:0,cours:[4,8],cover:[2,8,10],coverag:5,cpu:[0,8],cpuinfo:9,creat:[0,3,4,5,6,8,9,10],create_kei:6,create_receipt:[0,6],creation:8,creator:8,critic:[8,9],cryptograph:[1,3,5,10],cryptographi:[1,8,10],ctrl:0,cull:6,current:[0,1,2,3,4,6,8],current_download:0,current_filenam:0,curv:[5,6,8,10],curve25519:[5,6,8,10],custom:[1,4,6,8,10],custom_network_nam:4,customis:4,d:[5,9],daemon:[1,4,6,9],dai:5,data:[0,1,3,4,5,6,8,10],data_port:4,databit:[4,9],date:[0,1],db:0,dbm:[0,4],de:[],debian:[8,9],debug:9,decad:2,decai:[],decid:[5,6,8],decis:[4,8],decod:0,decreas:9,decrypt:[6,8],dedic:[4,8],deep:1,def:0,default_timeout:[],defin:[0,4,8,9],definit:8,degrad:5,degre:4,delai:[1,4,8,9],deliv:[0,6],deliveri:[0,1,6,10],demand:6,demonstr:[0,4],depend:[1,2,5,6,8,9],deploi:8,deregist:6,deregister_announce_handl:6,deregister_request_handl:6,deriv:[8,10],describ:[4,6,8],descript:[0,9],design:[1,2,5,8,10],desir:[0,2,4,8],dest_len:0,destin:[0,1,3,4,5,9],destination_1:0,destination_2:0,destination_clos:0,destination_hash:[0,6,9],destination_hexhash:0,detail:[0,1,3,4,6,9,10],detect:0,determin:[1,6,8],dev:[1,4,9],develop:[2,3,7,8,10],devic:[1,2,3,4,5,6,8,9],dh:6,dhcp:[2,4,9],did:0,differ:[0,1,2,4,5,6,8,9,10],diffi:[5,8,10],difficult:[1,2],digit:[1,2,8,10],dir:0,direct:[0,1,2,5,6,8,9],directli:[2,4,6,8,9,10],directori:[0,9],disabl:[4,8,9],disable_encrypt:[],disappear:[4,9],disassoci:8,discard:8,disconnect:0,discov:[1,4],discover:4,discoveri:[4,8,9],discovery_port:4,discovery_scop:4,discrimin:5,discuss:[1,2,8],disk:[0,6],displai:[0,8],dissolv:5,distanc:[2,8],distant:6,distinct:[4,8],distinguish:8,distribut:[0,1,5,6,8,9],divid:6,divmod:0,dn:2,document:8,doe:[0,1,2,3,4,5,6,8,9],doesn:4,dolor:[],domain:[1,4],don:[0,1,2,5,6,9],donat:3,done:[0,1,4,5,8,9],dori:5,dot:[8,9],down:[0,2,4,6],downgrad:[],download:[0,4,9],download_began:0,download_conclud:0,download_finish:0,download_start:0,download_tim:0,driver:[9,10],droid:1,drop:[6,8,9],due:5,duplex:[8,10],dynam:[1,9],dysfunct:7,e28d5aee4317c24a9041:9,e702c42ba8:9,e:[0,5],each:[0,1,4,5,8,9],earli:[1,2],earlier:8,eas:[4,8],easi:[1,2,4,8,9,10],easier:[1,4,5,9],easiest:[1,2,4,8],easili:[1,4,5,8,9,10],eca6f4e4dc26ae329e61:9,ecdh:[8,10],echo:[1,3,9],echo_destin:0,echo_request:0,ed25519:[8,10],edit:[1,9],effeci:[],effect:4,effici:[0,1,4,8,10],effort:2,ei:0,either:[2,4,5,8,9],elaps:4,elif:0,ellipt:[5,6,8,10],els:[0,5,8],emploi:[2,8],emptor:3,emul:1,enabl:[1,2,4,5,6,8,9],enable_transport:[8,9],encapsul:[4,10],encod:0,encrypt:[0,1,5,6,8,10],encrypted_mdu:6,encryptionless:[],end:[0,4,5,6,8,10],endless:4,endpoint:[0,5,6,8],energi:1,enforc:4,engin:[],enhanc:8,enough:[1,2,8],ensur:[4,6,8],enter:[0,9],entir:[5,8,9],entiti:8,entri:[0,1,8],enumer:0,environ:[1,5,8],environment:8,environmentlogg:8,eof:4,ephemer:[5,6,8,10],equal:[5,8],equip:[4,5,8],equival:4,equl:[],error:[0,1,7,9],esp32:2,especi:[2,4],essenti:[1,4,8],establish:[0,1,4,5,6,10],established_callback:6,establishment_timeout_per_hop:6,etc:9,eth0:4,eth1:4,ethereum:7,ethernet:[1,2,4,5,8,10],even:[1,2,4,5,8,9,10],event:4,eventu:6,everi:[0,4,5,6,8],everyon:[5,8],everyth:[0,5,8],evolv:5,exact:[2,4,8],exactli:[6,8],exampl:[1,2,3,4,6,8,9,10],example_util:[0,9],exampleannouncehandl:0,exampleconfig:9,exce:[0,4,6],except:[0,4],excess:4,exchang:[5,6,8,10],exclud:8,execstart:9,execstartpr:9,execut:[0,1,4,6,9],exhaust:[2,8],exist:[0,1,2,4,8,9,10],exit:[0,1,6,9],exit_handl:0,expand:8,expect:[0,4,6,8,9],expens:2,experi:[1,8],experiment:[1,2,10],expir:4,expiri:4,explain:[2,6],explan:[8,9],explicit:6,explicitli:[],explor:[0,8,10],expos:[4,6],extend:[0,1,6],extern:[1,4,6,10],extra:[1,4,5,9],extrem:[1,8,9,10],f:1,fa7ddfab5213f916dea:8,face:[1,4],fact:10,factor:[4,6],fail:[0,6],failed_callback:[0,6],failur:[1,4],fals:[0,4,6,9],far:[5,8],fashion:7,fast:[3,4,6,8],faster:[1,4,8],fastest:[4,8],featur:[1,7,8,10],feed:6,feedback:[0,3],feel:1,fernet:[8,10],few:[1,2,4,5,8,9,10],fewer:6,fi:7,fibr:10,field:8,file:[0,1,2,4,5,6,8,9,10],file_resourc:0,file_s:0,filelist:0,filelist_data:0,filelist_receiv:0,filelist_timeout_job:0,filenam:0,filetransf:[1,3,6],filter:[0,5,8],find:[5,8],firewal:[1,4],firmwar:[1,2,8],first:[0,1,4,6,8,9],fit:0,five:0,fix:[3,8],flag:[6,8],flexibl:[2,4,10],flow:[4,5],flow_control:4,flush:0,folder:1,follow:[0,1,2,4,7,8,9,10],forcibl:[6,9],foreground:1,foremost:10,form:[1,4,5,6,8],format:[0,3,10],forth:0,forward:[4,6,8,10],forward_ip:4,forward_port:4,found:[0,1,4,5,8,9],four:5,frame:4,frankfurt:[1,9],free:[5,7,10],freedom:8,freeli:8,frequenc:[2,4,8],frequent:4,friendli:10,from:[0,1,2,4,5,6,8,9,10],from_byt:6,from_fil:6,fromhex:0,fruit:0,ftdi_ft230x_basic_uart_43891ckm:9,full:[0,4,6,8,9,10],full_hash:6,full_nam:[6,9],fulli:[2,8,10],funcion:[2,6],fundament:[2,8],further:[1,3,4],furthermor:[],futur:[5,8],g:0,ga:0,gain:[2,8],galact:8,gatekeep:8,gatewai:[1,4,5,8],gbp:9,gen:[],gener:[0,1,2,4,5,6,8,9,10],generalis:10,geograph:5,get:[0,2,3,4,6,10],get_data_s:6,get_hash:6,get_packet_rssi:0,get_packet_snr:0,get_part:6,get_private_kei:6,get_progress:[0,6],get_public_kei:6,get_random_hash:[0,6],get_remote_ident:[0,6],get_request_id:6,get_respons:6,get_response_tim:6,get_rtt:[0,6],get_seg:6,get_statu:6,get_transfer_s:6,geti2p:4,ghz:8,gi:0,gigabyt:10,gipsum:[],git:1,github:[0,1,7],give:[4,8,9],given:[4,5,6,8,9],global:[0,1,4,5,8,10],glue:2,go:[0,1,4,8],goal:[3,4],good:[2,5,8,9],got:0,got_respons:0,govern:8,grace:6,gracefulli:4,grape:0,graphic:1,gratefulli:7,great:8,greater:8,greatli:4,group:[4,6,8],group_id:4,grow:5,growth:3,guarante:[1,8],guess:4,guid:[1,2,6,8],gw:4,h:[1,9],ha:[0,1,2,4,5,6,8,10],hack:10,had:8,half:[8,10],hand:[0,1],handheld:8,handl:[0,2,4,5,6,8,9,10],handler:[0,6],happen:[0,6,8],hard:2,hardlin:5,hardwar:[1,3,4,5,6,8,9,10],has_path:[0,6],hasattr:0,hash1:8,hash2:8,hash:[0,1,6,8,9],hash_from_name_and_ident:6,hashlib:8,hashmap:0,have:[0,1,2,4,5,6,8,9],hazard:6,head:1,header:8,header_1:8,header_2:8,header_typ:[],hear:8,heard:[6,8],helium:0,hellman:[5,8,10],help:[0,2,5,7,8,9,10],heltec:[],her:5,here:[0,1,2,4,8,9],hex:0,hexadecim:[0,8,9],hide:1,high:[2,4,8,10],higher:[5,10],highli:8,hill:5,hint:0,hit:0,hkdf:8,hmac:[8,10],hoc:10,hold:[6,8],home:5,homebrew:4,hop:[4,5,6,8,9,10],hops_to:6,host:[0,1,4,8,9],hostnam:4,hour:[0,4],how:[0,1,2,4,5,8,10],howev:[1,5,8],http:[0,1,7],hub:4,huge:[],human:[0,6,7,8],hungri:2,i2p:[1,3,10],i2p_tunnel:4,i2pd:[1,4],i2pinterfac:[1,4],i:[0,9],ic:2,id:[2,4,6,8,9],id_callsign:4,id_interv:4,idea:[8,9],ideal:10,ident:[0,1,3,9,10],identif:[3,4,10],identifi:[0,4,6,8,9],identify:8,identifyexampl:0,ie:9,if00:9,ifac:[8,9],ifac_s:4,ifconfig:9,ignor:[4,6,8],ignored_devic:4,illustr:[5,8],imag:[],immedi:[1,4,9],impact:[4,8],implement:[0,4,5,6,7,8,10],implic:4,implicit:[6,8],imposs:8,improv:[3,4,7],inactive_for:6,inbound:[4,6],includ:[0,2,3,4,6,8],incom:[0,4,6,9],incompat:[6,8],increas:[4,9],incred:[],incur:4,indefinit:[],independ:[6,8],independt:10,index:[0,1,3],indirectli:8,individu:[6,8],inevit:8,infer:8,info:[6,8,9],inform:[0,1,3,4,5,6,8,9],infrastructur:[1,2,4,5,8,9],ingo:6,initi:[0,5,6,8,10],initialis:[0,6,9],input:[0,9],insert:8,insid:8,inspect:[1,4,5,8],instal:[1,3,4,5,8,9,10],instanc:[0,3,4,6,8,9],instance_control_port:9,instanti:6,instead:[0,1,4,8,9],integr:[1,5,8],intend:[5,8],intention:8,inter:6,interact:[0,1,6,8,9],interchang:4,interconnect:[3,4,8],interest:8,interfac:[0,2,3,5,6,9],interface_en:[1,4,9],interface_mod:[],intermediari:8,intermitt:4,intern:[4,6,8],internet:[3,4,8,10],interoper:[1,2,5,8,10],interv:[4,6],intiat:0,introduc:8,introduct:3,intuit:10,invalid:[0,6],invers:8,investig:5,invis:[1,4],involv:5,io:[1,2,9],iot:2,ip:[1,2,4,8,9,10],ipsum:[],ipv6:[4,9],is_compress:6,is_connected_to_shared_inst:0,is_request:[],is_respons:[],isdir:0,isfil:0,island:5,ism:[2,8],isol:[4,9],issu:[5,7],its:[2,4,6,8],itself:[2,3,8],iv:10,job:0,join:[0,1,5,7,8],jpg:[],just:[0,1,2,4,5,8,10],k:0,kb:9,kbp:9,keep:[0,5,6,8,9,10],keepal:[6,8],keepalive_timeout_factor:6,kei:[0,3,5,6,10],kept:[4,5,6,8],kernel:[4,9,10],keyboardinterrupt:0,keyerror:6,keypair:8,keysiz:6,keystor:5,khz:4,ki:0,kill:[6,8],kilomet:[],kind:[2,4,5,8],kiss:[2,3,9,10],kiss_fram:4,kissinterfac:[4,9],know:[0,1,2,5,6,8],knowledg:[5,8],known:[0,6,8,9],ko:7,krypton:0,l:[4,9],lack:8,laid:8,lan:4,larg:[0,2,4,5,6,8,10],larger:[5,8],laser:4,last:[0,4,6],last_unit:0,latenc:[1,8,10],later:[0,1,4],latest:[0,1,4],latest_client_link:0,launch:[1,9],lavg:[],layer:[2,4,5,8,10],lead:8,leak:1,learn:[0,1,7,8],least:[2,4,8,9,10],leav:[5,8],ledger:8,left:[4,6,8,9],legaci:5,len:0,length:[0,4,6,8],less:[4,8,10],let:[0,1,4,5,8,9],level:[2,4,8,9],libffi:1,librari:1,licens:8,light:9,like:[1,2,4,5,6,8,9,10],lilygo:[],limit:[2,5,8],line:[0,1,2,4,5,8,10],link:[2,3,4,5,9,10],link_clos:0,link_establish:0,linkexampl:0,linux:[1,8],list:[0,1,2,4,6,8,10],list_deliv:0,list_fil:0,list_packet:0,list_receipt:0,list_timeout:0,listdir:0,listen:[0,4,8,9],listen_ip:4,listen_port:4,littl:[2,8],lki:8,lkr:8,ll:[0,1,10],ln:[1,9],load:[0,1,6,9],load_private_kei:6,load_public_kei:6,local:[0,1,4,5,6,8,9,10],locat:[1,2,5,8,9],log:[0,4,9],log_error:0,log_info:0,loglevel:[0,6,9],longer:[0,5,8,9],longest:4,look:[0,1,4,8,9],loop:0,lora32:[],lora:[1,2,3,8,10],lorawan:[2,8],lorem:[],loss:8,lot:8,low:[1,2,4,5,8,10],lower:[1,4,9],ltu:2,lxmf:1,m:[0,1,8,9],mac:8,machin:8,maco:1,made:[1,6,8],mai:[1,4,6,8,9],main:0,mainli:5,maintain:8,make:[1,2,4,7,8,9],malici:8,manag:[1,5,6,8,9],mani:[0,1,2,4,5,6,8,9,10],manipul:8,manner:5,manual:[0,1,4,5,6,9],manufactur:2,mark:[6,8],market:[],markqvist:[0,1,7],master:[0,6],match:[0,4,8],matter:[1,4],max:9,maximum:[4,6,8],mbp:9,mcu:[],mdu:0,mean:[2,4,5,8,9],measur:8,mechan:[3,4],medium:[2,4,5,6,8,10],member:5,memori:8,mention:[4,8],menu:0,menu_mod:0,mesh:[1,4,5,10],messag:[0,1,6,8,9],messeng:8,metadata:1,metavar:0,method:[0,1,4,6,8],methodolog:[8,9],mhz:[4,8],mi:0,microcontrol:8,microwav:[],might:[1,4,5,8,9],mikrotik:2,millimet:2,millisecond:[0,9],mind:[5,10],minim:[2,3,8],minimalsampl:0,minimum:[0,4,5,8],minut:[0,1,4,8],mirror:9,mix:[1,4,5,9],mobil:[4,8],mode:[0,1,2,3,8,9,10],modem:[2,4,5,6,8,10],moder:4,modern:[2,8],modifi:[8,9],modul:[0,1,2,8,9,10],moment:[8,10],momentarili:4,monero:7,monitor:8,moon:0,mor:[],more:[1,2,4,5,6,8,9,10],morej:[],most:[1,2,4,5,8,9],mostli:[4,5,8],motiv:3,move:[1,4,8],mqtt:[],mtu:[6,8,10],much:[1,4,5,8,9],multi:[8,9,10],multicast:4,multilater:8,multipl:[0,4,5,8,9],multipoint:8,must:[0,1,4,5,6,8],mw:4,my:8,mycal:4,myriad:8,n:[0,8,9],name:[0,3,4,5,6],namespac:0,nano:1,narg:0,nat:1,natur:4,nearbi:4,nears:8,necesarri:[4,5],necessari:[1,2,4,6,8],necessarili:8,need:[0,1,2,3,4,5,6,8,9,10],neglig:8,neither:8,neon:0,net:4,netcat:4,netifac:1,network:[0,2,4,6,8,9,10],network_nam:4,never:[4,6,8],newer:8,newest:[2,8],newli:[5,8],next:[1,5,6,8],next_hop:6,next_hop_interfac:6,nicknam:8,no1cll:4,no_inbound_for:6,no_outbound_for:6,noauth:9,nobl:0,noble_ga:0,noble_gas:0,node:[1,3,4,5,9,10],nodet:[],noid:9,nomad:3,nomadnet:1,non:[1,6,8],none:[0,4,6,8,9],normal:[0,4,6],notat:[8,9],note:[0,1,2,4,6,8,9],noth:[2,10],notic:[8,9],notif:[0,6],now:[0,1,5,8,9],nt:0,num:0,number:[0,1,4,5,6,8,9],obfusc:[],object:6,obscur:1,obtain:[2,8],obviusli:8,occasion:1,occur:[9,10],off:[8,10],offer:[1,3,4,6,8],offlin:1,often:[1,4,5,8,9],oganesson:0,old:[2,7,8],on_interfac:6,onc:[0,1,2,4,5,6,8,9,10],one:[0,1,2,4,5,6,8,9,10],ones:[4,9],oneself:8,onli:[0,1,2,4,5,6,8,9,10],onlin:[],onto:8,open:[0,2,4,5,6,7,8,9,10],openmodem:[4,10],openssl:[1,8],oper:[2,4,5,6,8,9,10],opposit:4,opt:8,optic:10,optim:5,optimis:[],option:[0,1,2,3,5,6,8,9],order:9,orem:[],organ:5,organis:[4,5,7],orient:8,origin:[0,5,8],original_hash:[],os:[0,4,8,9,10],ospf:[],other:[1,2,4,5,6,8,9],otherwis:6,our:[0,8],out:[0,1,2,4,5,6,8,9,10],outbound:[6,8],outgo:[0,1,4,6,8,9],outli:5,outlier:5,outlin:[1,2,8],output:[4,9],outward:[],over:[0,2,3,4,6,8,9,10],overal:8,overcom:8,overhead:[2,4,8],overrid:0,oversight:8,overview:[3,4,8],overwhelm:[4,6],own:[0,1,5,6,8,9],owner:[],p:[0,9],pack:0,packag:[1,4,8],packb:0,packet:[0,1,2,3,4,5,9,10],packet_callback:0,packet_deliv:0,packet_hash:0,packet_receipt:[0,6],packet_timed_out:0,packet_typ:[],packetreceipt:[0,6],pad:[8,10],page:[1,3,8],pair:[4,8],palm:[],panic:9,panic_on_interface_error:9,parallel:1,paramet:[2,4,5,6,8],pariti:[4,9],pars:0,parse_arg:0,parser:0,part:[0,4,5,6,8],particip:[3,5,8],particular:2,pass:[0,2,4,5,6,8,9],passphras:[4,8],past:[],path:[0,1,2,4,6,8,9],path_respons:6,pathfind:[],pathfinder_m:6,pattern:[2,8],payload:[6,8],peach:0,peer:[0,1,4,6,8,9],peer_pub_byt:[],peer_sig_pub_byt:[],penalti:4,peopl:8,per:[4,6,8,10],percent:0,percentag:6,perfect:[],perfectli:1,perform:[0,1,4,5,8],period:[4,6,8],perman:9,permissionless:8,persecut:8,persist:[4,9],person:8,perspect:[4,8],pet:0,philosophi:8,physic:[1,2,4,8,9],pi:[0,5,8,9,10],pick:8,piec:8,ping:[1,9],pip3:[1,2,9],pip:[1,2,9],pipe:[3,10],pipeinterfac:[2,4],pkcs7:[8,10],pkg:1,place:[5,8,9],plaform:2,plain:[0,4,6,8],plain_mdu:6,plaintext:[0,6],plan:[5,8],platform:[1,2,8],pleas:[0,1,4,6,9,10],plenti:8,plu:[],plug:9,pmr:8,point:[1,2,4,5,8,9],pomelo:0,poorli:5,popular:10,port0:9,port:[2,3,4,5,8,10],portabl:[4,8],pose:8,posit:9,possess:8,possibl:[1,2,4,5,6,8,10],potenti:[0,4,7,8,9],power:[1,2,4,8],practic:[8,10],pre:[1,2,6,8],preambl:[4,9],precompil:1,predict:8,prefer:[1,8],prepar:[0,5],prerequisit:6,presenc:6,preserv:[1,6],preshar:8,press:0,pretend:8,pretti:8,prettyhexrep:0,previou:0,previous:[5,6,8],primari:8,primit:[1,3],principl:[8,10],print:[0,4,9],print_filelist:0,print_help:0,print_menu:0,prioriti:8,prioritis:[3,4,5,6],privaci:10,privat:[1,4,6,7,8,10],privileg:9,probabl:[0,5,8,9,10],probe:9,problem:8,proc:9,procedur:8,process:[1,2,4,6,8],produc:2,product:[],program:[0,3,4,6,8,10],program_setup:0,programm:8,programmat:8,progress:[0,6,10],progress_callback:6,project:1,prompt:0,proof:[0,6,8,9],proof_packet:0,proof_requested_callback:6,proof_strategi:6,propag:[3,4,6],properli:[],properti:[5,6],proport:8,propos:1,protocol:[1,2,3,4,10],prove:[0,8],prove_al:[0,6],prove_app:6,prove_non:6,proven:[6,8],provid:[0,1,2,3,4,5,6,8,10],provis:2,prv_byte:6,pseudo:9,pub_byt:6,public_inform:0,publicli:1,purchas:[1,5,8,10],pure:[3,8],purg:6,purpos:[1,2,4,6,8],purposefulli:[],put:[0,2,4],py:[0,1,8],pyca:[1,8],pyseri:1,python3:[1,2],python:[3,8,9,10],q:[0,9],queri:[0,1,6],question:[2,4],queu:[6,9],queue:[4,8],quickli:[7,8,10],quiet:[4,9],quinc:0,quit:0,r:[0,4,8,9],radio:[2,3,4,5,6,8,9,10],radiu:[],radon:0,rais:[0,6],ram:4,rand:[],randint:0,random:[0,6,8],random_text_gener:0,randomis:8,randomli:[0,8],rang:[0,1,2,4,5,8,9,10],rapidli:4,rare:[1,4],raspberri:[5,8,9,10],rate:[0,3,9],rather:1,raw:2,rb:0,re:[0,4,6,8],reach:[3,4,5],reachabl:[0,1,4,5,6,8,9],read:[0,1,4,8,9],readabl:[0,6,8],readi:[0,1,2,4,5,6,10],readili:10,real:[2,5,10],realiti:7,realli:[4,6],reappear:4,reason:[4,8],reassembl:8,reboot:1,recal:[0,6],recall_app_data:6,recap:8,receipt:[0,3,8],receiv:[0,1,4,6,8,9],received_announc:[0,6],recent:8,reception_rssi:0,reception_snr:0,reception_stat:0,recip:1,recipi:8,recommend:[0,1,2,8],reconstruct:8,record:[1,8],recoveri:4,recreat:8,recurs:6,refer:[0,1,3],regard:8,regist:[0,6],register_announce_handl:[0,6],register_request_handl:[0,6],rel:[2,8,10],relai:1,relat:1,releas:[1,2,4,8],relev:[0,2,4,6,8,9],reli:[7,8],reliabl:[2,4,5,8,10],rem:0,remain:[4,6,8],rememb:8,remot:[0,6,9],remote_ident:[0,6],remote_identifi:0,remote_identity_hash:[],remote_p:0,remotesensor:8,remov:9,render:1,repeat:1,replac:[1,8,9],repli:[0,9],replic:[2,8],reply_data:0,reply_text:0,report:[4,7],repositori:[1,7,8],repres:8,represent:[0,8],request:[3,4,8,9],request_destin:0,request_fail:0,request_id:[0,6],request_packet:0,request_path:[0,6],request_receipt:[0,6],request_receiv:0,requested_at:[0,6],requestexampl:0,requestor:4,requestreceipt:6,requir:[0,1,4,5,8,9,10],research:10,resend:6,reserv:8,resid:4,resili:10,resolv:4,resourc:[0,1,3,7],resource_callback:6,resource_sending_conclud:0,resource_strategi:6,respawn:4,respawn_delai:4,respawn_interv:4,respect:4,respond:[0,6],respons:[3,6,8],response_callback:[0,6],response_gener:[0,6],response_tim:[],rest:[5,10],restart:9,restartsec:9,restor:4,restrict:5,result:[0,8,9],retain:4,reticulum:[0,4,5],retiiculum:[],retransmiss:8,retransmit:8,retri:8,reveal:[1,6,8,10],review:[8,10],ridicul:8,right:[4,5],risk:8,rn:[0,1,6,8,9],rncp:3,rnode:[1,3,8,9,10],rnodeconf:2,rnodeinterfac:[2,4,9],rnpath:[1,3,4],rnprobe:[1,3],rnsconfig:1,rnsd:[1,3],rnspure:1,rnstatu:[1,3,4,8],rnx:3,roadmap:7,roam:4,robot:8,rotat:8,round:[0,6,9],rout:[1,4,5,6,8,9,10],routabl:[],router:[4,9],rprogress:0,rsa:[],rssi:0,rtt:[0,6,8],rttstring:0,rule:[3,4],run:[0,1,2,4,5,6,8,9,10],runtim:8,rust:1,rw:[],rx:4,s:[0,1,4,5,8,9,10],said:8,same:[1,2,4,5,6,8,9],satisfi:8,save:[6,8],save_error:0,saved_filenam:0,scalabl:10,scale:8,scan:4,scenario:[1,3,8],schedul:6,scheme:2,scope:4,scratch:2,screen:0,script:[1,2],scrutini:8,seamlessli:4,search:3,second:[0,4,6,8,9,10],secreci:[6,8,10],section:[1,2,4,5,8,9],secur:[1,8,10],see:[0,1,4,5,6,8,9,10],seek:8,seen:[4,8],segment:[4,5,6,8,10],segment_index:[],select:[0,4],self:[0,5,10],semtech:2,send:[0,4,6,8,9],sender:[0,1,5,8,9],sendig:0,sensibl:[1,2],sensor:8,sent:[0,1,6,8,9],sentiment:8,separ:[1,4,5,8,9],sequenc:[0,6,8,10],seri:2,serial:[1,2,3,8,10],serialinterfac:4,serv:[0,2,4,5,8,9],serve_path:0,server:[0,1,2,3,9],server_callback:0,server_destin:0,server_fil:0,server_ident:0,server_link:0,server_loop:0,server_packet_receiv:0,servic:[1,3,5],session:8,set:[0,1,2,4,5,6,8,9,10],set_default_app_data:6,set_delivery_callback:[0,6],set_link_closed_callback:[0,6],set_link_established_callback:[0,6],set_packet_callback:[0,6],set_proof_requested_callback:6,set_proof_strategi:[0,6],set_remote_identified_callback:[0,6],set_resource_callback:6,set_resource_concluded_callback:[0,6],set_resource_started_callback:[0,6],set_resource_strategi:[0,6],set_timeout:[0,6],set_timeout_callback:[0,6],setdaemon:0,setup:[0,1,3,4],sever:[1,5,6,9],sha256:10,sha:[6,8],shall:8,share:[1,5,6,8,9],share_inst:9,shared_instance_port:9,she:5,shelf:[8,10],shell:9,shop:0,shorter:4,shortest:8,shorthand:[4,9],should:[0,1,2,4,5,6,8,9,10],should_allow_unencrypt:[],should_quit:0,should_use_implicit_proof:6,show:9,shown:0,side:[4,10],sideband:3,sight:5,sign:[6,8],signatur:[6,8,10],significantli:4,similar:[1,2,4,5,9,10],simpl:[0,2,8,9,10],simpler:4,simplest:[4,8],simpli:[0,1,2,4,5,8,9],simplic:8,simplyequip:2,simultan:8,sinc:[0,1,4,5,6,8],singl:[0,4,6,8,9,10],singular:8,sit:[],site:[3,4],situat:[1,2,4,5,8],size:[0,1,4,6,8,9],size_str:0,sleep:[0,9],slice:0,slightli:1,slottim:[4,9],slow:[0,4,8],slower:[4,6,8],small:[0,4,5,8,10],smaller:6,snr:0,so:[0,1,2,4,5,6,7,8,10],socket:9,softwar:[1,2,4,8,10],sold:[],solut:8,solv:8,some:[0,1,2,4,5,8,9],someon:[1,4],someth:8,somethign:0,sometim:2,soon:6,sort:[4,8],soundmodem:4,sourc:[0,1,2,5,8,10],space:[0,1,2,5,8,10],spam:4,span:[4,8],special:[8,9],specif:[0,2,3,4,6,10],specifi:[0,1,2,4,5,6,9],spectrum:[4,8],speed:[4,8,9],split:0,sponsor:[7,10],spread:4,spreadingfactor:4,squelch:4,ssid:4,stabil:2,stabl:[8,10],stack:[0,1,5,8,9,10],stage:[1,8],stai:[0,8,9],stale:6,stale_grac:6,stale_tim:6,staletim:[],standard:[1,2,8],start:[0,2,3,4,6,8,9],startlimitintervalsec:[],startup:0,state:0,station:4,stationari:[5,9],statist:[0,4,7],statu:[0,1,3,4,6,8,9],stderr:9,stdin:[4,9],stdio:10,stdout:[0,4,9],step:[1,2],still:[0,1,2,5,8],stock:0,stop:10,stopbit:[4,9],store:[0,2,8,9],store_tru:0,str:0,strategi:[4,6],stream:8,strength:10,strictli:[4,8],string:[0,6],strong:8,structur:8,subject:[],subnet:[1,5],subsequ:8,succe:1,successful:6,successfulli:0,sucessfulli:8,sudo:[1,9],suffic:8,suffici:[1,4,8,9],suffix:0,suggest:7,suit:[1,2,8,9],suitabl:[0,1,4,5,8,10],suppli:[5,6,8],supplier:[1,3],support:[0,1,3,5,8,10],sure:[1,2,9],surveil:8,surviv:8,sx1276:2,sy:0,symlink:[1,9],symmetr:[6,8],system:[0,1,2,3,4,5,6,7,8,10],systemctl:9,systemd:9,t:[0,1,4,5,6,9],tabl:[1,4,5,8,9],tag:6,tail:4,tailor:8,take:[0,1,4,8,9,10],taken:[0,8],tangerin:0,target:[0,4,9],target_host:[1,4],target_port:[1,4],task:9,tcp:[1,2,3,5,8,10],tcpclientinterfac:[1,2,4],tcpinterfac:9,tcpserverinterfac:[1,4],tdata:0,teach:9,teardown:[0,6],teardown_reason:0,teffect:0,telemetli:7,tell:[0,4],temperatur:8,ten:8,tend:4,term:[5,8],termin:[1,6],terminolog:[5,8],termux:1,test:[1,2,8],testnet:[3,9],text:[0,1,5,8],tfile:0,tgz:9,than:[0,1,4,5,8],thei:[0,1,4,5,6,8,9],them:[0,1,2,4,5,7,8,9],thereaft:8,therefor:[8,10],thi:[0,1,2,3,4,5,6,8,9,10],thing:1,think:1,those:[5,8],though:[1,2,4,8],thourough:10,thousand:8,thread:0,three:[5,8],throough:4,throttl:5,through:[1,2,4,5,6,8,9,10],throughout:8,throughput:[8,10],thu:[5,6,8],ti:[0,8],time:[0,1,2,4,5,6,8,9],timeout:[0,6,9],timeout_callback:[],timeoutarg:0,timestr:0,tnc:[4,6,9,10],to_fil:6,todai:8,todo:[],togeth:[2,8,9],token:[6,8],toler:4,too:[0,5],tool:[2,8,9,10],top:[5,8],topic:8,topographi:[1,5,8],topolog:[4,8],torn:6,total:[6,8,10],total_s:0,touch:[2,10],toward:[0,4,8],tradeoff:8,tradit:[5,8],traffic:[0,1,4,5,6,8,9],tramsit:[],transceiv:[1,2,4,8,10],transfer:[0,6,8,9,10],transfer_s:0,transform:10,transmiss:[1,4,6,8],transmit:[0,4,8],transpar:[2,4,8,9],transpor:[],transport:[0,1,3,4,5,9,10],transport_en:6,transport_id:[],transport_typ:[],travers:8,treat:8,tri:0,trip:[0,6,9],trivial:[8,10],truli:[2,8],truncat:[6,8],truncated_hash:6,truncated_hashlength:[0,6],trust:8,trustless:[5,8,10],ttime:0,ttransfer:0,ttyusb0:[4,9],ttyusb1:4,ttyusb2:4,tun0:4,tune:[],tunnel:[4,8,10],tupl:6,turn:9,turnaround:4,tutori:1,two:[0,1,2,4,5,8],tx:4,txpower:4,txtail:[4,9],type:[0,1,3,4,5,6,9],typeerror:6,ubiqu:2,ubuntu:9,udp:[3,5,8,9,10],udpinterfac:4,uhf:[9,10],ultim:8,umsgpack:0,uncencrypt:0,uncensor:1,under:[7,9],underli:[5,10],understand:[1,3,9],unencrypt:[0,6,8],unequivoc:8,unexplor:5,unforg:10,unidentifi:0,unifi:5,uninterest:0,uniqu:[8,10],unit:[0,1,9],unknown:[0,4,6,8],unless:[1,4,6,8],unlicens:8,unlik:8,unorganis:5,unpack:0,unpackb:0,unplug:9,unrecover:9,unreli:4,unsign:[1,9],unsupport:6,until:[0,4,6],unus:9,unusu:1,unwant:8,up:[0,1,2,4,5,8,9,10],updat:[0,1,6,8],upgrad:[1,8],upkeep:4,upon:[0,8],upset:0,urandom:10,us:[0,2,3,4,5,6,7,8],usabl:8,usag:[1,3,4,7,9],usb:[5,8,9],useabl:8,user:[0,1,4,5,8,9],user_input:0,userland:10,usernameher:9,usr:9,utf:0,util:[0,2,3,4,8],utilis:[1,5,9,10],v1:[],v2:[],v:9,valid:[0,4,6,8,9],valu:[4,6,8],valuabl:[2,7],valueerror:[0,6],vari:[8,9],variabl:0,varieti:[4,8,9,10],variou:[0,1,4,5,8],vast:8,ve:1,vehicl:4,vendor:[0,2],verbos:9,veri:[1,2,4,5,6,7,8,9,10],verif:[6,8],verifi:[0,6,8],versa:[5,10],version:[2,8,9],vhf:[5,8,10],via:[1,2,4,7,8,9,10],vice:[5,10],view:[1,4,8,9],violat:4,virtual:[4,5,8,9,10],visibl:0,w:9,wa:[0,2,4,5,6,8,10],wai:[0,1,4,5,8],wait:[0,4,8,9],want:[0,1,2,4,5,8,9,10],wantedbi:9,warn:9,warrant:10,wast:4,wave:2,wb:0,we:[0,1,2,4,7,8],websit:4,weight:9,welcom:1,well:[1,2,4,5,6,8,10],went:0,were:5,what:[0,1,3,6,8],whatev:[6,8],wheel:1,when:[0,1,2,4,5,6,8,9],whenev:[6,8],where:[1,2,3,4,5,6,8,9],whereupon:8,whether:[0,4,6,8],which:[0,1,4,5,6,8,9],who:[1,8],wide:[1,2,4,8,10],wider:[1,4,8,9],wifi:[1,3,4,5,8,9,10],wildcard:0,willing:5,window:[],wire:[1,2,3,4,10],wireless:[2,5],wish:[8,9],within:[0,1,4,5,6,8],without:[1,2,5,8,10],wlan0:4,won:0,work:[1,2,4,5,8,9,10],world:[2,5,10],worri:5,would:[1,4,5,6,8],write:[0,1,4,6,8],written:8,wrong:[0,4],x22519:8,x25519:[6,8,10],x:[8,9],xenon:0,y:0,ye:[1,4,8,9],year:8,yet:[0,4,8],yi:0,ykzlw5ujbaqc2xkec4cpvgyxj257wcrmmgkuxqmqcur7cq3w3lha:1,you:[0,1,2,3,4,5,6,7,8,9,10],your:[0,1,2,3,4,5,7,8,10],yourself:[1,8,10],z:0,zero:[6,10],zeromq:[],zi:0},titles:["Code Examples","Getting Started Fast","Communications Hardware","Reticulum Network Stack Manual","Supported Interfaces","Building Networks","API Reference","Support Reticulum","Understanding Reticulum","Using Reticulum on Your System","What is Reticulum?"],titleterms:{"0":2,"1":2,"2":[],"25":4,"4":[],"class":6,"function":8,"public":[1,8],"try":1,The:[8,9],With:1,access:8,ad:1,android:1,announc:[0,4,8],api:6,arm64:1,auto:4,ax:4,base:[1,2],basic:8,beam:2,binari:[],board:2,bridg:5,broadcast:0,build:5,can:10,caveat:10,client:4,code:[0,7,8],combin:2,common:4,commun:2,concept:5,configur:9,connect:1,contribut:7,control:4,converg:5,creat:[1,2],cryptograph:8,current:10,data:9,deliveri:[],destin:[6,8],detail:8,develop:1,devic:10,doe:10,donat:7,echo:0,emptor:10,establish:8,exampl:[0,5],fast:1,feedback:7,filetransf:0,fix:9,format:8,further:8,get:[1,8],gipsum:[],goal:8,growth:5,hardwar:2,heltec:2,i2p:4,ident:[6,8],identif:0,improv:9,includ:[1,9],indic:3,instal:2,instanc:1,interconnect:5,interfac:[1,4,8,10],internet:[1,5],introduct:8,kei:8,kiss:4,lilygo:2,link:[0,6,8],lora32:2,lora:[4,5],manual:3,mechan:8,minim:0,mode:4,motiv:8,name:[8,9],network:[1,3,5],node:8,nomad:1,offer:10,option:4,orem:[],origin:[],over:[1,5],overview:5,packet:[6,8],particip:1,pathfind:[],pipe:4,port:9,predict:[],primit:8,prioritis:8,program:[1,9],propag:8,protocol:8,proven:[],provid:7,pure:1,python:1,radio:1,rate:4,reach:8,receipt:6,refer:[6,8],request:[0,6],resourc:[6,8],respons:0,reticulum:[1,2,3,6,7,8,9,10],retiiculum:[],rncp:9,rnode:[2,4],rnpath:9,rnprobe:9,rnsd:9,rnstatu:9,rnx:9,rule:8,run:[],scenario:5,serial:[4,9],server:4,servic:9,setup:8,sideband:1,site:5,specif:8,stack:3,start:1,statu:10,step:[],supplier:2,support:[2,4,7],system:9,t:2,tabl:3,tcp:4,testnet:1,transport:[6,8],type:[2,8,10],udp:4,understand:8,unsign:2,us:[1,9,10],usag:2,util:[1,9],v1:2,v2:2,virtual:[],what:10,where:10,wifi:2,wire:8,x:2,your:9}}) \ No newline at end of file +Search.setIndex({docnames:["examples","gettingstartedfast","hardware","index","interfaces","networks","reference","support","understanding","using","whatis"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["examples.rst","gettingstartedfast.rst","hardware.rst","index.rst","interfaces.rst","networks.rst","reference.rst","support.rst","understanding.rst","using.rst","whatis.rst"],objects:{"RNS.Destination":{accepts_links:[6,1,1,""],announce:[6,1,1,""],app_and_aspects_from_name:[6,1,1,""],clear_default_app_data:[6,1,1,""],create_keys:[6,1,1,""],decrypt:[6,1,1,""],deregister_request_handler:[6,1,1,""],encrypt:[6,1,1,""],full_name:[6,1,1,""],get_private_key:[6,1,1,""],hash:[6,1,1,""],hash_from_name_and_identity:[6,1,1,""],load_private_key:[6,1,1,""],register_request_handler:[6,1,1,""],set_default_app_data:[6,1,1,""],set_link_established_callback:[6,1,1,""],set_packet_callback:[6,1,1,""],set_proof_requested_callback:[6,1,1,""],set_proof_strategy:[6,1,1,""],sign:[6,1,1,""]},"RNS.Identity":{CURVE:[6,2,1,""],KEYSIZE:[6,2,1,""],TRUNCATED_HASHLENGTH:[6,2,1,""],decrypt:[6,1,1,""],encrypt:[6,1,1,""],from_bytes:[6,1,1,""],from_file:[6,1,1,""],full_hash:[6,1,1,""],get_private_key:[6,1,1,""],get_public_key:[6,1,1,""],get_random_hash:[6,1,1,""],load_private_key:[6,1,1,""],load_public_key:[6,1,1,""],recall:[6,1,1,""],recall_app_data:[6,1,1,""],sign:[6,1,1,""],to_file:[6,1,1,""],truncated_hash:[6,1,1,""],validate:[6,1,1,""]},"RNS.Link":{CURVE:[6,2,1,""],ESTABLISHMENT_TIMEOUT_PER_HOP:[6,2,1,""],KEEPALIVE:[6,2,1,""],KEEPALIVE_TIMEOUT_FACTOR:[6,2,1,""],STALE_GRACE:[6,2,1,""],STALE_TIME:[6,2,1,""],get_remote_identity:[6,1,1,""],identify:[6,1,1,""],inactive_for:[6,1,1,""],no_inbound_for:[6,1,1,""],no_outbound_for:[6,1,1,""],request:[6,1,1,""],set_link_closed_callback:[6,1,1,""],set_packet_callback:[6,1,1,""],set_remote_identified_callback:[6,1,1,""],set_resource_callback:[6,1,1,""],set_resource_concluded_callback:[6,1,1,""],set_resource_started_callback:[6,1,1,""],set_resource_strategy:[6,1,1,""],teardown:[6,1,1,""]},"RNS.Packet":{ENCRYPTED_MDU:[6,2,1,""],PLAIN_MDU:[6,2,1,""],resend:[6,1,1,""],send:[6,1,1,""]},"RNS.PacketReceipt":{get_rtt:[6,1,1,""],get_status:[6,1,1,""],set_delivery_callback:[6,1,1,""],set_timeout:[6,1,1,""],set_timeout_callback:[6,1,1,""]},"RNS.RequestReceipt":{get_progress:[6,1,1,""],get_request_id:[6,1,1,""],get_response:[6,1,1,""],get_response_time:[6,1,1,""],get_status:[6,1,1,""]},"RNS.Resource":{advertise:[6,1,1,""],cancel:[6,1,1,""],get_data_size:[6,1,1,""],get_hash:[6,1,1,""],get_parts:[6,1,1,""],get_progress:[6,1,1,""],get_segments:[6,1,1,""],get_transfer_size:[6,1,1,""],is_compressed:[6,1,1,""]},"RNS.Reticulum":{ANNOUNCE_CAP:[6,2,1,""],MTU:[6,2,1,""],should_use_implicit_proof:[6,1,1,""],transport_enabled:[6,1,1,""]},"RNS.Transport":{PATHFINDER_M:[6,2,1,""],deregister_announce_handler:[6,1,1,""],has_path:[6,1,1,""],hops_to:[6,1,1,""],next_hop:[6,1,1,""],next_hop_interface:[6,1,1,""],register_announce_handler:[6,1,1,""],request_path:[6,1,1,""]},RNS:{Destination:[6,0,1,""],Identity:[6,0,1,""],Link:[6,0,1,""],Packet:[6,0,1,""],PacketReceipt:[6,0,1,""],RequestReceipt:[6,0,1,""],Resource:[6,0,1,""],Reticulum:[6,0,1,""],Transport:[6,0,1,""]}},objnames:{"0":["py","class","Python class"],"1":["py","method","Python method"],"2":["py","attribute","Python attribute"]},objtypes:{"0":"py:class","1":"py:method","2":"py:attribute"},terms:{"0":[0,4,6,8,9,10],"00":[8,9],"000":[],"00000000":8,"00000100":8,"00000111":8,"01":8,"01010000":8,"02":[],"05":0,"07":[],"0x81f7b979fea6134ba9fd5c701b3501a2e61e897a":7,"1":[0,4,6,8,9],"10":[4,8,9],"100":[0,4,8],"1000":0,"10000000":8,"1024":0,"11":8,"115200":[4,9],"12":4,"1200":8,"125":4,"125000":4,"127":4,"128":[6,8,10],"13":9,"13425ec15b621c1d928589718000d814":8,"14":8,"141":[],"15":4,"150":[4,9],"150m":4,"151":8,"16":[4,8,9],"17":9,"1726dbad538775b5bf9b0ea25a4079c8":9,"18":[],"180":[],"182":[],"187":9,"1b03013c25f1c2ca068a4f080b844a10":9,"2":[0,4,6,8,9],"20":[4,9],"200":[4,9],"2000000":[],"205":[],"211":[],"23":9,"237":[8,10],"24":4,"240":[],"24ghz":[],"25":[0,3,10],"255":4,"256":[6,8],"256320d405d6d525d1e9":[],"27":9,"270":[],"2d03725b327348980d570f739a3a5708":9,"2f":0,"3":[0,4,8,9,10],"30":9,"32":8,"323":[],"33":8,"34":[],"360":6,"3600":[0,4],"367":[],"37":[],"37428":9,"37429":9,"38":9,"383":6,"3cpmacgm34qyvr6xwlvejmi2ane3pzquuq":7,"3e12fc71692f8ec47bc5":1,"3w3lha":[],"4":[6,8,9],"409":[],"4242":4,"430":8,"45":0,"460":[],"464":6,"465":8,"469":9,"476":[],"477":[],"48555":4,"49":9,"49555":4,"4965":[1,9],"4faf1b2e0a077e6a9d92fa051f256038":8,"5":[0,4,6,9],"500":[6,8,10],"5001":4,"507":6,"512":[4,6,8],"5245a8efe1788c6a1cd36144a270e13b":9,"5245a8efe1788c6a70e1":[],"5377":1,"55":4,"56b115c30cd386cad69c":[],"5757":4,"590256654482b4ba4038":[],"5urvjicpzi7q3ybztsef4i5ow2aq4soktfj7zedz53s47r54jnqq":4,"6":9,"60":0,"600":4,"62":[8,10],"63":9,"64":[8,9],"7":[4,9],"72":4,"720":6,"7200":4,"73cbd378bb0286ed11a707c13447bb1":9,"74":9,"77":8,"7a55144adf826958a9529a3bcf08b149":9,"7c565719ec7a8cdb1fe2":[],"7ca6f4e4dc26ae329e61":[],"8":[0,4,9],"80":9,"8001":4,"80e29bf7cccaf31431b3":[],"8111c4ff2968ab0c1286":[],"83":[8,9],"84fpy1qbxhcgdseepynmhthcrgmx4nff":[],"84fpy1qbxhcgdseepynmhthcrgmx4nffbytz2gkytoqhvvhjp8eaw1z1eedrnkd19b3b8nilcgvxzkv17ummmeescrpya5w":7,"86":9,"867":4,"867200000":4,"868":8,"88":4,"9":9,"900":8,"9382f334de63217a4278":[],"940ea3f9e1037d38758f":[],"941bed5e228775e5a8079fc38b1ccf3f":9,"95":8,"9b3b8nilcgvxzkv17ummmeescrpya5w":[],"\u00ec2pd":[],"abstract":8,"break":[6,8,10],"byte":[0,6,8,9,10],"case":[1,2,4,5,8,9],"class":[0,3,5,10],"default":[0,1,2,4,5,6,8,9],"do":[0,1,2,4,6,8,10],"export":1,"final":[6,8],"float":[0,6],"function":[0,1,2,3,4,5,6,7,9,10],"import":[0,1,2,4,5,7,8],"int":0,"long":[0,1,2,4,8],"new":[0,4,5,6,8,9],"public":[0,3,4,6],"return":[0,6,9],"short":[2,8,9],"static":6,"switch":[4,8],"throw":[],"true":[0,4,6,9],"try":[0,3,4],"while":[0,1,2,4,5,6,8,10],A:[0,1,4,5,6,8,9,10],And:0,As:[1,2,4,5,6,8,10],At:[5,8],Be:[6,9],But:8,By:[0,1,4,6,8,9],For:[1,2,4,5,6,8,10],IF:[],IN:[0,6],If:[0,1,2,4,5,6,8,9,10],In:[0,1,2,4,5,6,8,9,10],It:[0,1,2,4,6,8,9,10],No:[1,4,8,9,10],On:[0,1,4,9],One:[2,6],Or:[4,9,10],That:8,The:[0,1,2,3,4,5,6,10],Then:1,There:[1,5,8,10],These:[1,4,8,9],To:[0,1,2,4,5,8,9,10],Will:6,With:[3,4,5,8,9],_:8,__:8,______:8,_______:8,________:8,________________:8,__init__:0,__main__:0,__name__:0,_exit:0,_imag:[],_other_:[],_represented_:8,_with_:[],aarch64:1,ab:0,abil:[1,2],abl:[0,1,4,5,6,8,9],about:[0,1,2,4,5,6,8],abov:[1,2,4,8,9],absolut:[1,2,7,10],abund:2,accept:[6,7,8,9],accept_al:[0,6],accept_app:6,accept_non:6,accepts_link:6,access:[1,3,4,5,6,9],access_point:4,accomod:8,accord:8,accordingli:0,acheiv:[4,8],achiev:[6,8],acknowledg:10,across:[2,5],act:[1,6,8,9],action:0,activ:[0,1,4,6,8],actor:8,actual:[0,1,4,8],ad9a4c9da60089d41c29:[],ad:[0,2,3,4,5,6,8,10],adapt:5,add:[0,1,4,5,9],add_argu:0,addit:[1,2,4,8,9,10],additio:[],addition:4,addr1:[],addr2:[],address:[0,1,4,5,6,8,10],adher:6,admin:4,administr:9,adress:[0,1,5,6,8,10],advanc:8,advantag:6,adversari:1,advertis:[0,6],advis:8,ae:[8,10],affect:4,after:[0,4,5,6,8,9],again:[1,4,8,9],against:8,agenc:8,agent:8,agnost:[5,8],agnostic:8,aim:[3,8],air:[2,10],airmax:2,airtim:4,aliv:[6,8],all:[0,1,2,3,4,5,6,7,8,9,10],allevi:2,alloc:[4,6,8,9],allow:[0,1,2,4,5,6,8,9,10],allow_al:[0,6],allow_list:6,allow_non:6,allowed_hash:9,allowed_list:6,almost:[2,4,8,9],alo:8,alon:4,along:[4,5,8],alreadi:[0,1,2,5,8,9],als:[],also:[0,1,2,4,5,6,8,9,10],alter:8,altern:[0,4,9],although:[8,10],alwai:[1,4,6,8,9],amateur:[4,10],amet:[],amount:[4,5,6,8,10],an:[0,1,2,4,5,6,8,9,10],analyt:7,android:3,ani:[0,1,2,4,5,6,7,8,9,10],annouce_cap:4,announc:[3,6,9],announce_cap:[4,6],announce_handl:0,announce_rate_grac:4,announce_rate_penalti:4,announce_rate_target:4,announced_ident:[0,6],announceloop:0,announcesampl:0,announec:[],anonym:[1,5,6,8,10],anoth:[1,6,8,9],answer:[8,9],antenna:2,anymor:1,anyon:[0,1,2,5,6,8,9],anyth:[4,8,9,10],anywher:[0,4],ap:4,apart:[],api:[1,3,8,10],apk:1,app:[0,1,6,8],app_and_aspects_from_nam:6,app_data:[0,6],app_nam:[0,6],app_timeout:0,append:[0,8],appli:[6,8],applic:[0,4,5,6,8,9],approach:[2,8,9],approv:8,approxim:[],apt:1,ar:[0,1,2,4,5,6,7,8,9,10],arbitrari:[6,8,10],arbritrari:[],architectur:1,area:[2,4,5,8,10],arg:0,argon:0,argpars:0,argument:[0,6,9],argumentpars:0,arm64:3,around:8,arriv:[0,8],ask:[0,2,6],aspect:[0,2,4,6,8],aspect_filt:[0,6],assign:[8,9],associ:[1,6,8],assum:[4,8],asymmetr:[8,10],atmega1284p:2,attached_interfac:[],attack:1,attempt:[2,6],attribut:6,audit:10,auth:9,authent:[1,4,5,6,8,9,10],author:8,auto:[1,2,3,6,8],auto_compress:6,autoconfigur:[4,10],autodiscov:4,autoinstal:2,autointerfac:[1,2,4,9],autom:[2,7,8],automat:[0,1,2,4,5,6,8,9,10],autonom:[5,8],autoomat:0,avail:[0,1,2,4,5,6,8,9,10],availadbl:[],averag:8,avoid:[2,8,9],avr:2,awai:[0,4,5,8,9],awar:8,ax25kissinterfac:4,ax:[3,10],b32:[1,4],b:[0,5,9],back:[0,4,8,10],backbon:2,backend:8,background:[1,4],backhaul:[2,5],balanc:4,band:[2,8],bandwidth:[1,4,5,6,8,10],bare:0,barrier:8,base32:4,base:[3,4,5,6,8,9,10],basi:[4,6,8,9,10],basic:[0,1,3,6,9],baud:4,beacon:4,beam:[],becaus:[5,8],becki:0,becom:[0,1,5,8],been:[0,1,2,4,5,6,8,10],befor:[0,1,4,6,8,9],begin:[0,2,6],begun:6,behalf:4,behav:2,behaviour:[4,9],behind:[1,8],being:[4,6,8],beings:8,belief:8,below:[1,2,4,9],benefici:[4,9],best:[1,8,10],beta:10,better:4,between:[0,4,5,6,8],bgp:[],bi:8,bidirect:8,billion:[5,8],bin:9,binari:[0,1,8],bind:4,bit:[4,6,8,9,10],bitcoin:7,bitrat:4,blob:[0,8],block:4,board:[1,3,8,10],board_tbeam_alt:[],boil:2,boot:9,both:[1,2,4,5,6,8,9,10],boundari:4,box:2,bp:[],breviti:9,bridg:[2,3],briefli:8,bring:4,broad:2,broadcast:[1,3,4,6,8],broadcast_destin:0,broadcastloop:0,broader:[],brought:[4,9],browser:1,buffer:4,bug:10,build:[0,1,2,3,4,8,10],built:[1,4,8,10],bundl:0,bytz2gkytoqhvvhjp8eaw1z1eedrnkd1:[],c50cc4e4f7838b6c31f60ab9032cbc62:9,c89b4da064bf66d280f0e4d8abfd9806:9,c:[0,5],cabl:5,cad:[],calcul:[6,8],call:[0,5,6,8,10],callabl:6,callback:[0,6],callsign:4,can:[0,1,2,3,4,5,6,7,8,9],cancel:6,candid:5,cannot:[0,1],cap:4,capabl:8,capac:[2,4,6,8],carambola:0,care:[1,2,6,10],carefulli:1,cargo_build_target:1,carri:[4,6,8,9],carrier:[5,10],cat:9,categori:2,caution:4,caveat:3,cb:8,cbc:[8,10],cd:1,cdma:4,censor:8,censorship:8,central:[2,5,8],centralis:8,certain:[0,4,5,7,8],chain:4,challeng:8,chanc:2,chang:[0,1,4,6,8,9,10],channel:[0,4,5,7,8,10],channelarg:0,chapter:[1,2,4,5,8,9,10],charact:0,characterist:8,cheap:[2,8],cheapli:1,check:[0,1,6,8],checksum:[6,10],choos:[0,1,4,8],choosen:8,chose:8,chosen:5,chunk:0,ciphertext:6,ciphertext_token:6,circumst:[7,8],cl:0,clear:[0,6,8],clear_default_app_data:6,clear_screen:0,client:[0,1,2,3,6],client_connect:0,client_disconnect:0,client_ident:0,client_loop:0,client_packet_receiv:0,client_request:0,clone:1,close:[0,5,6,9],closed_callback:6,closer:8,closest:8,cluster:8,co:[2,4,10],code:[1,2,3,4,9],codingr:4,collect:7,com:[0,1,7],combin:[1,3,5,8],come:[1,8],comma:4,command:[0,1,4,9],comment:[4,9],common:[2,3,5,8,9,10],commonli:2,commun:[0,1,3,4,5,6,7,8,9,10],compat:[1,2,4,6,8],compil:1,complet:[0,1,2,4,5,6,8,9,10],complex:[4,8],compon:[2,7,8],compos:8,compress:[0,6,8],comput:[1,8,10],concaten:6,conceiv:2,concept:[3,8,9],conceptu:8,conclud:[0,6],concurr:[2,8,9],condit:8,config:[0,1,2,5,9],configarg:0,configdir:6,configpath:0,configur:[0,1,2,3,4,5,6,8,10],confirm:[8,10],confus:[2,8],congest:8,conjunct:4,connect:[0,2,3,4,5,6,8,9,10],consequ:8,conserv:4,consid:[2,6,8,10],consider:[],consist:8,constant:6,constantli:8,construct:8,consumpt:[],contact:8,contain:[0,5,6,8,9],contend:8,content:[1,5,9],context:8,contin:4,continu:[7,10],contribut:3,control:[0,1,2,3,5,6,8],conveni:0,convent:0,converg:[3,8],coordin:[5,6,8,10],copi:9,core:[5,8,10],correct:[0,8],correctli:0,correspond:8,cost:[2,8,10],could:[0,1,4,5,6,8,10],count:8,counter:0,cours:[4,8],cover:[2,8,10],coverag:5,cpu:[0,8],cpuinfo:9,creat:[0,3,4,5,6,8,9,10],create_kei:6,create_receipt:[0,6],creation:8,creator:8,critic:[8,9],cryptograph:[1,3,5,10],cryptographi:[1,8,10],ctrl:0,cull:6,current:[0,1,2,3,4,6,8],current_download:0,current_filenam:0,curv:[5,6,8,10],curve25519:[5,6,8,10],custom:[1,4,6,8,10],custom_network_nam:4,customis:4,d:[5,9],daemon:[1,4,6,9],dai:5,data:[0,1,3,4,5,6,8,10],data_port:4,databit:[4,9],date:[0,1],db:0,dbm:[0,4],de:[],debian:[8,9],debug:9,decad:2,decai:[],decid:[5,6,8],decis:[4,8],decod:0,decreas:9,decrypt:[6,8],dedic:[4,8],deep:1,def:0,default_timeout:[],defin:[0,4,8,9],definit:8,degrad:5,degre:4,delai:[1,4,8,9],deliv:[0,6],deliveri:[0,1,6,10],demand:6,demonstr:[0,4],depend:[1,2,5,6,8,9],deploi:8,deregist:6,deregister_announce_handl:6,deregister_request_handl:6,deriv:[8,10],describ:[4,6,8],descript:[0,9],design:[1,2,5,8,10],desir:[0,2,4,8],dest_len:0,destin:[0,1,3,4,5,9],destination_1:0,destination_2:0,destination_clos:0,destination_hash:[0,6,9],destination_hexhash:0,detail:[0,1,3,4,6,9,10],detect:0,determin:[1,6,8],dev:[1,4,9],develop:[2,3,7,8,10],devic:[1,2,3,4,5,6,8,9],dh:6,dhcp:[2,4,9],did:0,differ:[0,1,2,4,5,6,8,9,10],diffi:[5,8,10],difficult:[1,2],digit:[1,2,8,10],dir:0,direct:[0,1,2,5,6,8,9],directli:[2,4,6,8,9,10],directori:[0,9],disabl:[4,8,9],disable_encrypt:[],disappear:[4,9],disassoci:8,discard:8,disconnect:0,discov:[1,4],discover:4,discoveri:[4,8,9],discovery_port:4,discovery_scop:4,discrimin:5,discuss:[1,2,8],disk:[0,6],displai:[0,8],dissolv:5,distanc:[2,8],distant:6,distinct:[4,8],distinguish:8,distribut:[0,1,5,6,8,9],divid:6,divmod:0,dn:2,document:8,doe:[0,1,2,3,4,5,6,8,9],doesn:4,dolor:[],domain:[1,4],don:[0,1,2,5,6,9],donat:3,done:[0,1,4,5,8,9],dori:5,dot:[8,9],down:[0,2,4,6],downgrad:[],download:[0,4,9],download_began:0,download_conclud:0,download_finish:0,download_start:0,download_tim:0,driver:[9,10],droid:1,drop:[6,8,9],dublin:1,due:5,duplex:[8,10],dynam:[1,9],dysfunct:7,e28d5aee4317c24a9041:[],e702c42ba8:9,e:[0,5],each:[0,1,4,5,8,9],earli:[1,2],earlier:8,eas:[4,8],easi:[1,2,4,8,9,10],easier:[1,4,5,9],easiest:[1,2,4,8],easili:[1,4,5,8,9,10],eca6f4e4dc26ae329e61:[],ecdh:[8,10],echo:[1,3,9],echo_destin:0,echo_request:0,ed25519:[8,10],edit:[1,9],effeci:[],effect:4,effici:[0,1,4,8,10],effort:2,ei:0,either:[2,4,5,8,9],elaps:4,elif:0,ellipt:[5,6,8,10],els:[0,5,8],emploi:[2,8],emptor:3,emul:1,enabl:[1,2,4,5,6,8,9],enable_transport:[8,9],encapsul:[4,10],encod:0,encrypt:[0,1,5,6,8,10],encrypted_mdu:6,encryptionless:[],end:[0,4,5,6,8,10],endless:4,endpoint:[0,5,6,8],energi:1,enforc:4,engin:[],enhanc:8,enough:[1,2,8],ensur:[4,6,8],enter:[0,9],entir:[5,8,9],entiti:8,entri:[0,1,8],enumer:0,environ:[1,5,8],environment:8,environmentlogg:8,eof:4,ephemer:[5,6,8,10],equal:[5,8],equip:[4,5,8],equival:4,equl:[],error:[0,1,7,9],esp32:2,especi:[2,4],essenti:[1,4,8],establish:[0,1,4,5,6,10],established_callback:6,establishment_timeout_per_hop:6,etc:9,eth0:4,eth1:4,ethereum:7,ethernet:[1,2,4,5,8,10],even:[1,2,4,5,8,9,10],event:4,eventu:6,everi:[0,4,5,6,8],everyon:[5,8],everyth:[0,5,8],evolv:5,exact:[2,4,8],exactli:[6,8],exampl:[1,2,3,4,6,8,9,10],example_util:[0,9],exampleannouncehandl:0,exampleconfig:9,exce:[0,4,6],except:[0,4],excess:4,exchang:[5,6,8,10],exclud:8,execstart:9,execstartpr:9,execut:[0,1,4,6,9],exhaust:[2,8],exist:[0,1,2,4,8,9,10],exit:[0,1,6,9],exit_handl:0,expand:8,expect:[0,4,6,8,9],expens:2,experi:[1,8],experiment:[1,2,10],expir:4,expiri:4,explain:[2,6],explan:[8,9],explicit:6,explicitli:[],explor:[0,8,10],expos:[4,6],extend:[0,1,6],extern:[1,4,6,10],extra:[1,4,5,9],extrem:[1,8,9,10],f53a1c4278e0726bb73fcc623d6ce763:9,f:1,fa7ddfab5213f916dea:[],face:[1,4],fact:10,factor:[4,6],fail:[0,6],failed_callback:[0,6],failur:[1,4],fals:[0,4,6,9],far:[5,8],fashion:7,fast:[3,4,6,8],faster:[1,4,8],fastest:[4,8],featur:[1,7,8,10],feed:6,feedback:[0,3],feel:1,fernet:[8,10],few:[1,2,4,5,8,9,10],fewer:6,fi:7,fibr:10,field:8,file:[0,1,2,4,5,6,8,9,10],file_resourc:0,file_s:0,filelist:0,filelist_data:0,filelist_receiv:0,filelist_timeout_job:0,filenam:0,filetransf:[1,3,6],filter:[0,5,8],find:[5,8],firewal:[1,4],firmwar:[1,2,8],first:[0,1,4,6,8,9],fit:0,five:0,fix:[3,8],flag:[6,8],flexibl:[2,4,10],flow:[4,5],flow_control:4,flush:0,folder:1,follow:[0,1,2,4,7,8,9,10],forcibl:[6,9],foreground:1,foremost:10,form:[1,4,5,6,8],format:[0,3,10],forth:0,forward:[4,6,8,10],forward_ip:4,forward_port:4,found:[0,1,4,5,8,9],four:5,frame:4,frankfurt:[1,9],free:[5,7,10],freedom:8,freeli:8,frequenc:[2,4,8],frequent:4,friendli:10,from:[0,1,2,4,5,6,8,9,10],from_byt:6,from_fil:6,fromhex:0,fruit:0,ftdi_ft230x_basic_uart_43891ckm:9,full:[0,4,6,8,9,10],full_hash:6,full_nam:[6,9],fulli:[2,8,10],funcion:[2,6],fundament:[2,8],further:[1,3,4],furthermor:[],futur:[5,8],g:0,ga:0,gain:[2,8],galact:8,gatekeep:8,gatewai:[1,4,5,8],gbp:9,gen:[],gener:[0,1,2,4,5,6,8,9,10],generalis:10,geograph:5,get:[0,2,3,4,6,10],get_data_s:6,get_hash:6,get_packet_rssi:0,get_packet_snr:0,get_part:6,get_private_kei:6,get_progress:[0,6],get_public_kei:6,get_random_hash:[0,6],get_remote_ident:[0,6],get_request_id:6,get_respons:6,get_response_tim:6,get_rtt:[0,6],get_seg:6,get_statu:6,get_transfer_s:6,geti2p:4,ghz:8,gi:0,gigabyt:10,gipsum:[],git:1,github:[0,1,7],give:[4,8,9],given:[4,5,6,8,9],global:[0,1,4,5,8,10],glue:2,go:[0,1,4,8],goal:[3,4],good:[2,5,8,9],got:0,got_respons:0,govern:8,grace:6,gracefulli:4,grape:0,graphic:1,gratefulli:7,great:8,greater:8,greatli:4,group:[4,6,8],group_id:4,grow:5,growth:3,guarante:[1,8],guess:4,guid:[1,2,6,8],gw:4,h:[1,9],ha:[0,1,2,4,5,6,8,10],hack:10,had:8,half:[8,10],hand:[0,1],handheld:8,handl:[0,2,4,5,6,8,9,10],handler:[0,6],happen:[0,6,8],hard:2,hardlin:5,hardwar:[1,3,4,5,6,8,9,10],has_path:[0,6],hasattr:0,hash1:8,hash2:8,hash:[0,1,6,8,9],hash_from_name_and_ident:6,hashlib:8,hashmap:0,have:[0,1,2,4,5,6,8,9],hazard:6,head:1,header:8,header_1:8,header_2:8,header_typ:[],hear:8,heard:[6,8],helium:0,hellman:[5,8,10],help:[0,2,5,7,8,9,10],heltec:[],her:5,here:[0,1,2,4,8,9],hex:0,hexadecim:[0,8,9],hide:1,high:[2,4,8,10],higher:[5,10],highli:8,hill:5,hint:0,hit:0,hkdf:8,hmac:[8,10],hoc:10,hold:[6,8],home:5,homebrew:4,hop:[4,5,6,8,9,10],hops_to:6,host:[0,1,4,8,9],hostnam:4,hour:[0,4],how:[0,1,2,4,5,8,10],howev:[1,5,8],http:[0,1,7],hub:[1,4],huge:[],human:[0,6,7,8],hungri:2,i2p:[1,3,10],i2p_tunnel:4,i2pd:[1,4],i2pinterfac:[1,4],i:[0,9],ic:2,id:[2,4,6,8,9],id_callsign:4,id_interv:4,idea:[8,9],ideal:10,ident:[0,1,3,9,10],identif:[3,4,10],identifi:[0,4,6,8,9],identify:8,identifyexampl:0,ie:9,if00:9,ifac:[8,9],ifac_s:4,ifconfig:9,ignor:[4,6,8],ignored_devic:4,illustr:[5,8],imag:[],immedi:[1,4,9],impact:[4,8],implement:[0,4,5,6,7,8,10],implic:4,implicit:[6,8],imposs:8,improv:[3,4,7],inactive_for:6,inbound:[4,6],includ:[0,2,3,4,6,8],incom:[0,4,6,9],incompat:[6,8],increas:[4,9],incred:[],incur:4,indefinit:[],independ:[6,8],independt:10,index:[0,1,3],indirectli:8,individu:[6,8],inevit:8,infer:8,info:[6,8,9],inform:[0,1,3,4,5,6,8,9],infrastructur:[1,2,4,5,8,9],ingo:6,initi:[0,5,6,8,10],initialis:[0,6,9],input:[0,9],insert:8,insid:8,inspect:[1,4,5,8],instal:[1,3,4,5,8,9,10],instanc:[0,3,4,6,8,9],instance_control_port:9,instanti:6,instead:[0,1,4,8,9],integr:[1,5,8],intend:[5,8],intention:8,inter:6,interact:[0,1,6,8,9],interchang:4,interconnect:[3,4,8],interest:8,interfac:[0,2,3,5,6,9],interface_en:[4,9],interface_mod:[],intermediari:8,intermitt:4,intern:[4,6,8],internet:[3,4,8,10],interoper:[1,2,5,8,10],interv:[4,6],intiat:0,introduc:8,introduct:3,intuit:10,invalid:[0,6],invers:8,investig:5,invis:[1,4],involv:5,io:[1,2,9],iot:2,ip:[1,2,4,8,9,10],ipsum:[],ipv6:[4,9],is_compress:6,is_connected_to_shared_inst:0,is_request:[],is_respons:[],isdir:0,isfil:0,island:5,ism:[2,8],isol:[4,9],issu:[5,7],its:[2,4,6,8],itself:[2,3,8],iv:10,job:0,join:[0,1,5,7,8],jpg:[],just:[0,1,2,4,5,8,10],k:0,kb:9,kbp:9,keep:[0,5,6,8,9,10],keepal:[6,8],keepalive_timeout_factor:6,kei:[0,3,5,6,10],kept:[4,5,6,8],kernel:[4,9,10],keyboardinterrupt:0,keyerror:6,keypair:8,keysiz:6,keystor:5,khz:4,ki:0,kill:[6,8],kilomet:[],kind:[2,4,5,8],kiss:[2,3,9,10],kiss_fram:4,kissinterfac:[4,9],know:[0,1,2,5,6,8],knowledg:[5,8],known:[0,6,8,9],ko:7,krypton:0,l:[4,9],lack:8,laid:8,lan:4,larg:[0,2,4,5,6,8,10],larger:[5,8],laser:4,last:[0,4,6],last_unit:0,latenc:[1,8,10],later:[0,1,4],latest:[0,1,4],latest_client_link:0,launch:[1,9],lavg:[],layer:[2,4,5,8,10],lead:8,leak:1,learn:[0,1,7,8],least:[2,4,8,9,10],leav:[5,8],ledger:8,left:[4,6,8,9],legaci:5,len:0,length:[0,4,6,8],less:[4,8,10],let:[0,1,4,5,8,9],level:[2,4,8,9],libffi:1,librari:1,licens:8,light:9,like:[1,2,4,5,6,8,9,10],lilygo:[],limit:[2,5,8],line:[0,1,2,4,5,8,10],link:[2,3,4,5,9,10],link_clos:0,link_establish:0,linkexampl:0,linux:[1,8],list:[0,1,2,4,6,8,10],list_deliv:0,list_fil:0,list_packet:0,list_receipt:0,list_timeout:0,listdir:0,listen:[0,4,8,9],listen_ip:4,listen_port:4,littl:[2,8],lki:8,lkr:8,ll:[0,1,10],ln:[1,9],load:[0,1,6,9],load_private_kei:6,load_public_kei:6,local:[0,1,4,5,6,8,9,10],locat:[1,2,5,8,9],log:[0,4,9],log_error:0,log_info:0,loglevel:[0,6,9],longer:[0,5,8,9],longest:4,look:[0,1,4,8,9],loop:0,lora32:[],lora:[1,2,3,8,10],lorawan:[2,8],lorem:[],loss:8,lot:8,low:[1,2,4,5,8,10],lower:[1,4,9],ltu:2,lxmf:1,m:[0,1,8,9],mac:8,machin:8,maco:1,made:[1,6,8],mai:[1,4,6,8,9],main:0,mainli:5,maintain:8,make:[1,2,4,7,8,9],malici:8,manag:[1,5,6,8,9],mani:[0,1,2,4,5,6,8,9,10],manipul:8,manner:5,manual:[0,1,4,5,6,9],manufactur:2,mark:[6,8],market:[],markqvist:[0,1,7],master:[0,6],match:[0,4,8],matter:[1,4],max:9,maximum:[4,6,8],mbp:9,mcu:[],mdu:0,mean:[2,4,5,8,9],measur:8,mechan:[3,4],medium:[2,4,5,6,8,10],member:5,memori:8,mention:[4,8],menu:0,menu_mod:0,mesh:[1,4,5,10],messag:[0,1,6,8,9],messeng:8,metadata:1,metavar:0,method:[0,1,4,6,8],methodolog:[8,9],mhz:[4,8],mi:0,microcontrol:8,microwav:[],might:[1,4,5,8,9],mikrotik:2,millimet:2,millisecond:[0,9],mind:[5,10],minim:[2,3,8],minimalsampl:0,minimum:[0,4,5,8],minut:[0,1,4,8],mirror:9,mix:[1,4,5,9],mobil:[4,8],mode:[0,1,2,3,8,9,10],modem:[2,4,5,6,8,10],moder:4,modern:[2,8],modifi:[8,9],modul:[0,1,2,8,9,10],moment:[8,10],momentarili:4,monero:7,monitor:8,moon:0,mor:[],more:[1,2,4,5,6,8,9,10],morej:[],most:[1,2,4,5,8,9],mostli:[4,5,8],motiv:3,move:[1,4,8],mqtt:[],mtu:[6,8,10],much:[1,4,5,8,9],multi:[8,9,10],multicast:4,multilater:8,multipl:[0,4,5,8,9],multipoint:8,must:[0,1,4,5,6,8],mw:4,my:8,mycal:4,myriad:8,n:[0,8,9],name:[0,3,4,5,6],namespac:0,nano:1,narg:0,nat:1,natur:4,nearbi:4,nears:8,necesarri:[4,5],necessari:[1,2,4,6,8],necessarili:8,need:[0,1,2,3,4,5,6,8,9,10],neglig:8,neither:8,neon:0,net:4,netcat:4,netifac:1,network:[0,2,4,6,8,9,10],network_nam:4,never:[4,6,8],newer:8,newest:[2,8],newli:[5,8],next:[1,5,6,8],next_hop:6,next_hop_interfac:6,nicknam:8,no1cll:4,no_inbound_for:6,no_outbound_for:6,noauth:9,nobl:0,noble_ga:0,noble_gas:0,node:[1,3,4,5,9,10],nodet:[],noid:9,nomad:3,nomadnet:1,non:[1,6,8],none:[0,4,6,8,9],normal:[0,4,6],notat:[8,9],note:[0,1,2,4,6,8,9],noth:[2,10],notic:[8,9],notif:[0,6],now:[0,1,5,8,9],nt:0,num:0,number:[0,1,4,5,6,8,9],obfusc:[],object:6,obscur:1,obtain:[2,8],obviusli:8,occasion:1,occur:[9,10],off:[8,10],offer:[1,3,4,6,8],offlin:1,often:[1,4,5,8,9],oganesson:0,old:[2,7,8],on_interfac:6,onc:[0,1,2,4,5,6,8,9,10],one:[0,1,2,4,5,6,8,9,10],ones:[4,9],oneself:8,onli:[0,1,2,4,5,6,8,9,10],onlin:[],onto:8,open:[0,2,4,5,6,7,8,9,10],openmodem:[4,10],openssl:[1,8],oper:[2,4,5,6,8,9,10],opposit:4,opt:8,optic:10,optim:5,optimis:[],option:[0,1,2,3,5,6,8,9],order:9,orem:[],organ:5,organis:[4,5,7],orient:8,origin:[0,5,8],original_hash:[],os:[0,4,8,9,10],ospf:[],other:[1,2,4,5,6,8,9],otherwis:6,our:[0,8],out:[0,1,2,4,5,6,8,9,10],outbound:[6,8],outgo:[0,4,6,8,9],outli:5,outlier:5,outlin:[1,2,8],output:[4,9],outward:[],over:[0,2,3,4,6,8,9,10],overal:8,overcom:8,overhead:[2,4,8],overrid:0,oversight:8,overview:[3,4,8],overwhelm:[4,6],own:[0,1,5,6,8,9],owner:[],p:[0,9],pack:0,packag:[1,4,8],packb:0,packet:[0,1,2,3,4,5,9,10],packet_callback:0,packet_deliv:0,packet_hash:0,packet_receipt:[0,6],packet_timed_out:0,packet_typ:[],packetreceipt:[0,6],pad:[8,10],page:[1,3,8],pair:[4,8],palm:[],panic:9,panic_on_interface_error:9,parallel:1,paramet:[2,4,5,6,8],pariti:[4,9],pars:0,parse_arg:0,parser:0,part:[0,4,5,6,8],particip:[3,5,8],particular:2,pass:[0,2,4,5,6,8,9],passphras:[4,8],past:[],path:[0,1,2,4,6,8,9],path_respons:6,pathfind:[],pathfinder_m:6,pattern:[2,8],payload:[6,8],peach:0,peer:[0,1,4,6,8,9],peer_pub_byt:[],peer_sig_pub_byt:[],penalti:4,peopl:8,per:[4,6,8,10],percent:0,percentag:6,perfect:[],perfectli:1,perform:[0,1,4,5,8],period:[4,6,8],perman:9,permissionless:8,persecut:8,persist:[4,9],person:8,perspect:[4,8],pet:0,philosophi:8,physic:[1,2,4,8,9],pi:[0,5,8,9,10],pick:8,piec:8,ping:[1,9],pip3:[1,2,9],pip:[1,2,9],pipe:[3,10],pipeinterfac:[2,4],pkcs7:[8,10],pkg:1,place:[5,8,9],plaform:2,plain:[0,4,6,8],plain_mdu:6,plaintext:[0,6],plan:[5,8],platform:[1,2,8],pleas:[0,1,4,6,9,10],plenti:8,plu:[],plug:9,pmr:8,point:[1,2,4,5,8,9],pomelo:0,poorli:5,popular:10,port0:9,port:[2,3,4,5,8,10],portabl:[4,8],pose:8,posit:9,possess:8,possibl:[1,2,4,5,6,8,10],potenti:[0,4,7,8,9],power:[1,2,4,8],practic:[8,10],pre:[1,2,6,8],preambl:[4,9],precompil:1,predict:8,prefer:[1,8],prepar:[0,5],prerequisit:6,presenc:6,preserv:[1,6],preshar:8,press:0,pretend:8,pretti:8,prettyhexrep:0,previou:0,previous:[5,6,8],primari:8,primit:[1,3],principl:[8,10],print:[0,4,9],print_filelist:0,print_help:0,print_menu:0,prioriti:8,prioritis:[3,4,5,6],privaci:10,privat:[1,4,6,7,8,10],privileg:9,probabl:[0,5,8,9,10],probe:9,problem:8,proc:9,procedur:8,process:[1,2,4,6,8],produc:2,product:[],program:[0,3,4,6,8,10],program_setup:0,programm:8,programmat:8,progress:[0,6,10],progress_callback:6,project:1,prompt:0,proof:[0,6,8,9],proof_packet:0,proof_requested_callback:6,proof_strategi:6,propag:[3,4,6],properli:[],properti:[5,6],proport:8,propos:1,protocol:[1,2,3,4,10],prove:[0,8],prove_al:[0,6],prove_app:6,prove_non:6,proven:[6,8],provid:[0,1,2,3,4,5,6,8,10],provis:2,prv_byte:6,pseudo:9,pub_byt:6,public_inform:0,publicli:1,purchas:[1,5,8,10],pure:[3,8],purg:6,purpos:[1,2,4,6,8],purposefulli:[],put:[0,2,4],py:[0,1,8],pyca:[1,8],pyseri:1,python3:[1,2],python:[3,8,9,10],q:[0,9],queri:[0,1,6],question:[2,4],queu:[6,9],queue:[4,8],quickli:[7,8,10],quiet:[4,9],quinc:0,quit:0,r:[0,4,8,9],radio:[2,3,4,5,6,8,9,10],radiu:[],radon:0,rais:[0,6],ram:4,rand:[],randint:0,random:[0,6,8],random_text_gener:0,randomis:8,randomli:[0,8],rang:[0,1,2,4,5,8,9,10],rapidli:4,rare:[1,4],raspberri:[5,8,9,10],rate:[0,3,9],rather:1,raw:2,rb:0,re:[0,4,6,8],reach:[3,4,5],reachabl:[0,1,4,5,6,8,9],read:[0,1,4,8,9],readabl:[0,6,8],readi:[0,1,2,4,5,6,10],readili:10,real:[2,5,10],realiti:7,realli:[4,6],reappear:4,reason:[4,8],reassembl:8,reboot:1,recal:[0,6],recall_app_data:6,recap:8,receipt:[0,3,8],receiv:[0,1,4,6,8,9],received_announc:[0,6],recent:8,reception_rssi:0,reception_snr:0,reception_stat:0,recip:1,recipi:8,recommend:[0,1,2,8],reconstruct:8,record:[1,8],recoveri:4,recreat:8,recurs:6,refer:[0,1,3],regard:8,regist:[0,6],register_announce_handl:[0,6],register_request_handl:[0,6],rel:[2,8,10],relai:1,relat:1,releas:[1,2,4,8],relev:[0,2,4,6,8,9],reli:[7,8],reliabl:[2,4,5,8,10],rem:0,remain:[4,6,8],rememb:8,remot:[0,6,9],remote_ident:[0,6],remote_identifi:0,remote_identity_hash:[],remote_p:0,remotesensor:8,remov:9,render:1,repeat:1,replac:[1,8,9],repli:[0,9],replic:[2,8],reply_data:0,reply_text:0,report:[4,7],repositori:[1,7,8],repres:8,represent:0,request:[3,4,8,9],request_destin:0,request_fail:0,request_id:[0,6],request_packet:0,request_path:[0,6],request_receipt:[0,6],request_receiv:0,requested_at:[0,6],requestexampl:0,requestor:4,requestreceipt:6,requir:[0,1,4,5,8,9,10],research:10,resend:6,reserv:8,resid:4,resili:10,resolv:4,resourc:[0,1,3,7],resource_callback:6,resource_sending_conclud:0,resource_strategi:6,respawn:4,respawn_delai:4,respawn_interv:4,respect:4,respond:[0,6],respons:[3,6,8],response_callback:[0,6],response_gener:[0,6],response_tim:[],rest:[5,10],restart:9,restartsec:9,restor:4,restrict:5,result:[0,8,9],retain:4,reticulu:9,reticulum:[0,4,5],retiiculum:[],retransmiss:8,retransmit:8,retri:8,reveal:[1,6,8,10],review:[8,10],ridicul:8,right:[4,5],risk:8,rn:[0,1,6,8,9],rncp:3,rnode:[1,3,8,9,10],rnodeconf:2,rnodeinterfac:[2,4,9],rnpath:[1,3,4],rnprobe:[1,3],rnsconfig:1,rnsd:[1,3],rnspure:1,rnstatu:[1,3,4,8],rnx:3,roadmap:7,roam:4,robot:8,rotat:8,round:[0,6,9],rout:[1,4,5,6,8,9,10],routabl:[],router:[4,9],rprogress:0,rsa:[],rssi:0,rtt:[0,6,8],rttstring:0,rule:[3,4],run:[0,1,2,4,5,6,8,9,10],runtim:8,rust:1,rw:[],rx:4,s:[0,1,4,5,8,9,10],said:8,same:[1,2,4,5,6,8,9],satisfi:8,save:[6,8],save_error:0,saved_filenam:0,scalabl:10,scale:8,scan:4,scenario:[1,3,8],schedul:6,scheme:2,scope:4,scratch:2,screen:0,script:[1,2],scrutini:8,seamlessli:4,search:3,second:[0,4,6,8,9,10],secreci:[6,8,10],section:[1,2,4,5,8,9],secur:[1,8,10],see:[0,1,4,5,6,8,9,10],seek:8,seen:[4,8],segment:[4,5,6,8,10],segment_index:[],select:[0,4],self:[0,5,10],semtech:2,send:[0,4,6,8,9],sender:[0,1,5,8,9],sendig:0,sensibl:[1,2],sensor:8,sent:[0,1,6,8,9],sentiment:8,separ:[1,4,5,8,9],sequenc:[0,6,8,10],seri:2,serial:[1,2,3,8,10],serialinterfac:4,serv:[0,2,4,5,8,9],serve_path:0,server:[0,1,2,3,9],server_callback:0,server_destin:0,server_fil:0,server_ident:0,server_link:0,server_loop:0,server_packet_receiv:0,servic:[1,3,5],session:8,set:[0,1,2,4,5,6,8,9,10],set_default_app_data:6,set_delivery_callback:[0,6],set_link_closed_callback:[0,6],set_link_established_callback:[0,6],set_packet_callback:[0,6],set_proof_requested_callback:6,set_proof_strategi:[0,6],set_remote_identified_callback:[0,6],set_resource_callback:6,set_resource_concluded_callback:[0,6],set_resource_started_callback:[0,6],set_resource_strategi:[0,6],set_timeout:[0,6],set_timeout_callback:[0,6],setdaemon:0,setup:[0,1,3,4],sever:[1,5,6,9],sha256:10,sha:[6,8],shall:8,share:[1,5,6,8,9],share_inst:9,shared_instance_port:9,she:5,shelf:[8,10],shell:9,shop:0,shorter:4,shortest:8,shorthand:[4,9],should:[0,1,2,4,5,6,8,9,10],should_allow_unencrypt:[],should_quit:0,should_use_implicit_proof:6,show:9,shown:0,side:[4,10],sideband:3,sight:5,sign:[6,8],signatur:[6,8,10],significantli:4,similar:[1,2,4,5,9,10],simpl:[0,2,8,9,10],simpler:4,simplest:[4,8],simpli:[0,1,2,4,5,8,9],simplic:8,simplyequip:2,simultan:8,sinc:[0,1,4,5,6,8],singl:[0,4,6,8,9,10],singular:8,sit:[],site:[3,4],situat:[1,2,4,5,8],size:[0,1,4,6,8,9],size_str:0,sleep:[0,9],slice:0,slightli:1,slottim:[4,9],slow:[0,4,8],slower:[4,6,8],small:[0,4,5,8,10],smaller:6,snr:0,so:[0,1,2,4,5,6,7,8,10],socket:9,softwar:[1,2,4,8,10],sold:[],solut:8,solv:8,some:[0,1,2,4,5,8,9],someon:[1,4],someth:8,somethign:0,sometim:2,soon:6,sort:[4,8],soundmodem:4,sourc:[0,1,2,5,8,10],space:[0,1,2,5,8,10],spam:4,span:[4,8],special:[8,9],specif:[0,2,3,4,6,10],specifi:[0,1,2,4,5,6,9],spectrum:[4,8],speed:[4,8,9],split:0,sponsor:[7,10],spread:4,spreadingfactor:4,squelch:4,ssid:4,stabil:2,stabl:[8,10],stack:[0,1,5,8,9,10],stage:[1,8],stai:[0,8,9],stale:6,stale_grac:6,stale_tim:6,staletim:[],standard:[1,2,8],start:[0,2,3,4,6,8,9],startlimitintervalsec:[],startup:0,state:0,station:4,stationari:[5,9],statist:[0,4,7],statu:[0,1,3,4,6,8,9],stderr:9,stdin:[4,9],stdio:10,stdout:[0,4,9],step:[1,2],still:[0,1,2,5,8],stock:0,stop:10,stopbit:[4,9],store:[0,2,8,9],store_tru:0,str:0,strategi:[4,6],stream:8,strength:10,strictli:[4,8],string:[0,6],strong:8,structur:8,subject:[],subnet:[1,5],subsequ:8,succe:1,successful:6,successfulli:0,sucessfulli:8,sudo:[1,9],suffic:8,suffici:[1,4,8,9],suffix:0,suggest:7,suit:[1,2,8,9],suitabl:[0,1,4,5,8,10],suppli:[5,6,8],supplier:[1,3],support:[0,1,3,5,8,10],sure:[1,2,9],surveil:8,surviv:8,sx1276:2,sy:0,symlink:[1,9],symmetr:[6,8],system:[0,1,2,3,4,5,6,7,8,10],systemctl:9,systemd:9,t:[0,1,4,5,6,9],tabl:[1,4,5,8,9],tag:6,tail:4,tailor:8,take:[0,1,4,8,9,10],taken:[0,8],tangerin:0,target:[0,4,9],target_host:[1,4],target_port:[1,4],task:9,tcp:[1,2,3,5,8,10],tcpclientinterfac:[1,2,4],tcpinterfac:9,tcpserverinterfac:[1,4],tdata:0,teach:9,teardown:[0,6],teardown_reason:0,teffect:0,telemetli:7,tell:[0,4],temperatur:8,ten:8,tend:4,term:[5,8],termin:[1,6],terminolog:[5,8],termux:1,test:[1,2,8],testnet:[3,9],text:[0,1,5,8],tfile:0,tgz:9,than:[0,1,4,5,8],thei:[0,1,4,5,6,8,9],them:[0,1,2,4,5,7,8,9],thereaft:8,therefor:[8,10],thi:[0,1,2,3,4,5,6,8,9,10],thing:1,think:1,those:[5,8],though:[1,2,4,8],thourough:10,thousand:8,thread:0,three:[5,8],throough:4,throttl:5,through:[1,2,4,5,6,8,9,10],throughout:8,throughput:[8,10],thu:[5,6,8],ti:[0,8],time:[0,1,2,4,5,6,8,9],timeout:[0,6,9],timeout_callback:[],timeoutarg:0,timestr:0,tnc:[4,6,9,10],to_fil:6,todai:8,todo:[],togeth:[2,8,9],token:[6,8],toler:4,too:[0,5],tool:[2,8,9,10],top:[5,8],topic:8,topographi:[1,5,8],topolog:[4,8],torn:6,total:[6,8,10],total_s:0,touch:[2,10],toward:[0,4,8],tradeoff:8,tradit:[5,8],traffic:[0,1,4,5,6,8,9],tramsit:[],transceiv:[1,2,4,8,10],transfer:[0,6,8,9,10],transfer_s:0,transform:10,transmiss:[1,4,6,8],transmit:[0,4,8],transpar:[2,4,8,9],transpor:[],transport:[0,1,3,4,5,9,10],transport_en:6,transport_id:[],transport_typ:[],travers:8,treat:8,tri:0,trip:[0,6,9],trivial:[8,10],truli:[2,8],truncat:[6,8],truncated_hash:6,truncated_hashlength:[0,6],trust:8,trustless:[5,8,10],ttime:0,ttransfer:0,ttyusb0:[4,9],ttyusb1:4,ttyusb2:4,tun0:4,tune:[],tunnel:[4,8,10],tupl:6,turn:9,turnaround:4,tutori:1,two:[0,1,2,4,5,8],tx:4,txpower:4,txtail:[4,9],type:[0,1,3,4,5,6,9],typeerror:6,ubiqu:2,ubuntu:9,udp:[3,5,8,9,10],udpinterfac:4,uhf:[9,10],ultim:8,umsgpack:0,uncencrypt:0,uncensor:1,under:[7,9],underli:[5,10],understand:[1,3,9],unencrypt:[0,6,8],unequivoc:8,unexplor:5,unforg:10,unidentifi:0,unifi:5,uninterest:0,uniqu:[8,10],unit:[0,1,9],unknown:[0,4,6,8],unless:[1,4,6,8],unlicens:8,unlik:8,unorganis:5,unpack:0,unpackb:0,unplug:9,unrecover:9,unreli:4,unsign:9,unsupport:6,until:[0,4,6],unus:9,unusu:1,unwant:8,up:[0,1,2,4,5,8,9,10],updat:[0,1,6,8],upgrad:[1,8],upkeep:4,upon:[0,8],upset:0,urandom:10,us:[0,2,3,4,5,6,7,8],usabl:8,usag:[1,3,4,7,9],usb:[5,8,9],useabl:8,user:[0,1,4,5,8,9],user_input:0,userland:10,usernameher:9,usr:9,utf:0,util:[0,2,3,4,8],utilis:[1,5,9,10],uxg5kubabakh3jtnvsipingbr5574dle7bubvip7llfvwx2tgrua:1,v1:[],v2:[],v:9,valid:[0,4,6,8,9],valu:[4,6,8],valuabl:[2,7],valueerror:[0,6],vari:[8,9],variabl:0,varieti:[4,8,9,10],variou:[0,1,4,5,8],vast:8,ve:1,vehicl:4,vendor:[0,2],verbos:9,veri:[1,2,4,5,6,7,8,9,10],verif:[6,8],verifi:[0,6,8],versa:[5,10],version:[2,8,9],vhf:[5,8,10],via:[1,2,4,7,8,9,10],vice:[5,10],view:[1,4,8,9],violat:4,virtual:[4,5,8,9,10],visibl:0,w:9,wa:[0,2,4,5,6,8,10],wai:[0,1,4,5,8],wait:[0,4,8,9],want:[0,1,2,4,5,8,9,10],wantedbi:9,warn:9,warrant:10,wast:4,wave:2,wb:0,we:[0,1,2,4,7,8],websit:4,weight:9,welcom:1,well:[1,2,4,5,6,8,10],went:0,were:5,what:[0,1,3,6,8],whatev:[6,8],wheel:1,when:[0,1,2,4,5,6,8,9],whenev:[6,8],where:[1,2,3,4,5,6,8,9],whereupon:8,whether:[0,4,6,8],which:[0,1,4,5,6,8,9],who:[1,8],wide:[1,2,4,8,10],wider:[1,4,8,9],wifi:[1,3,4,5,8,9,10],wildcard:0,willing:5,window:[],wire:[1,2,3,4,10],wireless:[2,5],wish:[8,9],within:[0,1,4,5,6,8],without:[1,2,5,8,10],wlan0:4,won:0,work:[1,2,4,5,8,9,10],world:[2,5,10],worri:5,would:[1,4,5,6,8],write:[0,1,4,6,8],written:8,wrong:[0,4],x22519:8,x25519:[6,8,10],x:[8,9],xenon:0,y:0,ye:[1,4,8,9],year:8,yet:[0,4,8],yi:0,ykzlw5ujbaqc2xkec4cpvgyxj257wcrmmgkuxqmqcur7cq3w3lha:[],you:[0,1,2,3,4,5,6,7,8,9,10],your:[0,1,2,3,4,5,7,8,10],yourself:[1,8,10],z:0,zero:[6,10],zeromq:[],zi:0},titles:["Code Examples","Getting Started Fast","Communications Hardware","Reticulum Network Stack Manual","Supported Interfaces","Building Networks","API Reference","Support Reticulum","Understanding Reticulum","Using Reticulum on Your System","What is Reticulum?"],titleterms:{"0":2,"1":2,"2":[],"25":4,"4":[],"class":6,"function":8,"public":[1,8],"try":1,The:[8,9],With:1,access:8,ad:1,android:1,announc:[0,4,8],api:6,arm64:1,auto:4,ax:4,base:[1,2],basic:8,beam:2,binari:[],board:2,bridg:5,broadcast:0,build:5,can:10,caveat:10,client:4,code:[0,7,8],combin:2,common:4,commun:2,concept:5,configur:9,connect:1,contribut:7,control:4,converg:5,creat:[1,2],cryptograph:8,current:10,data:9,deliveri:[],destin:[6,8],detail:8,develop:1,devic:10,doe:10,donat:7,echo:0,emptor:10,establish:8,exampl:[0,5],fast:1,feedback:7,filetransf:0,fix:9,format:8,further:8,get:[1,8],gipsum:[],goal:8,growth:5,hardwar:2,heltec:2,i2p:4,ident:[6,8],identif:0,improv:9,includ:[1,9],indic:3,instal:2,instanc:1,interconnect:5,interfac:[1,4,8,10],internet:[1,5],introduct:8,kei:8,kiss:4,lilygo:2,link:[0,6,8],lora32:2,lora:[4,5],manual:3,mechan:8,minim:0,mode:4,motiv:8,name:[8,9],network:[1,3,5],node:8,nomad:1,offer:10,option:4,orem:[],origin:[],over:[1,5],overview:5,packet:[6,8],particip:1,pathfind:[],pipe:4,port:9,predict:[],primit:8,prioritis:8,program:[1,9],propag:8,protocol:8,proven:[],provid:7,pure:1,python:1,radio:1,rate:4,reach:8,receipt:6,refer:[6,8],request:[0,6],resourc:[6,8],respons:0,reticulum:[1,2,3,6,7,8,9,10],retiiculum:[],rncp:9,rnode:[2,4],rnpath:9,rnprobe:9,rnsd:9,rnstatu:9,rnx:9,rule:8,run:[],scenario:5,serial:[4,9],server:4,servic:9,setup:8,sideband:1,site:5,specif:8,stack:3,start:1,statu:10,step:[],supplier:2,support:[2,4,7],system:9,t:2,tabl:3,tcp:4,testnet:1,transport:[6,8],type:[2,8,10],udp:4,understand:8,unsign:2,us:[1,9,10],usag:2,util:[1,9],v1:2,v2:2,virtual:[],what:10,where:10,wifi:2,wire:8,x:2,your:9}}) \ No newline at end of file diff --git a/docs/manual/support.html b/docs/manual/support.html index 0c0b659..a126f28 100644 --- a/docs/manual/support.html +++ b/docs/manual/support.html @@ -5,7 +5,7 @@ - Support Reticulum — Reticulum Network Stack 0.3.8 beta documentation + Support Reticulum — Reticulum Network Stack 0.3.9 beta documentation @@ -27,7 +27,7 @@
  • previous |
  • - + @@ -45,9 +45,7 @@ systems by donating, providing feedback and contributing code and learning resou

    Donations

    Donations are gratefully accepted via the following channels:

    Monero:
    -84FpY1QbxHcgdseePYNmhTHcrgMX4nFf
    -BYtz2GKYToqHVVhJp8Eaw1Z1EedRnKD1
    -9b3B8NiLCGVxzKV17UMmmeEsCrPyA5w
    +84FpY1QbxHcgdseePYNmhTHcrgMX4nFfBYtz2GKYToqHVVhJp8Eaw1Z1EedRnKD19b3B8NiLCGVxzKV17UMmmeEsCrPyA5w
     
     Ethereum:
     0x81F7B979fEa6134bA9FD5c701b3501A2e61E897a
    @@ -127,7 +125,7 @@ report issues, suggest functionality and contribute code to Reticulum.

  • previous |
  • - +
    diff --git a/docs/manual/understanding.html b/docs/manual/understanding.html index 2417ecd..9552b79 100644 --- a/docs/manual/understanding.html +++ b/docs/manual/understanding.html @@ -5,7 +5,7 @@ - Understanding Reticulum — Reticulum Network Stack 0.3.8 beta documentation + Understanding Reticulum — Reticulum Network Stack 0.3.9 beta documentation @@ -16,8 +16,8 @@ - - + + @@ -165,26 +165,26 @@ to be transported over multiple hops in a complex network to reach the recipient Reticulum uses the singular concept of destinations. Any application using Reticulum as it’s networking stack will need to create one or more destinations to receive data, and know the destinations it needs to send data to.

    -

    All destinations in Reticulum are represented as a 10 byte hash, derived from truncating a full +

    All destinations in Reticulum are _represented_ as a 16 byte hash. This hash is derived from truncating a full SHA-256 hash of identifying characteristics of the destination. To users, the destination addresses -will be displayed as 10 bytes in hexadecimal representation, as in the following example: <80e29bf7cccaf31431b3>.

    -

    The truncation size of 10 bytes (80 bits) for destinations has been choosen as a reasonable tradeoff between address space +will be displayed as 16 hexadecimal bytes, like this example: <13425ec15b621c1d928589718000d814>.

    +

    The truncation size of 16 bytes (128 bits) for destinations has been choosen as a reasonable tradeoff +between address space and packet overhead. The address space accomodated by this size can support many billions of simultaneously active devices on the same network, while keeping packet overhead low, which is essential on low-bandwidth networks. In the very unlikely case that this address space nears congestion, a one-line code change can upgrade the Reticulum address space all the way up to 256 bits, ensuring the Reticulum address space could potentially support galactic-scale networks. -This is obviusly complete and ridiculous over-allocation, and as such, the current 80 bits should +This is obviusly complete and ridiculous over-allocation, and as such, the current 128 bits should be sufficient, even far into the future.

    By default Reticulum encrypts all data using elliptic curve cryptography. Any packet sent to a destination is encrypted with a derived ephemeral key. Reticulum can also set up an encrypted -channel to a destination with Forward Secrecy and Initiator Anonymity using a elliptic -curve cryptography and ephemeral keys derived from a Diffie Hellman exchange on Curve25519. In -Reticulum terminology, this is called a Link. The multi-hop transport, coordination, verification +channel to a destination, called a Link. Both data sent over Links and single packets offer +Forward Secrecy and Initiator Anonymity, by using an Elliptic Curve Diffie Hellman key exchange +on Curve25519 to derive ephemeral keys. The multi-hop transport, coordination, verification and reliability layers are fully autonomous and also based on elliptic curve cryptography.

    Reticulum also offers symmetric key encryption for group-oriented communications, as well as -unencrypted packets for broadcast purposes, or situations where you need the communication to be in -plain text.

    +unencrypted packets for local broadcast purposes.

    Reticulum can connect to a variety of interfaces such as radio modems, data radios and serial ports, and offers the possibility to easily tunnel Reticulum traffic over IP links such as the Internet or private IP networks.

    @@ -234,7 +234,7 @@ out requests and responses, large data transfers and more.

    Destination Naming

    Destinations are created and named in an easy to understand dotted notation of aspects, and -represented on the network as a hash of this value. The hash is a SHA-256 truncated to 80 bits. The +represented on the network as a hash of this value. The hash is a SHA-256 truncated to 128 bits. The top level aspect should always be a unique identifier for the application using the destination. The next levels of aspects can be defined in any way by the creator of the application.

    Aspects can be as long and as plentiful as required, and a resulting long destination name will not @@ -245,7 +245,7 @@ application name, a device type and measurement type, like this:

    aspects : remotesensor, temperature full name : environmentlogger.remotesensor.temperature -hash : fa7ddfab5213f916dea +hash : 4faf1b2e0a077e6a9d92fa051f256038

    For the single destination, Reticulum will automatically append the associated public key as a @@ -737,7 +737,7 @@ pass onto the network.

    A Reticulum packet is composed of the following fields: -[HEADER 2 bytes] [ADDRESSES 10/20 bytes] [CONTEXT 1 byte] [DATA 0-477 bytes] +[HEADER 2 bytes] [ADDRESSES 16/32 bytes] [CONTEXT 1 byte] [DATA 0-465 bytes] * The HEADER field is 2 bytes long. * Byte 1: [IFAC Flag], [Header Type], [Propagation Type], [Destination Type] and [Packet Type] @@ -749,15 +749,15 @@ A Reticulum packet is composed of the following fields: capabilities and configuration. * The ADDRESSES field contains either 1 or 2 addresses. - * Each address is 10 bytes long. + * Each address is 16 bytes long. * The Header Type flag in the HEADER field determines whether the ADDRESSES field contains 1 or 2 addresses. - * Addresses are Reticulum hashes truncated to 10 bytes. + * Addresses are SHA-256 hashes truncated to 16 bytes. * The CONTEXT field is 1 byte. * It is used by Reticulum to determine packet context. -* The DATA field is between 0 and 477 bytes. +* The DATA field is between 0 and 465 bytes. * It contains the packets data payload. IFAC Flag @@ -768,8 +768,8 @@ authenticated 1 Interface authentication is included in packet Header Types ----------------- -type 1 0 Two byte header, one 10 byte address field -type 2 1 Two byte header, two 10 byte address fields +type 1 0 Two byte header, one 16 byte address field +type 2 1 Two byte header, two 16 byte address fields Propagation Types @@ -801,7 +801,7 @@ proof 11 HEADER FIELD DESTINATION FIELDS CONTEXT FIELD DATA FIELD _______|_______ ________________|________________ ________|______ __|_ | | | | | | | | -01010000 00000100 [HASH1, 10 bytes] [HASH2, 10 bytes] [CONTEXT, 1 byte] [DATA] +01010000 00000100 [HASH1, 16 bytes] [HASH2, 16 bytes] [CONTEXT, 1 byte] [DATA] || | | | | || | | | +-- Hops = 4 || | | +------- Packet Type = DATA @@ -816,7 +816,7 @@ proof 11 HEADER FIELD DESTINATION FIELD CONTEXT FIELD DATA FIELD _______|_______ _______|_______ ________|______ __|_ | | | | | | | | -00000000 00000111 [HASH1, 10 bytes] [CONTEXT, 1 byte] [DATA] +00000000 00000111 [HASH1, 16 bytes] [CONTEXT, 1 byte] [DATA] || | | | | || | | | +-- Hops = 0 || | | +------- Packet Type = DATA @@ -831,7 +831,7 @@ proof 11 HEADER FIELD IFAC FIELD DESTINATION FIELD CONTEXT FIELD DATA FIELD _______|_______ ______|______ _______|_______ ________|______ __|_ | | | | | | | | | | -10000000 00000111 [IFAC, N bytes] [HASH1, 10 bytes] [CONTEXT, 1 byte] [DATA] +10000000 00000111 [IFAC, N bytes] [HASH1, 16 bytes] [CONTEXT, 1 byte] [DATA] || | | | | || | | | +-- Hops = 0 || | | +------- Packet Type = DATA @@ -956,11 +956,11 @@ those risks are acceptable to you.

    Previous topic

    -

    Communications Hardware

    +

    Using Reticulum on Your System

    Next topic

    -

    API Reference

    +

    Communications Hardware

    This Page

    diff --git a/docs/manual/using.html b/docs/manual/using.html index 8b93641..48fd028 100644 --- a/docs/manual/using.html +++ b/docs/manual/using.html @@ -5,7 +5,7 @@ - Using Reticulum on Your System — Reticulum Network Stack 0.3.8 beta documentation + Using Reticulum on Your System — Reticulum Network Stack 0.3.9 beta documentation @@ -16,7 +16,7 @@ - + @@ -243,7 +243,7 @@ RNodeInterface[RNode UHF] Traffic : 8.49 KB↑ 9.23 KB↓ -Reticulum Transport Instance <5245a8efe1788c6a70e1> running +Reticulum Transport Instance <5245a8efe1788c6a1cd36144a270e13b> running
    usage: rnstatus [-h] [--config CONFIG] [--version] [-a] [-v]
    @@ -264,10 +264,10 @@ optional arguments:
     

    With the rnpath utility, you can look up and view paths for destinations on the Reticulum network.

    # Run rnpath
    -rnpath eca6f4e4dc26ae329e61
    +rnpath c89b4da064bf66d280f0e4d8abfd9806
     
     # Example output
    -Path found, destination <eca6f4e4dc26ae329e61> is 4 hops away via <56b115c30cd386cad69c> on TCPInterface[Testnet/frankfurt.rns.unsigned.io:4965]
    +Path found, destination <c89b4da064bf66d280f0e4d8abfd9806> is 4 hops away via <f53a1c4278e0726bb73fcc623d6ce763> on TCPInterface[Testnet/frankfurt.connect.reticulu.network:4965]
     
    usage: rnpath [-h] [--config CONFIG] [--version] [-t] [-r] [-d] [-D] [-w seconds] [-v] [destination]
    @@ -297,11 +297,11 @@ to the ping<
     specified destination is configured to send proofs for received packets. Many
     destinations will not have this option enabled, and will not be probable.

    # Run rnprobe
    -rnprobe example_utilities.echo.request 9382f334de63217a4278
    +rnprobe example_utilities.echo.request 2d03725b327348980d570f739a3a5708
     
     # Example output
    -Sent 16 byte probe to <9382f334de63217a4278>
    -Valid reply received from <9382f334de63217a4278>
    +Sent 16 byte probe to <2d03725b327348980d570f739a3a5708>
    +Valid reply received from <2d03725b327348980d570f739a3a5708>
     Round-trip time is 38.469 milliseconds over 2 hops
     
    @@ -327,10 +327,10 @@ optional arguments: files through Reticulum.

    # Run rncp on the receiving system, specifying which identities
     # are allowed to send files
    -rncp --receive -a 940ea3f9e1037d38758f -a e28d5aee4317c24a9041
    +rncp --receive -a 1726dbad538775b5bf9b0ea25a4079c8 -a c50cc4e4f7838b6c31f60ab9032cbc62
     
     # From another system, copy a file to the receiving system
    -rncp ~/path/to/file.tgz 256320d405d6d525d1e9
    +rncp ~/path/to/file.tgz 73cbd378bb0286ed11a707c13447bb1e
     

    You can specify as many allowed senders as needed, or complete disable authentication.

    @@ -365,22 +365,22 @@ execute commands on remote systems over Reticulum, and to view returned command output.

    # Run rnx on the listening system, specifying which identities
     # are allowed to execute commands
    -rncp --listen -a 8111c4ff2968ab0c1286 -a 590256654482b4ba4038
    +rncp --listen -a 941bed5e228775e5a8079fc38b1ccf3f -a 1b03013c25f1c2ca068a4f080b844a10
     
     # From another system, run a command
    -rnx ad9a4c9da60089d41c29 "cat /proc/cpuinfo"
    +rnx 7a55144adf826958a9529a3bcf08b149 "cat /proc/cpuinfo"
     
     # Or enter the interactive mode pseudo-shell
    -rnx ad9a4c9da60089d41c29 -x
    +rnx 7a55144adf826958a9529a3bcf08b149 -x
     
     # The default identity file is stored in
     # ~/.reticulum/identities/rnx, but you can use
     # another one, which will be created if it does
     # not already exist
    -rnx ad9a4c9da60089d41c29 -i /path/to/identity
    +rnx 7a55144adf826958a9529a3bcf08b149 -i /path/to/identity -x
     
    -

    You can specify as many allowed senders as needed, or complete disable authentication.

    +

    You can specify as many allowed senders as needed, or completely disable authentication.

    usage: rnx [-h] [--config path] [-v] [-q] [-p] [-l] [-i identity] [-x] [-b] [-a allowed_hash] [-n] [-N] [-d] [-m] [-w seconds] [-W seconds] [--stdin STDIN] [--stdout STDOUT] [--stderr STDERR] [--version]
                [destination] [command]
     
    @@ -528,8 +528,8 @@ WantedBy=multi-user.target
       

    Getting Started Fast

    Next topic

    -

    Building Networks

    +

    Understanding Reticulum

    diff --git a/docs/manual/whatis.html b/docs/manual/whatis.html index 13b3751..81c70c9 100644 --- a/docs/manual/whatis.html +++ b/docs/manual/whatis.html @@ -5,7 +5,7 @@ - What is Reticulum? — Reticulum Network Stack 0.3.8 beta documentation + What is Reticulum? — Reticulum Network Stack 0.3.9 beta documentation @@ -31,7 +31,7 @@
  • previous |
  • - +
    @@ -76,7 +76,7 @@
  • Low cost of keeping links open at only 0.62 bits per second

  • -
  • Reliable and efficient transfer of arbritrary amounts of data

    +
  • Reliable and efficient transfer of arbitrary amounts of data