Network

class nucypher.network.nodes.FleetStateTracker

A representation of a fleet of NuCypher nodes.

class FleetState(nickname, metadata, icon, nodes, updated)
property icon

Alias for field number 2

property metadata

Alias for field number 1

property nickname

Alias for field number 0

property nodes

Alias for field number 3

property updated

Alias for field number 4

class nucypher.network.nodes.Learner(domains: set, node_class: object = None, network_middleware: nucypher.network.middleware.RestMiddleware = <nucypher.network.middleware.RestMiddleware object>, start_learning_now: bool = False, learn_on_same_thread: bool = False, known_nodes: tuple = None, seed_nodes: Tuple[tuple] = None, node_storage=None, save_metadata: bool = False, abort_on_learning_error: bool = False, lonely: bool = False)

Any participant in the “learning loop” - a class inheriting from this one has the ability, synchronously or asynchronously, to learn about nodes in the network, verify some essential details about them, and store information about them for later use.

exception InvalidSignature
exception NotATeacher

Raised when a character cannot be properly utilized because it does not have the proper attributes for learning or verification.

exception NotEnoughNodes
exception NotEnoughTeachers
exception UnresponsiveTeacher
keep_learning_about_nodes()

Continually learn about new nodes.

learn_from_teacher_node(eager=False)

Sends a request to node_url to find out about known nodes.

load_seednodes(read_storage: bool = True, retry_attempts: int = 3)

Engage known nodes from storages and pre-fetch hardcoded seednode certificates for node learning.

stop_learning_loop(reason=None)

Only for tests at this point. Maybe some day for graceful shutdowns.

tracker_class

alias of FleetStateTracker

class nucypher.network.nodes.NodeSprout(node_metadata)

An abridged node class designed for optimization of instantiation of > 100 nodes simultaneously.

exception nucypher.network.protocols.SuspiciousActivity[source]

raised when an action appears to amount to malicious conduct.

class nucypher.network.server.TLSHostingPower(host: str, public_certificate=None, public_certificate_filepath=None, *args, **kwargs)[source]
exception NoHostingPower[source]
not_found_error

alias of TLSHostingPower.NoHostingPower