' ConvertToSecureString(Plaintext : String) ' ---------------------------------------------------------------------------- ' Verschlüsselt einen String ' ' Source: https://gist.github.com/albert1205/c8430b5bfa505f9308e4fa789b9b1d7f ' ' Returns: ConvertToSecureString : String ' ---------------------------------------------------------------------------- ' Copyright (c) 2021 by Digital Data GmbH ' ' Digital Data GmbH • Ludwig-Rinn-Strasse 16 • D-35452 Heuchelheim ' Tel.: 0641/202360 • E-Mail: info-flow(at)digitaldata.works ' ---------------------------------------------------------------------------- ' Creation Date / Author: 26.08.2020 / XX ' Version Date / Editor: 26.08.2020 / XX ' Version Number: 1.0.0.0 Public Function ConvertToSecureString(Plaintext) Const offset = 10 Const minAsc = 33 Const maxAsc = 126 Dim Ciphertext Randomize Ciphertext = Ciphertext & Chr(Int((maxAsc-minAsc+1)*Rnd+minAsc)) Ciphertext = Ciphertext & Chr(Int((maxAsc-minAsc+1)*Rnd+minAsc)) For i=1 To Len(Plaintext)*2 If i mod 2 = 0 Then newAsc = Asc(Mid(Plaintext,i/2,1)) - offset If newAsc < minAsc Then newAsc = newAsc + maxAsc - minAsc + 1 End If Ciphertext = Ciphertext & Chr(newAsc) ' MsgBox Asc(Mid(Plaintext,i/2,1)) & " -> " & newAsc Else Ciphertext = Ciphertext & Chr(Int((maxAsc-minAsc+1)*Rnd+minAsc)) ' MsgBox "Rnd:" & Chr(Int((maxAsc-minAsc+1)*Rnd+minAsc)) End If Next Ciphertext = Ciphertext & Chr(Int((maxAsc-minAsc+1)*Rnd+minAsc)) Ciphertext = Ciphertext & Chr(Int((maxAsc-minAsc+1)*Rnd+minAsc)) ConvertToSecureString = Ciphertext End Function Private Sub EncryptTool() Plaintext = InputBox("Bitte den zu verschluesselnden String eingeben:","Eingabe erfolderlich","") Ciphertext = ConvertToSecureString(Plaintext) InputBox "Ihre Eingabe lautete: " & Plaintext & vbNewLine & vbNewLine & "Verschluesselt, sieht der String wie folgt aus:","Erledigt!",Ciphertext End Sub Call EncryptTool