Skip to content

Commit 8540ad5

Browse files
authored
Added the script itself
added the script
1 parent a88b2be commit 8540ad5

File tree

1 file changed

+101
-0
lines changed

1 file changed

+101
-0
lines changed

base.py

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
import sys
2+
def dec():
3+
print("this should decode base64 text")
4+
x = input("pls input the text: ")
5+
leng = len(x)
6+
count = 0
7+
for i in range (leng-(leng-2), leng, 1):
8+
y = x[i]
9+
if y == "=":
10+
count -= 1
11+
lett = leng + count
12+
result = ""
13+
l = 0
14+
for i in range (lett):
15+
string = ''
16+
string += x[i]
17+
string = string.encode('utf-8')
18+
string = ''.join(format(byte, '08b') for byte in string)
19+
var = int(string, 2)
20+
if var >= 65 and var <= 90:
21+
var -= 65
22+
elif var >= 97 and var <= 122:
23+
var -= 71
24+
elif var >= 48 and var <= 57:
25+
var += 4
26+
elif var == 43:
27+
var += 19
28+
elif var == 47:
29+
var += 16
30+
else:
31+
print("something went wrong")
32+
var = "{0:06b}".format(var)
33+
result += var
34+
l += 6
35+
length = len(result)
36+
length = int(length / 8)
37+
result2 = ""
38+
result3 = ""
39+
index = 0
40+
for i in range (0, length, 1):
41+
for j in range (0, 8, 1):
42+
result2 += result[j + index]
43+
index += 8
44+
result4 = int(result2, 2)
45+
result4 = bytes([result4])
46+
result4 = result4.decode("utf-8")
47+
result3 += result4
48+
result2 = ""
49+
print(result3)
50+
51+
def enc():
52+
print("this should convert text into base64")
53+
x = input("input pls right here: ")
54+
x = x.encode('utf-8')
55+
x = ''.join(format(byte, '08b') for byte in x)
56+
print(x)
57+
leng = len(x)
58+
print(len(x))
59+
mod = leng % 6
60+
if mod != 0:
61+
pad = leng % 6
62+
for _ in range (pad):
63+
x += "00"
64+
length = len(x)
65+
lett = int(length/6)
66+
result = ""
67+
l = 0
68+
for _ in range (lett):
69+
string = ''
70+
for i in range (l, l+6, 1):
71+
string += x[i]
72+
var = int(string, 2)
73+
if var >= 0 and var <= 25:
74+
var += 65
75+
elif var >= 26 and var <= 51:
76+
var += 71
77+
elif var >= 52 and var <= 61:
78+
var -= 4
79+
elif var == 62:
80+
var -= 19
81+
elif var == 63:
82+
var -= 16
83+
else:
84+
print("something went wrong")
85+
var = bytes([var])
86+
letter = var.decode()
87+
result += letter
88+
l += 6
89+
for _ in range (mod):
90+
result += "="
91+
print(result)
92+
if __name__ == "__main__":
93+
print("1: encode, 2: decode")
94+
varname = input("enter choice: ")
95+
if varname == "1":
96+
enc()
97+
elif varname == "2":
98+
dec()
99+
else:
100+
print("please enter a real option mf >:(")
101+
sys.exit()

0 commit comments

Comments
 (0)