Wie die zahlreichen anderen Leute hier erwähnt haben, ist MD5 kein symmetrischer oder asymmetrischer Algorithmus.
Stattdessen kommt es unter einem anderen Zweig in der Kryptographie alle zusammen. Es ist einer der kleinsten Hashing-Algorithmen, die im .Net-Framework verfügbar sind. Bei nur 16 Bytes für seine Schlüsselgrößen, die 128 Bit sein sollten. Etwas, mit dem du dein Brot und Butter lernst.
Also ja, es ist größer als 64bit, die nur 8 Bytes groß ist.
Die maximale Schlüssellänge, die die üblichen Symmec 'enc' algs verwenden, ist 256bit (Rijndael Managed).
Wenn Sie größere Schlüsselgrößen suchen, können Sie die RC2 Symm 'enc' algs verwenden, die variable Schlüsselgrößen unterstützen. Etwas, mit dem du experimentieren kannst?
Wenn Sie höher als 1024bit wollen, dann müssen Sie auf Asymm 'Enc' Algs wie die RSACryptoServiceProvider-Klasse, die Schlüsselgrößen unterstützt bis zu 16K Bits gehen, denke ich?
Wenn Sie Passwörter verwenden möchten, dann müssen Sie Keyed Hashing Algs, wie alles HMAC 'etwas, sie sollten Keyed Hashing-Algorithmen oder MacTripleDes sein. Diese verwenden alle geheime Schlüssel, um den Hash zu verschlüsseln, der aus den von Ihnen gelieferten Daten generiert wird. Die Schlüssel werden mithilfe von Kennwörtern und Salt-Werten über die RFC2898DerivesBytes-Klasse erstellt. < - Vergessen Sie nicht, dass RC2, Rijndael, AES, DES und etc alle eingerichtet werden können, um Passwörter zu verwenden, um die geheimen Schlüssel abzuleiten. Falls Sie denken, dass der Anfangssatz dieses Absatzes ein wenig irreführend ist. Also habe ich das hinzugefügt, um sicher zu sein, falls Hashing nicht das ist, was Sie überhaupt brauchen.
* ERINNERN SIE SICH, DASS EINZIGARTIGE VERERBUNGEN HIERARCHIEN IN. Cryptography NameSpace .net sind. Also MD5 ist die Basis-Abstract-Klasse, von der alle MD5-abgeleiteten Klassen abgeleitet werden sollen. .Net stellt eine solche abgeleitete Klasse zur Verfügung, die als MD5CryptoServiceProvider-Klasse bezeichnet wird. Dies ist im Wesentlichen eine verwaltete Wrapper-Klasse, die den Aufruf der unmanaged Crypto-Libraries-API für Windows aufruft. MD5 ist in offiziellen MS-Lehrbüchern unter dem Überbegriff "Non-Keyed Hashing Algorithm" bekannt. *
Es gibt viele Möglichkeiten für Sie.
:) Viel Spaß!
Hallo Peter: Bedeutet dies, dass meine App nicht "Verschlüsselung" enthält? – PF1
Streng genommen, nein. Die Verwendung von MD5 oder einer anderen Hash-Funktion, so dass das tatsächliche Passwort nicht gespeichert wird, wird manchmal als "Einwegverschlüsselung" bezeichnet, obwohl die Verwendung des Begriffs Verschlüsselung falsch ist: (Obligatorischer Wikipedia-Link: http: //en.wikipedia .org/wiki/One-way_encryption) – Peter
Ich weiß, das ist spät, aber nur um hinzuzufügen ... Anstatt SHA-1 oder SHA-2 zu verwenden, könntest du auch versuchen, einen Hash zu salzen oder sogar MD5 und SHA zu verwenden -1. –