Packages that use DataStructure
Package
Description
Interfaces and factories for the base I2P SDK used to develop applications that communicate through I2P.
Core cryptographic primitives used throughout I2P: symmetric ciphers (AES, ChaCha20), hashes (SHA-1, SHA-256, SHA-384, SHA-512), HMAC and HKDF key derivation, the ElGamal and DSA/EdDSA/RedDSA engines, key and certificate utilities, and the entropy harvester.
Common data structures used by the I2P protocols: Destination, LeaseSet, PublicKey, Signature, Certificate and their friends.
The Invisible Internet Client Protocol (I2CP) allows applications simplified access to I2P network without requiring them to deal with the issues involved with the Invisible Internet Network Protocol (I2NP).
Low-level messages sent between routers - the Invisible Internet Network Protocol (I2NP).
Router-specific data structures: RouterInfo and RouterIdentity with their transport addresses and capabilities, router key generation, and the optionally password-protected router private key file.
The I2P router application handles I2P network communication.
The Double Ratchet with X25519 key agreement and ECIES hybrid encryption, used by the NTCP2 and SSU transports for session encryption.
The Kademlia distributed hash table (DHT) network database: lookup, store and explore jobs, the data store, the floodfill variants, and lookup throttling.
BitTorrent distributed hash table (DHT) implementation following the Mainline protocol, for trackerless peer discovery.
Uses of DataStructure in net.i2p.client
Classes in net.i2p.client that implement DataStructureModifier and TypeClassDescriptionclassAdvanced options attached to a single outgoing I2CP message.Uses of DataStructure in net.i2p.crypto
Classes in net.i2p.crypto that implement DataStructureModifier and TypeClassDescriptionclassSHA-384 secure hash algorithm implementation.classSHA-512 secure hash algorithm implementation.(package private) final classA SigningPrivateKey that retains the Chinese Remainder Theorem parameters, so it can be converted back to a Java CRT key.classI2P data structure for SHA-1 hash values.Uses of DataStructure in net.i2p.data
Classes in net.i2p.data that implement DataStructureModifier and TypeClassDescriptionclassExtensible certificate system for I2P structures providing metadata and capabilities.private static final classAn immutable null certificate.classBase class for data structures stored in the I2P network database (NetDb).classBase implementation of all data structures.classA six-byte Date and 2 bytes of flags, since a Date won't encroach on the top two bytes until the year 10889.classDefines an endpoint in the I2P network that can receive messages.classImplementation of EncryptedLeaseSet as specified in Proposal 123: New NetDb Entries.classA 32-byte SHA-256 hash, used throughout I2P as a destination, router, or tunnel identifier and as an integrity value for hashed data.classSpecialized certificate for defining cryptographic key types used in I2P identities.private static final classAn immutable ElG/ECDSA-256 certificate.private static final classAn immutable ElG/Ed25519 certificate.private static final classAn immutable X25519/Ed25519 certificate.classContainer for cryptographic keys and certificate as used by I2P identities.classAuthorization grant proving a router/tunnel may receive messages for a destination.classImplementation of Lease2 as specified in Proposal 123: New NetDb Entries.classDefines the set of leases that a destination currently has available for routing messages.classImplementation of LeaseSet2 as specified in Proposal 123: New NetDb Entries.classImplementation of MetaLease as specified in Proposal 123: New NetDb Entries.classImplementation of MetaLeaseSet as specified in Proposal 123: New NetDb Entries.classMessage payload container for I2P communications with encryption support.classPrivate (secret) key for the asymmetric encryption of an I2P destination.classCryptographic public key for asymmetric encryption in I2P.classCryptographic session key for symmetric encryption in I2P.classCryptographic signature implementation for I2P data structures and identity verification.classCryptographic private key for digital signature generation in I2P.classCryptographic public key for digital signature verification in I2P.classBase class for I2P data structures holding a single byte array in a protectedSimpleDataStructure._datafield.classExtend Destination with methods to verify its Certificate.Uses of DataStructure in net.i2p.data.i2cp
Classes in net.i2p.data.i2cp that implement DataStructureModifier and TypeClassDescriptionclassDefines the structure for why abuse was reported either by the client to the router or by the router to the client.classProvides a severity level (larger numbers are more severe) in association with a client reporting abusive behavior to the router or the router reporting it to the client.classDefines the information a client must provide to create a session.Uses of DataStructure in net.i2p.data.i2np
Classes in net.i2p.data.i2np that implement DataStructureModifier and TypeClassDescriptionclassContains the delivery instructions for garlic cloves.private static final classAn immutable local delivery instructions with no options for efficiency.classElGamal-encrypted request or response.classContains one deliverable message encrypted to a router along with instructions and a certificate 'paying for' the delivery.classSmall records.Uses of DataStructure in net.i2p.data.router
Classes in net.i2p.data.router that implement DataStructureModifier and TypeClassDescriptionclassDefines a method of communicating with a routerclassDefines the unique identifier of a router, including any certificate or public key.classDefines the data that a router either publishes to the global routing table or provides to trusted peers.Classes in net.i2p.data.router that implement interfaces with type arguments of type DataStructureModifier and TypeClassDescriptionprivate static classSeeSortHelper.sortStructures(Collection)comments.Methods in net.i2p.data.router with type parameters of type DataStructureModifier and TypeMethodDescriptionstatic <T extends DataStructure>
List<T> SortHelper.sortStructures(Collection<T> dataStructures) Sort based on the Hash of the DataStructure.Methods in net.i2p.data.router with parameters of type DataStructureModifier and TypeMethodDescriptionintSortHelper.DataStructureComparator.compare(DataStructure l, DataStructure r) Method parameters in net.i2p.data.router with type arguments of type DataStructureModifier and TypeMethodDescription(package private) static voidSortHelper.sortStructureList(List<? extends DataStructure> dataStructures) See above.Uses of DataStructure in net.i2p.router
Methods in net.i2p.router that return DataStructureModifier and TypeMethodDescriptionprivate DataStructureKeyManager.SynchronizeKeysJob.syncKey(File keyFile, DataStructure structure, boolean exists) Synchronize the given structure with the file on disk.Methods in net.i2p.router with parameters of type DataStructureModifier and TypeMethodDescriptionprivate DataStructureKeyManager.SynchronizeKeysJob.syncKey(File keyFile, DataStructure structure, boolean exists) Synchronize the given structure with the file on disk.Uses of DataStructure in net.i2p.router.crypto.ratchet
Classes in net.i2p.router.crypto.ratchet that implement DataStructureModifier and TypeClassDescription(package private) classX25519 public key with identifier for next session key exchange in ratchet protocol.(package private) classSession key with nonce and optional handshake state for ratchet message encryption and decryption operations, supporting nonces up to 65535Uses of DataStructure in net.i2p.router.networkdb.kademlia
Classes in net.i2p.router.networkdb.kademlia that implement DataStructureModifier and TypeClassDescription(package private) classPull the caching used only by KBucketImpl out of Hash and put it here.Uses of DataStructure in org.klomp.snark.dht
Classes in org.klomp.snark.dht that implement DataStructureModifier and TypeClassDescriptionclassRepresents a BitTorrent info hash used for DHT operations.classNode Identifier (NID) for Kademlia DHT operations.(package private) classComprehensive node information container for DHT operations.(package private) classRepresents a single peer participating in a specific torrent within the DHT tracker.(package private) classIndexing key for DHT tokens based on node ID and info hash combination.