Zuordnen von Objektbezeichnern zu kryptografischen Algorithmen
Aktualisiert: November 2007
Durch digitale Signaturen wird sichergestellt, dass Daten nicht verfälscht werden, wenn sie von einem Programm zum anderen gesendet werden. In der Regel wird die digitale Signatur durch die Anwendung einer mathematischen Funktion auf die Hashwerte der zu signierenden Daten berechnet. Beim Formatieren eines zu signierenden Hashwerts hängen einige digitale Signaturalgorithmen einen ASN.1-Objektbezeichner (OID) als Teil des Formatierungsvorgangs an. Der OID erkennt den Algorithmus, der für die Berechnung des Hashwerts verwendet wurde. Algorithmen lassen sich Objektbezeichnern zuordnen, um so die kryptografischen Mechanismen zur Verwendung von benutzerdefinierten Algorithmen zu erweitern. Anhand des folgenden Beispiels wird gezeigt, wie ein Objektbezeichner einem neuen Hashalgorithmus zugeordnet wird.
<configuration>
<mscorlib>
<cryptographySettings>
<cryptoNameMapping>
<cryptoClasses>
<cryptoClass MyNewHash="MyNewHashClass, MyAssembly
Culture='en', PublicKeyToken=a5d015c7d5a0b012,
Version=1.0.0.0"/>
</cryptoClasses>
<nameEntry name="NewHash" class="MyNewHash"/>
</cryptoNameMapping>
<oidMap>
<oidEntry OID="1.3.14.33.42.46" name="NewHash"/>
</oidMap>
</cryptographySettings>
</mscorlib>
</configuration>
Das <oidEntry>-Element enthält zwei Attribute. Das OID-Attribut ist die Nummer des Objektbezeichners. Das name-Attribut ist der Wert des name-Attributs aus dem <nameEntry>-Element. Damit ein Objektbezeichner einem einfachen Namen zugeordnet werden kann, muss zunächst ein Algorithmusname einer Klasse zugeordnet werden.