#include <iostream>
#include <map>
#include <string>
#include <cstdint>  // For uint32_t

namespace pki {
    typedef uint32_t hash_t;

    // Simulating a function that generates a hash from a certificate subject
    hash_t getCertSubjectHash(const std::string& certSubject) {
        // For demonstration purposes, generate a simple hash
        std::hash<std::string> hasher;
        std::cout<<hasher(certSubject)<<std::endl;
        return static_cast<hash_t>(hasher(certSubject));
        //return uint32_t size
    }
}

int main() {
    std::map<std::string, pki::hash_t> mHashes;
    
    // Simulated certificate subject and name
    std::string certSubject = "CN=example.com, O=Example Organization";
    std::string name = "example.com";

    // Get the hash for the certificate subject
    // user defined hashl
    pki::hash_t hash = pki::getCertSubjectHash(certSubject);

    // Check if the hash is valid (not zero)
    if (hash == 0U) {
        std::cerr << "Error: Invalid hash!" << std::endl;
        return false;
    }

    // Store the hash in the map
    mHashes[name] = hash;

    // Output stored hash
    std::cout << "Stored hash for " << name << ": " << mHashes[name] << std::endl;

    return 0;
}

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: