Uses of Class
ai.badmonkey.agentspaces.common.crypto.GroupKey
Packages that use GroupKey
Package
Description
Crypto helpers: SHA-256 digests and Ed25519 (RFC 8032) signing over the JDK's
built-in providers.
The replicated space: the Space API over the delta-CRDT replica and gossip,
with LEASE_RACE take claims as a deterministic lattice (spec §7.3-§7.4).
-
Uses of GroupKey in ai.badmonkey.agentspaces.capabilities.keywrap
Methods in ai.badmonkey.agentspaces.capabilities.keywrap that return types with arguments of type GroupKeyModifier and TypeMethodDescriptionRequests the group key (epoch 0, the pre-rotation exchange) from a holder.Methods in ai.badmonkey.agentspaces.capabilities.keywrap with parameters of type GroupKeyModifier and TypeMethodDescriptionvoidGroupKeyDistributor.serve(GroupKey key, Authorizer authorizer, GroupId group) Holds the key as epoch 0 under the fleet'sAuthorizer: a requester is served whenpermits(requester, KEY_HOLDER, group), and a rotator is trusted when it is the founder orpermits(peer, KEY_ROTATE, group).voidGroupKeyDistributor.serve(GroupKey key, GroupMembership membership) Holds the key as epoch 0 under the membership default (ASF-026): sealed only for peers currently admitted to the group.voidHolds the key as epoch 0 under an explicit policy over verified requesters. -
Uses of GroupKey in ai.badmonkey.agentspaces.common.crypto
Methods in ai.badmonkey.agentspaces.common.crypto that return GroupKeyModifier and TypeMethodDescriptionstatic GroupKeyGroupKey.fromBytes(byte[] raw) Wraps existing key material.static GroupKeyGroupKey.generate()Generates a fresh random key.GroupKeyRing.Held.key()Returns the value of thekeyrecord component.Methods in ai.badmonkey.agentspaces.common.crypto that return types with arguments of type GroupKeyModifier and TypeMethodDescriptionGroupKeyRing.openingKeys(long epoch) Every key held for an epoch, to try when opening (a race between rotators leaves more than one); reports the epoch missing when none is held.GroupKeyRing.sealingKey(long epoch) The canonical key to seal under for an epoch: with several rotators' keys, the one whosesha256(epoch|rotator)sorts lowest.GroupKeyWrap.unwrap(GroupKeyWrap.WrappedKey wrapped, PrivateKey recipientPrivate, byte[] recipientPublicKey) Unwraps a sealed group key.GroupKeyWrap.unwrapBound(GroupKeyWrap.WrappedKey wrapped, PrivateKey recipientPrivate, byte[] recipientPublicKey, byte[] binding) Unwraps a key sealed byGroupKeyWrap.wrapBound(GroupKey, byte[], byte[]); the binding must be the one the recipient expects for this exchange, byte for byte.GroupKeyWrap.unwrapBound(GroupKeyWrap.WrappedKey wrapped, UnaryOperator<byte[]> agree, byte[] recipientPublicKey, byte[] binding) AsGroupKeyWrap.unwrapBound(WrappedKey, PrivateKey, byte[], byte[]), with the key agreement supplied by the recipient's identity, so its private key never leaves it (per-agent key wrap, SPEC §11a.2, v0.1.13).Methods in ai.badmonkey.agentspaces.common.crypto with parameters of type GroupKeyModifier and TypeMethodDescriptionbooleanInstalls an epoch key minted byrotator, effective for writers atcutover.booleanAsGroupKeyRing.install(long, String, GroupKey, Instant), keeping the rotator's proof (an opaque signed commitment the key distributor verifies and serves onward with the key).static GroupKeyRingA ring holding one key as epoch 0, today's single content key.static GroupKeyWrap.WrappedKeyWraps a group key for one recipient.static GroupKeyWrap.WrappedKeyWraps a group key for one recipient, bound to one exchange (spec §11a.2, v2): the binding digest salts the derivation and is the associated data, so a wrap made for one request, holder, requester, group, or epoch opens for no other.Constructors in ai.badmonkey.agentspaces.common.crypto with parameters of type GroupKey -
Uses of GroupKey in ai.badmonkey.agentspaces.space.replicated
Methods in ai.badmonkey.agentspaces.space.replicated with parameters of type GroupKeyModifier and TypeMethodDescriptionEncrypts entry payloads with a symmetric group content key (spec §11): gossip and anti-entropy then carry ciphertext, signatures cover the ciphertext (so keyless replicas still verify and relay records), and only replicas holding the key can read entry contents.