Module: Confium

Defined in:
lib/confium/tc.rb,
lib/confium.rb,
lib/confium/cfm.rb,
lib/confium/ffi.rb,
lib/confium/lib.rb,
lib/confium/pki.rb,
lib/confium/audit.rb,
lib/confium/crypto.rb,
lib/confium/digest.rb,
lib/confium/errors.rb,
lib/confium/policy.rb,
lib/confium/openpgp.rb,
lib/confium/pki/cms.rb,
lib/confium/version.rb,
lib/confium/pki/cnml.rb,
lib/confium/tc/session.rb,
lib/confium/errors/coerce.rb,
lib/confium/tc/share_file.rb,
lib/confium/tc/coordinator.rb,
lib/confium/tc/session_stub.rb,
lib/confium/transparency/ots.rb,
lib/confium/pki/certificate_builder.rb,
lib/confium/pki/cms/signed_data_builder.rb

Overview

Confium::PKI::CMS::SignedDataBuilder — construct CMS SignedData envelopes with one or more signers.

Delegates to the Rust confium_pki::cms::build_detached_signature via Confium::PKI::CMS::SignedData.build_detached. The Ruby side only computes the per-signer signature bytes (via the existing Confium::Composite / Confium::TC signers); the envelope assembly happens in Rust so the JSON model + DER encoding stay authoritative.

Usage:

builder = Confium::PKI::CMS::SignedDataBuilder.new
builder.content = "hello world".b
builder.add_signer(cert_der: der_bytes, private_key: key_bytes, algorithm: :ed25519)
sd = builder.build
sd.to_json  # => JSON wire format
sd.to_der   # => RFC 5652 ContentInfo DER bytes

Defined Under Namespace

Modules: Audit, Crypto, Errors, FFI, Lib, OpenPGP, PKI, Policy, TC, Transparency Classes: CFM, CryptoError, Digest, Error, IndexError, NotFoundError, ParseError, PolicyViolationError, SecureBytes, ThresholdError, UnresolvedSignerError, ValidationError, VerificationError

Constant Summary collapse

VERSION =
"0.3.0"