Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Rozšiřitelnost se dosahuje použitím nových identifikátorů objektů (OID), nových typů kódování a nových knihoven DLL.
Identifikátory OID cryptoAPI mohou mít některou z následujících forem:
- Číselný řetězec, například 1.2.3.500.88
- Alfanumerický řetězec, například MyFunction
- Konstanta s hodnotou, která je menší nebo rovna 0xFFFF. Tyto konstanty jsou často spojeny s názvem pomocí příkazu #define v souboru hlaviček.
Rozšiřitelné funkce přijímají argumenty typu OID a kódování. Tyto funkce prohledávají systémový registr a vyhledá knihovnu DLL přidruženou k OID a argumenty typu kódování předané funkci. Pokud je nalezena knihovna DLL pro kombinaci identifikátoru OID a typu kódování, knihovna DLL je načtena a její funkce je volána. Následující obrázek znázorňuje tento tok pro funkci CryptEncodeObject:
oid toku
To umožňuje rozšířit funkce CryptoAPI, jakmile se objeví potřeba. Použití této metodologie zatěžuje vývojáře nových funkcí při psaní veškerého potřebného kódu pro tuto funkci. Aby bylo možné zakódovat určitou novou datovou strukturu, například funkce v knihovně DLL musí provádět celý proces kódování.