class

UPD::SignatureValidator

Inherits Reference < Object

SignatureValidator - Core signature verification logic This class is completely independent of CLI infrastructure for easy testing

Class methods

extract_ec_key(certificate : OpenSSL::X509::Certificate) : OpenSSL::PKey::EC
Source
extract_signature_data(sig : JSON::Any) : SignatureData

Extract signature data from JSON

Source
extract_signatures(metadata_json : Hash(String, JSON::Any)) : Array(JSON::Any)

Extract signatures from metadata

Source
parse_certificate(certificate_b64 : String) : OpenSSL::X509::Certificate
Source
parse_metadata(metadata : String) : Hash(String, JSON::Any) | Nil

Parse metadata JSON

Source
validate_algorithm(algorithm : String)
Source
validate_curve(curve : String)
Source
verify_certificate_validity(certificate : OpenSSL::X509::Certificate)
Source
verify_data_hash(database : DB::Connection, dataset_id : String, tables_to_serialize : Array(String), algorithm : String, expected_hash : String) : String
Source
verify_ecdsa_signature(ec_key : OpenSSL::PKey::EC, data_hash : String, signature : Bytes)
Source
verify_schema_hash(database : DB::Connection, tables_to_serialize : Array(String), algorithm : String, expected_hash : String) : String
Source
verify_signature(database : DB::Connection, dataset_id : String, sig_data : SignatureData, strict : Bool = false) : VerificationResult

Main verification method - coordinates all verification steps

Source

Nested types