-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmyPassword.py
126 lines (105 loc) · 4.52 KB
/
myPassword.py
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# coding=utf-8
import array
import random
import hashlib
def Sifrele(filepath):
print("[*] Metin şifreleniyor!")
upperChar = ["A", "B", "C","Ç","D","E","F","G","Ğ","H","I","İ","J","K","L","M","N","O","Ö","P","R","S","Ş","T","U","Ü","V","Y","Z"]
lowerChar = ["a", "b", "c","ç","d","e","f","g","ğ","h","ı","i","j","k","l","m","n","o","ö","p","r","s","ş","t","u","ü","v","y","z"," ","1","2","3","4","5","6","7","8","9","!","'","^","+","%","&","/","(",")","=","?","*","_","-","é",'"',".",",",":",";","<",">","@","~","`","´","≈","√","∫","≤","≥"]
passLowerChar = ["a", "b", "c","d","e","f","g","h","i","j","k","l","m","n","o","p","r","s","t","u","v","y","z"]
passUpperChar = ["A", "B", "C","D","E","F","G","H","I","J","K","L","M","N","O","P","R","S","T","U","V","Y","Z"]
randomNumberMd5 = hashlib.md5()
randomNumber = random.randint(0,9)
randomNumberMd5.update(str(randomNumber))
randomMd5 = randomNumberMd5.hexdigest()
cryptedText=str(randomNumber)
f = open(filepath, "r")
metin = f.read()
metin = metin.decode("utf-8")
sayac=0
first=True
while sayac < len(metin):
if first==True:
charList = [metin[sayac]]
first=False
else:
charList.append(metin[sayac])
sayac += 1
sayac=0
while sayac < len(charList):
sayac2=0
for x in lowerChar:
sayac2+=1
if charList[sayac].lower() == x.decode("utf-8"):
if charList[sayac].strip() == "":
cryptedText+=str(sayac2-1)+"_"
elif charList[sayac] == x.decode("utf-8"):
#Lower Case
cryptedText+=str(sayac2-1)+str(passLowerChar[random.randint(0,len(passLowerChar)-1)])
else:
#Upper Case
cryptedText+=str(sayac2-1)+str(passUpperChar[random.randint(0,len(passUpperChar)-1)])
sayac+=1
f = open("sifrelenmis"+str(random.randint(0,100))+".txt", "w")
f.write(cryptedText+randomMd5)
f.close()
print("[!] Şifrelenen metin, metin belgesi olarak kaydedildi!")
# return cryptedText+randomMd5
def Coz(filepath):
print("[*] Şifrelenmiş metin çözülüyor!")
upperChar = ["A", "B", "C","Ç","D","E","F","G","Ğ","H","I","İ","J","K","L","M","N","O","Ö","P","R","S","Ş","T","U","Ü","V","Y","Z"]
lowerChar = ["a", "b", "c","ç","d","e","f","g","ğ","h","ı","i","j","k","l","m","n","o","ö","p","r","s","ş","t","u","ü","v","y","z"," ","1","2","3","4","5","6","7","8","9","!","'","^","+","%","&","/","(",")","=","?","*","_","-","é",'"',".",",",":",";","<",">","@","~","`","´","≈","√","∫","≤","≥"]
uncryptedText=""
sayac=0
first=True
f = open(filepath, "r")
cryptedText = f.read()
while sayac < len(cryptedText):
if first==True:
charList = [cryptedText[sayac]]
first=False
else:
charList.append(cryptedText[sayac])
sayac += 1
metin=""
#MD5 ile koruma sistemi
randomSayi = charList[0]
charList = charList[:0] + charList[0+1 :]
md5=""
silmeIndexi = (len(charList)-32)
for i in range(32):
md5+=str(charList[(len(charList)-32)+i])
charList = charList[:silmeIndexi] + charList[silmeIndexi+1 :]
randomNumberMd5 = hashlib.md5()
randomNumber = randomSayi
randomNumberMd5.update(str(randomNumber))
randomMd5 = randomNumberMd5.hexdigest()
if randomMd5 == md5:
for x in charList:
if x == "_":
uncryptedText+=" "
metin=""
elif x.islower() == True or x.isupper() == True:
#Metinsel ifade
if x.lower() == x:
#küçük karakter
uncryptedText+=lowerChar[int(metin)]
else:
#büyük karakter
uncryptedText+=upperChar[int(metin)]
metin=""
elif x.islower() == False and x.isupper() == False:
#Sayısal İfade
metin+=str(x)
f = open("cozulmus"+str(random.randint(0,100))+".txt", "w")
f.write(uncryptedText)
f.close()
print("[!] Çözülen metin, metin belgesi olarak kaydedildi!")
# return uncryptedText
else:
print("[!] Şifrelenmiş metin bozulmuş!")
secim = int(input("[?] İşlem Seçin 1- Şifrele | 2- Çöz : "))
if secim==1:
Sifrele(str(raw_input("[?] Dosya Yolu: ")))
elif secim==2:
Coz(str(raw_input("[?] Dosya: ")))