You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
1.4 KiB
51 lines
1.4 KiB
'''<summary>Diese klasse beinhaltet Methoden welche für den Kryptografischen Teil im EDOKA verwendet werden</summary>
|
|
Public Class Crypto
|
|
|
|
Const CRYPTO_PASSWORD As String = "HutterundMueller"
|
|
|
|
'''<summary>Verschlüsselt einen Text mit dem angegebenen Passwort</summary>
|
|
'''<param name="strText">Zu verschlüsselnder Text</param>
|
|
'''<includesource>yes</includesource>
|
|
Public Shared Function EncryptText(ByVal strText As String)
|
|
Dim i As Integer, c As Integer
|
|
Dim strBuff As String
|
|
Dim strPwd As String = CRYPTO_PASSWORD
|
|
|
|
strPwd = UCase$(strPwd)
|
|
If Len(strPwd) Then
|
|
For i = 1 To Len(strText)
|
|
c = Asc(Mid$(strText, i, 1))
|
|
c = c + Asc(Mid$(strPwd, (i Mod Len(strPwd)) + 1, 1))
|
|
strBuff = strBuff & Chr(c And &HFF)
|
|
Next i
|
|
Else
|
|
strBuff = strText
|
|
End If
|
|
EncryptText = strBuff
|
|
End Function
|
|
|
|
'''<summary>Entschlüsselt einen Text</summary>
|
|
'''<param name="strText">Zu verschlüsselnder Text</param>
|
|
'''<includesource>yes</includesource>
|
|
Public Shared Function DecryptText(ByVal strText As String)
|
|
Dim i As Integer, c As Integer
|
|
Dim strBuff As String
|
|
Dim strPwd As String = CRYPTO_PASSWORD
|
|
|
|
strPwd = UCase$(strPwd)
|
|
If Len(strPwd) Then
|
|
For i = 1 To Len(strText)
|
|
c = Asc(Mid$(strText, i, 1))
|
|
c = c - Asc(Mid$(strPwd, (i Mod Len(strPwd)) + 1, 1))
|
|
strBuff = strBuff & Chr(c And &HFF)
|
|
Next i
|
|
Else
|
|
strBuff = strText
|
|
End If
|
|
DecryptText = strBuff
|
|
End Function
|
|
|
|
End Class
|
|
|
|
'End Namespace
|