vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Top-Preis! AP-Access-Tools-CD Volume 1  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   RSS-Feeds  | Newsletter  | Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2016
 
zurück
Rubrik: Variablen/Strings · Algorithmen/Mathematik   |   VB-Versionen: VB2005, VB200808.02.10
Key-Generator

Eine kleine Hilfsfunktion, die ein zufälliges Kennwort aus Buchstaben und Zahlen ermittelt.

Autor:   Dieter OtterBewertung:     [ Jetzt bewerten ]Views:  6.766 
www.tools4vb.deSystem:  Win2k, WinXP, Vista, Win7, Win8, Win10 Beispielprojekt auf CD 

Summer-Special bei Tools & Components!
Gute Laune Sommer bei Tools & Components
Top Summer-Special - Sparen Sie teilweise bis zu 120,- EUR
Alle sev-Entwicklerkomponenten und Komplettpakete jetzt bis zu 25% reduziert!
zum Beispiel:
  • Developer CD nur 479,20 EUR statt 599,- EUR
  • sevDTA 2.0 nur 224,30 EUR statt 299,- EUR
  •  
  • vb@rchiv   Vol.6 nur 20,00 EUR statt 24,95 EUR
  • sevCoolbar 3.0 nur 55,20 EUR statt 69,- EUR
  • - Werbung -Und viele weitere Angebote           Aktionspreise nur für kurze Zeit gültig

    Immer dann wenn man sich ein Kennwort ausdenken muss, fängt man ganz autom. das Überlegen an: "Was nehme ich denn diesmal für ein Kennwort?"

    Warum nicht also eine kleine Funktion erstellen, die ein zufälliges Kennwort aus Buchstaben und Zahlen ermitteln, wobei die Länge des gewünschten Kennwortes als Parameter angegeben werden kann. Daraus ergibt sich dann manchmal aber folgende Frage: 0 (Null) oder O (Buchstabe O), 1 (Eins) oder I (Buchstabe I).

    Also entschließen wir uns weder die Zahl Null, noch den Buchstaben I zu verwenden

    ''' <summary>
    ''' Erzeugt einen zufälligen Schlüsselwert aus Buchstaben und Zahlen
    ''' </summary>
    ''' <param name="KeyLen">Länge des erzeugten Schlüssels</param>
    Public Function CreateKey(ByVal KeyLen As Integer) As String
      Dim Value As Integer
      Dim sKey As String = ""
      Dim oZahl As New System.Random
     
      Randomize()
     
      For i As Integer = 1 To KeyLen
        ' Zufallszahl im Bereich 1 bis 1000
        Value = oZahl.Next(1, 1000)
        If (Value Mod 10 = 0) OrElse (Value Mod 5 = 0) OrElse (Value Mod 3 = 0) Then
          ' Zahl erzeugen
          Value = oZahl.Next(2, 9)
          sKey = sKey & Chr(48 + Value)
     
        Else
          ' Buchstabe
          Do
            Value = oZahl.Next(1, 26)
          Loop Until Value <> 9 And Value <> 15
          sKey = sKey & Chr(64 + Value)
        End If
      Next i
     
      ' erzeugten Schlüssel zurückgeben
      Return sKey
    End Function

    Zunächst wird per Zufallsgenerator eine Zahl zwischen 1 und 1000 ermittelt. Lässt sich die ermittele Zufallszahl durch 10, 5 oder 3 OHNE REST teilen, ermitteln wir eine Zahl für unseren Key - andernfalls einen Buchstaben. Bei längeren Keys sollte dann die Anzahl der Buchstaben im Key überwiegen.

    Fazit:
    Wann immer Sie ein Kennwort ohne erst lange zu überlegen benötigen, verwenden Sie ab sofort Ihren neuen Key-Generator

    Dieser Tipp wurde bereits 6.766 mal aufgerufen.

    Voriger Tipp   |   Zufälliger Tipp   |   Nächster Tipp

    Über diesen Tipp im Forum diskutieren
    Haben Sie Fragen oder Anregungen zu diesem Tipp, können Sie gerne mit anderen darüber in unserem Forum diskutieren.

    Neue Diskussion eröffnen

    nach obenzurück


    Anzeige

    Kauftipp Unser Dauerbrenner!Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv  Vol.6
    (einschl. Beispielprojekt!)

    Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
    - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten
    - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look
    Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m.
     
       

    Druckansicht Druckansicht Copyright ©2000-2016 vb@rchiv Dieter Otter
    Alle Rechte vorbehalten.
    Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

    Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel