So speichern Sie einen öffentlichen Schlüssel in einem RSA-Schlüsselcontainer auf Maschinenebene

9

Ich habe ein Problem mit einem RSA-Schlüssel-Container auf Maschinenebene, wenn nur der öffentliche Schlüssel eines öffentlichen / privaten Schlüsselpaars gespeichert wird.

Der folgende Code erstellt ein öffentliches / privates Paar und extrahiert den öffentlichen Schlüssel aus diesem Paar. Das Paar und der öffentliche Schlüssel werden in separaten Schlüsselcontainern gespeichert. Die Schlüssel werden dann von jenen Schlüsselcontainern erhalten, an denen sie mit den Schlüsseln identisch sein sollten, die in die Container gehen.

Der Code funktioniert, wenn CspProviderFlags.UseDefaultKeyContainer für CspParameters.Flags angegeben ist (dh der Schlüssel, der aus dem Container PublicKey ausgelesen wird, ist derselbe), aber wenn CspProviderFlags.UseMachineKeyStore für CspParameters.Flags angegeben ist Der Schlüssel, der von PublicKey zurückgelesen wird, ist anders.

Warum unterscheidet sich das Verhalten und was muss ich anders tun, um den öffentlichen Schlüssel aus einem RSA-Schlüsselcontainer auf Maschinenebene abzurufen?

%Vor%     
Andrew Kimball 16.02.2010, 16:50
quelle

2 Antworten

4

Es scheint, dass Schlüsselcontainer nicht für diesen Zweck vorgesehen sind (dies wird durch "Gewusst wie: Speichern von asymmetrischen Schlüsseln in einem Schlüsselcontainer" im .NET Framework-Entwicklerhandbuch impliziert und von Diskusion auf MSDN ).

Um dieses Ziel zu erreichen, müssen andere Mechanismen wie das Speichern des Schlüssels in einer XML-Datei verwendet werden.

    
Andrew Kimball 18.02.2010 09:38
quelle
-1

Dieser Link kann Ihnen helfen. Ссылка

%Vor%

Das sagt es über das Löschen von Schlüsseln.

    
WarrenDodsworth 02.05.2013 15:48
quelle