Willkommen bei dotnet-snippets.de! Snippet hinzufügen Login Registrieren
Snippets in der Datenbank: 1563 | Anzahl registrierter User: 1896 | Besucher online: 663
Hauptmenü
Home
Top Ten
Zufälliger Snippet
FAQs
.NET Community
dotnet-forum.de
dotnet-kicks.de
Social

RSS Feeds
Rss Alle Snippets
Rss C#
Rss VB.NET
Rss C++
Rss ASP.NET
Partner
Member of Microsoft Community Leader/Insider Program (CLIP)

Passwortgenerator


Autor: Klemens Nanni
Sprache: VB.NET
Bewertung: 1,8
(1 Bewertung)
Anzahl der Aufrufe: 4428
  
Kick it on dotnet-kicks.de  

Beschreibung:

Diese Klasse generiert ein Passwort auf Grundlage gegebener Länge und gewünschter Zeichen.

Zudem ist möglich, zu einem gegebenen Passwort die Anzahl aller Zeichenketten, welche jenem Schema entsprechen, zu ermitteln.

'8 Ziffern: Zahlen, Klein- & Großbuchstaben außer {a,D,Z}
Dim passwort As String = Password.Generate(8, True, True, True, False, "", "aDZ")

'6 Ziffern: nur bestehend aus expliziten Zeichen {3,a,B,+}
Dim passwort As String = Password.Generate(6, False, False, False, False, "3aB+")

'
GetCombinations("1hallo") -> (10+26)^6 = 2176782336
GetCombinations("WORT") -> 26^4 = 456976
GetCombinations("+zahl") -> (32+26)^5 = 656356768


Aus ungültigen Eingaben wie Längen < 1 oder keine ausgewählten Zeichen resultiert ein leerer String. Diese Fehlerbehandlung ist durchaus ausbaufähig, doch hier gut ausreichend.


Abgelegt unter: Passwort, password, Generator, generate, generieren, Buchstabe, letter, sonderzeichen, Kombination, combination, länge, length, String, upper, lower, Case, zufällig, random, Zufahl, Case, subset, set, character, special, char.



Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
Public Class Password
    Public Shared Function Generate(ByVal length As Byte, ByVal numbers As Boolean, _
                              ByVal lowerCases As Boolean, ByVal upperCases As Boolean, _
                              ByVal specials As Boolean, Optional ByVal include As String = "", _
                              Optional Byval exclude As String = "") As String

        'password must contain at least one character from at least one subset
        If length = 0 OrElse (Not (numbers OrElse lowerCases OrElse upperCases OrElse specials) AndAlso include = "") Then Return ""
        
        'add selected characters
        Dim random As New Random, charset As String = "", password As String = ""
        If numbers Then charset &= "0123456789"
        If lowerCases Then charset &= "abcdefghijklmnopqrstuvwxyz"
        If upperCases Then charset &= "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
        If specials Then charset &= "+-/*#,;.:-_^!()[]{}=?ß'äÄöÖüÜ<>@"

        'add/remove further ones
        If Not include = "" Then charset &= include

        If Not exclude = "" Then
            For Each c As Char In exclude
                charset = charset.Replace(c, "")
            Next
        End If

        'create random password
        For i As Byte = 1 To length
            password &= charset(random.Next(0, charset.Length))
        Next

        Return password
    End Function

    Public Shared Function GetCombinations(ByVal password As String) As ULong
        Dim nums, lows, upps, specs As New Boolean, combos As ULong = 0

        For Each num As Char In "0123456789"
            If password.Contains(num) Then combos += 10 : Exit For
        Next

        For Each low As Char In "abcdefghijklmnopqrstuvwxyz"
            If password.Contains(low) Then combos += 26 : Exit For
        Next

        For Each upp As Char In "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
            If password.Contains(upp) Then combos += 26 : Exit For
        Next

        For Each spec As Char In "+-/*#,;.:-_^!()[]{}=?ß'äÄöÖüÜ<>@"
            If password.Contains(spec) Then combos += 32 : Exit For
        Next

        Return combos ^ password.Length
    End Function
End Class
Sie haben Fragen zu diesem Snippet oder brauchen Hilfe bei der .NET Entwicklung?
Freundliche und kompetente Entwickler helfen Ihnen gern weiter im Forum für .NET Entwicklung.



Kommentare:
(Zum Schreiben von Kommentaren bitte anmelden.)



Diese Snippets könnten für Sie interessant sein:
[C#] Passwort generieren
[VB.NET] Maximal Anzahl von Passwortkombinationen ermitteln
[C#] Erzeugen eines zufälligen Strings
[C#] LDAP - Setzt das Passwort so, dass es nie Abläuft
[C#] LDAP - Ermittelt ob das Passwort abgelaufen ist.
[C#] LDAP - Ermittelt ob das Passwort abgelaufen ist.
[C#] Passwort Generator aus GUID
[VB.NET] Windows Passwort überprüfen
[C#] Password im Connectionstring entschlüsseln
[C#] Passwortstärke validieren
[C#] Passwort nach bestimmtem Aufbau generieren
[C#] Netzlaufwerke verbinden/trennen - (mit User u. Passwort)
[C#] Data Fort
[C#] PrimeNumberGenerator
[C#] PrimeNumberReader
[C#] T-SQL-Stored-Proc Generieren
[C#] Erzeugen von Zeichenfolgen durch Permutation
[C#] Herausfinden, ob ein Character eine Zahl ist.
[C#] Formatieren von Sonderzeichen für XML
[C#] Hexcode eines Strings ausgeben
[VB.NET] Größe eines Strings berechnen
[C#] String bei bestimmten Zeichen splitten
[C#] Encode To ASCII - Buchstaben in Ascii-Werte umwandeln
[C#] Gibt den MD5 Hash eines Stings als String zurück.
[C#] String in Byte Array und zurück wandeln
[VB.NET] Den SHA1 Hash eines Strings ermitteln
[VB.NET] Den MD5 Hash eines Strings ermitteln
[C#] Wandelt ein Bytearray in einen Binärstring
[VB.NET] Text auf Bild zeichnen
[C#] String auf Emailadresse prüfen
[C#] SHA-1 Hash eines Strings erzeugen
[VB.NET] Strings schnell zählen
[VB.NET] Pfad kürzen
[VB.NET] Einfache Ähnlichkeitssuche (SQL)
[C#] Pfad kürzen
[C#] IsPositiveInteger as Extension Method
[C#] Datum und Zeit als String
[C#] String spiegeln
[VB.NET] String spiegeln
[C#] Erweiterung für Stringumwandlungen
[C#] Image in string wandeln und zurück
[C#] Strings komprimieren und dekomprimieren
[C#] CamelCase in Title Case konvertieren
[C#] Text zentriert in die Konsole schreiben
[VB.NET] Strings komprimieren und dekomprimieren
[C#] Fuzzy Suche
[VB.NET] Rows eines DataGridView in ein String-Array konvertieren
[C#] kontrolliert ob String eine gültige GUID ist
[C#] HTML aus einem String entfernen
[C#] byte-String in byte wandeln
[C#] Formelevaluierung aus RPN Form
[C#] mehrfach vorkommende Worte entfernen
[C#] Determines whether the specified input is numeric
[C#] Prozentual Textvergleichen
[C#] doppelte Leerzeichen aus einem String entfernen
[C#] Zählt wie oft ein String in einem String vorkommt.
[C#] String kürzen ohne ein Wort abzuschneiden
[C#] String auf erlaubte Zeichen prüfen
[C#] Austauch von kritischen Zeichen in einem String...
[VB.NET] String in Byte Array und zurück wandeln
[C#] Gross- Kleinbuchstaben in String schnell zählen
[VB.NET] Listen, Arrays, Strings konvertieren
[C#] CRC32-Hash eines Strings
[VB.NET] CRC32-Hash eines Strings
[C#] Größe eines Strings berechnen
[VB.NET] String Splitten
[C#] Capitalize the first letter of every word
[VB.NET] Textdatei lesen und schreiben (String, StringArray, etc...)
[C#] Text2Bitmap (String in Bild umwandeln)
[C#] Double in String umwandeln (mit InvariantCulture)
[C#] String in Double umwandeln (mit InvariantCulture)
[C#] Convert MAC string to byte array
[C#] Reverse String
[C#] Stellt fest ob ein String ein Palindrom ist
[VB.NET] String umkehren
[C#] Letztes Wort aus einem String ermitteln
[C#] Erstes Wort aus einem String ermitteln
[VB.NET] List all controls by using the name of the controls
[C#] Alle E-Mail Adressen aus einem String bzw. Text filtern
[C#] StringSplitter
[C#] Fundstelle eines Suchbegriffs markieren
[C#] Initialisiert alle String-Properties
[C#] MD5 Verschlüsselung
[C#] HTML Tags aus String entfernen
[C#] Geschachtelte Methode zur String-Bearbeitung
[C#] Byte Größenangaben als String formatieren (KB, MB, GB, ...)
[VB.NET] Permutation nachweisen
[C#] Implode und Trim für String-Enumerationen (Extension Method)
[C#] String zu MD5
[C#] Tabulatorzeichen durch Leerzeichen ersetzen
[C#] String in einzelne Wörter aufteilen und Wörter zählen
[C#] Render MVC Action as string
[C#] Namen von Klassenmember als String ermitteln
[C#] IncreaseString
[VB.NET] String uebers Netzwerk oder Internet and einen PC senden
[C#] String to char Tarnung
[C#] C# XOR Crypt
[C#] String-Formatierung für Faule: Erweiterungsmethode
[C#] Darstellung eines ASP.NET Steuerelementes als HTML-String
[C#] Wie ToString() welche mit null-Strings umgehen kann
[C#] Zufallsfarbe erzeugen
[C#] Zufallszahlen, die sich nicht wiederholen
[C#] Zufällige Row aus DataTable
[VB.NET] MAC und HEX generieren
[VB.NET] Zufallszahl erzeugen (mit Prüfung)
[C#] Random Bool
[C#] Zufälliger Eintrag aus einer Liste (Extension Method)
[C#] ist ein Char ein druckbares Zeichen?

schlecht sehr gut
1 2 3 4 5 6 7 8 9 10
Nur angemeldete User können Snippets bewerten.