ROT13-Verschlüsselung für Textdokumente

Im eMail- und News-Bereich ist die einfache Verschlüsselung mittels dem ROT13-Verfahren noch weit verbreitet. Das folgende Makro führt diese in SW-Dokumenten durch. Es kann als wunderbares Beispiel für die Suchen-/Ersetzen-Möglichkeiten des StarWriters dienen: es tut nämlich nicht viel mehr als genau das.

Als Button in die Objektleiste von Nachrichten eingebunden, lässt sich dieses Makro wenn nötig schnell ausführen. Es funktioniert auch in schreibgeschützten, empfangenen Nachrichten.

Das etwas ausgefeiltere Original dieses Makros liegt auf der Homepage des Autoren unter http://home.ivm.de/~schroeder.

Sub ROT13
   Dim i%
   Dim PrefixChar$

   ' beliebiges Sonderzeichen zum Erzeugen von Zeichenpaaren
   PrefixChar$ = Chr$(255)

   If ActiveModule.Name = "StarWriter" Then
      ' Bildschirmausgabe unterdrücken: beschleunigt massiv!
      Selection.ActionStart()

      ' Gross-/Kleinschreibung bei Suchen/Ersetzen beachten
      ActiveWindow.SearchSettings.CaseSensitive = True

      ' Alle Zeichen um den PrefixChar ergänzen (reguläre Suche)
      ActiveWindow.SearchSettings.RegExp = True
      ActiveWindow.ReplaceAll("[a-zA-Z]", PrefixChar$ & "&")
      ActiveWindow.SearchSettings.RegExp = False

      ' Zeichen durch verschlüsselte Werte ersetzen
      For i% = 65 To 91
         ActiveWindow.ReplaceAll(PrefixChar$ & Chr$(i%), _
                                 Chr$(65 + (i% - 52) Mod 26))
      Next
      For i% = 97 To 123
         ActiveWindow.ReplaceAll(PrefixChar$ & Chr$(i%), _
                                 Chr$(97 + (i% - 84) Mod 26))
      Next

      Selection.ActionEnd()
   Else
      MsgBox("Dieses Makro funktioniert nur in Textdokumenten!", _
             48, "Fehler bei der Ausführung")
   End If
End Sub



Letzte Änderung: 26.03.98
Copyright ©1998 by Robert Schröder