Package zeroecho.core.annotation
package zeroecho.core.annotation
Provides metadata contracts and annotations for cryptographic algorithms and
specifications.
This package offers simple mechanisms for attaching human-readable labels to
classes, specifications, or capabilities. The metadata is intended for
display, diagnostics, and serialization, helping avoid exposure of internal
class names or verbose toString() output.
Key elements
Describable- interface for supplying a concise, human-readable description string.DisplayName- annotation that associates a type with a stable, human-friendly label preferred by catalogs and UIs.
Usage notes
- Annotate user-facing types with the display-name annotation to keep labels stable even if class names change.
- Have specification objects implement the description interface to provide short, precise labels for configuration and documentation.
- Consumers should prefer the display-name label when present; otherwise use the provided description, then fall back to the class name.
Design philosophy
- Metadata must never include sensitive information such as keys or raw secrets.
- These constructs are for human-facing contexts (logs, configuration dumps, UIs), not for protocol negotiation or security decisions.
- Separating descriptive metadata from functional APIs keeps labels stable and predictable without impacting core security behavior.
- Since:
- 1.0
-
ClassDescriptionDefines a contract for objects that can provide a concise, human-readable description.Declares a human-friendly display name for a class, specification, or capability.