-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathEncryption.py
More file actions
55 lines (42 loc) · 1.59 KB
/
Encryption.py
File metadata and controls
55 lines (42 loc) · 1.59 KB
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
class Encryption:
upperCaseAll = None
removeSpace = None
encryptSpace = None
encryptSymbol = None
reverseText = None
name = "Main"
def __init__(self, removeSpace=True, encryptSpace=False, encryptSymbol=False, upperCaseAll=True, reverseText=False) -> None:
self.removeSpace = removeSpace
self.encryptSpace = encryptSpace
self.encryptSymbol = encryptSymbol
self.upperCaseAll = upperCaseAll
self.reverseText = reverseText
def describe(self):
return {
"name" : self.name
}
def getSettings(self):
return {
"Space Removed" : self.removeSpace,
"Space Encrypt" : self.encryptSpace,
"Symbol Encrypt" : self.encryptSymbol
}
# Returns cleaned plaintext and indexes to skip
def applySettings(self, plainText):
if self.removeSpace:
plainText = self.deleteSpace(plainText)
if self.upperCaseAll:
plainText = self.convertToUppercase(plainText)
if self.reverseText:
plainText = self.reverseString(plainText)
return plainText, [i for i, char in enumerate(plainText) if not str(char).isalpha()]
def encrypt(self, plainText):
pass
def decrypt(self, cipherText):
pass
def deleteSpace(self, plainText):
return plainText.replace(" ", "")
def convertToUppercase(self, plainText):
return plainText.upper()
def reverseString(self, text):
return ''.join(reversed(text))