An organisation wants to provide communication and information services to it’s
-members, which are located mainly in three separate areas. Three suitable hill-top
-locations are found, where the organisation can install equipment: Site A, B and C.
-Since the amount of data that needs to be exchanged between users is mainly text-
-based, the bandwidth requirements are low, and LoRa radios are chosen to connect
-users to the network.
-Due to the hill-top locations found, there is radio line-of-sight between site A
-and B, and also between site B and C. Because of this, the organisation does not
-need to use the Internet to interconnect the sites, but purchases four Point-to-Point
-WiFi based radios for interconnecting the sites.
-At each site, a Raspberry Pi is installed to function as a gateway. A LoRa radio
-is connected to the Pi with a USB cable, and the WiFi radio is connected to the
-Ethernet port of the Pi. At site B, two WiFi radios are needed to be able to reach
-both site A and site C, so an extra Ethernet adapter is connected to the Pi in
-this location.
-Once the hardware has been installed, Reticulum is installed on all the Pis, and at
-site A and C, one interface is added for the LoRa radio, as well as one for the WiFi
-radio. At site B, an interface for the LoRa radio, and one interface for each WiFi
-radio is added to the Reticulum configuration file. The transport node option is
-enabled in the configuration of all three gateways.
-The network is now operational, and ready to serve users across all three areas.
-The organisation prepares a LoRa radio that is supplied to the end users, along
-with a Reticulum configuration file, that contains the right parameters for
-communicating with the LoRa radios installed at the gateway sites.
-Once users connect to the network, anyone will be able to communicate with anyone
-else across all three sites.
+
-Bridging Over the Internet
-As the organisation grows, several new communities form in places too far away
-from the core network to be reachable over WiFi links. New gateways similar to those
-previously installed are set up for the new communities at the new sites D and E, but
-they are islanded from the core network, and only serve the local users.
-After investigating the options, it is found that it is possible to install an
-Internet connection at site A, and an interface on the Internet connection is
-configured for Reticulum on the Raspberry Pi at site A.
-A member of the organisation at site D, named Dori, is willing to help by sharing
-the Internet connection she already has in her home, and is able to leave a Raspberry
-Pi running. A new Reticulum interface is configured on her Pi, connecting to the newly
-enabled Internet interface on the gateway at site A. Dori is now connected to both
-the nodes at her own local site (through the hill-top LoRa gateway), and all the
-combined users of sites A, B and C. She then enables transport on her node, and
-traffic from site D can now reach everyone at site A, B and C, and vice versa.
+
+Transport Nodes and Instances
+Reticulum distinguishes between two types of nodes: Instances
+and Transport Nodes. Every node running Reticulum is an Instance, but not
+every Instance is a Transport Node.
+A Reticulum Instance is any system running the Reticulum stack. It can create
+destinations, send and receive packets, establish links, and communicate with
+other nodes. It can also host destinations that are connectable for anyone else
+in the network. This means you can easily host globally available services from
+any location, including your home or office. Network-wide, global connectivity
+for all destinations is guaranteed, as long as there is some physical way to
+actually transport the packets. Instances are the default state and are appropriate for most end-user devices,
+such as phones, laptops, sensors, or any device that primarily consumes network services.
+A Transport Node is an Instance that has been explicitly configured to
+participate in network-wide transport. Transport nodes forward packets across
+hops, propagate announces, maintain path tables, and serve path requests on
+behalf of other nodes. When a destination sends an announce, Transport Nodes
+receive it, remember the path, and rebroadcast it to other interfaces. When a node
+needs to reach a destination it doesn’t have a path for, Transport Nodes help
+resolve the path through the network.
+Even devices hosting services or serving content should probably just be configured
+as instances, and themselves connect to wider networks via a Transport Node.
+In some situations, this may not be practical though, and as an example, it is
+entirely viable to host a personal Transport Node on a Raspberry Pi, while it
+is at the same time running an LXMF propagation node, and hosting your personal
+site or files over Reticulum.
+The distinction is important. Not every node should be a Transport Node:
+
+Resource consumption: Transport nodes maintain path tables, process
+announces, and forward traffic. This requires memory and CPU resources that
+may be limited on low-powered devices.
+Stability requirements: Transport nodes contribute to network convergence.
+If Transport Nodes frequently go offline, path tables become stale and
+convergence suffers. Stable, always-on nodes make better Transport Nodes.
+Bandwidth considerations: Transport nodes process and rebroadcast network
+maintenance traffic. On very low-bandwidth mediums, having too many Transport
+Nodes will consume capacity that should be used for actual data.
+
+In practice, a network typically has a relatively small number of Transport Nodes
+strategically placed to provide coverage and connectivity. End-user devices run
+as Instances, connecting through nearby Transport Nodes to reach the wider network.
+This pattern mirrors traditional networking where routers forward traffic while
+end hosts simply consume connectivity, but with the crucial difference that any
+node can become a router if needed, and the decision is yours to make based on
+your network’s requirements.
+Transport nodes also function as distributed cryptographic keystores. When a
+destination announces itself, Transport Nodes cache the public key and destination
+information. Other nodes can request unknown public keys from the network, and
+Transport Nodes respond with the cached information. This eliminates the need for
+a central directory service while ensuring that public keys remain available
+throughout the network.
-
-Growth and Convergence
-As the organisation grows, more gateways are added to keep up with the growing user
-base. Some local gateways even add VHF radios and packet modems to reach outlying users
-and communities that are out of reach for the LoRa radios and WiFi backhauls.
-As more sites, gateways and users are connected, the amount of coordination required
-is kept to a minimum. If one community wants to add connectivity to the next one
-over, it can simply be done without having to involve everyone or coordinate address
-space or routing tables.
-With the added geographical coverage, the operators at site A one day find that
-the original internet bridged interfaces are no longer utilised. The network has
-converged to be completely self-connected, and the sites that were once poorly
-connected outliers are now an integral part of the network.
+
+Trustless Networking
+Traditional network security models assume high levels of trust at
+specific layers. You might trust your ISP to deliver packets without inspection,
+or trust your VPN provider to handle your traffic, or trust the network
+administrator to configure firewalls appropriately. These trust relationships
+create vulnerabilities and dependencies.
+Reticulum is designed to function in open, trustless environments. This
+means the protocol makes no assumptions about the trustworthiness of the network
+infrastructure, the other participants, or the transport mediums. Every aspect
+of communication is secured cryptographically:
+
+Traffic encryption: All traffic to single destinations is encrypted using
+ephemeral keys.
+Source anonymity: Reticulum packets do not include source addresses.
+An observer intercepting a packet cannot determine who sent it, only who it is
+addressed to (unless IFAC is enabled, in which case nothing can be determined).
+This provides initiator anonymity by default.
+Path verification: The announce mechanism includes cryptographic signatures that
+prove the authenticity of destination announcements.
+Unforgeable delivery confirmations: When a destination proves receipt of a
+packet, the proof is signed with the destination’s identity key. This prevents
+false acknowledgments and ensures reliable delivery verification.
+Interface authentication: When using Interface Access Codes (IFAC), packets
+on authenticated interfaces carry signatures derived from a shared secret. Only
+nodes with the correct network name and passphrase can generate valid packets, allowing creation
+of virtual private networks on shared mediums.
+
+The trustless design has important consequences for network design:
+
+Open-access networks are viable: You can build networks that anyone can
+join without pre-approval. Because traffic is encrypted and authenticated end-
+to-end, participants cannot interfere with each other’s private communication,
+even if they share the same transport infrastructure.
+No traffic inspection or prioritization: Because traffic contents and
+sources are opaque to intermediate nodes, there is no mechanism for filtering,
+prioritizing, or throttling traffic based on its type or origin. All traffic
+is treated equally. From a neutrality perspective, this is a feature.
+Adversarial resilience: The network can operate even if some nodes are
+malicious or controlled by adversaries. While a malicious Transport Node could
+refuse to forward certain traffic or drop packets, it cannot decrypt, modify,
+or impersonate legitimate traffic. Redundant paths and multiple Transport Nodes
+mitigate the impact of malicious nodes.
+
+Of course, you can also create closed networks. Interface Access
+Codes allow you to restrict participation on specific interfaces. Network
+Identities enable you to verify that discovered interfaces belong to trusted
+operators. Blackhole management lets you block malicious identities. Reticulum
+provides both the tools for open networks and the controls for closed ones. The
+choice is yours based on your requirements.
+
+
+Heterogeneous Connectivity
+In conventional networking, mixing different transport mediums typically requires
+gateways, translation layers, and careful configuration. A WiFi network doesn’t
+natively interoperate with a packet radio network without additional infrastructure,
+and you can’t just download a car over a serial port, or send an encrypted message
+in a QR code.
+Reticulum treats heterogeneity as a core premise. The protocol is designed
+to seamlessly mix mediums with vastly different characteristics:
+
+Bandwidth: LoRa links operating at a few hundred bits per second can
+interconnect with gigabit Ethernet backbones. Reticulum automatically manages
+the flow of information, prioritizing local traffic on slow segments while
+allowing global convergence.
+Latency: Satellite links with multi-second latency can coexist with local
+links measured in milliseconds. The transport system handles timing, asynchronous
+delivery and retransmissions transparently.
+Topology: Point-to-point microwave links, broadcast radio networks,
+switched Ethernet fabrics, and virtual tunnels over the Internet can all be
+part of the same Reticulum network.
+Reliability: Intermittent connections that come and go (such as mobile
+devices or opportunistic radio contacts) can participate alongside always-on
+infrastructure. Reticulum gracefully handles link loss and reconnection.
+
+This heterogeneity is achieved through several design elements:
+
+Expandable, medium-agnostic interface system: Reticulum communicates with the physical
+world through interface modules. Adding support for a new medium is a matter
+of implementing an interface class. The protocol itself remains unchanged.
+Interface modes: Different modes (full, gateway, access_point,
+roaming, boundary) allow you to configure how interfaces interact with
+the wider network based on their characteristics and role.
+Announce propagation rules: Announces are forwarded between interfaces
+according to rules that account for bandwidth limitations and interface modes.
+Slow segments are not overwhelmed by traffic from fast segments.
+Local traffic prioritization: When bandwidth is constrained, Reticulum
+prioritizes announces for nearby destinations. This ensures that local
+connectivity remains functional even when global convergence is incomplete.
+
+For network designers, this means you are free to use whatever mediums are
+available, affordable, or appropriate for your situation. You might use LoRa for
+wide-area low-bandwidth coverage, WiFi for local high-capacity links, I2P for
+anonymous Internet connectivity, and Ethernet for infrastructure backhauls, all
+within the same network. Reticulum handles the translation and coordination
+automatically.
+The key design consideration is not whether different mediums can work together
+(they can), but how they should work together based on your goals. A node
+with multiple interfaces spanning heterogeneous mediums needs to be configured
+with appropriate interface modes so that traffic flows efficiently. A gateway
+connecting a slow LoRa segment to a fast Internet backbone should be configured
+differently than a mobile device roaming between radio cells.
@@ -483,11 +640,12 @@ connected outliers are now an integral part of the network.
- Building Networks
diff --git a/docs/manual/searchindex.js b/docs/manual/searchindex.js
index 53c2b25..b786592 100644
--- a/docs/manual/searchindex.js
+++ b/docs/manual/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles":{"API Reference":[[7,null]],"ARM64":[[2,"arm64"]],"AX.25 KISS Interface":[[5,"ax-25-kiss-interface"]],"Adding Radio Interfaces":[[2,"adding-radio-interfaces"]],"An Explanation of Reticulum for Human Beings":[[1,null]],"Android":[[2,"android"]],"Announce":[[0,"announce"]],"Announce Propagation Rules":[[9,"announce-propagation-rules"]],"Announce Rate Control":[[5,"announce-rate-control"]],"Auto Interface":[[5,"auto-interface"]],"Automated List Sourcing":[[10,"automated-list-sourcing"]],"Backbone Interface":[[5,"backbone-interface"]],"Blackhole Management":[[10,"blackhole-management"]],"Bootstrapping Connectivity":[[2,"bootstrapping-connectivity"]],"Bridging Over the Internet":[[6,"bridging-over-the-internet"]],"Broadcast":[[0,"broadcast"]],"Buffer":[[0,"buffer"]],"Building Networks":[[6,null]],"Building Personal Infrastructure":[[2,"building-personal-infrastructure"]],"Caveat Emptor":[[11,"caveat-emptor"]],"Channel":[[0,"channel"]],"Code Examples":[[0,null]],"Combining Hardware Types":[[3,"combining-hardware-types"]],"Common Interface Options":[[5,"common-interface-options"]],"Communications Hardware":[[3,null]],"Concepts & Overview":[[6,"concepts-overview"]],"Conceptual Overview":[[9,"conceptual-overview"]],"Configuration & Data":[[10,"configuration-data"]],"Configuring Interfaces":[[5,null]],"Connect to the Public Testnet":[[2,"connect-to-the-public-testnet"]],"Connecting Remotes":[[5,"connecting-remotes"]],"Connecting Reticulum Instances Over the Internet":[[2,"connecting-reticulum-instances-over-the-internet"]],"Contribute Code":[[8,"contribute-code"]],"Contributing to the Global Ret":[[2,"contributing-to-the-global-ret"]],"Creating RNodes":[[3,"creating-rnodes"]],"Creating a Network With Reticulum":[[2,"creating-a-network-with-reticulum"]],"Creating and Using Custom Interfaces":[[2,"creating-and-using-custom-interfaces"]],"Creating and Using a Network Identity":[[9,"creating-and-using-a-network-identity"]],"Cryptographic Primitives":[[9,"cryptographic-primitives"]],"Current Status":[[11,"current-status"]],"Current Usage":[[9,"current-usage"]],"Custom Interfaces":[[0,"custom-interfaces"],[5,"custom-interfaces"]],"Debian Bookworm":[[2,"debian-bookworm"]],"Destination Naming":[[9,"destination-naming"]],"Destinations":[[9,"destinations"]],"Develop a Program with Reticulum":[[2,"develop-a-program-with-reticulum"]],"Discoverable Interfaces":[[5,"discoverable-interfaces"]],"Discovering Interfaces":[[10,"discovering-interfaces"]],"Discovery Parameters":[[5,"discovery-parameters"]],"Donations":[[8,"donations"]],"Echo":[[0,"echo"]],"Enabling Discovery":[[5,"enabling-discovery"]],"Ethernet-based Hardware":[[3,"ethernet-based-hardware"]],"Example Configuration":[[5,"example-configuration"]],"Example Scenarios":[[6,"example-scenarios"]],"Filetransfer":[[0,"filetransfer"]],"Finding Your Way":[[2,"finding-your-way"]],"Fixed Serial Port Names":[[10,"fixed-serial-port-names"]],"Future Implications":[[9,"future-implications"]],"Getting Further":[[9,"getting-further"]],"Getting Started Fast":[[2,null]],"Goals":[[9,"goals"]],"Growth and Convergence":[[6,"growth-and-convergence"]],"Heltec LoRa32 v2.0":[[3,"heltec-lora32-v2-0"]],"Heltec LoRa32 v3.0":[[3,"heltec-lora32-v3-0"]],"Heltec LoRa32 v4.0":[[3,"heltec-lora32-v4-0"]],"Heltec T114":[[3,"heltec-t114"]],"Hosting Public Entrypoints":[[2,"hosting-public-entrypoints"]],"I2P Interface":[[5,"i2p-interface"]],"Identification":[[0,"example-identify"]],"Identities":[[9,"understanding-identities"]],"Improving System Configuration":[[10,"improving-system-configuration"]],"Included Utility Programs":[[10,"included-utility-programs"]],"Indices and Tables":[[4,"indices-and-tables"]],"Installation":[[3,"installation"]],"Interconnected LoRa Sites":[[6,"interconnected-lora-sites"]],"Interface Access Codes":[[9,"interface-access-codes"]],"Interface Modes":[[5,"interface-modes"],[5,"interfaces-modes"]],"Interface Types and Devices":[[11,"interface-types-and-devices"]],"Introduction & Basic Functionality":[[9,"introduction-basic-functionality"]],"KISS Interface":[[5,"kiss-interface"]],"LilyGO LoRa32 v1.0":[[3,"lilygo-lora32-v1-0"]],"LilyGO LoRa32 v2.0":[[3,"lilygo-lora32-v2-0"]],"LilyGO LoRa32 v2.1":[[3,"lilygo-lora32-v2-1"]],"LilyGO T-Beam":[[3,"lilygo-t-beam"]],"LilyGO T-Beam Supreme":[[3,"lilygo-t-beam-supreme"]],"LilyGO T-Deck":[[3,"lilygo-t-deck"]],"LilyGO T-Echo":[[3,"lilygo-t-echo"]],"LilyGO T3S3":[[3,"lilygo-t3s3"]],"Link":[[0,"link"]],"Link Establishment in Detail":[[9,"link-establishment-in-detail"]],"Listeners":[[5,"listeners"]],"Local Blackhole Management":[[10,"local-blackhole-management"]],"MacOS":[[2,"macos"]],"MeshChat":[[2,"meshchat"]],"Minimal":[[0,"minimal"]],"Mixing Strategies":[[2,"mixing-strategies"]],"Motivation":[[9,"motivation"]],"Network Health & Responsibility":[[2,"network-health-responsibility"]],"Network Identities":[[9,"network-identities"]],"New Destination Rate Limiting":[[5,"new-destination-rate-limiting"]],"Node Types":[[9,"node-types"]],"Nomad Network":[[2,"nomad-network"]],"OpenCom XL":[[3,"opencom-xl"]],"OpenWRT":[[2,"openwrt"]],"Packet Prioritisation":[[9,"packet-prioritisation"]],"Packet Radio Modems":[[3,"packet-radio-modems"]],"Pipe Interface":[[5,"pipe-interface"]],"Platform-Specific Install Notes":[[2,"platform-specific-install-notes"]],"Protocol Specifics":[[9,"protocol-specifics"]],"Provide Feedback":[[8,"provide-feedback"]],"Public Key Announcements":[[9,"public-key-announcements"]],"Publishing Blackhole Lists":[[10,"publishing-blackhole-lists"]],"Pure-Python Reticulum":[[2,"pure-python-reticulum"]],"RAK4631-based Boards":[[3,"rak4631-based-boards"]],"RISC-V":[[2,"risc-v"]],"RNode":[[3,"rnode"]],"RNode LoRa Interface":[[5,"rnode-lora-interface"]],"RNode Multi Interface":[[5,"rnode-multi-interface"]],"Raspberry Pi":[[2,"raspberry-pi"]],"Reaching the Destination":[[9,"reaching-the-destination"]],"Reference Setup":[[9,"reference-setup"]],"Remote Management":[[10,"remote-management"]],"Remote Shell":[[2,"remote-shell"]],"Requests & Responses":[[0,"requests-responses"]],"Resolving Dependency & Installation Issues":[[2,"resolving-dependency-installation-issues"]],"Resources":[[9,"resources"]],"Reticulum Network Stack Manual":[[4,null]],"Reticulum Transport":[[9,"reticulum-transport"]],"Reticulum as a System Service":[[10,"reticulum-as-a-system-service"]],"Security Considerations":[[5,"security-considerations"]],"Serial Interface":[[5,"serial-interface"]],"Serial Lines & Devices":[[3,"serial-lines-devices"]],"Sideband":[[2,"sideband"]],"Standalone Reticulum Installation":[[2,"standalone-reticulum-installation"]],"Support Reticulum":[[8,null]],"Supported Boards and Devices":[[3,"supported-boards-and-devices"]],"Systemwide Service":[[10,"systemwide-service"]],"TCP Client Interface":[[5,"tcp-client-interface"]],"TCP Server Interface":[[5,"tcp-server-interface"]],"Table Of Contents":[[4,"table-of-contents"]],"The Announce Mechanism in Detail":[[9,"the-announce-mechanism-in-detail"]],"The rncp Utility":[[10,"the-rncp-utility"]],"The rnid Utility":[[10,"the-rnid-utility"]],"The rnodeconf Utility":[[10,"the-rnodeconf-utility"]],"The rnpath Utility":[[10,"the-rnpath-utility"]],"The rnprobe Utility":[[10,"the-rnprobe-utility"]],"The rnsd Utility":[[10,"the-rnsd-utility"]],"The rnstatus Utility":[[10,"the-rnstatus-utility"]],"The rnx Utility":[[10,"the-rnx-utility"]],"Try Using a Reticulum-based Program":[[2,"try-using-a-reticulum-based-program"]],"UDP Interface":[[5,"udp-interface"]],"Ubuntu Lunar":[[2,"ubuntu-lunar"]],"Understanding Reticulum":[[9,null]],"Unsigned RNode v2.x":[[3,"unsigned-rnode-v2-x"]],"Usage with Reticulum":[[3,"usage-with-reticulum"]],"Userspace Service":[[10,"userspace-service"]],"Using Reticulum on Your System":[[10,null]],"Using the Included Utilities":[[2,"using-the-included-utilities"]],"What does Reticulum Offer?":[[11,"what-does-reticulum-offer"]],"What is Reticulum?":[[11,null]],"Where can Reticulum be Used?":[[11,"where-can-reticulum-be-used"]],"WiFi-based Hardware":[[3,"wifi-based-hardware"]],"Windows":[[2,"windows"]],"Wire Format":[[9,"wire-format"]]},"docnames":["examples","forhumans","gettingstartedfast","hardware","index","interfaces","networks","reference","support","understanding","using","whatis"],"envversion":{"sphinx":65,"sphinx.domains.c":3,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":9,"sphinx.domains.index":1,"sphinx.domains.javascript":3,"sphinx.domains.math":2,"sphinx.domains.python":4,"sphinx.domains.rst":2,"sphinx.domains.std":2},"filenames":["examples.rst","forhumans.rst","gettingstartedfast.rst","hardware.rst","index.rst","interfaces.rst","networks.rst","reference.rst","support.rst","understanding.rst","using.rst","whatis.rst"],"indexentries":{},"objects":{"RNS":[[7,0,1,"","Buffer"],[7,0,1,"","Destination"],[7,0,1,"","Identity"],[7,0,1,"","Link"],[7,0,1,"","MessageBase"],[7,0,1,"","Packet"],[7,0,1,"","PacketReceipt"],[7,0,1,"","RawChannelReader"],[7,0,1,"","RawChannelWriter"],[7,0,1,"","RequestReceipt"],[7,0,1,"","Resource"],[7,0,1,"","Reticulum"],[7,0,1,"","Transport"]],"RNS.Buffer":[[7,1,1,"","create_bidirectional_buffer"],[7,1,1,"","create_reader"],[7,1,1,"","create_writer"]],"RNS.Channel":[[7,0,1,"","Channel"]],"RNS.Channel.Channel":[[7,1,1,"","add_message_handler"],[7,1,1,"","is_ready_to_send"],[7,2,1,"","mdu"],[7,1,1,"","register_message_type"],[7,1,1,"","remove_message_handler"],[7,1,1,"","send"]],"RNS.Destination":[[7,3,1,"","RATCHET_COUNT"],[7,3,1,"","RATCHET_INTERVAL"],[7,1,1,"","accepts_links"],[7,1,1,"","announce"],[7,1,1,"","app_and_aspects_from_name"],[7,1,1,"","clear_default_app_data"],[7,1,1,"","create_keys"],[7,1,1,"","decrypt"],[7,1,1,"","deregister_request_handler"],[7,1,1,"","enable_ratchets"],[7,1,1,"","encrypt"],[7,1,1,"","enforce_ratchets"],[7,1,1,"","expand_name"],[7,1,1,"","get_private_key"],[7,1,1,"","hash"],[7,1,1,"","hash_from_name_and_identity"],[7,1,1,"","load_private_key"],[7,1,1,"","register_request_handler"],[7,1,1,"","set_default_app_data"],[7,1,1,"","set_link_established_callback"],[7,1,1,"","set_packet_callback"],[7,1,1,"","set_proof_requested_callback"],[7,1,1,"","set_proof_strategy"],[7,1,1,"","set_ratchet_interval"],[7,1,1,"","set_retained_ratchets"],[7,1,1,"","sign"]],"RNS.Identity":[[7,3,1,"","CURVE"],[7,3,1,"","KEYSIZE"],[7,3,1,"","RATCHETSIZE"],[7,3,1,"","RATCHET_EXPIRY"],[7,3,1,"","TRUNCATED_HASHLENGTH"],[7,1,1,"","current_ratchet_id"],[7,1,1,"","decrypt"],[7,1,1,"","encrypt"],[7,1,1,"","from_bytes"],[7,1,1,"","from_file"],[7,1,1,"","full_hash"],[7,1,1,"","get_private_key"],[7,1,1,"","get_public_key"],[7,1,1,"","get_random_hash"],[7,1,1,"","load_private_key"],[7,1,1,"","load_public_key"],[7,1,1,"","recall"],[7,1,1,"","recall_app_data"],[7,1,1,"","sign"],[7,1,1,"","to_file"],[7,1,1,"","truncated_hash"],[7,1,1,"","validate"]],"RNS.Link":[[7,3,1,"","CURVE"],[7,3,1,"","ESTABLISHMENT_TIMEOUT_PER_HOP"],[7,3,1,"","KEEPALIVE"],[7,3,1,"","KEEPALIVE_TIMEOUT_FACTOR"],[7,3,1,"","STALE_GRACE"],[7,3,1,"","STALE_TIME"],[7,1,1,"","get_age"],[7,1,1,"","get_channel"],[7,1,1,"","get_establishment_rate"],[7,1,1,"","get_expected_rate"],[7,1,1,"","get_mdu"],[7,1,1,"","get_mode"],[7,1,1,"","get_mtu"],[7,1,1,"","get_q"],[7,1,1,"","get_remote_identity"],[7,1,1,"","get_rssi"],[7,1,1,"","get_snr"],[7,1,1,"","identify"],[7,1,1,"","inactive_for"],[7,1,1,"","no_data_for"],[7,1,1,"","no_inbound_for"],[7,1,1,"","no_outbound_for"],[7,1,1,"","request"],[7,1,1,"","set_link_closed_callback"],[7,1,1,"","set_packet_callback"],[7,1,1,"","set_remote_identified_callback"],[7,1,1,"","set_resource_callback"],[7,1,1,"","set_resource_concluded_callback"],[7,1,1,"","set_resource_started_callback"],[7,1,1,"","set_resource_strategy"],[7,1,1,"","teardown"],[7,1,1,"","track_phy_stats"]],"RNS.MessageBase":[[7,3,1,"","MSGTYPE"],[7,1,1,"","pack"],[7,1,1,"","unpack"]],"RNS.Packet":[[7,3,1,"","ENCRYPTED_MDU"],[7,3,1,"","PLAIN_MDU"],[7,1,1,"","get_q"],[7,1,1,"","get_rssi"],[7,1,1,"","get_snr"],[7,1,1,"","resend"],[7,1,1,"","send"]],"RNS.PacketReceipt":[[7,1,1,"","get_rtt"],[7,1,1,"","get_status"],[7,1,1,"","set_delivery_callback"],[7,1,1,"","set_timeout"],[7,1,1,"","set_timeout_callback"]],"RNS.RawChannelReader":[[7,1,1,"","__init__"],[7,1,1,"","add_ready_callback"],[7,1,1,"","remove_ready_callback"]],"RNS.RawChannelWriter":[[7,1,1,"","__init__"]],"RNS.RequestReceipt":[[7,1,1,"","concluded"],[7,1,1,"","get_progress"],[7,1,1,"","get_request_id"],[7,1,1,"","get_response"],[7,1,1,"","get_response_time"],[7,1,1,"","get_status"]],"RNS.Resource":[[7,1,1,"","advertise"],[7,1,1,"","cancel"],[7,1,1,"","get_data_size"],[7,1,1,"","get_hash"],[7,1,1,"","get_parts"],[7,1,1,"","get_progress"],[7,1,1,"","get_segments"],[7,1,1,"","get_transfer_size"],[7,1,1,"","is_compressed"]],"RNS.Reticulum":[[7,3,1,"","ANNOUNCE_CAP"],[7,3,1,"","LINK_MTU_DISCOVERY"],[7,3,1,"","MINIMUM_BITRATE"],[7,3,1,"","MTU"],[7,1,1,"","blackhole_sources"],[7,1,1,"","get_instance"],[7,1,1,"","interface_discovery_sources"],[7,1,1,"","link_mtu_discovery"],[7,1,1,"","publish_blackhole_enabled"],[7,1,1,"","remote_management_enabled"],[7,1,1,"","required_discovery_value"],[7,1,1,"","should_use_implicit_proof"],[7,1,1,"","transport_enabled"]],"RNS.Transport":[[7,3,1,"","PATHFINDER_M"],[7,1,1,"","await_path"],[7,1,1,"","deregister_announce_handler"],[7,1,1,"","has_path"],[7,1,1,"","hops_to"],[7,1,1,"","next_hop"],[7,1,1,"","next_hop_interface"],[7,1,1,"","register_announce_handler"],[7,1,1,"","request_path"]]},"objnames":{"0":["py","class","Python class"],"1":["py","method","Python method"],"2":["py","property","Python property"],"3":["py","attribute","Python attribute"]},"objtypes":{"0":"py:class","1":"py:method","2":"py:property","3":"py:attribute"},"terms":{"":[0,2,5,6,9,10,11],"0":[0,2,5,7,9,10,11],"00":[9,10],"00000000":9,"00000100":9,"00000111":9,"01":9,"01010000":9,"02":2,"05":0,"0536":10,"06915":5,"08":[0,10],"0f4259fef4521ab75a3409e353fe9073eb10783b4912a6a9937c57bf44a62c1":10,"0x0101":0,"0x20":0,"0x7d":0,"0x7e":0,"0x91c421ddfb8a30a49a71d63447ddb54cebe3465":8,"0xf000":[0,7],"1":[0,2,5,7,9,10],"10":[5,9,10],"100":[0,5,9],"1000":0,"10000000":9,"1024":0,"10h":[],"11":9,"115":9,"115200":[0,5,10],"1178a8f1fad405bf2ad153bf5036bdfd":10,"118":5,"12":[2,5,10],"1200":9,"125":5,"125000":5,"127":5,"128":[7,9],"13":10,"13425ec15b621c1d928589718000d814":9,"14":5,"15":5,"150":[5,10],"150m":5,"15m":10,"16":[5,9,10],"1625":5,"1625000":5,"167":9,"17":10,"1726dbad538775b5bf9b0ea25a4079c8":10,"174a64852a75682259ad8b921b8bf416":[],"18":10,"1800":7,"187":10,"1b03013c25f1c2ca068a4f080b844a10":10,"1h":10,"2":[0,2,5,7,9,10],"20":[5,9,10],"200":[5,10],"201":5,"2023":[2,10],"2026":2,"21":2,"22":5,"2225fdeecaf6e2db4556c3c2d7637294":10,"23":10,"2316":10,"23h":10,"24":[5,10],"2400000000":5,"25":[0,4,11],"255":[5,10],"25519":7,"256":[5,7,9,10,11],"2592000":7,"27":10,"29":5,"297":[9,11],"29716":5,"2b489d06eaf7c543808c76a5332a447d":10,"2b9ec651326d9bc274119054c70fb75":10,"2d03725b327348980d570f739a3a5708":10,"2d882c5586e548d79b5af27bca1776dc":10,"2f":0,"2owjajquafianpecac":2,"3":[0,2,5,9,10,11],"30":[5,7,10],"30602def3b3506a28ed33db6f60cc6c9":10,"32":[2,7,9],"3278":5,"32m":10,"33":5,"34":5,"360":[5,7],"3600":[0,5],"37428":10,"37429":10,"38":10,"383":7,"3865":10,"399ea050ce0eed1816c300bcb0840938":10,"3a4f8b9c1d2e3f4g5h6i7j8k9l0m1n2o":10,"3b87":5,"4":[7,9,10],"40m":10,"4242":[2,5],"4251":5,"42671":5,"430":9,"4343":5,"44":11,"44318":5,"45":[0,9],"46":10,"464":7,"465":9,"469":10,"48555":5,"49":10,"49555":5,"4965":[2,10],"4e":5,"4faf1b2e0a077e6a9d92fa051f256038":9,"4ghz":5,"5":[0,5,7,9,10,11],"500":[5,7,9,11],"5001":5,"51":[5,9],"512":[5,7,9,11],"52":10,"521c87a83afb8f29e4455e77930b973b":10,"5245a8efe1788c6a1cd36144a270e13b":10,"55":5,"56":10,"564":0,"5683":[],"56m":10,"5757":5,"5858":5,"59":10,"5caf":5,"5d78":5,"5urvjicpzi7q3ybztsef4i5ow2aq4soktfj7zedz53s47r54jnqq":5,"6":[5,7,10],"60":[0,5],"600":5,"63":10,"64":[2,9,10],"6761":[],"68a4aa91ac350c4087564e8a69f84e86":10,"7":[2,5,9,10],"71e5":5,"72":5,"720":[5,7],"7200":5,"73":[5,10],"73cbd378bb0286ed11a707c13447bb1":10,"74":10,"74195":5,"781":10,"7822":10,"7a55144adf826958a9529a3bcf08b149":10,"8":[0,5,10],"80":10,"8001":5,"809":10,"83":[9,10],"84fpy1qbxhcgdseepynmhthcrgmx4nffbytz2gkytoqhvvhjp8eaw1z1eedrnkd19b3b8nilcgvxzkv17ummmeescrpya5w":8,"86":10,"865":5,"865600000":5,"867":5,"867200000":5,"868":9,"88":5,"89":5,"8dd57a738226809646089335a6b03695":10,"9":[2,7,10],"900":9,"9037":10,"921600":10,"941bed5e228775e5a8079fc38b1ccf3f":10,"96":9,"9600":0,"984b74a3f768bef236af4371e6f248cd":10,"99":9,"99714":5,"9fb6d773498fb3feda407ed8ef2c3229":10,"9h":10,"A":[0,2,5,6,7,9,10],"And":0,"As":[2,3,5,6,7,9,10,11],"At":[2,6,9],"Be":[7,10],"But":9,"By":[0,2,5,7,9,10],"For":[2,5,6,7,9,10,11],"IN":[0,7],"If":[0,2,3,5,6,7,9,10,11],"In":[0,2,3,5,6,7,9,10,11],"It":[0,2,3,5,7,9,10,11],"No":[0,2,5,9,10,11],"Of":9,"On":[0,2,5,10],"One":[2,3,7,9],"Or":[5,10,11],"That":9,"The":[0,2,3,4,5,6,7,11],"Then":[0,2],"There":[2,6,9,10],"These":[2,5,7,9,10],"To":[0,2,3,5,6,9,10,11],"Will":7,"With":[4,5,6,9,10],"_":9,"__":9,"______":9,"_______":9,"________":9,"________________":9,"__future__":0,"__init__":[0,7],"__main__":0,"__name__":0,"__str__":0,"a4d":5,"a79f":5,"aarch64":2,"ab":0,"abil":[2,3,10,11],"abl":[0,2,5,6,7,9,10],"abort":[0,5],"about":[0,2,3,5,6,7,9,10],"abov":[2,3,5,9,10],"absolut":[5,8,11],"abstract":[7,9],"abstractmethod":7,"abund":3,"abus":10,"accept":[5,7,8,9,10],"accept_al":[0,7],"accept_app":7,"accept_non":7,"accepts_link":7,"access":[2,4,5,6,7,10],"access_point":5,"accommod":[7,9],"accord":[0,2,9],"accordingli":[0,5],"achiev":[2,5,7,9],"acknowledg":11,"across":[0,3,6,7,9,10],"act":[2,5,7,9,10],"action":[0,10],"activ":[0,2,5,7,9],"actor":[9,10],"actual":[0,2,5,9,10],"ad":[0,3,4,5,6,7,9,10,11],"adapt":[2,3,6],"add":[0,2,5,6,7,10],"add_argu":0,"add_message_handl":[0,7],"add_ready_callback":7,"addit":[2,3,5,7,9,10,11],"addition":[2,3,5,9],"addr":10,"address":[0,2,5,6,7,9,10,11],"adher":7,"adjust":[2,7],"admin":5,"administr":[9,10],"adopt":9,"adress":[7,9],"advanc":9,"advantag":7,"advers":11,"adversari":2,"advertis":[0,5,7],"advis":[5,9],"ae":[7,9,11],"af73":5,"affect":[2,5],"after":[0,2,5,6,7,9,10],"again":[2,5,9,10],"against":[2,5,9],"agenc":9,"agent":9,"agnost":[6,9],"agnostic":9,"ago":10,"aim":[2,4,9],"air":[2,3],"airmax":3,"airtim":5,"airtime_limit_long":5,"airtime_limit_short":5,"akin":9,"alic":9,"align":[2,10],"aliv":[7,9],"all":[0,2,3,4,5,6,7,8,9,10,11],"allevi":3,"alloc":[5,7,9,10],"allow":[0,2,3,5,6,7,9,10,11],"allow_al":[0,7],"allow_list":7,"allow_non":7,"allowed_hash":10,"allowed_ident":10,"allowed_list":7,"almost":[3,5,9,10],"alon":5,"along":[5,6,7,9,10],"alreadi":[0,2,3,6,7,9,10],"also":[0,2,3,4,5,6,7,9,10,11],"alter":[2,7,9],"altern":[0,2,5,10],"although":[2,9,11],"alwai":[2,5,7,9,10],"amateur":[5,11],"amount":[0,2,5,6,7,9,11],"amsterdam":[2,5,10],"an":[0,2,3,5,6,7,9,10,11],"analyt":8,"android":[4,5,10],"ani":[0,2,3,5,6,7,8,9,10,11],"annot":0,"annouce_cap":5,"announc":[4,7,10],"announce_cap":[5,7],"announce_handl":0,"announce_interv":5,"announce_packet_hash":7,"announce_rate_grac":5,"announce_rate_penalti":5,"announce_rate_target":5,"announced_ident":[0,7],"announceloop":0,"announcesampl":0,"anonym":[2,6,7,9,11],"anoth":[2,7,9,10],"answer":[9,10],"antenna":3,"anymor":2,"anyon":[0,2,3,5,6,7,9,10],"anyth":[2,3,5,9,10,11],"anywher":[0,5],"ap":5,"api":[2,4,9,11],"apk":2,"app":[0,2,7,9],"app_and_aspects_from_nam":7,"app_data":[0,7],"app_nam":[0,7],"app_timeout":0,"append":[0,9],"appli":[5,7,9],"applic":[0,2,5,6,7,9,10,11],"approach":[2,3,9,10],"appropri":5,"approv":9,"approxim":[5,10],"april":2,"apt":2,"ar":[0,2,3,5,6,7,8,9,10,11],"arbitrari":[7,9,10,11],"arch":2,"architectur":2,"area":[2,3,5,6,9,11],"arg":0,"argon":0,"argpars":0,"argument":[0,7,10],"argumentpars":0,"arm64":4,"around":[5,9],"arrai":2,"arriv":[0,9],"arx":10,"ask":[0,2,3,7],"aspect":[0,2,3,5,7,9,10],"aspect_filt":[0,7],"assign":[0,9,10],"associ":[7,9,10],"assum":[5,9],"asymmetr":[9,10,11],"attach":10,"attached_interfac":7,"attack":2,"attain":2,"attempt":[0,2,3,7,10],"attribut":7,"atx":10,"audit":11,"auth":10,"authent":[2,5,6,7,9,10,11],"author":[9,10],"authorit":9,"auto":[2,3,4,7,9,10],"auto_compress":7,"autoconfigur":11,"autoconnect":[],"autoconnect_discovered_interfac":[5,10],"autodiscov":5,"autoinstal":[3,10],"autointerfac":[2,3,5,10],"autom":[2,3,4,8,9],"automat":[0,2,5,6,7,9,10,11],"autonom":[6,9],"autonomi":11,"avail":[0,2,3,4,5,6,7,9,10,11],"averag":9,"avoid":[3,9,10],"awai":[0,2,5,6,9,10],"await_path":7,"awar":[2,5,9],"ax":[4,11],"ax25kissinterfac":5,"b":[0,6,10],"b32":5,"back":[0,5,9,11],"backbon":[2,3,4,10],"backboneinterfac":[2,5,10],"backend":[5,9],"background":[2,5,10],"backhaul":[3,6],"backup":10,"balanc":5,"band":[3,9],"bandwidth":[2,5,6,7,9,10,11],"bare":[0,5],"barrier":[5,9],"base":[4,5,6,7,9,10,11],"base32":[5,10],"base64":10,"basi":[5,7,9,10,11],"basic":[0,2,4,5,7,10],"baud":[5,10],"baud_flash":10,"baudrat":0,"bc1pgqgu8h8xvj4jtafslq396v7ju7hkgymyrzyqft4llfslz5vp99psqfk3a6":8,"bc7291552be7a58f361522990465165c":10,"beacon":5,"becaus":[6,9],"becki":0,"becom":[0,2,5,6,7,9],"been":[0,2,3,5,6,7,9,10,11],"befor":[0,2,5,7,9,10],"begin":[0,3,7],"begun":7,"behalf":5,"behav":3,"behaviour":[2,5,10],"behind":[2,5,9],"being":[2,5,7,9],"beings":9,"belief":9,"belong":[9,10],"below":[2,3,5,10],"benefici":[5,10],"best":[2,9,11],"better":[2,5,9],"between":[0,5,6,7,9,10],"betweenthebord":[],"bi":[7,9],"bidirect":9,"billion":[6,9],"bin":[2,5,10],"binari":[0,2,5,7,9,10],"bind":5,"bit":[0,2,5,7,9,10,11],"bitcoin":8,"bitrat":[0,5,7],"blackhol":[2,4,7,9],"blackhole_sourc":[7,10],"blackholed_ident":10,"blackholeupdat":10,"ble":5,"blindli":10,"blob":[0,9],"block":[2,5,7,9,10],"blocklist":10,"bluetooth":10,"board":[2,4,5,9,11],"bogu":5,"boil":3,"bookworm":4,"bool":7,"boot":[2,10],"bootstrap":[4,5,10],"bootstrap_onli":[2,5],"both":[0,2,3,5,6,7,9,10,11],"bounc":2,"boundari":[5,9],"box":3,"break":[2,7,9,11],"breath":2,"breviti":10,"bridg":[3,4,5],"briefli":[3,9],"bring":[5,10],"brittl":2,"broad":[2,3],"broadcast":[2,4,5,7,9,10],"broadcast_destin":0,"broadcastloop":0,"broader":9,"broken":2,"brought":[5,10],"browser":2,"buffer":[4,5,7,11],"bufferedread":7,"bufferedrwpair":7,"bufferedwrit":7,"bufferexampl":0,"bug":11,"build":[0,3,4,5,9,11],"built":[2,5,9,10,11],"bundl":0,"bureaucrat":11,"burst":5,"bw":10,"byte":[0,7,9,10,11],"bytes":0,"c":[0,6,10],"c50cc4e4f7838b6c31f60ab9032cbc62":10,"c89b4da064bf66d280f0e4d8abfd9806":10,"cabl":[5,6],"cach":[5,10],"calcul":[7,9,10],"call":[0,6,7,9,11],"callabl":[0,7],"callback":[0,7],"callsign":5,"can":[0,2,3,4,5,6,7,8,9,10],"cancel":7,"candid":6,"cannot":[0,2,5,11],"cap":5,"capabl":[0,5,9],"capac":[2,3,5,7,9],"carambola":0,"care":[2,7,10,11],"carefulli":2,"cargo_build_target":2,"carri":[5,7,9,10,11],"carrier":[6,11],"case":[0,2,3,5,6,9,10],"cat":10,"categori":3,"caus":[2,5],"caution":5,"caveat":4,"cb":[7,9],"cb127015e13aa6ea1e0a606cdc9123d0":[],"cbc":[9,11],"cd":[],"cdma":5,"censor":[9,10],"censorship":[9,11],"central":[2,3,5,6,9,10],"centralis":9,"certain":[0,5,6,8,9,10],"chain":5,"challeng":[2,9],"chanc":3,"chang":[0,2,5,7,9,10,11],"channel":[2,4,5,6,7,8,9,11],"channelarg":0,"channelexampl":0,"chapter":[2,3,5,6,7,9,10,11],"charact":[0,5],"characterist":[5,9],"charter":9,"cheap":[3,5,9],"cheapli":2,"check":[0,2,7,9,10],"checksum":[7,11],"choic":2,"choos":[0,2,5,9],"chose":9,"chosen":[6,9],"chunk":0,"cific":5,"ciphertext":7,"ciphertext_token":7,"circumst":[8,9],"cl":0,"claim":9,"class":[0,6,7,11],"clear":[0,5,7,9,10],"clear_default_app_data":7,"clear_screen":0,"client":[0,2,3,4,7,10],"client_buffer_readi":0,"client_connect":0,"client_disconnect":0,"client_ident":0,"client_loop":0,"client_message_receiv":0,"client_packet_receiv":0,"client_request":0,"clone":9,"close":[0,6,7,10],"closed_callback":7,"closer":9,"closest":9,"cloud":5,"cluster":9,"co":[3,5,11],"code":[2,3,4,5,10],"codingr":5,"collabor":9,"collaps":2,"collect":8,"com":[0,8],"combin":[2,4,6,9],"come":[2,5,9],"comma":[5,10],"command":[0,2,5,10],"comment":[5,10],"commis":2,"commit":2,"common":[0,2,3,4,6,9,10,11],"commonli":[3,5],"commun":[0,2,4,5,6,7,8,9,10,11],"communica":5,"compat":[0,2,3,5,7,9,10],"compil":2,"complet":[0,2,3,5,6,7,9,10,11],"complex":[2,5,9],"compon":[3,8,9],"compos":9,"comprehens":[],"compress":[0,7,9,10,11],"compromis":9,"comput":[2,5,9,11],"computation":[5,10],"concaten":7,"conceiv":[2,3],"concept":[4,9,10],"conceptu":4,"concert":9,"conclud":[0,7],"concurr":[3,9,10],"condit":[2,9,11],"conf":2,"config":[0,2,5,6,10],"configarg":0,"configdir":7,"configpath":0,"configur":[0,2,3,4,6,7,9,11],"configuraion":3,"configure_devic":0,"confirm":[9,11],"conflict":2,"confus":[3,9],"congest":9,"conjunct":5,"connect":[0,3,4,6,7,9,10,11],"consequ":9,"conserv":5,"consid":[0,2,5,7,9,10,11],"consider":[4,9],"consist":9,"consol":10,"constant":7,"constantli":9,"constitut":9,"constrain":7,"construct":[9,11],"constructor":0,"consum":7,"contact":9,"contain":[0,5,6,7,9,10],"contend":9,"content":[0,2,6,10],"context":[2,9,10],"contin":0,"continu":[5,7,8,10,11],"contribut":4,"control":[0,2,3,4,6,7,9,10,11],"convei":0,"conveni":[0,10],"convent":0,"converg":[2,4,9],"convers":9,"cook":2,"coordin":[5,6,7,9,11],"copi":10,"core":[6,9,10,11],"correct":[0,5,9],"correctli":0,"correspond":9,"cost":[3,5,9,11],"could":[0,2,5,6,7,9,10,11],"count":9,"counter":0,"coupl":[],"cours":[2,5,9],"cover":[2,3,9,11],"coverag":6,"cpu":[0,5,9],"cpuinfo":10,"cr":10,"creat":[0,4,5,6,7,10,11],"create_bidirectional_buff":[0,7],"create_kei":7,"create_read":7,"create_receipt":[0,7],"create_writ":7,"creation":[9,10,11],"creator":9,"credenti":[5,9],"critic":[9,10],"cross":5,"cryptograph":[2,4,5,6,10,11],"cryptographi":[2,9,11],"ctrl":0,"cull":7,"current":[0,2,4,5,7,10],"current_download":0,"current_filenam":0,"current_ratchet_id":7,"curv":[6,7,9,11],"curve25519":[6,7,9,11],"custom":[3,4,7,9,11],"custom_network_nam":5,"customis":5,"d":[6,10],"d56a4fa02c0a77b3575935aedd90bdb2":10,"daemon":[0,2,5,7,10],"dai":[6,7],"data":[0,2,3,4,5,6,7,9,11],"data_buff":0,"data_port":5,"databas":10,"databit":[0,5,10],"datacent":2,"datar":5,"date":[0,2,10],"datetim":0,"db":[0,10],"dbm":[0,5,10],"de":2,"debian":[4,9,10],"debug":[2,10],"decad":3,"decentr":[2,5,10],"decentralis":11,"decid":[5,6,7,9],"decim":5,"decis":[5,9],"declar":9,"decod":[0,5,10],"decreas":10,"decrypt":[5,7,9,10],"dedic":[5,9],"deep":2,"deepli":[],"def":0,"default":[0,2,3,5,6,7,9,10],"default_ifac_s":0,"defin":[0,5,7,9,10],"definit":[0,2,9,10],"defunct":10,"degrad":6,"degre":5,"delai":[2,5,9,10],"deleg":9,"delimit":0,"deliv":[0,2,7],"deliveri":[0,2,7,11],"demand":7,"demonstr":[0,2,5],"depend":[0,3,4,5,6,7,9,10],"deploi":9,"deregist":7,"deregister_announce_handl":7,"deregister_request_handl":7,"deriv":[2,7,9,11],"describ":[3,5,7,9],"descript":[0,10],"descriptor":0,"deseri":0,"deserializ":0,"design":[2,3,5,6,9,10,11],"desir":[0,3,5,9],"desktop":5,"dest_len":0,"destin":[0,2,4,6,7,10],"destination_1":0,"destination_2":0,"destination_clos":0,"destination_hash":[0,7,10],"destination_hexhash":0,"detach":5,"detail":[0,2,4,5,7,10,11],"detect":0,"determin":[2,7,9],"detriment":10,"dev":[0,2,5,10],"devel":2,"develop":[3,4,7,8,9,11],"devic":[0,2,4,5,6,7,9,10],"dh":7,"dhcp":[3,5,10],"dict":0,"dictat":10,"dictionari":10,"did":0,"differ":[0,2,3,5,6,7,9,10,11],"diffi":[6,9],"difficult":[2,3,10],"difficulti":[5,10],"digit":[2,3,9,11],"dir":0,"dire":3,"direct":[0,2,3,6,7,9,10],"direction":9,"directli":[2,3,5,7,9,10,11],"directori":[0,2,5,10],"disabl":[5,9,10],"disappear":[5,10],"disassoci":9,"discard":[2,7,9],"disconnect":[0,5],"discov":[2,4,5,7,9],"discover":[2,4,10],"discover_interfac":10,"discoverable_nam":[],"discoveri":[2,4,7,9,10],"discovery_bandwidth":5,"discovery_encrypt":5,"discovery_frequ":5,"discovery_modul":5,"discovery_nam":5,"discovery_port":5,"discovery_scop":5,"discovery_stamp_valu":5,"discrimin":6,"discuss":[2,3,9],"disk":[0,7,10],"displai":[0,5,9,10],"disrupt":5,"dissolv":6,"distanc":[3,9,10],"distant":[2,7,9],"distinct":[5,9],"distinguish":9,"distribut":[0,2,6,7,9,10,11],"disucss":[],"dive":2,"divid":7,"divmod":0,"dn":[3,5],"dnf":2,"do":[0,2,3,5,7,9,10,11],"document":[2,7,9,10],"doe":[0,2,3,4,5,6,7,9,10],"doesn":5,"domain":[2,5,9,10],"don":[0,2,6,7,9,10],"donat":4,"done":[0,2,5,6,9,10],"dori":6,"dot":[9,10],"doubt":2,"dowload":2,"down":[0,3,5,7,10],"download":[0,2,5,10],"download_began":0,"download_conclud":0,"download_finish":0,"download_start":0,"download_tim":0,"downstream":10,"drastic":10,"driver":[10,11],"droid":2,"drop":[5,7,9,10],"dsrdtr":0,"dual":[3,10],"dublin":10,"due":[0,6],"dump":10,"duplex":[9,11],"durat":10,"dynam":[2,5,10],"dysfunct":8,"e":[0,6,10],"e5c032d3ec4e64a6aca9927ba8ab73336780f6d71790":10,"e702c42ba8":10,"e7536ee90bd4a440e130490b87a25124":10,"each":[0,2,5,6,7,9,10],"earlier":9,"eas":[5,9],"easi":[2,3,5,9,10,11],"easier":[2,5,6,10,11],"easiest":[2,3,5,9],"easili":[2,5,6,9,10,11],"eastern":9,"ecdh":[9,11],"echo":4,"echo_destin":0,"echo_request":0,"ecosystem":[2,5,9,10],"ed25519":[9,11],"edit":[2,10],"eeprom":10,"effect":[5,9,10],"effici":[0,2,5,7,9,10,11],"effort":3,"eg":10,"ei":0,"either":[2,3,6,7,9,10],"elaps":5,"elif":0,"ellipt":[6,7,9,11],"els":[0,2,6,9,11],"elsewher":2,"embed":3,"emerg":[],"emploi":[3,9],"empow":11,"empti":0,"emptor":4,"emul":2,"enabl":[0,2,3,4,6,7,9,10,11],"enable_ratchet":7,"enable_remote_manag":10,"enable_transport":[5,9,10],"encapsul":[5,11],"encod":[0,7,10],"encount":2,"encourag":2,"encrypt":[0,2,5,6,7,9,10,11],"encrypted_mdu":7,"end":[0,5,6,7,9,11],"endless":5,"endpoint":[0,6,7,9],"energi":2,"enforc":[5,7,9,10],"enforce_ratchet":7,"engin":2,"enhanc":9,"enough":[2,3,9],"ensur":[0,2,5,7,9,10,11],"ensurepath":2,"enter":[0,10],"entir":[0,2,6,7,9,10],"entiti":[9,10],"entri":[0,2,9,10],"entrypoint":[4,5,10],"enumer":0,"envelop":7,"environ":[2,5,6,9],"environment":9,"environmentlogg":9,"eof":5,"ephemer":[6,7,9,11],"epub":4,"equal":[6,7,9],"equip":[5,6,9],"equival":5,"error":[0,2,5,8,10],"esc":0,"esc_mask":0,"escap":0,"esp32":3,"especi":[2,3,5],"essenti":[2,5,9,10],"establish":[0,2,5,6,7,10,11],"established_callback":7,"establishment_timeout_per_hop":7,"etc":10,"eth0":5,"eth1":5,"ethereum":8,"ethernet":[2,4,5,6,9,11],"even":[0,2,5,6,7,9,10,11],"event":5,"eventu":7,"ever":9,"everi":[0,2,5,6,7,9,10],"everydai":2,"everyon":[2,6,9],"everyth":[0,6,9],"evolv":[6,9],"exact":[3,5,9],"exactli":[7,9],"exampl":[2,3,4,7,9,10,11],"example_util":0,"exampleannouncehandl":0,"exampleconfig":[2,10],"exampleinterfac":0,"exce":[0,5,7],"except":[0,5,7],"excess":[5,10],"exchang":[6,7,9,11],"exclud":[7,9],"exclus":2,"execstart":10,"execstartpr":10,"execut":[0,2,5,7,10],"exhaust":[3,9,10],"exist":[0,2,3,5,9,10,11],"exit":[0,5,7,10],"expand":[9,11],"expand_nam":7,"expect":[0,5,7,9,10],"expens":[3,5],"experi":[2,9],"experienc":0,"experiment":[2,11],"expir":5,"expiri":[5,7],"explain":[3,7],"explan":[9,10],"explicit":7,"explicitli":[5,9,10],"explor":[0,9,11],"export":[2,10],"expos":[5,7,10],"exposur":5,"extend":[0,7],"extens":[5,11],"extern":[0,2,5,7,10,11],"extra":[2,5,6,10],"extract":10,"extrem":[2,9,10,11],"f":[0,2,10],"f4":5,"f53a1c4278e0726bb73fcc623d6ce763":10,"face":[2,5],"facilit":[2,9],"fact":[2,5,11],"factor":[5,7,10],"fail":[0,2,5,7],"failed_callback":[0,7],"failur":[2,5,7],"fake":10,"fals":[0,5,7],"famili":2,"far":[2,6,9],"fashion":8,"fast":[4,5,7,9],"faster":[2,5,9],"fastest":[5,9],"favor":2,"fe80":2,"featur":[2,5,7,8,9,11],"feder":[9,10],"fedora":2,"feed":[2,7],"feedback":[0,4],"feel":2,"fernet":9,"fetch":[5,10],"few":[2,3,5,6,9,10,11],"fewer":7,"ff":10,"fi":8,"fiber":3,"fibr":11,"field":9,"file":[0,2,3,5,6,7,9,10,11],"file_resourc":0,"file_s":0,"filelist":0,"filelist_data":0,"filelist_receiv":0,"filelist_timeout_job":0,"filenam":0,"filetransf":[4,7],"filter":[0,6,9,10],"final":[0,7,9],"find":[4,5,6,9,10],"find_spec":0,"fine":5,"firewal":[2,5],"firmwar":[2,3,9,10],"firmware_hash":10,"first":[0,2,5,7,9,10],"fit":0,"five":0,"fix":[4,9],"fixed_mtu":5,"flag":[0,2,7,9,10],"flash":10,"fleet":9,"flexibl":[2,3,5,11],"fli":9,"flight":7,"float":[0,7],"flood":[5,10],"flow":[0,2,5,6,9],"flow_control":5,"flush":0,"focu":10,"focus":9,"folder":0,"follow":[0,2,3,5,7,8,9,10,11],"forc":[0,10],"forcibli":[7,10],"foreground":2,"foremost":11,"forget":10,"form":[2,5,6,7,9,10],"format":[0,4,10,11],"forth":0,"forum":[],"forward":[5,7,9,11],"forward_ip":5,"forward_port":5,"found":[0,2,5,6,7,9,10],"foundat":[9,11],"four":6,"frame":[0,5],"free":[2,6,8,11],"freedom":9,"freedv":3,"freeli":9,"freq":10,"frequenc":[2,3,5,9,10],"frequent":5,"friend":2,"friendli":2,"from":[0,2,3,5,6,7,9,10,11],"from_byt":7,"from_fil":7,"from_identity_hash":7,"fromhex":0,"front":9,"fruit":0,"fsk":[],"ftdi_ft230x_basic_uart_43891ckm":10,"full":[0,2,5,7,9,10,11],"full_hash":7,"full_nam":[7,10],"fulli":[0,2,3,5,9,10,11],"funcion":7,"function":[0,2,3,4,5,6,7,8,10,11],"fundament":[3,9,10],"further":[2,4,5],"futur":[4,6,7,10],"fw":10,"g":[0,9,10],"ga":0,"gain":[2,3,7,9],"galact":9,"gap":2,"gatekeep":9,"gatewai":[0,2,5,6,9,10],"gbp":10,"gener":[0,2,3,5,6,7,9,10,11],"generalis":11,"genuin":10,"geograph":[2,5,6],"get":[0,3,4,5,7,10,11],"get_ag":7,"get_channel":[0,7],"get_config_obj":0,"get_data_s":7,"get_establishment_r":7,"get_expected_r":7,"get_external_ip":5,"get_hash":7,"get_inst":7,"get_mdu":7,"get_mod":7,"get_mtu":7,"get_packet_rssi":0,"get_packet_snr":0,"get_part":7,"get_private_kei":7,"get_progress":[0,7],"get_public_kei":7,"get_q":7,"get_random_hash":[0,7],"get_remote_ident":[0,7],"get_request_id":7,"get_respons":7,"get_response_tim":7,"get_rssi":7,"get_rtt":[0,7],"get_seg":7,"get_snr":7,"get_statu":7,"get_transfer_s":7,"geti2p":5,"ghz":9,"gi":0,"gigabyt":11,"git":[],"github":[0,2,8],"give":[2,5,9,10],"given":[5,6,7,9,10],"global":[0,4,5,6,7,9,10,11],"glue":3,"go":[0,5,9],"goal":[2,4,5],"goe":2,"good":[2,3,6,9,10],"got":0,"got_respons":0,"govern":9,"grace":7,"gracefulli":5,"grant":10,"grape":0,"graphic":2,"gratefulli":8,"great":[2,9],"greater":[7,9,10,11],"greatli":[2,5],"group":[5,7,9],"group_id":5,"groupinstal":2,"grow":[2,6],"grown":2,"growth":[2,4],"guarante":9,"guess":5,"guid":[2,3,9],"guidelin":2,"gw":5,"h":10,"ha":[0,2,3,5,6,7,9,11],"hack":11,"had":9,"half":[9,11],"hand":0,"handheld":9,"handl":[0,2,3,5,6,7,9,10,11],"handler":[0,7,10],"happen":[0,2,7,9],"hard":[2,3],"hardcod":2,"hardlin":6,"hardwar":[0,2,4,5,6,7,9,10,11],"has_path":[0,7],"hasattr":0,"hash":[0,7,9,10],"hash1":9,"hash2":9,"hash_from_name_and_ident":7,"hashlib":9,"hashmap":0,"have":[0,2,3,5,6,7,9,10],"hazard":7,"hdlc":0,"head":2,"header":[0,5,7,9],"header_1":9,"header_2":9,"health":4,"hear":9,"heard":[7,9,10],"height":5,"held":[5,10],"helium":0,"hellman":[6,9],"help":[0,2,6,8,9,10,11],"helper":0,"her":6,"here":[0,2,5,9,10],"heterogen":11,"hex":[0,10],"hexadecim":[0,9,10],"hexbyt":10,"hidden":10,"hide":2,"hierarch":11,"high":[2,3,5,9,10,11],"higher":[5,6,11],"highest":7,"highli":[2,5,9],"hill":6,"hint":0,"hit":0,"hkdf":9,"hmac":[9,11],"hoc":11,"hold":[5,7,9],"home":[2,6,10],"homebrew":5,"hop":[5,6,7,9,10,11],"hops_to":7,"host":[0,4,5,9,10],"hostnam":5,"hour":[0,5,10],"hous":2,"how":[0,2,3,5,6,9,10,11],"howev":[2,5,6,9],"http":[0,8],"hub":[2,5,10],"human":[0,5,7,8,9],"hundr":2,"hungri":3,"hw_mtu":0,"hwrev":10,"hygien":10,"hz":[5,10],"i":[0,2,3,4,5,6,7,8,9,10],"i2p":[2,4,11],"i2p_tunnel":5,"i2pd":[2,5],"i2pinterfac":[2,5],"ia":10,"ic":3,"ic_burst_freq":5,"ic_burst_freq_new":5,"ic_burst_hold":5,"ic_burst_penalti":5,"ic_held_release_interv":5,"ic_max_held_announc":5,"ic_new_tim":5,"id":[5,7,9,10],"id_callsign":5,"id_interv":5,"idea":[2,9,10],"ideal":11,"ident":[0,2,4,5,7,10,11],"identif":[4,5,11],"identifi":[0,5,7,9,10],"identifyexampl":0,"identity_data":10,"ie":10,"if00":10,"ifac":[0,2,5,9,10],"ifac_s":5,"ifconf":0,"ifconfig":10,"ignor":[5,7,9,10],"ignored_devic":5,"illustr":[0,5,6,9],"immedi":[5,10],"impact":[5,7,9],"implement":[0,5,6,7,8,9,11],"implic":[4,5],"implicit":[7,9],"implicitli":10,"import":[0,2,3,5,6,7,8,9,10],"importlib":0,"imposs":9,"impract":10,"improv":[2,4,5,8],"in_fram":0,"in_wait":0,"inactive_for":7,"inadvert":10,"inbound":[0,5,7],"includ":[0,3,4,5,7,9,11],"incom":[0,5,7,10],"incompat":[7,9],"increas":[5,7,10],"incur":5,"indefinit":10,"independ":[7,9,11],"index":[0,2,4],"indic":[0,7],"indirectli":9,"individu":[2,5,7,9,10,11],"inevit":[2,9],"infer":9,"influx":5,"info":[7,9,10],"inform":[0,2,4,5,6,7,9,10],"infrastructur":[3,4,5,6,9,10],"ingo":7,"ingress":[0,5],"ingress_control":5,"init":2,"initi":[0,5,6,7,9,11],"initialis":[0,7,10],"input":[0,10],"insert":9,"insid":9,"inspect":[2,5,6,9,10],"instal":[0,4,5,6,9,10,11],"instanc":[0,4,5,7,9,10],"instance_control_port":10,"instance_nam":10,"instanti":7,"instantli":10,"instead":[0,2,5,7,9,10],"instruct":2,"int":[0,7],"integ":[0,7],"integr":[2,6,9,10],"intend":[2,5,6,9,10],"intens":10,"intention":9,"inter":[7,9],"inter_byte_timeout":0,"interact":[0,2,7,9,10],"interchang":5,"interconnect":[4,5,9],"interest":[2,9],"interfac":[3,4,6,7],"interface_class":0,"interface_discovery_sourc":[7,10],"interface_en":10,"interfer":10,"intermediari":[5,7,9],"intermitt":5,"intern":[0,5,7,9],"internal_1":5,"internet":[4,5,9,10,11],"interoper":[2,3,6,9,11],"interrupt":5,"interv":[5,7,10],"intervent":10,"intiat":0,"intrefac":[],"introduc":9,"introduct":4,"intuit":11,"invalid":[0,7],"invers":9,"investig":6,"invis":[2,5],"invit":5,"involv":6,"io":3,"ioerror":0,"iot":3,"ip":[2,3,5,9,10,11],"ipsum":[],"ipv4":5,"ipv6":[2,5,10],"is_compress":7,"is_connected_to_shared_inst":0,"is_open":0,"is_path_respons":7,"is_ready_to_send":[0,7],"isdir":0,"isfil":0,"isinst":0,"island":6,"ism":[3,9],"isol":[2,5,10],"isp":5,"issu":[4,5,6,8],"its":[3,5,7,9,10],"itself":[2,4,9,10],"iv":[9,11],"j":10,"jail":10,"job":0,"join":[0,2,6,8,9],"json":10,"just":[0,2,3,5,6,9,11],"k":[0,10],"kb":10,"kbp":10,"keep":[0,2,6,7,9,10,11],"keepal":[7,9],"keepalive_timeout_factor":7,"kei":[0,4,5,6,7,10,11],"kept":[5,6,7,9],"kernel":[5,10,11],"keyboardinterrupt":0,"keyerror":7,"keypair":9,"keyset":[9,10,11],"keysiz":7,"keystor":6,"khz":5,"ki":0,"kill":[7,9],"kind":[3,5,6,9],"kiss":[3,4,10,11],"kiss_fram":5,"kissinterfac":[5,10],"know":[0,2,3,5,6,7,9],"knowledg":[6,9],"known":[0,5,7,9,10],"ko":8,"krypton":0,"l":[5,10],"lack":9,"laid":9,"lan":5,"larg":[0,3,5,6,7,9,10,11],"larger":[6,9,10],"laser":5,"last":[0,5,7,10],"last_read_m":0,"last_unit":0,"latenc":[2,9,11],"later":[0,2,5,10],"latest":[0,2,5,7,10],"latest_buff":0,"latest_client_link":0,"latitud":5,"laucnh":2,"launch":[2,10],"layer":[3,5,6,7,9,10,11],"lead":[2,9],"leak":2,"learn":[0,2,8,9],"least":[2,3,5,9,10,11],"leav":[2,6,9],"ledger":9,"left":[5,7,9,10],"legaci":6,"legal":5,"legisl":5,"legitim":[2,10],"len":0,"length":[0,5,7,9],"less":[0,2,3,5,7,9,11],"let":[0,2,5,6,9,10],"level":[3,5,9,10],"liber":3,"liberapai":8,"libffi":2,"librari":2,"licens":9,"lift":10,"light":10,"lightweight":11,"like":[0,2,3,5,6,7,9,10,11],"limit":[0,2,3,4,6,9],"line":[0,2,4,5,6,9,10,11],"linger":10,"link":[2,3,4,5,6,7,10,11],"link_clos":0,"link_establish":0,"link_id":[0,7],"link_mtu_discoveri":7,"linkexampl":0,"linux":[2,3,5,9],"list":[0,2,3,4,5,7,9,11],"list_deliv":0,"list_fil":0,"list_filt":10,"list_packet":0,"list_receipt":0,"list_timeout":0,"listdir":0,"listen":[0,2,4,9,10],"listen_ip":5,"listen_on":[2,5],"listen_port":5,"littl":[3,9],"live":[2,7],"lki":9,"lkr":9,"ll":[0,11],"ln":10,"load":[0,2,3,5,7,10,11],"load_private_kei":7,"load_public_kei":7,"local":[0,2,4,5,6,7,9,11],"locat":[2,5,6,9,10],"log":[0,2,5,10],"log_crit":0,"log_error":0,"log_info":0,"log_verbos":0,"logdest":7,"logic":9,"loginctl":10,"loglevel":[0,7,10],"long":[0,2,3,5,7,9,10],"longer":[0,2,6,9,10],"longest":5,"longitud":5,"look":[0,2,5,9,10],"loop":0,"lora":[2,3,4,9,11],"lorawan":[3,9],"lorem":[],"loss":[5,9],"lot":9,"low":[2,3,5,6,9,11],"lower":[0,2,5,10],"ltu":3,"lunar":4,"lxmf":[2,5,7,10],"m":[0,2,9,10],"mac":[5,9],"machin":[2,9,10],"maco":4,"made":[2,5,7,9],"mai":[2,5,7,9,10],"main":0,"mainli":6,"maintain":[2,9,10],"mainten":9,"make":[0,2,3,5,8,9,10,11],"malici":[2,9,10],"manag":[2,4,6,7,9,11],"mani":[0,2,3,5,6,7,9,10,11],"manipul":[9,11],"manjaro":2,"manner":6,"manual":[0,2,5,6,7,9,10],"manufactur":[3,5],"map":[5,9,10],"mark":[2,7,9],"markqvist":[0,8],"master":[0,7],"match":[0,5,9,10],"matter":[2,5],"matur":10,"max":10,"max_autoconnected_interfac":[],"maximum":[0,5,7,9,10],"mbp":10,"mdu":[0,7],"mean":[2,3,5,6,7,9,10],"meaning":2,"meantim":7,"measur":9,"mechan":[2,4,5,10,11],"medium":[0,3,5,6,7,9,11],"member":[2,6,9],"memori":[2,9],"mention":[5,9],"menu":0,"menu_mod":0,"mere":[],"merg":10,"mesh":[2,5,6,9,10,11],"meshchat":4,"messag":[0,2,7,9,10],"message_class":7,"messagebas":[0,4,7],"messagecallbacktyp":7,"messeng":9,"met":2,"metadata":[2,5,9,10],"metavar":0,"meter":5,"meth":0,"method":[0,2,5,7,9],"methodologi":[9,10],"mevpekyafshak5wr":5,"mhz":[5,9],"mi":0,"microcontrol":9,"might":[2,5,6,9,10],"mikrotik":3,"millimet":3,"millisecond":[0,10],"mind":[6,11],"minim":[3,4,9],"minimalsampl":0,"minimum":[0,5,6,7,9,10],"minimum_bitr":7,"minor":[],"minut":[0,2,5,9],"mirror":10,"misconfigur":2,"mislead":2,"miss":[0,2],"mistak":2,"mix":[4,5,6,10],"mixtur":11,"mobil":[5,9],"mode":[0,2,3,4,7,9,10,11],"model":10,"modem":[4,5,6,7,9,11],"moder":5,"modern":[2,3],"modifi":[5,9,10],"modul":[0,2,3,5,9,10,11],"moment":9,"momentarili":5,"monero":8,"monitor":[2,5,9,10],"moon":0,"more":[0,2,3,5,6,7,9,10,11],"most":[2,3,5,6,7,9,10],"mostli":[5,6,9],"motiv":4,"move":[5,9,10],"msgtype":[0,7],"mtu":[0,5,7,9,11],"much":[2,5,6,9,10,11],"multi":[4,9,10,11],"multicast":5,"multicast_address_typ":5,"multilater":9,"multipl":[0,5,6,9,10],"multiplex":0,"multipoint":9,"multitud":2,"must":[0,2,5,6,7,9,10],"mw":5,"my":[5,9],"my_fil":10,"my_ident":10,"my_network":[9,10],"my_network_ident":5,"mycal":5,"myriad":9,"n":[0,9,10],"name":[0,2,4,5,6,7],"namespac":0,"nano":[],"narg":0,"nat":[2,5],"nativ":0,"natur":5,"nearbi":5,"nearest":5,"nears":9,"neccessari":5,"necesarri":5,"necessari":[3,5,6,7,9],"necessarili":9,"need":[0,2,3,4,5,6,7,9,10,11],"neg":2,"neglig":9,"neither":[7,9],"neon":0,"neopixel":10,"net":5,"netcat":5,"network":[0,3,5,7,10,11],"network_ident":[5,9,10],"network_nam":[2,5],"never":[5,7,9],"new":[0,2,4,6,7,9,10],"new_id":10,"new_ident":10,"newer":[7,9],"newest":9,"newli":[5,6,7,9],"newlin":5,"next":[2,5,6,7,9],"next_hop":7,"next_hop_interfac":7,"nicknam":9,"no1cll":5,"no_data_for":7,"no_inbound_for":7,"no_outbound_for":7,"noauth":10,"nobl":0,"noble_ga":0,"noble_gas":0,"nocheck":10,"node":[2,4,5,6,10,11],"noid":10,"nois":7,"nomad":4,"nomadnet":2,"non":[2,7,9],"none":[0,2,5,7,9,10],"nor":2,"normal":[0,2,5,7,9,10],"notat":[9,10],"note":[0,3,4,5,7,9,10],"noth":[3,11],"notic":[5,9,10],"notif":[0,7],"now":[0,2,6,9,10],"np":10,"nrf52":3,"nt":0,"num":0,"number":[0,2,5,6,7,9,10],"o":[0,2,5,9,10,11],"object":[0,7],"obscur":2,"obtain":[2,3,7,9],"obvious":9,"occasion":[],"occur":[0,5,10,11],"ocur":7,"odd":0,"off":[2,5,9,10,11],"offer":[2,4,5,7,9,10],"offici":[],"offlin":[0,2],"often":[2,5,6,9,10],"oganesson":0,"old":[0,2,3,8,9],"older":10,"omit":7,"on_interfac":7,"onc":[0,2,3,5,6,7,9,10,11],"one":[0,2,3,5,6,7,9,10,11],"ones":[2,5,10],"oneself":9,"onli":[0,2,3,5,6,7,9,10,11],"onlin":[0,10],"onto":[2,9],"open":[0,2,3,5,6,7,8,9,10,11],"open_port":0,"openmodem":[5,11],"openssl":[2,9],"openwrt":4,"oper":[2,3,5,6,7,9,10,11],"opkg":2,"opposit":[0,5],"opt":9,"optic":[3,11],"optim":[2,6],"option":[0,2,3,4,6,7,9,10],"ord":0,"order":[0,7,10],"organ":[2,6,9,10],"organis":[5,6,8],"orient":9,"origin":[0,6,9],"os":2,"other":[0,2,3,5,6,7,9,10],"otherwis":[0,7],"our":[0,5,9],"out":[0,2,3,5,6,7,9,10,11],"outbound":[7,9],"outgo":[0,5,7,9,10],"outli":6,"outlier":6,"outlin":[2,3,9],"output":[5,10],"outsid":[7,11],"over":[0,3,4,5,7,9,10,11],"overal":[9,10],"overcom":9,"overhead":[2,3,5,9,10],"overlai":2,"overrid":0,"oversight":9,"overview":[4,5],"overwhelm":[5,7],"overwrit":10,"own":[0,2,6,7,9,10,11],"owner":0,"p":[0,10],"pack":[0,7],"packag":[0,2,5,9],"packb":0,"packed_s":0,"packet":[0,2,4,5,6,7,10,11],"packet_callback":0,"packet_deliv":0,"packet_hash":0,"packet_receipt":[0,7],"packet_timed_out":0,"packetreceipt":[0,4,7],"pad":[9,11],"page":[2,4,9,10],"pair":[5,7,9,10],"pamac":2,"panic":[0,10],"panic_on_interface_error":[0,10],"paper":2,"par":[0,2],"paradigm":[],"parallel":2,"param":0,"paramet":[0,3,4,6,7,9,10],"pariti":[0,5,10],"parity_even":0,"parity_non":0,"parity_odd":0,"pars":0,"parse_arg":0,"parser":0,"part":[0,2,5,6,7,9,10],"particip":[2,4,5,6,9,10],"particular":[0,3,5,9,10],"particularli":[5,10],"pass":[0,3,5,6,7,9,10],"passphras":[2,5,9],"passport":9,"past":10,"path":[0,2,3,5,7,9,10],"path_respons":7,"pathfinder_m":7,"pattern":[3,9],"payload":[0,5,7,9,10],"pdf":4,"peach":0,"peer":[0,2,5,7,9,10],"penalti":5,"pend":[0,9],"peopl":[2,9],"per":[5,7,9,10,11],"percent":[0,5],"percentag":7,"perfectli":2,"perform":[0,2,5,6,7,9,10],"perhap":2,"period":[0,5,7,9,10],"perman":[2,5,10],"permiss":5,"permissionless":[9,10],"persecut":9,"persist":[5,10],"person":[4,5,9],"perspect":[5,7,9,11],"pet":0,"philosophi":9,"phone":2,"phy":10,"physic":[0,2,3,5,7,9,10,11],"pi":[0,4,6,9,10,11],"pick":9,"piec":9,"ping":10,"pip":[0,2,3,5,10],"pip3":2,"pipe":[2,4,11],"pipeinterfac":[3,5],"pipx":2,"pitfal":9,"pkcs7":[9,11],"pkg":2,"place":[0,2,5,6,9,10],"plaform":3,"plain":[0,3,5,7,9],"plain_mdu":7,"plaintext":[0,7],"plan":[6,9],"planetari":11,"platform":[0,3,4,9,10],"pleas":[0,2,5,7,10,11],"plenti":9,"plug":10,"pmr":9,"point":[2,3,5,6,9,10],"pointer":2,"polici":10,"pomelo":0,"poorli":6,"popul":7,"popular":11,"port":[0,2,3,4,5,6,9,11],"port0":10,"portabl":[5,9],"pose":[2,9],"posit":[0,10],"posix":2,"possess":[5,9],"possibl":[2,3,5,6,7,9,10,11],"possibli":[2,9],"post":0,"postfix":10,"potenti":[0,2,5,8,9,10,11],"power":[2,3,5,9,10,11],"powershel":2,"ppp":0,"practic":[2,9,11],"pre":[2,7,9],"preambl":[5,10],"preced":0,"precompil":2,"predict":9,"prefer":[2,9],"prefer_ipv6":5,"prepar":[0,6,9],"prerequisit":7,"presenc":[5,7],"present":[5,9,10],"preserv":[2,7],"preshar":9,"press":0,"pretend":9,"pretti":9,"prettyhexrep":0,"prevent":[5,10],"previou":0,"previous":[5,6,7,9],"primari":9,"primarili":5,"primit":[2,4],"principl":[9,11],"print":[0,5,10],"print_filelist":0,"print_help":0,"print_menu":0,"priorit":9,"prioriti":9,"prioritis":[4,5,6,7],"privaci":[2,5,11],"privat":[2,5,7,8,9,10,11],"private_ret":2,"privileg":10,"probabl":[0,2,6,9,10,11],"probe":10,"problem":[2,9,10],"proc":10,"procedur":[2,7,9],"process":[0,2,3,5,7,9,10],"process_incom":0,"process_outgo":0,"product":10,"program":[0,3,4,5,7,9,11],"program_setup":0,"programm":9,"programmat":9,"progress":[0,7,10,11],"progress_callback":7,"project":2,"promis":2,"prompt":[0,2],"proof":[0,5,7,9,10],"proof_packet":0,"proof_requested_callback":7,"proof_strategi":7,"propag":[4,5,7,10],"proper":2,"properli":2,"properti":[0,6,7],"proport":9,"propos":2,"protect":[2,10],"protocol":[2,3,4,5,11],"prove":[0,9],"prove_al":[0,7],"prove_app":7,"prove_non":7,"proven":[7,9],"provid":[0,2,3,4,5,6,7,9,10,11],"provis":[3,10],"proxim":[],"prv_byte":7,"pseudo":10,"pub_byt":7,"public":[0,4,5,7,10],"public_inform":0,"publicli":[2,5,9,10],"publish":[2,4,5,7,9],"publish_blackhol":10,"publish_blackhole_en":7,"publish_ifac":5,"pull":[],"purchas":[2,6,9,11],"pure":[4,9],"purg":7,"purpos":[2,3,5,7,9,10],"put":[0,3,5,10],"py":[0,9,10],"py3":2,"pyca":[2,9],"pyseri":[0,2],"python":[0,4,5,7,9,10,11],"python3":[0,2,3],"q":[0,10],"qr":2,"qualiti":[7,10],"quantiti":2,"quarter":2,"queri":[0,2,7,10],"question":[2,3,5],"queu":[7,10],"queue":[5,9],"quickli":[8,9,11],"quiet":[5,10],"quinc":0,"quirk":2,"quit":[0,2],"r":[0,5,9,10],"radio":[4,5,6,7,9,10,11],"radon":0,"rais":[0,7],"rak":3,"ram":[2,5],"randint":0,"random":[0,7,9],"random_text_gener":0,"randomis":9,"randomli":[0,9],"rang":[0,2,3,5,6,9,10,11],"rapidli":5,"rare":[2,5],"raspberri":[4,6,9,10,11],"rasperri":2,"ratchet":[7,9],"ratchet_count":7,"ratchet_expiri":7,"ratchet_id_receiv":7,"ratchet_interv":7,"ratchets":7,"ratchets_path":7,"rate":[0,4,7,10],"rather":[2,7],"ratio":7,"raw":[0,3,7],"rawchannelread":[4,7],"rawchannelwrit":[4,7],"rawiobas":7,"rb":0,"re":[0,5,7,9],"reach":[2,4,5,6,7,10],"reachabl":[0,2,5,6,7,9,10],"reachable_on":5,"read":[0,2,5,7,9,10],"read_loop":0,"readabl":[0,5,7,9,10],"reader":[0,7],"readi":[0,2,3,5,6,7,11],"readili":11,"ready_byt":[0,7],"ready_callback":7,"real":[2,3,6,11],"realiti":[2,8],"realli":[5,7],"reappear":5,"reason":[2,5,9,10],"reassembl":9,"reboot":2,"recal":[0,7,10],"recall_app_data":7,"recap":9,"receipt":[0,7,9],"receiv":[0,2,5,7,9,10],"receive_path_respons":7,"receive_stream_id":7,"received_announc":[0,7],"recent":[7,9],"recept":7,"reception_rssi":0,"reception_snr":0,"reception_stat":0,"recip":[],"recipi":9,"recogn":9,"recommend":[0,2,5,9],"recondit":10,"reconnect":0,"reconnect_port":0,"reconstruct":9,"record":[2,9],"recoveri":5,"recreat":9,"recurs":[7,9],"reduc":[5,10],"redund":[],"refer":[0,2,4,5,10],"refresh":10,"regain":2,"regard":9,"region":5,"regist":[0,7,10],"register_announce_handl":[0,7],"register_message_typ":[0,7],"register_request_handl":[0,7],"regul":5,"regular":10,"rel":[3,5,9],"relai":2,"relat":2,"relationship":[9,10],"releas":[2,5,7,9],"relev":[0,2,3,5,7,9,10],"reli":[2,5,8,9,10],"reliabl":[2,3,5,6,7,9,11],"relianc":2,"reload":10,"rem":0,"remain":[5,7,9],"rememb":[7,9],"remot":[0,4,7,9],"remote_ident":[0,7],"remote_identifi":0,"remote_management_allow":10,"remote_management_en":7,"remote_p":0,"remotesensor":9,"remov":[7,10],"remove_message_handl":7,"remove_ready_callback":7,"render":2,"repeat":[],"replac":[0,2,7,9,10],"repli":[0,10],"replic":[3,9],"reply_data":0,"reply_messag":0,"reply_text":0,"report":[5,7,8,10],"repositori":[2,8,9],"repres":9,"represent":[0,7],"repurpos":2,"reput":[9,10],"request":[4,5,7,9,10,11],"request_destin":0,"request_fail":0,"request_id":[0,7],"request_packet":0,"request_path":[0,7],"request_receipt":[0,7],"request_receiv":0,"requested_at":[0,7],"requestexampl":0,"requestor":5,"requestreceipt":[4,7],"requir":[0,2,5,6,7,9,10,11],"require_shared_inst":7,"required_discovery_valu":[7,10],"research":11,"resend":7,"reserv":[0,7],"resid":5,"resili":[2,10,11],"resolut":[2,5,9],"resolv":[4,5,9,10],"resourc":[0,2,4,5,7,8,10],"resource_callback":7,"resource_sending_conclud":0,"resource_strategi":7,"respawn":5,"respawn_delai":5,"respawn_interv":5,"respect":[5,11],"respond":[0,7,10],"respond_to_prob":10,"respons":[4,5,7,9,11],"response_callback":[0,7],"response_gener":[0,7],"rest":[6,11],"restart":[5,10],"restartsec":10,"restor":[2,5],"restrict":[5,6,10],"result":[0,2,5,9,10],"ret":[4,9],"retain":[5,7],"retained_ratchet":7,"reticulum":[0,5,6,7],"retransmiss":9,"retransmit":[5,9],"retri":[0,7,9],"retriev":[7,10],"return":[0,7,10],"reveal":[2,7,9,11],"revers":10,"review":[9,11],"revis":10,"rfe":10,"ridicul":9,"right":[2,5,6],"risc":4,"risk":9,"rmap":2,"rn":[0,2,3,7,9,10],"rncp":4,"rnid":[4,9],"rnode":[2,4,9,10,11],"rnodeconf":[3,4],"rnodef3b9":5,"rnodeinterfac":[2,3,5,10],"rnodemultiinterfac":5,"rnpath":[2,4,5],"rnprobe":[2,4],"rns_bin_dir":10,"rnsd":[2,4],"rnsh":[2,10],"rnspure":[2,9],"rnstatu":[2,4,5,9],"rnstransport":[5,10],"rnx":4,"roadmap":8,"roam":5,"robot":9,"robust":[2,5],"roll":5,"rom":10,"root":9,"rotat":[7,9,10],"round":[0,7,10],"rout":[2,3,5,6,7,9,10,11],"router":[2,5,10],"rpc":10,"rpc_kei":10,"rprogress":0,"rssi":[0,7,10],"rtsct":0,"rtt":[0,7,9],"rttstring":0,"rule":[2,4,5,10],"run":[0,2,3,5,6,7,9,10,11],"runtim":[0,9],"rust":2,"rx":[5,10],"rxb":0,"safe":9,"sai":2,"said":9,"same":[0,2,3,5,6,7,9,10],"sanction":[],"satisfi":9,"save":[7,9,10],"save_error":0,"saved_filenam":0,"scalabl":[10,11],"scale":[9,11],"scan":[2,5],"scenario":[2,4,5,9],"schedul":7,"scheme":[3,5],"scope":5,"scratch":3,"screen":0,"script":[2,3,5],"scrutini":9,"seamless":[5,9],"seamlessli":5,"search":[4,7],"second":[0,5,7,9,10,11],"secreci":[5,7,9,11],"secret":9,"section":[2,3,5,6,9,10],"secur":[2,4,9,10,11],"see":[0,2,5,6,7,9,10,11],"seek":9,"seen":[5,9],"segment":[0,2,5,6,7,9,10,11],"select":[0,2,5],"self":[0,2,6,9,11],"semtech":3,"send":[0,5,7,9,10],"send_stream_id":7,"sender":[0,2,6,9,10],"sensibl":[2,3,5],"sensor":9,"sent":[0,2,7,9,10],"sentiment":9,"separ":[0,2,5,6,9,10],"sequenc":[0,7,9,11],"sequenti":11,"seri":3,"serial":[0,2,4,9,11],"serialinterfac":[3,5],"serv":[0,3,5,6,9,10],"serve_path":0,"server":[0,2,3,4,7,9,10],"server_buffer_readi":0,"server_callback":0,"server_client_connect":0,"server_destin":0,"server_fil":0,"server_ident":0,"server_link":0,"server_loop":0,"server_message_receiv":0,"server_packet_receiv":0,"servic":[2,4,6,9],"session":[2,9],"set":[0,2,3,5,6,7,9,10,11],"set_default_app_data":7,"set_delivery_callback":[0,7],"set_link_closed_callback":[0,7],"set_link_established_callback":[0,7],"set_packet_callback":[0,7],"set_proof_requested_callback":7,"set_proof_strategi":[0,7],"set_ratchet_interv":7,"set_remote_identified_callback":[0,7],"set_resource_callback":7,"set_resource_concluded_callback":[0,7],"set_resource_started_callback":[0,7],"set_resource_strategi":[0,7],"set_retained_ratchet":7,"set_timeout":[0,7],"set_timeout_callback":[0,7],"setup":[0,2,4,5,10],"sever":[2,6,7,10],"sf":10,"sh":5,"sha":[7,9],"sha256":[9,11],"shall":9,"share":[0,2,6,7,9,10],"share_inst":10,"shared_instance_port":10,"shared_instance_typ":[7,10],"she":6,"shelf":[9,11],"shell":[4,10],"ship":[2,9],"shop":0,"short":[3,5,9,10],"shorter":5,"shorthand":[5,10],"shot":2,"should":[0,2,5,6,7,9,10,11],"should_ingress_limit":0,"should_quit":0,"should_use_implicit_proof":7,"show":[2,10],"shown":0,"side":[5,11],"sideband":[4,10],"sight":6,"sign":[5,7,9,10],"signal":[0,5,7,9],"signatur":[7,9,10,11],"signifi":9,"significantli":[5,7],"silent":10,"similar":[0,2,3,5,6,7,10,11],"simpl":[0,2,3,7,9,10,11],"simpler":[5,11],"simplest":[5,9],"simpli":[0,2,3,5,6,9,10],"simplic":9,"simplifi":0,"simplyequip":3,"simultan":[2,9],"sinc":[0,2,5,6,7,9],"singl":[0,2,5,7,9,10,11],"singular":9,"sit":2,"site":[4,5],"situat":[2,3,5,6,9,10],"size":[0,2,5,7,9,10],"size_str":0,"skip":0,"slate":2,"sleep":[0,2,10],"slice":0,"slightli":[0,2],"slottim":[5,10],"slow":[0,5,9],"slower":[5,7,9],"small":[0,2,5,6,7,9,11],"smaller":7,"smallest":2,"snippet":[2,10],"snr":[0,7,10],"so":[0,2,3,5,6,7,8,9,10,11],"social":2,"socket":[5,10,11],"softwar":[2,3,5,9],"sole":5,"solut":[2,9,10],"solv":9,"some":[0,2,3,5,6,7,9,10],"someon":[2,5,10],"someth":9,"somethign":0,"sometim":[3,5],"somewhat":2,"soon":7,"sort":[5,9,10],"soundmodem":5,"sourc":[0,2,3,4,6,7,9,11],"sovereign":[2,9],"sovereignti":11,"space":[0,2,3,6,9,11],"spam":[2,5,9,10],"spammi":10,"span":[5,9],"spawn":5,"spe":5,"spec":9,"special":[9,10],"specif":[0,3,4,5,7,10],"specifi":[0,2,3,5,6,7,9,10],"spectrum":[5,9],"speed":[0,5,7,9,10],"split":0,"sponsor":[8,11],"spread":[5,10],"spreadingfactor":5,"squelch":5,"ssh":2,"ssid":5,"stabl":[2,5,9,11],"stack":[0,2,6,7,9,10,11],"stage":9,"stai":[0,9,10],"stale":7,"stale_grac":7,"stale_tim":7,"stamp":[5,7,10],"standalon":4,"standard":[3,5,9,10],"start":[0,3,4,5,7,9,10],"startup":[0,2,10],"stat":[7,10],"state":0,"static":[2,5,7],"staticmethod":0,"station":5,"stationari":[6,10],"statist":[0,5,7,8],"statu":[0,2,4,5,7,9,10],"stderr":10,"stdin":[5,10],"stdio":11,"stdout":[0,5,10],"step":[0,2,3],"still":[0,2,5,6,9,10],"stock":0,"stop":[7,11],"stopbit":[0,5,10],"storag":[2,5,9,10],"store":[0,7,9,10],"store_tru":0,"str":0,"straightforward":5,"strategi":[4,5,7],"stream":[0,7,9],"stream_id":[0,7],"strength":[7,11],"strict":[],"strictli":[5,9],"string":[0,7],"stringmessag":0,"strong":9,"stronger":2,"strongli":2,"struct":0,"structur":[0,7,9,11],"style":5,"sub":[0,5],"subclass":[0,7],"subinterfac":5,"subject":[2,10,11],"submit":[],"subnet":[2,6],"subscrib":[2,10],"subsequ":[0,9],"subset":5,"subsid":5,"substanti":2,"succe":2,"succeed":[0,7],"success":[2,5],"successful":7,"successfulli":[0,7,9],"sudo":[2,10],"suffic":9,"suffici":[2,5,9,10],"suffix":0,"suggest":8,"suit":[2,3,9,10],"suitabl":[0,2,5,6,9,10,11],"super":0,"supersed":5,"suppli":[0,5,6,7,9,11],"supplier":2,"support":[0,2,4,5,6,7,9,10,11],"sure":[0,2,3,10],"surveil":9,"surviv":[2,9,10],"switch":[3,5,9,10],"sx1262":3,"sx1268":3,"sx1276":3,"sx1278":3,"sx1280":3,"sy":0,"symlink":10,"symmetr":[7,9],"system":[0,2,3,4,5,6,7,8,9,11],"systemctl":10,"systemd":10,"t":[0,2,5,6,7,9,10],"tabl":[2,5,6,9,10],"tablet":2,"tag":7,"tail":5,"tailor":9,"take":[0,2,5,9,10,11],"taken":[0,9],"tangerin":0,"tap":3,"target":[0,5,10],"target_hash":7,"target_host":[2,5],"target_port":[2,5,10],"task":10,"tcp":[2,3,4,6,9,10,11],"tcpclientinterfac":[2,3,5],"tcpinterfac":10,"tcpserverinterfac":[2,5],"tdata":0,"teach":10,"teardown":[0,7],"teardown_reason":0,"technologi":2,"teffect":0,"telemetri":8,"tell":[0,2,5],"temperatur":9,"temporari":[2,5,10],"temporarili":5,"ten":9,"tend":5,"term":[2,5,6,9],"termin":[0,2,7],"terminologi":[6,9],"termux":2,"test":[2,9,10],"testnet":[4,10],"text":[0,2,6,9],"tfile":0,"tgz":10,"than":[0,2,5,6,7,9,10,11],"thei":[0,2,5,6,7,9,10],"them":[0,2,3,5,6,8,9,10,11],"themselv":5,"thereaft":9,"therefor":[2,9,11],"thi":[0,2,3,4,5,6,7,9,10,11],"thing":[0,2],"think":[2,3,9],"thorough":11,"those":[2,6,9,10],"though":[2,5,9],"thousand":[2,5,9,10],"thread":0,"threat":10,"three":[2,6,9],"threshold":5,"throough":5,"throttl":[5,6],"through":[0,2,3,5,6,7,9,10,11],"throughout":9,"throughput":[7,9,11],"thrown":7,"thu":[6,7,9],"ti":[0,9],"time":[0,2,3,5,6,7,9,10],"time_since_last":0,"timeout":[0,7,10],"timeoutarg":0,"timestamp":[0,9],"timestr":0,"tion":5,"tmp":[],"tnc":[3,5,7,10,11],"tnid2":[],"to_fil":7,"todai":9,"todo":[],"togeth":[3,9,10],"token":[7,9,11],"toler":5,"too":[0,6],"tool":[2,3,9,10,11],"toolkit":2,"top":[6,9],"topic":9,"topographi":[2,6,9],"topologi":[2,5,9,11],"torn":[7,10],"total":[7,9,10,11],"total_s":0,"touch":11,"toward":[0,5,9],"track":7,"track_phy_stat":7,"trade":9,"tradit":[6,9],"traffic":[0,2,5,6,7,9,10],"transceiv":[2,3,5,9,11],"transfer":[0,7,9,10,11],"transfer_s":0,"transform":11,"transit":2,"transmiss":[2,5,7,9],"transmit":[0,5,9],"transpar":[3,5,9,10],"transport":[0,2,4,5,6,7,10,11],"transport_en":7,"transport_ident":10,"travers":[2,7,9],"treat":9,"tri":0,"trip":[0,7,10],"trivial":[9,11],"true":[0,2,5,7,10],"truli":[3,9],"truncat":[7,9,10],"truncated_hash":7,"truncated_hashlength":[0,7],"trust":[2,5,9,10],"trustless":[6,9,11],"trustworthi":10,"try":[0,4,5,7],"ttime":0,"ttransfer":0,"ttyacm0":5,"ttyusb0":[0,5,10],"ttyusb1":5,"ttyusb2":5,"tun":[3,5],"tun0":5,"tune":5,"tunnel":[2,5,9,11],"tupl":7,"turn":[0,5,10],"turnaround":5,"tutori":2,"two":[0,3,5,6,7,9],"tx":[5,10],"txb":0,"txp":10,"txpower":5,"txt":10,"txtail":[5,10],"type":[0,2,4,5,6,7,10],"typeerror":7,"typic":[5,9],"u":[8,9,10],"ubiqu":3,"ubuntu":[4,10],"uci":2,"udp":[4,6,9,10,11],"udpinterfac":5,"uhf":[10,11],"ultim":[2,9],"umsgpack":0,"unblackhol":10,"unblock":10,"uncencrypt":0,"uncensor":2,"under":[7,8,9,10,11],"underli":[0,5,6,7,9,11],"understand":[2,4,5,7,10],"underwai":2,"unencrypt":[0,7,9],"unequivoc":9,"unexplor":6,"unforg":11,"unfortun":2,"unidentifi":0,"unidirect":0,"unifi":[6,9],"uninterest":0,"uniqu":[0,5,7,9,10,11],"unit":[0,2,7,10],"unknown":[0,5,7,9,10],"unless":[0,2,5,7,9],"unlicens":9,"unlik":9,"unlock":10,"unorganis":6,"unpack":[0,7],"unpackb":0,"unplug":10,"unrecover":[0,10],"unreli":5,"unset":9,"unsupport":7,"until":[0,2,5,7],"untrust":10,"unus":10,"unwant":[9,10],"up":[0,2,3,5,6,7,9,10,11],"updat":[0,2,7,9,10],"upgrad":[2,7,9],"upkeep":5,"upon":[0,5,9],"upset":0,"urandom":[9,11],"url":10,"us":[0,3,4,5,6,7],"usabl":[2,5,9],"usag":[4,5,7,8,10],"usb":[3,6,9,10],"useabl":9,"user":[0,2,5,6,9,10,11],"user_input":0,"userland":11,"usernameher":10,"usr":[5,10],"usual":[2,5],"utf":0,"util":[0,3,4,5,9],"utilis":[0,2,5,6,7,9,10,11],"v":[4,10],"valid":[0,2,5,7,9,10],"valu":[0,2,5,7,9,10],"valuabl":[3,8],"valueerror":[0,7],"vari":[2,5,9,10],"variabl":[0,2,7],"varieti":[5,9,10,11],"variou":[0,2,5,6,9,10,11],"vast":[2,9],"ve":[],"vehicl":5,"vendor":[0,3,11],"verbos":[7,10],"veri":[2,3,5,6,7,8,9,10,11],"verif":[7,9,10],"verifi":[0,2,5,7,9,10,11],"versa":[6,11],"version":[0,2,7,9,10],"vhf":[6,9,11],"via":[2,3,5,8,9,10,11],"vice":[6,11],"view":[2,5,9,10],"violat":5,"virtual":[2,3,5,6,9,10,11],"visibl":[0,5],"volunt":2,"vport":5,"vvv":2,"w":10,"wa":[0,3,5,6,7,9,10,11],"wai":[0,4,5,6,7,9,10],"wait":[0,2,5,9,10],"want":[0,2,5,6,9,10,11],"wantedbi":10,"warn":10,"warrant":11,"wast":5,"wave":3,"wb":0,"we":[0,2,3,5,8,9],"weaken":9,"web":2,"websit":[2,5],"weight":10,"weird":[],"welcom":2,"well":[2,3,5,6,7,9,10,11],"went":0,"were":[0,6],"what":[0,2,4,5,7,9,10],"whatev":[7,9],"wheel":2,"when":[0,2,3,5,6,7,9,10],"whenev":[0,7,9],"where":[2,3,4,5,6,7,9,10],"whereupon":9,"whether":[0,2,5,7,9],"which":[0,2,5,6,7,9,10],"while":[0,2,3,5,6,7,9,10,11],"whitelist":9,"whl":2,"who":[2,5,9,10],"whole":10,"wide":[2,3,5,9,10,11],"wider":[2,5,9,10],"wifi":[2,4,5,6,9,10,11],"wiki":2,"wildcard":0,"willing":[6,10],"window":[4,5],"wipe":10,"wire":[2,3,4,5,11],"wireless":[3,6],"wirelessli":5,"wish":[0,5,9,10],"within":[0,2,5,6,7,9],"without":[0,2,3,5,6,9,10,11],"wlan0":5,"wolf":3,"won":0,"word":2,"work":[2,3,5,6,9,10,11],"world":[2,3,5,6,10,11],"worri":6,"worth":2,"would":[2,5,6,7,9],"write":[0,2,3,5,7,9,10],"write_timeout":0,"writer":[0,7],"written":[0,9,11],"wrong":[0,2,5],"wrote":[0,5],"x":[7,9,10],"x25519":[9,11],"xenon":0,"xonxoff":0,"y":0,"ye":[2,5,9,10],"year":9,"yet":[0,5,9,11],"yggdrasil":5,"yi":0,"you":[0,2,3,4,5,6,7,8,9,10,11],"your":[0,3,4,5,6,7,8,9,11],"yourself":[2,9,10,11],"z":0,"zero":[7,11],"zi":0,"zone":9,"zshrc":2},"titles":["Code Examples","An Explanation of Reticulum for Human Beings","Getting Started Fast","Communications Hardware","Reticulum Network Stack Manual","Configuring Interfaces","Building Networks","API Reference","Support Reticulum","Understanding Reticulum","Using Reticulum on Your System","What is Reticulum?"],"titleterms":{"0":3,"1":3,"25":5,"Beings":1,"Of":4,"The":[9,10],"With":2,"access":9,"ad":2,"an":1,"android":2,"announc":[0,5,9],"api":7,"arm64":2,"auto":5,"autom":10,"ax":5,"backbon":5,"base":[2,3],"basic":9,"beam":3,"blackhol":10,"board":3,"bookworm":2,"bootstrap":2,"bridg":6,"broadcast":0,"buffer":0,"build":[2,6],"can":11,"caveat":11,"channel":0,"client":5,"code":[0,8,9],"combin":3,"common":5,"commun":3,"concept":6,"conceptu":9,"configur":[5,10],"connect":[2,5],"consider":5,"content":4,"contribut":[2,8],"control":5,"converg":6,"creat":[2,3,9],"cryptograph":9,"current":[9,11],"custom":[0,2,5],"data":10,"debian":2,"deck":3,"depend":2,"destin":[5,9],"detail":9,"develop":2,"devic":[3,11],"discov":10,"discover":5,"discoveri":5,"doe":11,"donat":8,"echo":[0,3],"emptor":11,"enabl":5,"entrypoint":2,"establish":9,"ethernet":3,"exampl":[0,5,6],"explan":1,"fast":2,"feedback":8,"filetransf":0,"find":2,"fix":10,"format":9,"function":9,"further":9,"futur":9,"get":[2,9],"global":2,"goal":9,"growth":6,"hardwar":3,"health":2,"heltec":3,"host":2,"human":1,"hygien":[],"i":11,"i2p":5,"ident":9,"identif":0,"implic":9,"improv":10,"includ":[2,10],"indic":4,"infrastructur":2,"instal":[2,3],"instanc":2,"interconnect":6,"interfac":[0,2,5,9,10,11],"internet":[2,6],"introduct":9,"issu":2,"kei":9,"kiss":5,"lilygo":3,"limit":5,"line":3,"link":[0,9],"list":10,"listen":5,"local":10,"lora":[5,6],"lora32":3,"lunar":2,"maco":2,"manag":10,"manual":4,"mechan":9,"meshchat":2,"minim":0,"mix":2,"mode":5,"modem":3,"motiv":9,"multi":5,"name":[9,10],"network":[2,4,6,9],"new":5,"node":9,"nomad":2,"note":2,"offer":11,"opencom":3,"openwrt":2,"option":5,"over":[2,6],"overview":[6,9],"packet":[3,9],"paramet":5,"particip":[],"person":2,"philosophi":[],"pi":2,"pipe":5,"platform":2,"port":10,"primit":9,"prioritis":9,"program":[2,10],"propag":9,"protocol":9,"provid":8,"public":[2,9],"publish":10,"pure":2,"python":2,"radio":[2,3],"rak4631":3,"raspberri":2,"rate":5,"reach":9,"refer":[7,9],"remot":[2,5,10],"request":0,"resolv":2,"resourc":9,"respons":[0,2],"ret":2,"reticulum":[1,2,3,4,8,9,10,11],"risc":2,"rncp":10,"rnid":10,"rnode":[3,5],"rnodeconf":10,"rnpath":10,"rnprobe":10,"rnsd":10,"rnstatu":10,"rnx":10,"rule":9,"scenario":6,"secur":5,"serial":[3,5,10],"server":5,"servic":10,"setup":9,"shell":2,"sideband":2,"site":6,"sourc":10,"specif":[2,9],"stack":4,"standalon":2,"start":2,"statu":11,"strategi":2,"support":[3,8],"suprem":3,"system":10,"systemwid":10,"t":3,"t114":3,"t3s3":3,"tabl":4,"tcp":5,"testnet":2,"transport":9,"try":2,"type":[3,9,11],"ubuntu":2,"udp":5,"understand":9,"unsign":3,"us":[2,9,10,11],"usag":[3,9],"userspac":10,"util":[2,10],"v":2,"v1":3,"v2":3,"v3":3,"v4":3,"wai":2,"what":11,"where":11,"wifi":3,"window":2,"wire":9,"x":3,"xl":3,"your":[2,10]}})
\ No newline at end of file
+Search.setIndex({"alltitles":{"API Reference":[[7,null]],"ARM64":[[2,"arm64"]],"AX.25 KISS Interface":[[5,"ax-25-kiss-interface"]],"Adding Radio Interfaces":[[2,"adding-radio-interfaces"]],"An Explanation of Reticulum for Human Beings":[[1,null]],"Android":[[2,"android"]],"Announce":[[0,"announce"]],"Announce Propagation Rules":[[9,"announce-propagation-rules"]],"Announce Rate Control":[[5,"announce-rate-control"]],"Auto Interface":[[5,"auto-interface"]],"Automated List Sourcing":[[10,"automated-list-sourcing"]],"Backbone Interface":[[5,"backbone-interface"]],"Blackhole Management":[[10,"blackhole-management"]],"Bootstrapping Connectivity":[[2,"bootstrapping-connectivity"]],"Broadcast":[[0,"broadcast"]],"Buffer":[[0,"buffer"]],"Building Networks":[[6,null]],"Building Personal Infrastructure":[[2,"building-personal-infrastructure"]],"Caveat Emptor":[[11,"caveat-emptor"]],"Channel":[[0,"channel"]],"Code Examples":[[0,null]],"Combining Hardware Types":[[3,"combining-hardware-types"]],"Common Interface Options":[[5,"common-interface-options"]],"Communications Hardware":[[3,null]],"Concepts & Overview":[[6,"concepts-overview"]],"Conceptual Overview":[[9,"conceptual-overview"]],"Configuration & Data":[[10,"configuration-data"]],"Configuring Interfaces":[[5,null]],"Connect to the Public Testnet":[[2,"connect-to-the-public-testnet"]],"Connecting Remotes":[[5,"connecting-remotes"]],"Connecting Reticulum Instances Over the Internet":[[2,"connecting-reticulum-instances-over-the-internet"]],"Contribute Code":[[8,"contribute-code"]],"Contributing to the Global Ret":[[2,"contributing-to-the-global-ret"]],"Creating RNodes":[[3,"creating-rnodes"]],"Creating a Network With Reticulum":[[2,"creating-a-network-with-reticulum"]],"Creating and Using Custom Interfaces":[[2,"creating-and-using-custom-interfaces"]],"Creating and Using a Network Identity":[[9,"creating-and-using-a-network-identity"]],"Cryptographic Primitives":[[9,"cryptographic-primitives"]],"Current Status":[[11,"current-status"]],"Current Usage":[[9,"current-usage"]],"Custom Interfaces":[[0,"custom-interfaces"],[5,"custom-interfaces"]],"Debian Bookworm":[[2,"debian-bookworm"]],"Destination Naming":[[9,"destination-naming"]],"Destinations":[[9,"destinations"]],"Destinations, Not Addresses":[[6,"destinations-not-addresses"]],"Develop a Program with Reticulum":[[2,"develop-a-program-with-reticulum"]],"Discoverable Interfaces":[[5,"discoverable-interfaces"]],"Discovering Interfaces":[[10,"discovering-interfaces"]],"Discovery Parameters":[[5,"discovery-parameters"]],"Donations":[[8,"donations"]],"Echo":[[0,"echo"]],"Enabling Discovery":[[5,"enabling-discovery"]],"Ethernet-based Hardware":[[3,"ethernet-based-hardware"]],"Example Configuration":[[5,"example-configuration"]],"Filetransfer":[[0,"filetransfer"]],"Finding Your Way":[[2,"finding-your-way"]],"Fixed Serial Port Names":[[10,"fixed-serial-port-names"]],"Future Implications":[[9,"future-implications"]],"Getting Further":[[9,"getting-further"]],"Getting Started Fast":[[2,null]],"Goals":[[9,"goals"]],"Heltec LoRa32 v2.0":[[3,"heltec-lora32-v2-0"]],"Heltec LoRa32 v3.0":[[3,"heltec-lora32-v3-0"]],"Heltec LoRa32 v4.0":[[3,"heltec-lora32-v4-0"]],"Heltec T114":[[3,"heltec-t114"]],"Heterogeneous Connectivity":[[6,"heterogeneous-connectivity"]],"Hosting Public Entrypoints":[[2,"hosting-public-entrypoints"]],"I2P Interface":[[5,"i2p-interface"]],"Identification":[[0,"example-identify"]],"Identities":[[9,"understanding-identities"]],"Improving System Configuration":[[10,"improving-system-configuration"]],"Included Utility Programs":[[10,"included-utility-programs"]],"Indices and Tables":[[4,"indices-and-tables"]],"Installation":[[3,"installation"]],"Interface Access Codes":[[9,"interface-access-codes"]],"Interface Modes":[[5,"interface-modes"],[5,"interfaces-modes"]],"Interface Types and Devices":[[11,"interface-types-and-devices"]],"Introduction & Basic Functionality":[[9,"introduction-basic-functionality"]],"Introductory Considerations":[[6,"introductory-considerations"]],"KISS Interface":[[5,"kiss-interface"]],"LilyGO LoRa32 v1.0":[[3,"lilygo-lora32-v1-0"]],"LilyGO LoRa32 v2.0":[[3,"lilygo-lora32-v2-0"]],"LilyGO LoRa32 v2.1":[[3,"lilygo-lora32-v2-1"]],"LilyGO T-Beam":[[3,"lilygo-t-beam"]],"LilyGO T-Beam Supreme":[[3,"lilygo-t-beam-supreme"]],"LilyGO T-Deck":[[3,"lilygo-t-deck"]],"LilyGO T-Echo":[[3,"lilygo-t-echo"]],"LilyGO T3S3":[[3,"lilygo-t3s3"]],"Link":[[0,"link"]],"Link Establishment in Detail":[[9,"link-establishment-in-detail"]],"Listeners":[[5,"listeners"]],"Local Blackhole Management":[[10,"local-blackhole-management"]],"MacOS":[[2,"macos"]],"MeshChat":[[2,"meshchat"]],"Minimal":[[0,"minimal"]],"Mixing Strategies":[[2,"mixing-strategies"]],"Motivation":[[9,"motivation"]],"Network Health & Responsibility":[[2,"network-health-responsibility"]],"Network Identities":[[9,"network-identities"]],"New Destination Rate Limiting":[[5,"new-destination-rate-limiting"]],"Node Types":[[9,"node-types"]],"Nomad Network":[[2,"nomad-network"]],"OpenCom XL":[[3,"opencom-xl"]],"OpenWRT":[[2,"openwrt"]],"Packet Prioritisation":[[9,"packet-prioritisation"]],"Packet Radio Modems":[[3,"packet-radio-modems"]],"Pipe Interface":[[5,"pipe-interface"]],"Platform-Specific Install Notes":[[2,"platform-specific-install-notes"]],"Protocol Specifics":[[9,"protocol-specifics"]],"Provide Feedback":[[8,"provide-feedback"]],"Public Key Announcements":[[9,"public-key-announcements"]],"Publishing Blackhole Lists":[[10,"publishing-blackhole-lists"]],"Pure-Python Reticulum":[[2,"pure-python-reticulum"]],"RAK4631-based Boards":[[3,"rak4631-based-boards"]],"RISC-V":[[2,"risc-v"]],"RNode":[[3,"rnode"]],"RNode LoRa Interface":[[5,"rnode-lora-interface"]],"RNode Multi Interface":[[5,"rnode-multi-interface"]],"Raspberry Pi":[[2,"raspberry-pi"]],"Reaching the Destination":[[9,"reaching-the-destination"]],"Reference Setup":[[9,"reference-setup"]],"Remote Management":[[10,"remote-management"]],"Remote Shell":[[2,"remote-shell"]],"Requests & Responses":[[0,"requests-responses"]],"Resolving Dependency & Installation Issues":[[2,"resolving-dependency-installation-issues"]],"Resources":[[9,"resources"]],"Reticulum Network Stack Manual":[[4,null]],"Reticulum Transport":[[9,"reticulum-transport"]],"Reticulum as a System Service":[[10,"reticulum-as-a-system-service"]],"Security Considerations":[[5,"security-considerations"]],"Serial Interface":[[5,"serial-interface"]],"Serial Lines & Devices":[[3,"serial-lines-devices"]],"Sideband":[[2,"sideband"]],"Standalone Reticulum Installation":[[2,"standalone-reticulum-installation"]],"Support Reticulum":[[8,null]],"Supported Boards and Devices":[[3,"supported-boards-and-devices"]],"Systemwide Service":[[10,"systemwide-service"]],"TCP Client Interface":[[5,"tcp-client-interface"]],"TCP Server Interface":[[5,"tcp-server-interface"]],"Table Of Contents":[[4,"table-of-contents"]],"The Announce Mechanism in Detail":[[9,"the-announce-mechanism-in-detail"]],"The rncp Utility":[[10,"the-rncp-utility"]],"The rnid Utility":[[10,"the-rnid-utility"]],"The rnodeconf Utility":[[10,"the-rnodeconf-utility"]],"The rnpath Utility":[[10,"the-rnpath-utility"]],"The rnprobe Utility":[[10,"the-rnprobe-utility"]],"The rnsd Utility":[[10,"the-rnsd-utility"]],"The rnstatus Utility":[[10,"the-rnstatus-utility"]],"The rnx Utility":[[10,"the-rnx-utility"]],"Transport Nodes and Instances":[[6,"transport-nodes-and-instances"]],"Trustless Networking":[[6,"trustless-networking"]],"Try Using a Reticulum-based Program":[[2,"try-using-a-reticulum-based-program"]],"UDP Interface":[[5,"udp-interface"]],"Ubuntu Lunar":[[2,"ubuntu-lunar"]],"Understanding Reticulum":[[9,null]],"Unsigned RNode v2.x":[[3,"unsigned-rnode-v2-x"]],"Usage with Reticulum":[[3,"usage-with-reticulum"]],"Userspace Service":[[10,"userspace-service"]],"Using Reticulum on Your System":[[10,null]],"Using the Included Utilities":[[2,"using-the-included-utilities"]],"What does Reticulum Offer?":[[11,"what-does-reticulum-offer"]],"What is Reticulum?":[[11,null]],"Where can Reticulum be Used?":[[11,"where-can-reticulum-be-used"]],"WiFi-based Hardware":[[3,"wifi-based-hardware"]],"Windows":[[2,"windows"]],"Wire Format":[[9,"wire-format"]]},"docnames":["examples","forhumans","gettingstartedfast","hardware","index","interfaces","networks","reference","support","understanding","using","whatis"],"envversion":{"sphinx":65,"sphinx.domains.c":3,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":9,"sphinx.domains.index":1,"sphinx.domains.javascript":3,"sphinx.domains.math":2,"sphinx.domains.python":4,"sphinx.domains.rst":2,"sphinx.domains.std":2},"filenames":["examples.rst","forhumans.rst","gettingstartedfast.rst","hardware.rst","index.rst","interfaces.rst","networks.rst","reference.rst","support.rst","understanding.rst","using.rst","whatis.rst"],"indexentries":{},"objects":{"RNS":[[7,0,1,"","Buffer"],[7,0,1,"","Destination"],[7,0,1,"","Identity"],[7,0,1,"","Link"],[7,0,1,"","MessageBase"],[7,0,1,"","Packet"],[7,0,1,"","PacketReceipt"],[7,0,1,"","RawChannelReader"],[7,0,1,"","RawChannelWriter"],[7,0,1,"","RequestReceipt"],[7,0,1,"","Resource"],[7,0,1,"","Reticulum"],[7,0,1,"","Transport"]],"RNS.Buffer":[[7,1,1,"","create_bidirectional_buffer"],[7,1,1,"","create_reader"],[7,1,1,"","create_writer"]],"RNS.Channel":[[7,0,1,"","Channel"]],"RNS.Channel.Channel":[[7,1,1,"","add_message_handler"],[7,1,1,"","is_ready_to_send"],[7,2,1,"","mdu"],[7,1,1,"","register_message_type"],[7,1,1,"","remove_message_handler"],[7,1,1,"","send"]],"RNS.Destination":[[7,3,1,"","RATCHET_COUNT"],[7,3,1,"","RATCHET_INTERVAL"],[7,1,1,"","accepts_links"],[7,1,1,"","announce"],[7,1,1,"","app_and_aspects_from_name"],[7,1,1,"","clear_default_app_data"],[7,1,1,"","create_keys"],[7,1,1,"","decrypt"],[7,1,1,"","deregister_request_handler"],[7,1,1,"","enable_ratchets"],[7,1,1,"","encrypt"],[7,1,1,"","enforce_ratchets"],[7,1,1,"","expand_name"],[7,1,1,"","get_private_key"],[7,1,1,"","hash"],[7,1,1,"","hash_from_name_and_identity"],[7,1,1,"","load_private_key"],[7,1,1,"","register_request_handler"],[7,1,1,"","set_default_app_data"],[7,1,1,"","set_link_established_callback"],[7,1,1,"","set_packet_callback"],[7,1,1,"","set_proof_requested_callback"],[7,1,1,"","set_proof_strategy"],[7,1,1,"","set_ratchet_interval"],[7,1,1,"","set_retained_ratchets"],[7,1,1,"","sign"]],"RNS.Identity":[[7,3,1,"","CURVE"],[7,3,1,"","KEYSIZE"],[7,3,1,"","RATCHETSIZE"],[7,3,1,"","RATCHET_EXPIRY"],[7,3,1,"","TRUNCATED_HASHLENGTH"],[7,1,1,"","current_ratchet_id"],[7,1,1,"","decrypt"],[7,1,1,"","encrypt"],[7,1,1,"","from_bytes"],[7,1,1,"","from_file"],[7,1,1,"","full_hash"],[7,1,1,"","get_private_key"],[7,1,1,"","get_public_key"],[7,1,1,"","get_random_hash"],[7,1,1,"","load_private_key"],[7,1,1,"","load_public_key"],[7,1,1,"","recall"],[7,1,1,"","recall_app_data"],[7,1,1,"","sign"],[7,1,1,"","to_file"],[7,1,1,"","truncated_hash"],[7,1,1,"","validate"]],"RNS.Link":[[7,3,1,"","CURVE"],[7,3,1,"","ESTABLISHMENT_TIMEOUT_PER_HOP"],[7,3,1,"","KEEPALIVE"],[7,3,1,"","KEEPALIVE_TIMEOUT_FACTOR"],[7,3,1,"","STALE_GRACE"],[7,3,1,"","STALE_TIME"],[7,1,1,"","get_age"],[7,1,1,"","get_channel"],[7,1,1,"","get_establishment_rate"],[7,1,1,"","get_expected_rate"],[7,1,1,"","get_mdu"],[7,1,1,"","get_mode"],[7,1,1,"","get_mtu"],[7,1,1,"","get_q"],[7,1,1,"","get_remote_identity"],[7,1,1,"","get_rssi"],[7,1,1,"","get_snr"],[7,1,1,"","identify"],[7,1,1,"","inactive_for"],[7,1,1,"","no_data_for"],[7,1,1,"","no_inbound_for"],[7,1,1,"","no_outbound_for"],[7,1,1,"","request"],[7,1,1,"","set_link_closed_callback"],[7,1,1,"","set_packet_callback"],[7,1,1,"","set_remote_identified_callback"],[7,1,1,"","set_resource_callback"],[7,1,1,"","set_resource_concluded_callback"],[7,1,1,"","set_resource_started_callback"],[7,1,1,"","set_resource_strategy"],[7,1,1,"","teardown"],[7,1,1,"","track_phy_stats"]],"RNS.MessageBase":[[7,3,1,"","MSGTYPE"],[7,1,1,"","pack"],[7,1,1,"","unpack"]],"RNS.Packet":[[7,3,1,"","ENCRYPTED_MDU"],[7,3,1,"","PLAIN_MDU"],[7,1,1,"","get_q"],[7,1,1,"","get_rssi"],[7,1,1,"","get_snr"],[7,1,1,"","resend"],[7,1,1,"","send"]],"RNS.PacketReceipt":[[7,1,1,"","get_rtt"],[7,1,1,"","get_status"],[7,1,1,"","set_delivery_callback"],[7,1,1,"","set_timeout"],[7,1,1,"","set_timeout_callback"]],"RNS.RawChannelReader":[[7,1,1,"","__init__"],[7,1,1,"","add_ready_callback"],[7,1,1,"","remove_ready_callback"]],"RNS.RawChannelWriter":[[7,1,1,"","__init__"]],"RNS.RequestReceipt":[[7,1,1,"","concluded"],[7,1,1,"","get_progress"],[7,1,1,"","get_request_id"],[7,1,1,"","get_response"],[7,1,1,"","get_response_time"],[7,1,1,"","get_status"]],"RNS.Resource":[[7,1,1,"","advertise"],[7,1,1,"","cancel"],[7,1,1,"","get_data_size"],[7,1,1,"","get_hash"],[7,1,1,"","get_parts"],[7,1,1,"","get_progress"],[7,1,1,"","get_segments"],[7,1,1,"","get_transfer_size"],[7,1,1,"","is_compressed"]],"RNS.Reticulum":[[7,3,1,"","ANNOUNCE_CAP"],[7,3,1,"","LINK_MTU_DISCOVERY"],[7,3,1,"","MINIMUM_BITRATE"],[7,3,1,"","MTU"],[7,1,1,"","blackhole_sources"],[7,1,1,"","get_instance"],[7,1,1,"","interface_discovery_sources"],[7,1,1,"","link_mtu_discovery"],[7,1,1,"","publish_blackhole_enabled"],[7,1,1,"","remote_management_enabled"],[7,1,1,"","required_discovery_value"],[7,1,1,"","should_use_implicit_proof"],[7,1,1,"","transport_enabled"]],"RNS.Transport":[[7,3,1,"","PATHFINDER_M"],[7,1,1,"","await_path"],[7,1,1,"","deregister_announce_handler"],[7,1,1,"","has_path"],[7,1,1,"","hops_to"],[7,1,1,"","next_hop"],[7,1,1,"","next_hop_interface"],[7,1,1,"","register_announce_handler"],[7,1,1,"","request_path"]]},"objnames":{"0":["py","class","Python class"],"1":["py","method","Python method"],"2":["py","property","Python property"],"3":["py","attribute","Python attribute"]},"objtypes":{"0":"py:class","1":"py:method","2":"py:property","3":"py:attribute"},"terms":{"":[0,2,5,6,9,10,11],"0":[0,2,5,7,9,10,11],"00":[9,10],"00000000":9,"00000100":9,"00000111":9,"01":9,"01010000":9,"02":2,"05":0,"0536":10,"06915":5,"08":[0,10],"0f4259fef4521ab75a3409e353fe9073eb10783b4912a6a9937c57bf44a62c1":10,"0x0101":0,"0x20":0,"0x7d":0,"0x7e":0,"0x91c421ddfb8a30a49a71d63447ddb54cebe3465":8,"0xf000":[0,7],"1":[0,2,5,7,9,10],"10":[5,9,10],"100":[0,5,9],"1000":0,"10000000":9,"100m":[],"1024":0,"10h":[],"11":9,"115":9,"115200":[0,5,10],"1178a8f1fad405bf2ad153bf5036bdfd":10,"118":5,"12":[2,5,10],"120":[],"1200":9,"125":5,"125000":5,"127":5,"1278":[],"128":[6,7,9],"12m":[],"13":10,"13425ec15b621c1d928589718000d814":[6,9],"14":5,"15":5,"150":[5,10],"150km":[],"150m":5,"15m":10,"16":[5,6,9,10],"1625":5,"1625000":5,"167":9,"17":10,"1726dbad538775b5bf9b0ea25a4079c8":10,"174a64852a75682259ad8b921b8bf416":[],"18":10,"180":[],"1800":7,"187":10,"1b03013c25f1c2ca068a4f080b844a10":10,"1h":10,"2":[0,2,5,7,9,10],"20":[5,9,10],"200":[5,10],"201":5,"2023":[2,10],"2026":2,"21":2,"22":5,"2225fdeecaf6e2db4556c3c2d7637294":10,"23":10,"2316":10,"23h":10,"24":[5,10],"2400000000":5,"25":[0,4,11],"255":[5,10],"25519":7,"256":[5,6,7,9,10,11],"2592000":7,"27":10,"29":5,"297":[9,11],"29716":5,"2b489d06eaf7c543808c76a5332a447d":10,"2b9ec651326d9bc274119054c70fb75":10,"2d03725b327348980d570f739a3a5708":10,"2d882c5586e548d79b5af27bca1776dc":10,"2f":0,"2gb":[],"2h":[],"2km":[],"2m":[],"2owjajquafianpecac":2,"3":[0,2,5,9,10,11],"30":[5,7,10],"300":[],"30602def3b3506a28ed33db6f60cc6c9":10,"32":[2,7,9],"3278":5,"32m":10,"33":5,"34":5,"360":[5,7],"3600":[0,5],"37428":10,"37429":10,"38":10,"383":7,"3865":10,"399ea050ce0eed1816c300bcb0840938":10,"3a4f8b9c1d2e3f4g5h6i7j8k9l0m1n2o":10,"3b87":5,"4":[7,9,10],"40m":10,"4242":[2,5],"4251":5,"42671":5,"430":9,"4343":5,"44":11,"44318":5,"45":[0,9],"46":10,"464":7,"465":9,"469":10,"48555":5,"4862":[],"49":10,"49555":5,"4965":[2,10],"4e":5,"4faf1b2e0a077e6a9d92fa051f256038":9,"4gb":[],"4ghz":5,"5":[0,5,7,9,10,11],"50":[],"500":[5,7,9,11],"5001":5,"5074":[],"51":[5,9],"512":[5,7,9,11],"52":10,"5200":[],"521c87a83afb8f29e4455e77930b973b":10,"5245a8efe1788c6a1cd36144a270e13b":10,"55":5,"56":10,"564":0,"5683":[],"56m":10,"5757":5,"5858":5,"59":10,"5caf":5,"5d78":5,"5km":[],"5m":[],"5urvjicpzi7q3ybztsef4i5ow2aq4soktfj7zedz53s47r54jnqq":5,"6":[5,7,10],"60":[0,5],"600":5,"63":10,"64":[2,9,10],"6761":[],"68a4aa91ac350c4087564e8a69f84e86":10,"7":[2,5,9,10],"71e5":5,"72":5,"720":[5,7],"7200":5,"73":[5,10],"73cbd378bb0286ed11a707c13447bb1":10,"74":10,"74195":5,"781":10,"7822":10,"7a55144adf826958a9529a3bcf08b149":10,"8":[0,5,10],"80":10,"8001":5,"809":10,"83":[9,10],"84fpy1qbxhcgdseepynmhthcrgmx4nffbytz2gkytoqhvvhjp8eaw1z1eedrnkd19b3b8nilcgvxzkv17ummmeescrpya5w":8,"86":10,"865":5,"865600000":5,"867":5,"867200000":5,"868":9,"88":5,"89":5,"8904":[],"8dd57a738226809646089335a6b03695":10,"9":[2,7,10],"900":9,"9037":10,"921600":10,"941bed5e228775e5a8079fc38b1ccf3f":10,"96":9,"9600":0,"984b74a3f768bef236af4371e6f248cd":10,"99":9,"99714":5,"9fb6d773498fb3feda407ed8ef2c3229":10,"9h":10,"A":[0,2,5,6,7,9,10],"And":0,"As":[2,3,5,7,9,10,11],"At":[2,9],"Be":[7,10],"But":9,"By":[0,2,5,7,9,10],"For":[2,5,6,7,9,10,11],"IN":[0,7],"If":[0,2,3,5,6,7,9,10,11],"In":[0,2,3,5,6,7,9,10,11],"It":[0,2,3,5,6,7,9,10,11],"No":[0,2,5,6,9,10,11],"Not":4,"Of":[6,9],"On":[0,2,5,6,10],"One":[2,3,7,9],"Or":[5,10,11],"That":9,"The":[0,2,3,4,5,6,7,11],"Then":[0,2],"There":[2,6,9,10],"These":[2,5,6,7,9,10],"To":[0,2,3,5,6,9,10],"Will":7,"With":[4,5,6,9,10],"_":9,"__":9,"______":9,"_______":9,"________":9,"________________":9,"__future__":0,"__init__":[0,7],"__main__":0,"__name__":0,"__str__":0,"a1b2c3d4e5f6":[],"a1b2c3d4e5f67890abcdef1234567890":[],"a4d":5,"a79f":5,"aarch64":2,"ab":0,"abil":[2,3,10,11],"abl":[0,2,5,7,9,10],"abort":[0,5],"about":[0,2,3,5,6,7,9,10],"abov":[2,3,5,9,10],"absolut":[5,8,11],"abstract":[6,7,9],"abstractmethod":7,"abund":3,"abus":10,"accept":[5,7,8,9,10],"accept_al":[0,7],"accept_app":7,"accept_non":7,"accepts_link":7,"access":[2,4,5,6,7,10],"access_point":[5,6],"accommod":[7,9],"accord":[0,2,6,9],"accordingli":[0,5],"account":6,"achiev":[2,5,6,7,9],"acknowledg":[6,11],"acquir":[],"across":[0,3,6,7,9,10],"act":[2,5,7,9,10],"action":[0,10],"activ":[0,2,5,7,9],"actor":[9,10],"actual":[0,2,5,6,9,10],"ad":[0,3,4,5,6,7,9,10,11],"adapt":[2,3],"add":[0,2,5,6,7,10],"add_argu":0,"add_message_handl":[0,7],"add_ready_callback":7,"addit":[2,3,5,6,7,9,10,11],"addition":[2,3,5,9],"addr":10,"address":[0,2,4,5,7,9,10,11],"adequ":[],"adher":7,"adjust":[2,7],"admin":5,"administr":[6,9,10],"adopt":9,"adress":[7,9],"advanc":9,"advantag":7,"advers":11,"adversari":[2,6],"advertis":[0,5,7],"advis":[5,9],"ae":[7,9,11],"af73":5,"affect":[2,5],"afford":6,"after":[0,2,5,6,7,9,10],"again":[2,5,9,10],"against":[2,5,9],"agenc":9,"agent":9,"aggress":[],"agnost":[6,9],"agnostic":9,"ago":10,"ahead":6,"aim":[2,4,9],"air":[2,3],"airmax":3,"airtim":[5,6],"airtime_limit_long":5,"airtime_limit_short":5,"akin":9,"algorithm":6,"alic":9,"align":[2,10],"aliv":[7,9],"all":[0,2,3,4,5,6,7,8,9,10,11],"allevi":3,"alloc":[5,6,7,9,10],"allow":[0,2,3,5,6,7,9,10,11],"allow_al":[0,7],"allow_list":7,"allow_non":7,"allowed_hash":10,"allowed_ident":10,"allowed_list":7,"almost":[3,5,9,10],"alon":5,"along":[5,7,9,10],"alongsid":6,"alreadi":[0,2,3,6,7,9,10],"also":[0,2,3,4,5,6,7,9,10,11],"alter":[2,7,9],"altern":[0,2,5,10],"although":[2,9,11],"alwai":[2,5,6,7,9,10],"amateur":[5,11],"amount":[0,2,5,6,7,9,11],"amsterdam":[2,5,10],"an":[0,2,3,5,6,7,9,10,11],"analyt":8,"android":[4,5,10],"ani":[0,2,3,5,6,7,8,9,10,11],"annot":0,"annouce_cap":5,"announc":[4,6,7,10],"announce_cap":[5,7],"announce_handl":0,"announce_interv":5,"announce_packet_hash":7,"announce_rate_grac":5,"announce_rate_penalti":5,"announce_rate_target":5,"announced_ident":[0,7],"announceloop":0,"announcesampl":0,"anomal":[],"anomali":[],"anonym":[2,6,7,9,11],"anoth":[2,6,7,9,10],"anotherp":[],"answer":[9,10],"antenna":3,"anymor":2,"anyon":[0,2,3,5,6,7,9,10],"anyth":[2,3,5,9,10,11],"anywher":[0,5],"ap":5,"api":[2,4,9,11],"apk":2,"app":[0,2,7,9],"app_and_aspects_from_nam":7,"app_data":[0,7],"app_nam":[0,7],"app_timeout":0,"appeal":[],"appear":[],"append":[0,9],"appli":[5,7,9],"applic":[0,2,5,6,7,9,10,11],"approach":[2,3,6,9,10],"appropri":[5,6],"approv":[6,9],"approxim":[5,10],"april":2,"apt":2,"ar":[0,2,3,5,6,7,8,9,10,11],"arbitrari":[7,9,10,11],"arch":2,"architectur":2,"archiv":[],"area":[2,3,5,6,9,11],"arg":0,"argon":0,"argpars":0,"argument":[0,7,10],"argumentpars":0,"arm64":4,"around":[5,9],"arrai":2,"arriv":[0,9],"arx":10,"ask":[0,2,3,7],"asleep":[],"aspect":[0,2,3,5,6,7,9,10],"aspect_filt":[0,7],"assign":[0,6,9,10],"assist":[],"associ":[7,9,10],"assum":[5,6,9],"assumpt":6,"asymmetr":[9,10,11],"asynchron":6,"attach":10,"attached_interfac":7,"attack":2,"attain":2,"attempt":[0,2,3,7,10],"attract":[],"attribut":7,"atx":10,"audit":11,"auth":10,"authent":[2,5,6,7,9,10,11],"author":[9,10],"authorit":9,"auto":[2,3,4,7,9,10],"auto_compress":7,"autoconfigur":11,"autoconnect":[],"autoconnect_discovered_interfac":[5,10],"autodiscov":5,"autoinstal":[3,10],"autointerfac":[2,3,5,10],"autom":[2,3,4,8,9],"automat":[0,2,5,6,7,9,10,11],"autonom":[6,9],"autonomi":11,"avail":[0,2,3,4,5,6,7,9,10,11],"averag":9,"avoid":[3,9,10],"awai":[0,2,5,9,10],"await_path":7,"awar":[2,5,9],"ax":[4,11],"ax25kissinterfac":5,"b":[0,10],"b32":5,"back":[0,5,9,11],"backbon":[2,3,4,6,10],"backboneinterfac":[2,5,10],"backend":[5,9],"background":[2,5,10],"backhaul":[3,6],"backup":10,"balanc":5,"band":[3,9],"bandwidth":[2,5,6,7,9,10,11],"bare":[0,5],"barrier":[5,9],"base":[4,5,6,7,9,10,11],"base32":[5,10],"base64":10,"basi":[5,7,9,10,11],"basic":[0,2,4,5,6,7,10],"baud":[5,10],"baud_flash":10,"baudrat":0,"bc1pgqgu8h8xvj4jtafslq396v7ju7hkgymyrzyqft4llfslz5vp99psqfk3a6":8,"bc7291552be7a58f361522990465165c":10,"beacon":5,"becaus":[6,9],"becki":0,"becom":[0,2,5,6,7,9],"been":[0,2,3,5,6,7,9,10,11],"befor":[0,2,5,6,7,9,10],"begin":[0,3,7],"begun":7,"behalf":[5,6],"behav":3,"behavior":[],"behaviour":[2,5,10],"behind":[2,5,9],"being":[2,5,7,9],"beings":9,"belief":9,"belong":[6,9,10],"below":[2,3,5,10],"benefici":[5,10],"benefit":[],"best":[2,6,9,11],"better":[2,5,6,9],"between":[0,5,6,7,9,10],"betweenthebord":[],"beyond":[],"bi":[7,9],"bidirect":9,"billion":[6,9],"bin":[2,5,10],"binari":[0,2,5,6,7,9,10],"bind":5,"bit":[0,2,5,6,7,9,10,11],"bitcoin":8,"bitrat":[0,5,7],"blackhol":[2,4,6,7,9],"blackhole_sourc":[7,10],"blackholed_ident":10,"blackholeupdat":10,"ble":5,"blindli":10,"blob":[0,9],"block":[2,5,6,7,9,10],"blocklist":10,"bluetooth":10,"board":[2,4,5,9,11],"bogu":5,"boil":3,"bookworm":4,"bool":7,"boot":[2,10],"bootstrap":[4,5,10],"bootstrap1":[],"bootstrap2":[],"bootstrap3":[],"bootstrap_onli":[2,5],"both":[0,2,3,5,6,7,9,10,11],"bounc":2,"bound":6,"boundari":[5,6,9],"box":3,"break":[2,7,9,11],"breath":2,"breviti":10,"bridg":[3,5],"briefli":[3,9],"bring":[5,10],"brittl":2,"broad":[2,3],"broadcast":[2,4,5,6,7,9,10],"broadcast_destin":0,"broadcastloop":0,"broader":9,"broken":2,"brought":[5,10],"browser":2,"brute":[],"budget":[],"buffer":[4,5,7,11],"bufferedread":7,"bufferedrwpair":7,"bufferedwrit":7,"bufferexampl":0,"bug":11,"build":[0,3,4,5,9,11],"built":[2,5,6,9,10,11],"bundl":0,"bureaucrat":11,"burst":5,"bw":10,"byte":[0,6,7,9,10,11],"bytes":0,"c":[0,10],"c50cc4e4f7838b6c31f60ab9032cbc62":10,"c89b4da064bf66d280f0e4d8abfd9806":10,"cabin":[],"cabl":5,"cach":[5,6,10],"calcul":[6,7,9,10],"call":[0,6,7,9,11],"callabl":[0,7],"callback":[0,7],"callsign":5,"campu":[],"campus":[],"can":[0,2,3,4,5,6,7,8,9,10],"cancel":7,"candid":6,"cannot":[0,2,5,6,11],"cap":5,"capabl":[0,5,6,9],"capac":[2,3,5,6,7,9],"car":6,"carambola":0,"care":[2,6,7,10,11],"carefulli":2,"cargo_build_target":2,"carri":[5,6,7,9,10,11],"carrier":[6,11],"case":[0,2,3,5,6,9,10],"cat":10,"categori":3,"caus":[2,5],"caution":5,"caveat":4,"cb":[7,9],"cb127015e13aa6ea1e0a606cdc9123d0":[],"cbc":[9,11],"cd":[],"cdma":5,"cell":6,"cellular":[],"censor":[9,10],"censorship":[9,11],"center":[],"central":[2,3,5,6,9,10],"centralis":9,"certain":[0,5,6,8,9,10],"chain":5,"challeng":[2,9],"chanc":3,"chang":[0,2,5,7,9,10,11],"channel":[2,4,5,6,7,8,9,11],"channelarg":0,"channelexampl":0,"chapter":[2,3,5,6,7,9,10,11],"charact":[0,5],"characterist":[5,6,9],"charter":9,"cheap":[3,5,9],"cheapli":2,"check":[0,2,7,9,10],"checksum":[7,11],"choic":[2,6],"choos":[0,2,5,9],"chose":9,"chosen":9,"chunk":0,"cific":5,"ciphertext":7,"ciphertext_token":7,"circumst":[8,9],"citi":[],"cl":0,"claim":9,"class":[0,6,7,11],"clear":[0,5,7,9,10],"clear_default_app_data":7,"clear_screen":0,"client":[0,2,3,4,7,10],"client_buffer_readi":0,"client_connect":0,"client_disconnect":0,"client_ident":0,"client_loop":0,"client_message_receiv":0,"client_packet_receiv":0,"client_request":0,"clone":9,"close":[0,6,7,10],"closed_callback":7,"closer":9,"closest":9,"cloud":5,"cluster":9,"co":[3,5,11],"code":[2,3,4,5,6,10],"codingr":5,"coexist":6,"collabor":9,"collaps":2,"collater":[],"collect":8,"collis":6,"com":[0,8],"combin":[2,4,9],"come":[2,5,6,9],"comma":[5,10],"command":[0,2,5,10],"comment":[5,10],"commis":2,"commit":2,"common":[0,2,3,4,6,9,10,11],"commonli":[3,5],"commun":[0,2,4,5,6,7,8,9,10,11],"communica":5,"community_net":[],"community_network":[],"community_pass":[],"community_publ":[],"compact":[],"compar":6,"compat":[0,2,3,5,7,9,10],"compil":2,"complet":[0,2,3,5,6,7,9,10,11],"complex":[2,5,9],"compli":6,"complianc":[],"compon":[3,8,9],"compos":9,"comprehens":[],"compress":[0,7,9,10,11],"compromis":9,"comput":[2,5,9,11],"computation":[5,10],"concaten":7,"conceiv":[2,3],"concept":[4,9,10],"conceptu":4,"concern":[],"concert":9,"conclud":[0,7],"concurr":[3,9,10],"condit":[2,9,11],"conf":2,"config":[0,2,5,6,10],"configarg":0,"configdir":7,"configpath":0,"configur":[0,2,3,4,6,7,9,11],"configuraion":3,"configure_devic":0,"confirm":[6,9,11],"conflict":[2,6],"confus":[3,9],"congest":9,"conjunct":5,"connect":[0,3,4,7,9,10,11],"consequ":[6,9],"conserv":5,"consid":[0,2,5,7,9,10,11],"consider":[4,9],"consist":9,"consol":10,"constant":7,"constantli":9,"constitut":9,"constrain":[6,7],"constraint":[],"construct":[9,11],"constructor":0,"consum":[6,7],"consumpt":6,"contact":[6,9],"contain":[0,5,6,7,9,10],"contend":9,"content":[0,2,6,10],"context":[2,9,10],"contin":0,"continu":[5,7,8,10,11],"contribut":[4,6],"control":[0,2,3,4,6,7,9,10,11],"convei":0,"conveni":[0,10],"convent":[0,6],"converg":[2,6,9],"convers":9,"cook":2,"coordin":[5,6,7,9,11],"copi":10,"copper":[],"core":[6,9,10,11],"corp":[],"corpor":[],"corporate_intern":[],"corporate_net":[],"corporate_network":[],"corporate_secure_pass":[],"correct":[0,5,6,9],"correctli":[0,6],"correspond":[6,9],"cost":[3,5,9,11],"could":[0,2,5,6,7,9,10,11],"count":9,"counter":0,"countri":[],"coupl":[],"cours":[2,5,6,9],"cover":[2,3,6,9,11],"coverag":6,"cpu":[0,5,6,9],"cpuinfo":10,"cr":10,"creat":[0,4,5,6,7,10,11],"create_bidirectional_buff":[0,7],"create_kei":7,"create_read":7,"create_receipt":[0,7],"create_writ":7,"creation":[6,9,10,11],"creator":9,"credenti":[5,9],"criteria":[],"critic":[6,9,10],"cross":5,"crucial":6,"cryptograph":[2,4,5,6,10,11],"cryptographi":[2,9,11],"ctrl":0,"cull":7,"curl":[],"current":[0,2,4,5,7,10],"current_download":0,"current_filenam":0,"current_ratchet_id":7,"curv":[6,7,9,11],"curve25519":[6,7,9,11],"custom":[3,4,7,9,11],"custom_network_nam":5,"customis":5,"d":10,"d56a4fa02c0a77b3575935aedd90bdb2":10,"daemon":[0,2,5,7,10],"dai":7,"damag":[],"data":[0,2,3,4,5,6,7,9,11],"data_buff":0,"data_port":5,"databas":10,"databit":[0,5,10],"datacent":2,"datar":5,"date":[0,2,10],"datetim":0,"db":[0,10],"dbm":[0,5,10],"de":2,"debian":[4,9,10],"debug":[2,10],"decad":3,"decentr":[2,5,10],"decentralis":11,"decid":[5,6,7,9],"decim":5,"decis":[5,6,9],"declar":9,"decod":[0,5,10],"decommiss":[],"decreas":10,"decrypt":[5,6,7,9,10],"dedic":[5,9],"deep":2,"deepli":[],"def":0,"default":[0,2,3,5,6,7,9,10],"default_ifac_s":0,"defens":[],"defin":[0,5,7,9,10],"definit":[0,2,9,10],"defunct":10,"degrad":6,"degre":5,"delai":[2,5,9,10],"deleg":9,"deliber":[],"delimit":0,"deliv":[0,2,6,7],"deliveri":[0,2,6,7,11],"demand":7,"demonstr":[0,2,5],"depend":[0,3,4,5,6,7,9,10],"deploi":9,"deploy":[],"depriorit":[],"deregist":7,"deregister_announce_handl":7,"deregister_request_handl":7,"deriv":[2,6,7,9,11],"describ":[3,5,7,9],"descript":[0,10],"descriptor":0,"deseri":0,"deserializ":0,"design":[2,3,5,6,9,10,11],"desir":[0,3,5,9],"desktop":5,"dest_len":0,"destin":[0,2,4,7,10],"destination_1":0,"destination_2":0,"destination_clos":0,"destination_hash":[0,7,10],"destination_hexhash":0,"detach":5,"detail":[0,2,4,5,7,10,11],"detect":0,"determin":[2,6,7,9],"detriment":10,"dev":[0,2,5,10],"devel":2,"develop":[3,4,7,8,9,11],"devic":[0,2,4,5,6,7,9,10],"dh":7,"dhcp":[3,5,6,10],"diagram":[],"dict":0,"dictat":10,"dictionari":10,"did":0,"differ":[0,2,3,5,6,7,9,10,11],"diffi":[6,9],"difficult":[2,3,10],"difficulti":[5,10],"digit":[2,3,9,11],"dir":0,"dire":3,"direct":[0,2,3,6,7,9,10],"direction":9,"directli":[2,3,5,6,7,9,10,11],"directori":[0,2,5,6,10],"disabl":[5,9,10],"disadvantag":[],"disappear":[5,10],"disassoci":9,"discard":[2,7,9],"disconnect":[0,5],"discov":[2,4,5,6,7,9],"discover":[2,4,10],"discover_interfac":10,"discoverable_nam":[],"discoveri":[2,4,7,9,10],"discovery_bandwidth":5,"discovery_encrypt":5,"discovery_frequ":5,"discovery_modul":5,"discovery_nam":5,"discovery_port":5,"discovery_scop":5,"discovery_stamp_valu":5,"discrimin":6,"discuss":[2,3,9],"disk":[0,7,10],"displai":[0,5,6,9,10],"disrupt":5,"dissimilar":[],"dissolv":6,"distanc":[3,9,10],"distant":[2,7,9],"distinct":[5,6,9],"distinguish":[6,9],"distribut":[0,2,6,7,9,10,11],"disucss":[],"dive":2,"divid":7,"divmod":0,"dn":[3,5],"dnf":2,"do":[0,2,3,5,6,7,9,10],"document":[2,7,9,10],"doe":[0,2,3,4,5,7,9,10],"doesn":[5,6],"domain":[2,5,9,10],"don":[0,2,6,7,9,10],"donat":4,"done":[0,2,5,9,10],"dori":[],"dot":[9,10],"doubt":2,"dowload":2,"down":[0,3,5,7,10],"download":[0,2,5,6,10],"download_began":0,"download_conclud":0,"download_finish":0,"download_start":0,"download_tim":0,"downstream":10,"downtim":[],"dozen":[],"drastic":10,"drive":[],"driven":[],"driver":[10,11],"droid":2,"drop":[5,6,7,9,10],"dsrdtr":0,"dual":[3,10],"dublin":10,"due":0,"dump":10,"duplex":[9,11],"durat":10,"dure":[],"duti":[],"dynam":[2,5,10],"dysfunct":8,"e":[0,10],"e5c032d3ec4e64a6aca9927ba8ab73336780f6d71790":10,"e702c42ba8":10,"e7536ee90bd4a440e130490b87a25124":10,"each":[0,2,5,6,7,9,10],"earlier":9,"eas":[5,9],"easi":[2,3,5,9,10,11],"easier":[2,5,6,10,11],"easiest":[2,3,5,9],"easili":[2,5,6,9,10,11],"eastern":9,"ecdh":[9,11],"echo":4,"echo_destin":0,"echo_request":0,"ecosystem":[2,5,9,10],"ed25519":[9,11],"edit":[2,10],"eeprom":10,"effect":[5,9,10],"effici":[0,2,5,6,7,9,10,11],"effort":3,"eg":10,"ei":0,"either":[2,3,6,7,9,10],"elaps":5,"electr":[],"electromagnet":[],"element":6,"elif":0,"elimin":6,"ellipt":[6,7,9,11],"els":[0,2,6,9,11],"elsewher":2,"embed":3,"emerg":[],"emergency_secure_pass":[],"emergency_servic":[],"emploi":[3,9],"empow":11,"empti":0,"emptor":4,"emul":2,"enabl":[0,2,3,4,6,7,9,10,11],"enable_ratchet":7,"enable_remote_manag":10,"enable_transport":[5,9,10],"encapsul":[5,11],"encod":[0,7,10],"encount":[2,6],"encourag":2,"encrypt":[0,2,5,6,7,9,10,11],"encrypted_mdu":7,"end":[0,5,6,7,9,11],"endless":5,"endpoint":[0,6,7,9],"energi":2,"enforc":[5,7,9,10],"enforce_ratchet":7,"engag":[],"engin":2,"enhanc":9,"enough":[2,3,9],"ensur":[0,2,5,6,7,9,10,11],"ensurepath":2,"enter":[0,10],"entir":[0,2,6,7,9,10],"entiti":[6,9,10],"entri":[0,2,9,10],"entrypoint":[4,5,10],"enumer":0,"envelop":7,"environ":[2,5,6,9],"environment":9,"environmentlogg":9,"eof":5,"ephemer":[6,7,9,11],"epub":4,"equal":[6,7,9],"equip":[5,6,9],"equival":5,"error":[0,2,5,8,10],"esc":0,"esc_mask":0,"escap":0,"esp32":3,"especi":[2,3,5],"essenti":[2,5,9,10],"establish":[0,2,5,6,7,10,11],"established_callback":7,"establishment_timeout_per_hop":7,"etc":10,"eth0":5,"eth1":5,"ethereum":8,"ethernet":[2,4,5,6,9,11],"evalu":[],"even":[0,2,5,6,7,9,10,11],"event":5,"eventu":7,"ever":9,"everi":[0,2,5,6,7,9,10],"everydai":2,"everyon":[2,9],"everyth":[0,6,9],"evolv":[6,9],"exact":[3,5,9],"exactli":[7,9],"exampl":[2,3,4,6,7,9,10,11],"example_util":0,"exampleannouncehandl":0,"exampleconfig":[2,10],"exampleinterfac":0,"exce":[0,5,7],"except":[0,5,7],"excess":[5,10],"exchang":[6,7,9,11],"exclud":[7,9],"exclus":2,"execstart":10,"execstartpr":10,"execut":[0,2,5,7,10],"exhaust":[3,9,10],"exist":[0,2,3,5,6,9,10,11],"exit":[0,5,7,10],"expand":[6,9,11],"expand_nam":7,"expect":[0,5,7,9,10],"expens":[3,5],"experi":[2,6,9],"experienc":0,"experiment":[2,11],"expir":5,"expiri":[5,7],"explain":[3,7],"explan":[9,10],"explicit":7,"explicitli":[5,6,9,10],"explor":[0,9,11],"export":[2,10],"expos":[5,7,10],"exposur":5,"extend":[0,7],"extens":[5,11],"extern":[0,2,5,7,10,11],"extra":[2,5,10],"extract":10,"extrem":[2,9,10,11],"f":[0,2,10],"f4":5,"f53a1c4278e0726bb73fcc623d6ce763":10,"f7e8d9c0b1a2":[],"fabric":6,"face":[2,5],"facil":[],"facilit":[2,9],"fact":[2,5,11],"factor":[5,7,10],"fail":[0,2,5,7],"failed_callback":[0,7],"failur":[2,5,7],"fair":[],"fake":10,"fall":[],"fallback":[],"fals":[0,5,6,7],"famili":2,"far":[2,6,9],"fashion":8,"fast":[4,5,6,7,9],"faster":[2,5,9],"fastest":[5,9],"favor":2,"fe80":2,"featur":[2,5,6,7,8,9,11],"feder":[9,10],"fedora":2,"feed":[2,7],"feedback":[0,4],"feel":2,"fernet":9,"fetch":[5,10],"few":[2,3,5,6,9,10,11],"fewer":7,"ff":10,"fi":8,"fiber":3,"fibr":11,"field":9,"file":[0,2,3,5,6,7,9,10,11],"file_resourc":0,"file_s":0,"filelist":0,"filelist_data":0,"filelist_receiv":0,"filelist_timeout_job":0,"filenam":0,"filetransf":[4,7],"filter":[0,6,9,10],"final":[0,7,9],"find":[4,5,9,10],"find_spec":0,"fine":5,"firewal":[2,5,6],"firmwar":[2,3,9,10],"firmware_hash":10,"first":[0,2,5,6,7,9,10],"fit":0,"five":0,"fix":[4,9],"fixed_mtu":5,"flag":[0,2,7,9,10],"flash":10,"fleet":9,"flexibl":[2,3,5,6,11],"fli":9,"flight":7,"float":[0,7],"flood":[5,10],"flow":[0,2,5,6,9],"flow_control":5,"flush":0,"focu":10,"focus":9,"folder":0,"follow":[0,2,3,5,7,8,9,10,11],"forc":[0,10],"forcibli":[7,10],"foreground":2,"foremost":11,"forg":[],"forget":[6,10],"form":[2,5,6,7,9,10],"format":[0,4,10,11],"forth":0,"forum":[],"forward":[5,6,7,9,11],"forward_ip":5,"forward_port":5,"found":[0,2,5,7,9,10],"foundat":[6,9,11],"four":[],"frame":[0,5],"framework":[],"free":[2,6,8,11],"freedom":9,"freedv":3,"freeli":9,"freq":10,"frequenc":[2,3,5,9,10],"frequent":[5,6],"friend":2,"friendli":2,"from":[0,2,3,5,6,7,9,10,11],"from_byt":7,"from_fil":7,"from_identity_hash":7,"fromhex":0,"front":9,"fruit":0,"fsk":[],"ftdi_ft230x_basic_uart_43891ckm":10,"full":[0,2,5,6,7,9,10,11],"full_hash":7,"full_nam":[7,10],"fulli":[0,2,3,5,9,10,11],"funcion":7,"function":[0,2,3,4,5,6,7,8,10,11],"fundament":[3,6,9,10],"further":[2,4,5],"futur":[4,6,7,10],"fw":10,"g":[0,9,10],"ga":0,"gain":[2,3,7,9],"galact":9,"gap":2,"gatekeep":9,"gatewai":[0,2,5,6,9,10],"gateway1":[],"gateway2":[],"gbp":10,"gener":[0,2,3,5,6,7,9,10,11],"generalis":11,"genuin":10,"geograph":[2,5],"get":[0,3,4,5,6,7,10],"get_ag":7,"get_channel":[0,7],"get_config_obj":0,"get_data_s":7,"get_establishment_r":7,"get_expected_r":7,"get_external_ip":5,"get_hash":7,"get_inst":7,"get_mdu":7,"get_mod":7,"get_mtu":7,"get_packet_rssi":0,"get_packet_snr":0,"get_part":7,"get_private_kei":7,"get_progress":[0,7],"get_public_kei":7,"get_q":7,"get_random_hash":[0,7],"get_remote_ident":[0,7],"get_request_id":7,"get_respons":7,"get_response_tim":7,"get_rssi":7,"get_rtt":[0,7],"get_seg":7,"get_snr":7,"get_statu":7,"get_transfer_s":7,"geti2p":5,"ghz":9,"gi":0,"gigabit":6,"gigabyt":11,"git":[],"github":[0,2,8],"give":[2,5,9,10],"given":[5,6,7,9,10],"global":[0,4,5,6,7,9,10,11],"glue":3,"go":[0,5,6,9],"goal":[2,4,5,6],"goe":2,"good":[2,3,6,9,10],"got":0,"got_respons":0,"govern":9,"grace":7,"gracefulli":[5,6],"grant":10,"grape":0,"graphic":2,"gratefulli":8,"great":[2,9],"greater":[7,9,10,11],"greatli":[2,5],"grid":[],"group":[5,7,9],"group_id":5,"groupinstal":2,"grow":2,"grown":2,"growth":2,"guarante":[6,9],"guess":5,"guid":[2,3,9],"guidanc":[],"guidelin":2,"gw":5,"h":10,"ha":[0,2,3,5,6,7,9,11],"hack":11,"had":9,"half":[9,11],"hand":0,"handheld":9,"handl":[0,2,3,5,6,7,9,10,11],"handler":[0,7,10],"happen":[0,2,7,9],"hard":[2,3],"hardcod":2,"harder":[],"hardlin":6,"hardwar":[0,2,4,5,7,9,10,11],"has_path":[0,7],"hasattr":0,"hash":[0,6,7,9,10],"hash1":9,"hash2":9,"hash_from_name_and_ident":7,"hashlib":9,"hashmap":0,"have":[0,2,3,5,6,7,9,10],"hazard":7,"hdlc":0,"head":2,"header":[0,5,7,9],"header_1":9,"header_2":9,"health":4,"healthi":[],"hear":9,"heard":[7,9,10],"heavi":[],"height":5,"held":[5,10],"helium":0,"hellman":[6,9],"help":[0,2,6,8,9,10],"helper":0,"her":[],"here":[0,2,5,9,10],"heterogen":[4,11],"hex":[0,10],"hexadecim":[0,9,10],"hexbyt":10,"hidden":10,"hide":2,"hierarch":11,"hierarchi":[],"high":[2,3,5,6,9,10,11],"higher":[5,6,11],"highest":7,"highli":[2,5,9],"hill":[],"hint":0,"hit":0,"hkdf":9,"hmac":[9,11],"hoc":11,"hold":[5,7,9],"holder":6,"home":[2,6,10],"homebrew":5,"hop":[5,6,7,9,10,11],"hopefulli":6,"hops_to":7,"host":[0,4,5,6,9,10],"hostil":[],"hostnam":5,"hour":[0,5,10],"hous":2,"how":[0,2,3,5,6,9,10,11],"howev":[2,5,6,9],"http":[0,8],"hub":[2,5,10],"human":[0,5,6,7,8,9],"hundr":[2,6],"hungri":3,"hw_mtu":0,"hwrev":10,"hybrid":[],"hygien":10,"hz":[5,10],"i":[0,2,3,4,5,6,7,8,9,10],"i2p":[2,4,6,11],"i2p_tunnel":5,"i2pd":[2,5],"i2pinterfac":[2,5],"ia":10,"ic":3,"ic_burst_freq":5,"ic_burst_freq_new":5,"ic_burst_hold":5,"ic_burst_penalti":5,"ic_held_release_interv":5,"ic_max_held_announc":5,"ic_new_tim":5,"id":[5,7,9,10],"id_callsign":5,"id_interv":5,"idea":[2,9,10],"ideal":11,"ident":[0,2,4,5,6,7,10,11],"identif":[4,5,11],"identifi":[0,5,6,7,9,10],"identifyexampl":0,"identity_data":10,"ie":10,"if00":10,"ifac":[0,2,5,6,9,10],"ifac_s":5,"ifconf":0,"ifconfig":10,"ignor":[5,6,7,9,10],"ignored_devic":5,"illustr":[0,5,9],"imagin":6,"immedi":[5,10],"immun":[],"impact":[5,6,7,9],"imperson":6,"implement":[0,5,6,7,8,9,11],"implic":[4,5,6],"implicit":[6,7,9],"implicitli":10,"import":[0,2,3,5,6,7,8,9,10],"importlib":0,"imposs":9,"impract":10,"improv":[2,4,5,8],"in_fram":0,"in_wait":0,"inactive_for":7,"inadvert":10,"inbound":[0,5,7],"inbox":6,"incid":[],"includ":[0,3,4,5,6,7,9,11],"inclus":6,"incom":[0,5,7,10],"incompat":[7,9],"incomplet":6,"incorrect":[],"increas":[5,7,10],"increment":[],"incur":5,"indefinit":10,"independ":[7,9],"index":[0,2,4],"indic":[0,7],"indirectli":9,"individu":[2,5,7,9,10,11],"inevit":[2,9],"infer":9,"influenc":[],"influx":5,"info":[7,9,10],"inform":[0,2,4,5,6,7,9,10],"infrastructur":[3,4,5,6,9,10],"ingo":7,"ingress":[0,5],"ingress_control":5,"inher":6,"inhibit":[],"init":2,"initi":[0,5,6,7,9,11],"initialis":[0,7,10],"input":[0,10],"insert":9,"insid":9,"inspect":[2,5,6,9,10],"instal":[0,4,5,9,10,11],"instanc":[0,4,5,7,9,10],"instance_control_port":10,"instance_nam":10,"instanti":7,"instantli":10,"instead":[0,2,5,7,9,10],"instruct":2,"int":[0,7],"integ":[0,7],"integr":[2,9,10],"intel":[],"intend":[2,5,6,9,10],"intens":10,"intent":6,"intention":9,"inter":[7,9],"inter_byte_timeout":0,"interact":[0,2,6,7,9,10],"intercept":6,"interchang":5,"interconnect":[5,6,9],"interest":[2,9],"interfac":[3,4,6,7],"interface_class":0,"interface_discovery_sourc":[7,10],"interface_en":10,"interfer":[6,10],"intermedi":6,"intermediari":[5,7,9],"intermitt":[5,6],"intern":[0,5,7,9],"internal_1":5,"internet":[4,5,6,9,10,11],"interoper":[2,3,6,9,11],"interrupt":5,"interv":[5,7,10],"intervent":10,"intiat":0,"intrefac":[],"introduc":9,"introduct":4,"introductori":4,"intuit":[6,11],"invalid":[0,7],"invalu":[],"invers":9,"invest":6,"investig":[],"invis":[2,5],"invit":5,"involv":6,"io":3,"ioerror":0,"iot":3,"ip":[2,3,5,6,9,10,11],"ipifi":[],"ipsum":[],"ipv4":5,"ipv6":[2,5,10],"is_compress":7,"is_connected_to_shared_inst":0,"is_open":0,"is_path_respons":7,"is_ready_to_send":[0,7],"isdir":0,"isfil":0,"isinst":0,"island":[],"ism":[3,9],"isn":[],"isol":[2,5,10],"isp":[5,6],"issu":[4,5,6,8],"its":[3,5,6,7,9,10],"itself":[2,4,6,9,10],"iv":[9,11],"j":10,"jail":10,"job":0,"join":[0,2,6,8,9],"journei":6,"jq":[],"json":10,"judgment":[],"jurisdict":[],"just":[0,2,3,5,6,9,11],"k":[0,10],"k5":[],"kantron":[],"kb":10,"kbp":10,"keep":[0,2,6,7,9,10,11],"keepal":[7,9],"keepalive_timeout_factor":7,"kei":[0,4,5,6,7,10,11],"kept":[5,6,7,9],"kernel":[5,10,11],"keyboardinterrupt":0,"keyerror":7,"keypair":[6,9],"keyset":[9,10,11],"keysiz":7,"keystor":6,"khz":5,"ki":0,"kill":[7,9],"kilomet":[],"kind":[3,5,6,9],"kiss":[3,4,10,11],"kiss_fram":5,"kissinterfac":[5,10],"km":[],"know":[0,2,3,5,6,7,9],"knowledg":[6,9],"known":[0,5,7,9,10],"ko":8,"krypton":0,"l":[5,10],"lack":9,"laid":9,"lan":5,"laptop":6,"larg":[0,3,5,6,7,9,10,11],"larger":[6,9,10],"laser":5,"last":[0,5,7,10],"last_read_m":0,"last_unit":0,"latenc":[2,6,9,11],"later":[0,2,5,10],"latest":[0,2,5,7,10],"latest_buff":0,"latest_client_link":0,"latitud":5,"laucnh":2,"launch":[2,10],"law":[],"layer":[3,5,6,7,9,10,11],"lead":[2,9],"leak":2,"learn":[0,2,6,8,9],"least":[2,3,5,6,9,10,11],"leav":[2,6,9],"ledger":9,"left":[5,7,9,10],"legaci":6,"legal":5,"legisl":5,"legitim":[2,6,10],"len":0,"length":[0,5,7,9],"less":[0,2,3,5,7,9,11],"let":[0,2,5,6,9,10],"level":[3,5,6,9,10],"leverag":[],"liber":3,"liberapai":8,"libffi":2,"librari":2,"licens":9,"lift":10,"light":10,"lightweight":11,"like":[0,2,3,5,6,7,9,10,11],"limit":[0,2,3,4,6,9],"line":[0,2,4,5,9,10,11],"linger":10,"link":[2,3,4,5,6,7,10,11],"link_clos":0,"link_establish":0,"link_id":[0,7],"link_mtu_discoveri":7,"linkexampl":0,"linux":[2,3,5,9],"list":[0,2,3,4,5,7,9,11],"list_deliv":0,"list_fil":0,"list_filt":10,"list_packet":0,"list_receipt":0,"list_timeout":0,"listdir":0,"listen":[0,2,4,9,10],"listen_ip":5,"listen_on":[2,5],"listen_port":5,"littl":[3,9],"live":[2,7],"lki":9,"lkr":9,"ll":[0,11],"ln":10,"load":[0,2,3,5,7,10,11],"load_private_kei":7,"load_public_kei":7,"local":[0,2,4,5,6,7,9,11],"locat":[2,5,6,9,10],"lock":[],"log":[0,2,5,10],"log_crit":0,"log_error":0,"log_info":0,"log_verbos":0,"logdest":7,"logic":9,"loginctl":10,"loglevel":[0,7,10],"long":[0,2,3,5,6,7,9,10],"longer":[0,2,9,10],"longest":5,"longitud":5,"look":[0,2,5,6,9,10],"loop":0,"lora":[2,3,4,6,9,11],"lorawan":[3,9],"lorem":[],"lose":[],"loss":[5,6,9],"lost":[],"lot":[6,9],"low":[2,3,5,6,9,11],"lower":[0,2,5,10],"lowercas":[],"lowest":[],"ltu":3,"lunar":4,"lxmf":[2,5,6,7,10],"m":[0,2,9,10],"mac":[5,9],"machin":[2,9,10],"maco":4,"made":[2,5,7,9],"mai":[2,5,6,7,9,10],"main":0,"mainli":[],"maintain":[2,6,9,10],"mainten":[6,9],"major":[],"make":[0,2,3,5,6,8,9,10,11],"malici":[2,6,9,10],"manag":[2,4,6,7,9,11],"mandat":[],"mani":[0,2,3,5,6,7,9,10,11],"manipul":[9,11],"manjaro":2,"manner":6,"manual":[0,2,5,6,7,9,10],"manufactur":[3,5],"map":[5,9,10],"mark":[2,7,9],"markqvist":[0,8],"mask":[],"master":[0,7],"match":[0,5,9,10],"matter":[2,5,6],"matur":10,"max":10,"max_autoconnected_interfac":[],"maximum":[0,5,7,9,10],"mb":[],"mbp":10,"mdu":[0,7],"mean":[2,3,5,6,7,9,10],"meaning":2,"meantim":7,"measur":[6,9],"mechan":[2,4,5,6,10,11],"medium":[0,3,5,6,7,9,11],"member":[2,9],"membership":[],"memori":[2,6,9],"mention":[5,9],"menu":0,"menu_mod":0,"mere":[],"merg":10,"mesh":[2,5,6,9,10,11],"meshchat":4,"messag":[0,2,6,7,9,10],"message_class":7,"messagebas":[0,4,7],"messagecallbacktyp":7,"messeng":[6,9],"met":2,"metadata":[2,5,9,10],"metavar":0,"meter":5,"meth":0,"method":[0,2,5,7,9],"methodologi":[9,10],"metric":[],"mevpekyafshak5wr":5,"mhz":[5,9],"mi":0,"microcontrol":9,"microwav":6,"might":[2,5,6,9,10],"mikrotik":3,"millimet":3,"millisecond":[0,6,10],"mind":[6,11],"minim":[3,4,9],"minimalsampl":0,"minimum":[0,5,7,9,10],"minimum_bitr":7,"minor":[],"minut":[0,2,5,9],"mirror":[6,10],"misconfigur":2,"mislead":2,"miss":[0,2],"mistak":2,"mitig":6,"mix":[4,5,6,10],"mixtur":11,"mobil":[5,6,9],"mode":[0,2,3,4,6,7,9,10,11],"model":[6,10],"modem":[4,5,6,7,9,11],"moder":5,"modern":[2,3],"modifi":[5,6,9,10],"modul":[0,2,3,5,6,9,10,11],"moment":9,"momentarili":5,"monero":8,"monitor":[2,5,9,10],"moon":0,"more":[0,2,3,5,6,7,9,10,11],"most":[2,3,5,6,7,9,10],"mostli":[5,6,9],"motiv":4,"move":[5,6,9,10],"movement":[],"msgtype":[0,7],"mtu":[0,5,7,9,11],"much":[2,5,6,9,10,11],"multi":[4,6,9,10,11],"multicast":5,"multicast_address_typ":5,"multilater":9,"multipl":[0,5,6,9,10],"multiplex":0,"multipoint":9,"multitud":2,"must":[0,2,5,6,7,9,10],"mw":5,"my":[5,9],"my_fil":10,"my_gateway_ident":[],"my_ident":10,"my_network":[9,10],"my_network_ident":5,"my_personal_network":[],"my_private_network":[],"mycal":5,"mydomain":[],"myriad":9,"n":[0,9,10],"name":[0,2,4,5,6,7],"namespac":0,"nano":[],"narg":0,"nat":[2,5],"nativ":[0,6],"natur":5,"nearbi":[5,6],"nearest":5,"nears":9,"neat":6,"neccessari":5,"necesarri":5,"necessari":[3,5,6,7,9],"necessarili":9,"need":[0,2,3,4,5,6,7,9,10,11],"neg":2,"neglig":9,"neighbor":[],"neighborhood":[],"neither":[7,9],"neon":0,"neopixel":10,"net":5,"netcat":5,"network":[0,3,5,7,10,11],"network_ident":[5,9,10],"network_nam":[2,5],"neutral":6,"never":[5,6,7,9],"new":[0,2,4,6,7,9,10],"new_id":10,"new_ident":10,"newer":[7,9],"newest":9,"newli":[5,7,9],"newlin":5,"next":[2,5,7,9],"next_hop":7,"next_hop_interfac":7,"nicknam":9,"no1cll":5,"no_data_for":7,"no_inbound_for":7,"no_outbound_for":7,"noauth":10,"nobl":0,"noble_ga":0,"noble_gas":0,"nocheck":10,"node":[2,4,5,10,11],"noid":10,"nois":7,"nomad":4,"nomadnet":2,"non":[2,7,9],"none":[0,2,5,7,9,10],"nor":2,"normal":[0,2,5,7,9,10],"notat":[9,10],"note":[0,3,4,5,7,9,10],"noth":[3,6,11],"notic":[5,9,10],"notif":[0,7],"notifi":[],"now":[0,2,9,10],"nowher":[],"np":10,"nrf52":3,"nt":0,"nuc":[],"num":0,"number":[0,2,5,6,7,9,10],"o":[0,2,5,9,10,11],"object":[0,7],"obscur":2,"observ":6,"obstruct":[],"obtain":[2,3,7,9],"obvious":9,"occasion":[],"occur":[0,5,10,11],"ocur":7,"odd":0,"off":[2,5,6,9,10,11],"offend":[],"offer":[2,4,5,6,7,9,10],"offic":6,"offici":[],"offlin":[0,2,6],"often":[2,5,6,9,10],"oganesson":0,"old":[0,2,3,8,9],"older":10,"omit":7,"on_interfac":7,"onc":[0,2,3,5,7,9,10,11],"one":[0,2,3,5,6,7,9,10,11],"ones":[2,5,6,10],"oneself":9,"ongo":[],"onli":[0,2,3,5,6,7,9,10,11],"onlin":[0,10],"onto":[2,9],"opaqu":6,"open":[0,2,3,5,6,7,8,9,10,11],"open_port":0,"openmodem":[5,11],"openssl":[2,9],"openwrt":4,"oper":[2,3,5,6,7,9,10,11],"opkg":2,"opportunist":6,"opposit":[0,5],"opt":9,"optic":[3,11],"optim":[2,6],"option":[0,2,3,4,6,7,9,10],"ord":0,"order":[0,7,10],"org":[],"org_priv":[],"org_secure_pass":[],"organ":[2,6,9,10],"organis":[5,8],"organiz":[],"orient":9,"origin":[0,6,9],"os":2,"other":[0,2,3,5,6,7,9,10],"otherwis":[0,7],"our":[0,5,9],"ourselv":6,"out":[0,2,3,5,7,9,10],"outbound":[7,9],"outdat":[],"outgo":[0,5,7,9,10],"outli":[],"outlier":[],"outlin":[2,3,9],"output":[5,10],"outsid":[7,11],"over":[0,3,4,5,6,7,9,10,11],"overal":[9,10],"overcom":9,"overhead":[2,3,5,9,10],"overlai":2,"overrid":0,"oversight":9,"overview":[4,5],"overwhelm":[5,6,7],"overwrit":10,"own":[0,2,6,7,9,10,11],"owner":0,"p":[0,10],"pack":[0,7],"packag":[0,2,5,9],"packb":0,"packed_s":0,"packet":[0,2,4,5,6,7,10,11],"packet_callback":0,"packet_deliv":0,"packet_hash":0,"packet_receipt":[0,7],"packet_timed_out":0,"packetreceipt":[0,4,7],"pad":[9,11],"page":[2,4,9,10],"pair":[5,7,9,10],"pamac":2,"panic":[0,10],"panic_on_interface_error":[0,10],"paper":2,"par":[0,2],"paradigm":[],"parallel":2,"param":0,"paramet":[0,3,4,7,9,10],"pariti":[0,5,10],"parity_even":0,"parity_non":0,"parity_odd":0,"pars":0,"parse_arg":0,"parser":0,"part":[0,2,5,6,7,9,10],"parti":[],"particip":[2,4,5,6,9,10],"particular":[0,3,5,9,10],"particularli":[5,10],"pass":[0,3,5,6,7,9,10],"passphras":[2,5,6,9],"passport":9,"past":10,"path":[0,2,3,5,6,7,9,10],"path_respons":7,"pathfinder_m":7,"patient":[],"pattern":[3,6,9],"payload":[0,5,7,9,10],"pc":[],"pdf":4,"peach":0,"pedestrian":[],"peer":[0,2,5,7,9,10],"penalti":5,"pend":[0,9],"peopl":[2,9],"per":[5,6,7,9,10,11],"percent":[0,5],"percentag":7,"perfectli":2,"perform":[0,2,5,6,7,9,10],"perhap":2,"period":[0,5,7,9,10],"perman":[2,5,10],"permiss":5,"permissionless":[9,10],"persecut":9,"persist":[5,10],"person":[4,5,6,9],"perspect":[5,6,7,9,11],"pet":0,"pgrep":[],"philosophi":9,"phone":[2,6],"phy":10,"physic":[0,2,3,5,6,7,9,10,11],"pi":[0,4,6,9,10,11],"pick":9,"piec":9,"ping":10,"pip":[0,2,3,5,10],"pip3":2,"pipe":[2,4,11],"pipeinterfac":[3,5],"pipx":2,"pitfal":9,"pkcs7":[9,11],"pkg":2,"place":[0,2,5,6,9,10],"placement":[],"plaform":3,"plai":[],"plain":[0,3,5,7,9],"plain_mdu":7,"plaintext":[0,7],"plan":[6,9],"planetari":11,"platform":[0,3,4,9,10],"pleas":[0,2,5,7,10],"plenti":[6,9],"plug":10,"pmr":9,"point":[2,3,5,6,9,10],"pointer":2,"polici":10,"pomelo":0,"poorli":[],"popul":7,"popular":11,"port":[0,2,3,4,5,6,9,11],"port0":10,"portabl":[5,6,9],"pose":[2,9],"posit":[0,10],"posix":2,"possess":[5,9],"possibl":[2,3,5,6,7,9,10,11],"possibli":[2,9],"post":0,"postfix":10,"potenti":[0,2,5,8,9,10,11],"power":[2,3,5,6,9,10,11],"powershel":2,"ppp":0,"practic":[2,6,9,11],"pre":[2,6,7,9],"preambl":[5,10],"preced":0,"preciou":6,"precompil":2,"predetermin":[],"predict":9,"prefer":[2,9],"prefer_ipv6":5,"premis":6,"prepar":[0,9],"prerequisit":7,"prescript":[],"presenc":[5,7],"present":[5,6,9,10],"preserv":[2,7],"preshar":9,"press":0,"pretend":9,"pretti":9,"prettyhexrep":0,"prevent":[5,6,10],"previou":0,"previous":[5,7,9],"primari":9,"primarili":[5,6],"primit":[2,4],"principl":[6,9,11],"print":[0,5,10],"print_filelist":0,"print_help":0,"print_menu":0,"priorit":[6,9],"prioriti":9,"prioritis":[4,5,6,7],"privaci":[2,5,11],"privat":[2,5,6,7,8,9,10,11],"private_net":[],"private_network":[],"private_ret":2,"privileg":10,"probabl":[0,2,6,9,10,11],"probe":10,"problem":[2,9,10],"problemat":[],"proc":10,"procedur":[2,7,9],"process":[0,2,3,5,6,7,9,10],"process_incom":0,"process_outgo":0,"produc":[],"product":10,"profound":6,"program":[0,3,4,5,7,9,11],"program_setup":0,"programm":9,"programmat":9,"progress":[0,7,10,11],"progress_callback":7,"project":2,"promis":2,"prompt":[0,2],"proof":[0,5,6,7,9,10],"proof_packet":0,"proof_requested_callback":7,"proof_strategi":7,"propag":[4,5,6,7,10],"proper":2,"properli":2,"properti":[0,6,7],"proport":9,"propos":2,"protect":[2,10],"protocol":[2,3,4,5,6,11],"prove":[0,6,9],"prove_al":[0,7],"prove_app":7,"prove_non":7,"proven":[7,9],"provid":[0,2,3,4,5,6,7,9,10,11],"provis":[3,10],"proxim":[],"prv_byte":7,"pseudo":10,"pub_byt":7,"public":[0,4,5,6,7,10],"public_inform":0,"publicli":[2,5,9,10],"publish":[2,4,5,7,9],"publish_blackhol":10,"publish_blackhole_en":7,"publish_ifac":5,"pull":[],"purchas":[2,9,11],"pure":[4,9],"purg":7,"purpos":[2,3,5,6,7,9,10],"push":[],"put":[0,3,5,10],"py":[0,9,10],"py3":2,"pyca":[2,9],"pyseri":[0,2],"python":[0,4,5,7,9,10,11],"python3":[0,2,3],"q":[0,10],"qr":[2,6],"qualiti":[7,10],"quantiti":2,"quarter":2,"queri":[0,2,7,10],"question":[2,3,5],"queu":[7,10],"queue":[5,9],"quickli":[8,9,11],"quiet":[5,10],"quinc":0,"quirk":2,"quit":[0,2],"r":[0,5,9,10],"radio":[4,5,6,7,9,10,11],"radon":0,"rais":[0,7],"rak":3,"ram":[2,5],"randint":0,"random":[0,7,9],"random_text_gener":0,"randomis":9,"randomli":[0,9],"rang":[0,2,3,5,6,9,10,11],"rapidli":5,"rare":[2,5],"raspberri":[4,6,9,10,11],"rasperri":2,"ratchet":[7,9],"ratchet_count":7,"ratchet_expiri":7,"ratchet_id_receiv":7,"ratchet_interv":7,"ratchets":7,"ratchets_path":7,"rate":[0,4,7,10],"rather":[2,7],"ratio":7,"raw":[0,3,7],"rawchannelread":[4,7],"rawchannelwrit":[4,7],"rawiobas":7,"rb":0,"re":[0,5,6,7,9],"reach":[2,4,5,6,7,10],"reachabl":[0,2,5,6,7,9,10],"reachable_on":5,"read":[0,2,5,6,7,9,10],"read_loop":0,"readabl":[0,5,7,9,10],"reader":[0,7],"readi":[0,2,3,5,7,11],"readili":11,"ready_byt":[0,7],"ready_callback":7,"real":[2,3,6,11],"realiti":[2,8],"realli":[5,7],"reappear":5,"reason":[2,5,9,10],"reassembl":9,"reboot":2,"rebroadcast":6,"recal":[0,7,10],"recall_app_data":7,"recap":9,"receipt":[0,6,7,9],"receiv":[0,2,5,6,7,9,10],"receive_path_respons":7,"receive_stream_id":7,"received_announc":[0,7],"recent":[7,9],"recept":7,"reception_rssi":0,"reception_snr":0,"reception_stat":0,"recip":[],"recipi":9,"recogn":9,"recommend":[0,2,5,9],"recondit":10,"reconnect":[0,6],"reconnect_port":0,"reconstruct":9,"record":[2,9],"recov":[],"recoveri":5,"recreat":9,"recurs":[7,9],"reduc":[5,10],"redund":6,"refer":[0,2,4,5,10],"reflect":[],"refresh":10,"refus":6,"regain":2,"regard":9,"region":5,"regist":[0,7,10],"register_announce_handl":[0,7],"register_message_typ":[0,7],"register_request_handl":[0,7],"regul":5,"regular":10,"regularli":[],"regulatori":[],"rel":[3,5,6,9],"relai":2,"relat":2,"relationship":[6,9,10],"releas":[2,5,7,9],"relev":[0,2,3,5,7,9,10],"reli":[2,5,6,8,9,10],"reliabl":[2,3,5,6,7,9,11],"relianc":2,"relief":6,"reload":10,"rem":0,"remain":[5,6,7,9],"rememb":[6,7,9],"remot":[0,4,7,9],"remote_ident":[0,7],"remote_identifi":0,"remote_management_allow":10,"remote_management_en":7,"remote_p":0,"remotesensor":9,"remov":[7,10],"remove_message_handl":7,"remove_ready_callback":7,"render":2,"repeat":[],"replac":[0,2,6,7,9,10],"repli":[0,10],"replic":[3,9],"reply_data":0,"reply_messag":0,"reply_text":0,"report":[5,7,8,10],"repositori":[2,8,9],"repres":[6,9],"represent":[0,7],"repurpos":2,"reput":[9,10],"request":[4,5,6,7,9,10,11],"request_destin":0,"request_fail":0,"request_id":[0,7],"request_packet":0,"request_path":[0,7],"request_receipt":[0,7],"request_receiv":0,"requested_at":[0,7],"requestexampl":0,"requestor":5,"requestreceipt":[4,7],"requir":[0,2,5,6,7,9,10,11],"require_shared_inst":7,"required_discovery_valu":[7,10],"research":[],"resend":7,"reserv":[0,6,7],"resid":5,"resili":[2,6,10,11],"resist":6,"resolut":[2,5,9],"resolv":[4,5,6,9,10],"resourc":[0,2,4,5,6,7,8,10],"resource_callback":7,"resource_sending_conclud":0,"resource_strategi":7,"respawn":5,"respawn_delai":5,"respawn_interv":5,"respect":[5,6,11],"respond":[0,6,7,10],"respond_to_prob":10,"respons":[4,5,7,9,11],"response_callback":[0,7],"response_gener":[0,7],"rest":[6,11],"restart":[5,10],"restartsec":10,"restor":[2,5],"restrict":[5,6,10],"result":[0,2,5,9,10],"ret":[4,9],"retain":[5,7],"retained_ratchet":7,"retent":[],"reticulum":[0,5,6,7],"retransmiss":[6,9],"retransmit":[5,9],"retri":[0,7,9],"retriev":[7,10],"return":[0,7,10],"reus":[],"reveal":[2,7,9,11],"revers":10,"review":9,"revis":10,"rfe":10,"ridicul":9,"right":[2,5],"risc":4,"risk":9,"rmap":2,"rn":[0,2,3,7,9,10],"rncp":4,"rnid":[4,9],"rnode":[2,4,9,10,11],"rnodeconf":[3,4],"rnodef3b9":5,"rnodeinterfac":[2,3,5,10],"rnodemultiinterfac":5,"rnpath":[2,4,5],"rnprobe":[2,4],"rns_bin_dir":10,"rnsd":[2,4],"rnsh":[2,10],"rnspure":[2,9],"rnstatu":[2,4,5,9],"rnstransport":[5,10],"rnx":4,"roadmap":8,"roam":[5,6],"robot":9,"robust":[2,5],"role":6,"roll":5,"rom":10,"room":[],"root":9,"rotat":[7,9,10],"round":[0,7,10],"rout":[2,3,5,6,7,9,10,11],"router":[2,5,6,10],"rpc":10,"rpc_kei":10,"rprogress":0,"rssi":[0,7,10],"rtsct":0,"rtt":[0,7,9],"rttstring":0,"rule":[2,4,5,6,10],"run":[0,2,3,5,6,7,9,10,11],"runtim":[0,9],"rust":2,"rx":[5,10],"rxb":0,"safe":9,"sai":2,"said":9,"same":[0,2,3,5,6,7,9,10],"sanction":[],"satellit":6,"satisfi":9,"save":[7,9,10],"save_error":0,"saved_filenam":0,"scalabl":[10,11],"scale":[9,11],"scan":[2,5],"scenario":[2,5,9],"schedul":7,"scheme":[3,5],"scope":5,"scratch":3,"screen":0,"script":[2,3,5],"scrutini":9,"seamless":[5,9],"seamlessli":[5,6],"search":[4,7],"second":[0,5,6,7,9,10,11],"secondari":[],"secreci":[5,7,9,11],"secret":[6,9],"section":[2,3,5,6,9,10],"secur":[2,4,6,9,10,11],"secure_network":[],"secure_network_pass":[],"secure_pass":[],"secure_passphrase_her":[],"see":[0,2,5,6,7,9,10,11],"seek":9,"seen":[5,9],"segment":[0,2,5,6,7,9,10,11],"segreg":[],"select":[0,2,5],"self":[0,2,9,11],"semtech":3,"send":[0,5,6,7,9,10],"send_stream_id":7,"sender":[0,2,6,9,10],"sens":6,"sensibl":[2,3,5],"sensit":[],"sensor":[6,9],"sent":[0,2,6,7,9,10],"sentiment":9,"separ":[0,2,5,6,9,10],"sequenc":[0,7,9,11],"sequenti":11,"seri":3,"serial":[0,2,4,6,9,11],"serialinterfac":[3,5],"serv":[0,3,5,6,9,10],"serve_path":0,"server":[0,2,3,4,6,7,9,10],"server_buffer_readi":0,"server_callback":0,"server_client_connect":0,"server_destin":0,"server_fil":0,"server_ident":0,"server_link":0,"server_loop":0,"server_message_receiv":0,"server_packet_receiv":0,"servic":[2,4,6,9],"session":[2,9],"set":[0,2,3,5,6,7,9,10,11],"set_default_app_data":7,"set_delivery_callback":[0,7],"set_link_closed_callback":[0,7],"set_link_established_callback":[0,7],"set_packet_callback":[0,7],"set_proof_requested_callback":7,"set_proof_strategi":[0,7],"set_ratchet_interv":7,"set_remote_identified_callback":[0,7],"set_resource_callback":7,"set_resource_concluded_callback":[0,7],"set_resource_started_callback":[0,7],"set_resource_strategi":[0,7],"set_retained_ratchet":7,"set_timeout":[0,7],"set_timeout_callback":[0,7],"setup":[0,2,4,5,10],"sever":[2,6,7,10],"sf":10,"sh":5,"sha":[6,7,9],"sha256":[9,11],"shall":9,"shape":6,"share":[0,2,6,7,9,10],"share_inst":10,"shared_instance_port":10,"shared_instance_typ":[7,10],"she":[],"shelf":[9,11],"shell":[4,10],"shift":[],"ship":[2,9],"shop":0,"short":[3,5,9,10],"shorter":5,"shorthand":[5,10],"shot":2,"should":[0,2,5,6,7,9,10,11],"should_ingress_limit":0,"should_quit":0,"should_use_implicit_proof":7,"show":[2,10],"shown":0,"side":[5,11],"sideband":[4,10],"sight":[],"sign":[5,6,7,9,10],"signal":[0,5,7,9],"signatur":[6,7,9,10,11],"signifi":9,"signific":6,"significantli":[5,7],"silent":10,"similar":[0,2,3,5,7,10,11],"simpl":[0,2,3,7,9,10,11],"simpler":[5,6,11],"simplest":[5,9],"simpli":[0,2,3,5,6,9,10],"simplic":9,"simplifi":0,"simplyequip":3,"simultan":[2,9],"sinc":[0,2,5,6,7,9],"singl":[0,2,5,6,7,9,10,11],"singular":9,"sit":2,"site":[5,6],"situat":[2,3,5,6,9,10],"size":[0,2,5,7,9,10],"size_str":0,"skip":0,"slate":2,"sleep":[0,2,10],"slice":0,"slightli":[0,2],"slottim":[5,10],"slow":[0,5,6,9],"slower":[5,7,9],"small":[0,2,5,6,7,9,11],"smaller":7,"smallest":2,"snippet":[2,10],"snr":[0,7,10],"so":[0,2,3,5,6,7,8,9,10,11],"social":2,"socket":[5,10,11],"softwar":[2,3,5,9],"sole":5,"solut":[2,9,10],"solv":9,"some":[0,2,3,5,6,7,9,10],"some_passphras":[],"someon":[2,5,10],"someth":[6,9],"somethign":0,"sometim":[3,5],"somewhat":2,"soon":7,"sophist":[],"sort":[5,9,10],"soundmodem":5,"sourc":[0,2,3,4,6,7,9,11],"sovereign":[2,9],"sovereignti":11,"space":[0,2,3,6,9,11],"spam":[2,5,9,10],"spammi":10,"span":[5,6,9],"spawn":5,"spe":5,"spec":9,"special":[9,10],"specif":[0,3,4,5,6,7,10],"specifi":[0,2,3,5,6,7,9,10],"spectrum":[5,9],"speed":[0,5,7,9,10],"split":0,"spoke":[],"sponsor":8,"spread":[5,10],"spreadingfactor":5,"squelch":5,"ssh":2,"ssid":5,"stabil":6,"stabl":[2,5,6,9,11],"stack":[0,2,6,7,9,10,11],"stage":9,"stai":[0,9,10],"stale":[6,7],"stale_grac":7,"stale_tim":7,"stamp":[5,7,10],"standalon":4,"standard":[3,5,9,10],"star":[],"start":[0,3,4,5,6,7,9,10],"startup":[0,2,10],"stat":[7,10],"state":[0,6],"static":[2,5,7],"staticmethod":0,"station":5,"stationari":[6,10],"statist":[0,5,7,8],"statu":[0,2,4,5,7,9,10],"stderr":10,"stdin":[5,10],"stdio":11,"stdout":[0,5,10],"step":[0,2,3],"still":[0,2,5,6,9,10],"stock":0,"stop":[7,11],"stopbit":[0,5,10],"storag":[2,5,9,10],"store":[0,7,9,10],"store_tru":0,"str":0,"straightforward":5,"strateg":6,"strategi":[4,5,7],"stream":[0,7,9],"stream_id":[0,7],"strength":[7,11],"strengthen":[],"strict":[],"strictli":[5,9],"string":[0,7],"stringmessag":0,"strong":9,"stronger":2,"strongli":2,"struct":0,"structur":[0,6,7,9,11],"style":5,"sub":[0,5],"subclass":[0,7],"subinterfac":5,"subject":[2,10,11],"submiss":[],"submit":[],"subnet":[2,6],"subscrib":[2,10],"subsequ":[0,9],"subset":5,"subsid":5,"substanti":2,"succe":2,"succeed":[0,7],"succesfulli":6,"success":[2,5],"successful":7,"successfulli":[0,7,9],"sudo":[2,10],"suffer":6,"suffic":9,"suffici":[2,5,9,10],"suffix":0,"suggest":8,"suit":[2,3,9,10],"suitabl":[0,2,5,6,9,10,11],"super":0,"superior":[],"supersed":5,"suppli":[0,5,7,9,11],"supplier":2,"support":[0,2,4,5,6,7,9,10,11],"sure":[0,2,3,10],"surveil":9,"surviv":[2,9,10],"suscept":[],"sustain":[],"switch":[3,5,6,9,10],"sx1262":3,"sx1268":3,"sx1276":3,"sx1278":3,"sx1280":3,"sy":0,"symbol":[],"symlink":10,"symmetr":[7,9],"system":[0,2,3,4,5,6,7,8,9,11],"systemctl":10,"systemd":10,"t":[0,2,5,6,7,9,10],"tabl":[2,5,6,9,10],"tablet":2,"tag":7,"tail":5,"tailor":9,"take":[0,2,5,9,10,11],"taken":[0,9],"tangerin":0,"tap":3,"target":[0,5,10],"target_hash":7,"target_host":[2,5],"target_port":[2,5,10],"task":10,"tcp":[2,3,4,6,9,10,11],"tcpclientinterfac":[2,3,5],"tcpinterfac":10,"tcpserverinterfac":[2,5],"tdata":0,"teach":10,"team":[],"teardown":[0,7],"teardown_reason":0,"techniqu":[],"technologi":[2,6],"teffect":0,"telemetri":8,"telemetry_network":[],"telemetry_pass":[],"tell":[0,2,5,6],"temperatur":9,"temporari":[2,5,10],"temporarili":[5,6],"ten":9,"tend":5,"term":[2,5,6,9],"termin":[0,2,7],"terminologi":[6,9],"termux":2,"terrain":[],"test":[2,9,10],"testnet":[4,10],"text":[0,2,9],"tfile":0,"tgz":10,"than":[0,2,5,6,7,9,10,11],"thei":[0,2,5,6,7,9,10],"them":[0,2,3,5,6,8,9,10,11],"themselv":[5,6],"thereaft":9,"therefor":[2,9,11],"thi":[0,2,3,4,5,6,7,9,10,11],"thing":[0,2,6],"think":[2,3,6,9],"third":[],"thorough":[],"those":[2,6,9,10],"though":[2,5,6,9],"thousand":[2,5,9,10],"thread":0,"threat":10,"three":[2,9],"threshold":5,"thrive":[],"throough":5,"throttl":[5,6],"through":[0,2,3,5,6,7,9,10,11],"throughout":[6,9],"throughput":[7,9,11],"thrown":7,"thu":[6,7,9],"ti":[0,6,9],"time":[0,2,3,5,6,7,9,10],"time_since_last":0,"timeout":[0,7,10],"timeoutarg":0,"timestamp":[0,9],"timestr":0,"tion":5,"tmp":[],"tnc":[3,5,7,10,11],"tnid2":[],"to_fil":7,"todai":9,"todo":[],"togeth":[3,6,9,10],"token":[7,9,11],"toler":5,"too":[0,6],"tool":[2,3,6,9,10,11],"toolkit":[2,6],"top":9,"topic":9,"topographi":[2,6,9],"topologi":[2,5,6,9,11],"torn":[7,10],"total":[7,9,10,11],"total_s":0,"touch":[],"toward":[0,5,9],"town":[],"track":7,"track_phy_stat":7,"trade":[6,9],"tradit":[6,9],"traffic":[0,2,5,6,7,9,10],"trail":[],"transceiv":[2,3,5,9,11],"transfer":[0,7,9,10,11],"transfer_s":0,"transform":11,"transient":[],"transit":2,"translat":6,"transmiss":[2,5,7,9],"transmit":[0,5,9],"transpar":[3,5,6,9,10],"transport":[0,2,4,5,7,10,11],"transport_en":7,"transport_ident":10,"travel":[],"travers":[2,7,9],"treat":[6,9],"tremend":6,"tri":0,"trigger":[],"trip":[0,7,10],"trivial":[9,11],"true":[0,2,5,7,10],"truli":[3,9],"truncat":[7,9,10],"truncated_hash":7,"truncated_hashlength":[0,7],"trust":[2,5,6,9,10],"trustless":[4,9,11],"trustworthi":[6,10],"try":[0,4,5,6,7],"ttime":0,"ttransfer":0,"ttyacm0":5,"ttyusb0":[0,5,10],"ttyusb1":5,"ttyusb2":5,"tun":[3,5],"tun0":5,"tune":5,"tunnel":[2,5,6,9,11],"tupl":7,"turn":[0,5,10],"turnaround":5,"tutori":2,"two":[0,3,5,6,7,9],"tx":[5,10],"txb":0,"txp":10,"txpower":5,"txt":10,"txtail":[5,10],"type":[0,2,4,5,6,7,10],"typeerror":7,"typic":[5,6,9],"typo":[],"u":[8,9,10],"ubiqu":3,"ubuntu":[4,10],"uci":2,"udp":[4,6,9,10,11],"udpinterfac":5,"uhf":[10,11],"ultim":[2,9],"umsgpack":0,"unauthor":[],"unavail":[],"unblackhol":10,"unblock":10,"uncencrypt":0,"uncensor":2,"unchang":6,"under":[7,8,9,10,11],"underli":[0,5,6,7,9,11],"understand":[2,4,5,6,7,10],"underwai":2,"unencrypt":[0,7,9],"unequivoc":9,"unexplor":6,"unforg":[6,11],"unfortun":2,"unidentifi":0,"unidirect":0,"unifi":[6,9],"uninterest":0,"uniqu":[0,5,6,7,9,10,11],"unit":[0,2,7,10],"unknown":[0,5,6,7,9,10],"unless":[0,2,5,6,7,9],"unlicens":9,"unlik":9,"unlimit":[],"unlock":10,"unnecessari":[],"unnecessarili":[],"unorganis":6,"unpack":[0,7],"unpackb":0,"unplug":10,"unreach":[],"unrecover":[0,10],"unrel":[],"unreli":5,"unset":9,"unsupport":7,"until":[0,2,5,7],"untrust":10,"unus":10,"unwant":[9,10],"up":[0,2,3,5,6,7,9,10,11],"updat":[0,2,7,9,10],"upgrad":[2,7,9],"upkeep":5,"uplink":[],"upon":[0,5,9],"uppercas":[],"upset":0,"urandom":[9,11],"url":10,"us":[0,3,4,5,6,7],"usabl":[2,5,9],"usag":[4,5,7,8,10],"usb":[3,9,10],"useabl":9,"user":[0,2,5,6,9,10,11],"user_input":0,"userland":11,"usernameher":10,"usr":[5,10],"usual":[2,5,6],"utf":0,"util":[0,3,4,5,9],"utilis":[0,2,5,7,9,10,11],"v":[4,10],"valid":[0,2,5,6,7,9,10],"valu":[0,2,5,7,9,10],"valuabl":[3,8],"valueerror":[0,7],"vari":[2,5,9,10],"variabl":[0,2,7],"varieti":[5,9,10,11],"variou":[0,2,5,6,9,10,11],"vast":[2,9],"vastli":6,"ve":6,"vehicl":5,"vendor":[0,3,11],"verbos":[7,10],"veri":[2,3,5,6,7,8,9,10,11],"verif":[6,7,9,10],"verifi":[0,2,5,6,7,9,10,11],"versa":11,"version":[0,2,7,9,10],"very_secure_passphras":[],"very_secure_passphrase_her":[],"vhf":[9,11],"via":[2,3,5,6,8,9,10,11],"viabl":6,"vice":11,"view":[2,5,9,10],"violat":5,"virtual":[2,3,5,6,9,10,11],"visibl":[0,5],"volunt":2,"vpn":6,"vport":5,"vulner":6,"vvv":2,"w":10,"wa":[0,3,5,6,7,9,10,11],"wai":[0,4,5,6,7,9,10],"wait":[0,2,5,9,10],"wake":[],"want":[0,2,5,6,9,10],"wantedbi":10,"warn":10,"warrant":11,"wast":[5,6],"wave":3,"wb":0,"we":[0,2,3,5,6,8,9],"weaken":9,"weaker":[],"weather":[],"web":2,"websit":[2,5],"weight":10,"weird":[],"welcom":2,"well":[2,3,5,6,7,9,10,11],"went":0,"were":0,"what":[0,2,4,5,6,7,9,10],"whatev":[6,7,9],"wheel":2,"when":[0,2,3,5,6,7,9,10],"whenev":[0,7,9],"where":[2,3,4,5,6,7,9,10],"whereupon":9,"whether":[0,2,5,6,7,9],"which":[0,2,5,6,7,9,10],"while":[0,2,3,5,6,7,9,10,11],"whitelist":9,"whl":2,"who":[2,5,6,9,10],"whole":10,"whom":[],"why":[],"wide":[2,3,5,6,9,10,11],"wider":[2,5,6,9,10],"wifi":[2,4,5,6,9,10,11],"wiki":2,"wildcard":0,"willing":10,"window":[4,5],"wipe":10,"wire":[2,3,4,5,11],"wireless":[3,6],"wirelessli":5,"wish":[0,5,9,10],"within":[0,2,5,6,7,9],"without":[0,2,3,5,6,9,10,11],"wlan0":5,"wolf":3,"won":0,"word":2,"work":[2,3,5,6,9,10,11],"workabl":6,"world":[2,3,5,6,10,11],"worri":6,"worth":2,"would":[2,5,7,9],"write":[0,2,3,5,7,9,10],"write_timeout":0,"writer":[0,7],"written":[0,9,11],"wrong":[0,2,5],"wrote":[0,5],"x":[7,9,10],"x25519":[9,11],"xenon":0,"xonxoff":0,"y":0,"ye":[2,5,9,10],"year":9,"yet":[0,5,9,11],"yggdrasil":5,"yi":0,"you":[0,2,3,4,5,6,7,8,9,10,11],"your":[0,3,4,5,6,7,8,9,11],"your_secure_passphrase_her":[],"yourself":[2,9,10,11],"z":0,"zero":[7,11],"zi":0,"zone":9,"zshrc":2},"titles":["Code Examples","An Explanation of Reticulum for Human Beings","Getting Started Fast","Communications Hardware","Reticulum Network Stack Manual","Configuring Interfaces","Building Networks","API Reference","Support Reticulum","Understanding Reticulum","Using Reticulum on Your System","What is Reticulum?"],"titleterms":{"0":3,"1":3,"25":5,"Beings":1,"Not":6,"Of":4,"One":[],"The":[9,10],"With":2,"access":9,"ad":2,"address":6,"advanc":[],"an":1,"android":2,"announc":[0,5,9],"anonym":[],"api":7,"architectur":[],"arm64":2,"auto":5,"autom":10,"ax":5,"backbon":5,"backboneinterfac":[],"backhaul":[],"base":[2,3],"basic":9,"batteri":[],"beam":3,"benefit":[],"best":[],"blackhol":10,"board":3,"bookworm":2,"bootstrap":2,"boundari":[],"bridg":[],"broadcast":0,"buffer":0,"build":[2,6],"can":11,"capac":[],"caveat":11,"central":[],"channel":0,"choos":[],"client":5,"close":[],"code":[0,8,9],"combin":3,"common":5,"commun":3,"concept":6,"conceptu":9,"config":[],"configur":[5,10],"connect":[2,5,6],"consider":[5,6],"consum":[],"content":4,"contribut":[2,8],"control":5,"converg":[],"core":[],"creat":[2,3,9],"credenti":[],"cross":[],"cryptograph":9,"current":[9,11],"custom":[0,2,5],"data":10,"debian":2,"decis":[],"deck":3,"depend":2,"deploi":[],"design":[],"destin":[5,6,9],"detail":9,"develop":2,"devic":[3,11],"discov":10,"discover":5,"discoveri":5,"dn":[],"doe":11,"donat":8,"dynam":[],"echo":[0,3],"emptor":11,"enabl":5,"encrypt":[],"entrypoint":2,"establish":9,"ethernet":3,"exampl":[0,5],"explain":[],"explan":1,"fast":2,"featur":[],"feedback":8,"filetransf":0,"filter":[],"find":2,"fix":10,"format":9,"framework":[],"from":[],"full":[],"function":9,"further":9,"futur":9,"gatewai":[],"geograph":[],"get":[2,9],"global":2,"goal":9,"growth":[],"guid":[],"handoff":[],"hardwar":3,"health":2,"heltec":3,"heterogen":6,"high":[],"host":2,"how":[],"human":1,"hybrid":[],"hygien":[],"i":11,"i2p":5,"ident":9,"identif":0,"ifac":[],"implement":[],"implic":9,"import":[],"improv":10,"includ":[2,10],"indic":4,"infrastructur":2,"instal":[2,3],"instanc":[2,6],"interconnect":[],"interfac":[0,2,5,9,10,11],"internet":2,"introduct":9,"introductori":6,"issu":2,"kei":9,"kiss":5,"length":[],"lilygo":3,"limit":5,"line":3,"link":[0,9],"list":10,"listen":5,"local":10,"lora":5,"lora32":3,"lunar":2,"maco":2,"make":[],"manag":10,"manual":4,"mechan":9,"medium":[],"mesh":[],"meshchat":2,"minim":0,"mix":2,"mobil":[],"mode":5,"modem":3,"motiv":9,"multi":5,"multipl":[],"name":[9,10],"nat":[],"nearest":[],"network":[2,4,6,9],"new":5,"node":[6,9],"nomad":2,"note":2,"off":[],"offer":11,"open":[],"opencom":3,"openwrt":2,"oper":[],"option":5,"organ":[],"over":2,"overview":[6,9],"packet":[3,9],"paramet":5,"particip":[],"path":[],"pattern":[],"peer":[],"perform":[],"person":2,"philosophi":[],"pi":2,"pipe":5,"platform":2,"point":[],"port":10,"power":[],"practic":[],"prefer":[],"primit":9,"prioriti":[],"prioritis":9,"program":[2,10],"propag":9,"protocol":9,"provid":8,"public":[2,9],"publish":10,"pure":2,"python":2,"radio":[2,3],"rak4631":3,"raspberri":2,"rate":5,"reach":9,"recept":[],"redund":[],"refer":[7,9],"remot":[2,5,10],"request":0,"resili":[],"resolv":2,"resourc":9,"respons":[0,2],"ret":2,"reticulum":[1,2,3,4,8,9,10,11],"risc":2,"rncp":10,"rnid":10,"rnode":[3,5],"rnodeconf":10,"rnpath":10,"rnprobe":10,"rnsd":10,"rnstatu":10,"rnx":10,"roam":[],"rule":9,"scenario":[],"secur":5,"segment":[],"select":[],"serial":[3,5,10],"server":5,"servic":10,"setup":9,"share":[],"shell":2,"sideband":2,"singl":[],"site":[],"sourc":10,"specif":[2,9],"stack":4,"standalon":2,"star":[],"start":2,"statu":11,"strategi":2,"support":[3,8],"suprem":3,"system":10,"systemwid":10,"t":3,"t114":3,"t3s3":3,"tabl":4,"tcp":5,"technologi":[],"testnet":2,"thi":[],"topologi":[],"trade":[],"transit":[],"transport":[6,9],"travers":[],"tree":[],"trust":[],"trustless":6,"try":2,"type":[3,9,11],"ubuntu":2,"udp":5,"understand":9,"unsign":3,"us":[2,9,10,11],"usag":[3,9],"userspac":10,"util":[2,10],"v":2,"v1":3,"v2":3,"v3":3,"v4":3,"valid":[],"view":[],"virtual":[],"wai":2,"what":11,"when":[],"where":11,"wifi":3,"window":2,"wire":9,"work":[],"x":3,"xl":3,"your":[2,10]}})
\ No newline at end of file
diff --git a/docs/manual/whatis.html b/docs/manual/whatis.html
index 50181c8..89405db 100644
--- a/docs/manual/whatis.html
+++ b/docs/manual/whatis.html
@@ -219,7 +219,7 @@
- Understanding Reticulum
- Communications Hardware
- Configuring Interfaces
-- Building Networks
+- Building Networks with Reticulum
- Support Reticulum
- Code Examples
@@ -418,9 +418,7 @@ network, and vice versa.
Reticulum is an experimental networking stack, and should be considered as
such. While it has been built with cryptography best-practices very foremost in
mind, it has not yet been externally security audited, and there could very well be
-privacy-breaking bugs. To be considered secure, Reticulum needs a thorough
-security review by independent cryptographers and security researchers. If you
-want to help out with this, or can help sponsor an audit, please do get in touch.
+privacy-breaking bugs.
diff --git a/docs/source/conf.py b/docs/source/conf.py
index 97e568e..92845ea 100644
--- a/docs/source/conf.py
+++ b/docs/source/conf.py
@@ -24,6 +24,7 @@ release = RNS._version.__version__
extensions = [
"sphinx.ext.autodoc",
"sphinx_copybutton",
+ "sphinx_markdown_builder",
]
autodoc_member_order = "bysource"
diff --git a/docs/source/networks.rst b/docs/source/networks.rst
index 3c40fd7..dd378d3 100644
--- a/docs/source/networks.rst
+++ b/docs/source/networks.rst
@@ -4,17 +4,47 @@
Building Networks
*****************
-This chapter will provide you with the knowledge needed to build networks with
-Reticulum, which can often be easier than using traditional stacks, since you
-don't have to worry about coordinating addresses, subnets and routing for an
+This chapter will provide you with the high-level knowledge needed to build networks with
+Reticulum. It will not, however tell you all you need to know to succesfully
+design and configure every kind of network you can imagine. For this, you will
+most likely need to read this manual in its entirity, invest significant time
+into experimenting with the stack, and learning functionality intuitively.
+
+Still, after reading this chapter, you should be well equipped to *start* that
+journey. While Reticulum is **fundamentally different** compared to other
+networking technologies, it can often be easier than using traditional stacks.
+If you've built networks before, you will probably have to forget, or at least
+temporarily ignore, a lot of things at this point. It will all makes sense in
+the end though. Hopefully.
+
+If you're used to protocols like IP, let's at least start with some relief:
+You don't have to worry about coordinating addresses, subnets and routing for an
entire network that you might not know how will evolve in the future. With
Reticulum, you can simply add more segments to your network when it becomes
necessary, and Reticulum will handle the convergence of the entire network
-automatically.
+automatically. There's plenty more neat aspects like that to Reticulum, but
+we're getting ahead of ourselves. Let's cover the basics first.
Concepts & Overview
--------------------
+Before you start building your own networks, it's important to understand the
+fundamental principles that distinguish Reticulum networks from traditional
+networking approaches. These principles shape how you design your network,
+what trade-offs you encounter, and what capabilities you can rely on.
+
+Reticulum is not a single network you "join", it is a toolkit for *creating* networks.
+You decide what mediums to use, how nodes connect, what trust boundaries exist,
+and what the network's purpose is. Reticulum provides the cryptographic foundation,
+the transport mechanisms, and the convergence algorithms that make your design
+workable. You provide the intent and the structure.
+
+This approach offers tremendous flexibility, but it requires thinking in terms of
+different abstractions than those used in conventional networking.
+
+Introductory Considerations
+^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
There are important points that need to be kept in mind when building networks
with Reticulum:
@@ -31,6 +61,11 @@ with Reticulum:
interconnect with much larger and higher bandwidth networks without issue.
Reticulum automatically manages the flow of information to and from various
network segments, and when bandwidth is limited, local traffic is prioritised.
+ You will, however, need to configure your interfaces correctly. If you tell
+ Reticulum to pass all announce traffic from a gigabit link to a LoRa interfaces,
+ it will try as best as possible to comply with this, while still respecting
+ bandwidth limits, but you *will* waste a lot of precious bandwidth and airtime,
+ and your LoRa network will not work very well.
* | Reticulum provides sender/initiator anonymity by default. There is no way
to filter traffic or discriminate it based on the source of the traffic.
@@ -89,81 +124,227 @@ Any number of interfaces can be configured, and Reticulum will automatically
decide which are suitable to use in any given situation, depending on where
traffic needs to flow.
-Example Scenarios
------------------
+Destinations, Not Addresses
+^^^^^^^^^^^^^^^^^^^^^^^^^^^
-This section illustrates a few example scenarios, and how they would, in general
-terms, be planned, implemented and configured.
+In traditional networking, addresses are allocated from a managed space. If you want to
+communicate with another node, you need to know its address, and that address
+must be unique within the network segment. This requires coordination, either
+through manual assignment, DHCP servers, or other allocation mechanisms.
-Interconnected LoRa Sites
-=========================
+Reticulum replaces addresses with **destinations**. A destination is identified by a 16-byte
+hash (128 bits) derived from a SHA-256 hash of the destination's identifying
+characteristics. This hash serves as the address on the network. On the network, it
+is represented in binary, but when displayed to human users, it will usually look something like
+this ``<13425ec15b621c1d928589718000d814>``.
-An organisation wants to provide communication and information services to it's
-members, which are located mainly in three separate areas. Three suitable hill-top
-locations are found, where the organisation can install equipment: Site A, B and C.
+The critical difference is that *any node can generate as many destinations as it
+needs, without coordination*. A destination's uniqueness is guaranteed by the
+collision resistance of SHA-256 and the inclusion of the node's public key in the
+hash calculation. Two nodes can both use the destination name
+``messenger.user.inbox``, but they will have different destination hashes because
+their public keys differ. Both can coexist on the same network without conflict.
-Since the amount of data that needs to be exchanged between users is mainly text-
-based, the bandwidth requirements are low, and LoRa radios are chosen to connect
-users to the network.
+This has profound implications for network design:
-Due to the hill-top locations found, there is radio line-of-sight between site A
-and B, and also between site B and C. Because of this, the organisation does not
-need to use the Internet to interconnect the sites, but purchases four Point-to-Point
-WiFi based radios for interconnecting the sites.
+* **No address allocation planning:** You never need to reserve address ranges,
+ plan subnets, or coordinate with other network operators. Nodes simply generate
+ destinations and announce them.
-At each site, a Raspberry Pi is installed to function as a gateway. A LoRa radio
-is connected to the Pi with a USB cable, and the WiFi radio is connected to the
-Ethernet port of the Pi. At site B, two WiFi radios are needed to be able to reach
-both site A and site C, so an extra Ethernet adapter is connected to the Pi in
-this location.
+* **Global portability:** A destination is not tied to a physical location or
+ network segment. A node can move its destinations across interfaces, mediums,
+ or even between entirely separate Reticulum networks simply by sending an
+ announce on the new medium.
-Once the hardware has been installed, Reticulum is installed on all the Pis, and at
-site A and C, one interface is added for the LoRa radio, as well as one for the WiFi
-radio. At site B, an interface for the LoRa radio, and one interface for each WiFi
-radio is added to the Reticulum configuration file. The transport node option is
-enabled in the configuration of all three gateways.
+* **Implicit authentication:** Because destinations are bound to public keys,
+ communication to a destination is inherently cryptographically authenticated.
+ Only the holder of the corresponding private key can decrypt and respond to
+ traffic addressed to that destination. This also makes application-level
+ authentication *much* simpler, since it can directly use the foundational
+ identity verification built into the core networking layer.
-The network is now operational, and ready to serve users across all three areas.
-The organisation prepares a LoRa radio that is supplied to the end users, along
-with a Reticulum configuration file, that contains the right parameters for
-communicating with the LoRa radios installed at the gateway sites.
+* **Identity abstraction:** A single Reticulum Identity can create multiple
+ destinations. This allows a single entity (a person, a device, a service) to
+ present multiple endpoints without needing multiple cryptographic keypairs.
-Once users connect to the network, anyone will be able to communicate with anyone
-else across all three sites.
-Bridging Over the Internet
-==========================
+Transport Nodes and Instances
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-As the organisation grows, several new communities form in places too far away
-from the core network to be reachable over WiFi links. New gateways similar to those
-previously installed are set up for the new communities at the new sites D and E, but
-they are islanded from the core network, and only serve the local users.
+Reticulum distinguishes between two types of nodes: **Instances**
+and **Transport Nodes**. Every node running Reticulum is an Instance, but not
+every Instance is a Transport Node.
-After investigating the options, it is found that it is possible to install an
-Internet connection at site A, and an interface on the Internet connection is
-configured for Reticulum on the Raspberry Pi at site A.
+A **Reticulum Instance** is any system running the Reticulum stack. It can create
+destinations, send and receive packets, establish links, and communicate with
+other nodes. It can also host destinations that are connectable for *anyone* else
+in the network. This means you can easily host globally available services from
+any location, including your home or office. Network-wide, global connectivity
+for all destinations is guaranteed, as long as there is *some* physical way to
+actually transport the packets. Instances are the default state and are appropriate for most end-user devices,
+such as phones, laptops, sensors, or any device that primarily consumes network services.
-A member of the organisation at site D, named Dori, is willing to help by sharing
-the Internet connection she already has in her home, and is able to leave a Raspberry
-Pi running. A new Reticulum interface is configured on her Pi, connecting to the newly
-enabled Internet interface on the gateway at site A. Dori is now connected to both
-the nodes at her own local site (through the hill-top LoRa gateway), and all the
-combined users of sites A, B and C. She then enables transport on her node, and
-traffic from site D can now reach everyone at site A, B and C, and vice versa.
+A **Transport Node** is an Instance that has been explicitly configured to
+participate in network-wide transport. Transport nodes forward packets across
+hops, propagate announces, maintain path tables, and serve path requests on
+behalf of other nodes. When a destination sends an announce, Transport Nodes
+receive it, remember the path, and rebroadcast it to other interfaces. When a node
+needs to reach a destination it doesn't have a path for, Transport Nodes help
+resolve the path through the network.
-Growth and Convergence
-======================
+Even devices hosting services or serving content should probably just be configured
+as instances, and themselves connect to wider networks via a Transport Node.
+In some situations, this may not be practical though, and as an example, it is
+entirely viable to host a personal Transport Node on a Raspberry Pi, while it
+is at the same time running an LXMF propagation node, and hosting your personal
+site or files over Reticulum.
-As the organisation grows, more gateways are added to keep up with the growing user
-base. Some local gateways even add VHF radios and packet modems to reach outlying users
-and communities that are out of reach for the LoRa radios and WiFi backhauls.
+The distinction is important. **Not** every node should be a Transport Node:
-As more sites, gateways and users are connected, the amount of coordination required
-is kept to a minimum. If one community wants to add connectivity to the next one
-over, it can simply be done without having to involve everyone or coordinate address
-space or routing tables.
+* **Resource consumption:** Transport nodes maintain path tables, process
+ announces, and forward traffic. This requires memory and CPU resources that
+ may be limited on low-powered devices.
-With the added geographical coverage, the operators at site A one day find that
-the original internet bridged interfaces are no longer utilised. The network has
-converged to be completely self-connected, and the sites that were once poorly
-connected outliers are now an integral part of the network.
+* **Stability requirements:** Transport nodes contribute to network convergence.
+ If Transport Nodes frequently go offline, path tables become stale and
+ convergence suffers. Stable, always-on nodes make better Transport Nodes.
+
+* **Bandwidth considerations:** Transport nodes process and rebroadcast network
+ maintenance traffic. On very low-bandwidth mediums, having too many Transport
+ Nodes will consume capacity that should be used for actual data.
+
+In practice, a network typically has a relatively small number of Transport Nodes
+strategically placed to provide coverage and connectivity. End-user devices run
+as Instances, connecting through nearby Transport Nodes to reach the wider network.
+This pattern mirrors traditional networking where routers forward traffic while
+end hosts simply consume connectivity, but with the crucial difference that any
+node *can* become a router if needed, and the decision is yours to make based on
+your network's requirements.
+
+Transport nodes also function as distributed cryptographic keystores. When a
+destination announces itself, Transport Nodes cache the public key and destination
+information. Other nodes can request unknown public keys from the network, and
+Transport Nodes respond with the cached information. This eliminates the need for
+a central directory service while ensuring that public keys remain available
+throughout the network.
+
+Trustless Networking
+^^^^^^^^^^^^^^^^^^^^
+
+Traditional network security models assume high levels of trust at
+specific layers. You might trust your ISP to deliver packets without inspection,
+or trust your VPN provider to handle your traffic, or trust the network
+administrator to configure firewalls appropriately. These trust relationships
+create vulnerabilities and dependencies.
+
+Reticulum is designed to function in **open, trustless environments**. This
+means the protocol makes no assumptions about the trustworthiness of the network
+infrastructure, the other participants, or the transport mediums. Every aspect
+of communication is secured cryptographically:
+
+* **Traffic encryption:** All traffic to single destinations is encrypted using
+ ephemeral keys.
+
+* **Source anonymity:** Reticulum packets do not include source addresses.
+ An observer intercepting a packet cannot determine who sent it, only who it is
+ addressed to (unless IFAC is enabled, in which case nothing can be determined).
+ This provides initiator anonymity by default.
+
+* **Path verification:** The announce mechanism includes cryptographic signatures that
+ prove the authenticity of destination announcements.
+
+* **Unforgeable delivery confirmations:** When a destination proves receipt of a
+ packet, the proof is signed with the destination's identity key. This prevents
+ false acknowledgments and ensures reliable delivery verification.
+
+* **Interface authentication:** When using Interface Access Codes (IFAC), packets
+ on authenticated interfaces carry signatures derived from a shared secret. Only
+ nodes with the correct network name and passphrase can generate valid packets, allowing creation
+ of virtual private networks on shared mediums.
+
+The trustless design has important consequences for network design:
+
+* **Open-access networks are viable:** You can build networks that anyone can
+ join without pre-approval. Because traffic is encrypted and authenticated end-
+ to-end, participants cannot interfere with each other's private communication,
+ even if they share the same transport infrastructure.
+
+* **No traffic inspection or prioritization:** Because traffic contents and
+ sources are opaque to intermediate nodes, there is no mechanism for filtering,
+ prioritizing, or throttling traffic based on its type or origin. All traffic
+ is treated equally. From a neutrality perspective, this is a feature.
+
+* **Adversarial resilience:** The network can operate even if some nodes are
+ malicious or controlled by adversaries. While a malicious Transport Node could
+ refuse to forward certain traffic or drop packets, it cannot decrypt, modify,
+ or impersonate legitimate traffic. Redundant paths and multiple Transport Nodes
+ mitigate the impact of malicious nodes.
+
+Of course, you can also create closed networks. Interface Access
+Codes allow you to restrict participation on specific interfaces. Network
+Identities enable you to verify that discovered interfaces belong to trusted
+operators. Blackhole management lets you block malicious identities. Reticulum
+provides both the tools for open networks and the controls for closed ones. The
+choice is yours based on your requirements.
+
+
+Heterogeneous Connectivity
+^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+In conventional networking, mixing different transport mediums typically requires
+gateways, translation layers, and careful configuration. A WiFi network doesn't
+natively interoperate with a packet radio network without additional infrastructure,
+and you can't just download a car over a serial port, or send an encrypted message
+in a QR code.
+
+Reticulum treats **heterogeneity as a core premise**. The protocol is designed
+to seamlessly mix mediums with vastly different characteristics:
+
+* **Bandwidth:** LoRa links operating at a few hundred bits per second can
+ interconnect with gigabit Ethernet backbones. Reticulum automatically manages
+ the flow of information, prioritizing local traffic on slow segments while
+ allowing global convergence.
+
+* **Latency:** Satellite links with multi-second latency can coexist with local
+ links measured in milliseconds. The transport system handles timing, asynchronous
+ delivery and retransmissions transparently.
+
+* **Topology:** Point-to-point microwave links, broadcast radio networks,
+ switched Ethernet fabrics, and virtual tunnels over the Internet can all be
+ part of the same Reticulum network.
+
+* **Reliability:** Intermittent connections that come and go (such as mobile
+ devices or opportunistic radio contacts) can participate alongside always-on
+ infrastructure. Reticulum gracefully handles link loss and reconnection.
+
+This heterogeneity is achieved through several design elements:
+
+* **Expandable, medium-agnostic interface system:** Reticulum communicates with the physical
+ world through interface modules. Adding support for a new medium is a matter
+ of implementing an interface class. The protocol itself remains unchanged.
+
+* **Interface modes:** Different modes (``full``, ``gateway``, ``access_point``,
+ ``roaming``, ``boundary``) allow you to configure how interfaces interact with
+ the wider network based on their characteristics and role.
+
+* **Announce propagation rules:** Announces are forwarded between interfaces
+ according to rules that account for bandwidth limitations and interface modes.
+ Slow segments are not overwhelmed by traffic from fast segments.
+
+* **Local traffic prioritization:** When bandwidth is constrained, Reticulum
+ prioritizes announces for nearby destinations. This ensures that local
+ connectivity remains functional even when global convergence is incomplete.
+
+For network designers, this means you are free to use whatever mediums are
+available, affordable, or appropriate for your situation. You might use LoRa for
+wide-area low-bandwidth coverage, WiFi for local high-capacity links, I2P for
+anonymous Internet connectivity, and Ethernet for infrastructure backhauls, all
+within the same network. Reticulum handles the translation and coordination
+automatically.
+
+The key design consideration is not whether different mediums can work together
+(they can), but **how** they should work together based on your goals. A node
+with multiple interfaces spanning heterogeneous mediums needs to be configured
+with appropriate interface modes so that traffic flows efficiently. A gateway
+connecting a slow LoRa segment to a fast Internet backbone should be configured
+differently than a mobile device roaming between radio cells.
\ No newline at end of file
diff --git a/docs/source/whatis.rst b/docs/source/whatis.rst
index 76afaa6..233c95d 100644
--- a/docs/source/whatis.rst
+++ b/docs/source/whatis.rst
@@ -188,6 +188,4 @@ Caveat Emptor
Reticulum is an experimental networking stack, and should be considered as
such. While it has been built with cryptography best-practices very foremost in
mind, it has not yet been externally security audited, and there could very well be
-privacy-breaking bugs. To be considered secure, Reticulum needs a thorough
-security review by independent cryptographers and security researchers. If you
-want to help out with this, or can help sponsor an audit, please do get in touch.
\ No newline at end of file
+privacy-breaking bugs.
\ No newline at end of file