cosmian_kms_client_utils

Crates.iocosmian_kms_client_utils
lib.rscosmian_kms_client_utils
version5.9.0
created_at2025-05-09 07:06:58.120562+00
updated_at2025-09-15 16:11:50.755244+00
descriptionCosmian KMS Client Utilities - used in WASM and KMS Client
homepage
repositoryhttps://github.com/Cosmian/kms
max_upload_size
id1666362
size128,836
(Manuthor)

documentation

README

Cosmian KMS Client Utilities

The Client Utilities crate provides shared utilities and helper functions used by both the WebAssembly (WASM) client and the Rust KMS client library.

Overview

This crate contains common functionality that is shared across different client implementations of the Cosmian KMS. It provides utilities for request building, response parsing, data formatting, and other client-side operations.

Features

  • Request Building: Helper functions to construct KMIP requests
  • Response Parsing: Utilities to parse and validate KMIP responses
  • Data Conversion: Format conversion utilities for keys, certificates, and other objects
  • Configuration Management: Client configuration handling
  • Error Handling: Standardized error types for client operations
  • Cross-Platform Support: Compatible with both native Rust and WebAssembly targets

Key Components

Request Utilities

  • KMIP Request Builders: Construct properly formatted KMIP requests
  • Parameter Validation: Validate request parameters before sending
  • Batch Operations: Support for batch request construction

Response Utilities

  • Response Parsers: Parse KMIP responses into usable data structures
  • Error Extraction: Extract and format error information from responses
  • Data Extraction: Extract cryptographic objects from responses

Data Format Utilities

  • PEM/DER Conversion: Convert between different key and certificate formats
  • Base64 Encoding/Decoding: Handle base64 data encoding
  • JSON Serialization: Convert objects to/from JSON format

Configuration

  • Client Configuration: Manage client connection settings
  • Authentication Tokens: Handle authentication token management
  • Server Discovery: Utilities for server endpoint discovery

Supported Formats

  • Keys: RSA, EC, symmetric keys in various formats (PEM, DER, JSON)
  • Certificates: X.509 certificates and certificate chains
  • KMIP Objects: Native KMIP object serialization/deserialization

Usage

This crate is designed to be used by:

  • The kms_client crate for native Rust applications
  • The wasm crate for browser-based applications
  • Custom client implementations

Dependencies

  • cosmian_kmip - KMIP protocol implementation
  • cosmian_kms_access - Access control types
  • cosmian_config_utils - Configuration utilities
  • base64 - Base64 encoding/decoding
  • pem - PEM format handling
  • serde - Serialization framework

License

This crate is part of the Cosmian KMS project and is licensed under the Business Source License 1.1 (BUSL-1.1).

Commit count: 1212

cargo fmt