Skip to content

Commit ae9e23e

Browse files
authored
Add files via upload
1 parent 942a30a commit ae9e23e

1 file changed

Lines changed: 167 additions & 0 deletions

File tree

RostCode4.2.py

Lines changed: 167 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,167 @@
1+
#pytoun
2+
import cryptocode
3+
import os
4+
5+
6+
def compress_text(text, mapping):
7+
for pair in mapping:
8+
text = text.replace(pair[0], pair[1])
9+
return text
10+
def decompress_text(text, mapping):
11+
for pair in mapping:
12+
text = text.replace(pair[1], pair[0])
13+
return text
14+
15+
import random
16+
import string
17+
18+
19+
map=[]
20+
def generate_mapping(seed=None):
21+
random.seed(seed)
22+
23+
letters = string.ascii_letters
24+
numbers = string.digits
25+
senoritas=["à","è","ì","ò","ù","À","È","Ì","Ò","Ù","á","é","í","ó","ú","ý","Á","É","Í","Ó","Ú","Ý","â","ê","î","ô","û","Â","Ê","Î","Ô","Û","ã","ñ","õ","Ã","Ñ","Õ","ä","ë","ï","ö","ü","ÿ","Ä","Ë","Ï","Ö","Ü","Ÿ","å","Å","æ","Æ","œ","Œ","ç","Ç","ð","Ð","ø","Ø","ß","ก","ข","ฃ","ค","ฅ","ฆ","ง","จ","ฉ","ช","ซ","ฌ","ญ","ฏ","ฐ","ฑ","ฒ","ณ","ด","ต","ถ","ท","ธ","น","บ","ป","ผ","ฝ","พ","ฟ","ภ","ม","ย","ร","ฤ","ล","ฦ","ว","ศ","ษ","ส","ห","ฬ","อ","ฮ","ฯ","ะ","า","เ","แ","โ","ใ","ไ","ๅ","ๆ","Գ","Դ","Ե","Զ","Է","Ը","Թ","Ժ","Ի","Լ","Խ","Ծ","Ձ","Ղ","Ճ","ճ","ղ","ձ","կ","ծ","լ","ի","ժ","թ","ը","է","զ","ե","դ","գ","բ","ա","Յ","Ն","Շ","Ո","Չ","Պ","Ռ","Ս","Վ","Տ","Ր","Ց","Ւ","Փ","Ք","Օ","Ֆ","և","ֆ","օ","ք","փ","ւ","ց","տ","վ","ս","ռ","ջ","պ","չ","ո","շ","յ","մ","က","ခ","ဂ","ဃ","င","ည","ဉ","ဈ","ဇ","ဆ","စ","ဋ","ဌ","ဍ","ဎ","ဏ","န","ဓ","ဒ","ထ","ပ","ဖ","ဗ","ဘ","မ","ယ","ရ","လ","ဠ","ဝ","ဟ","သ","ဿ","အ","ဣ","ဤ","ဥ","ဦ","ဪ","ဩ","ぁ","あ","ぃ","い","ぅ","う","ぇ","え","ぉ","お","か","が","き","ぎ","く","ぐ","け","げ","こ","ご","さ","ざ","し","じ","す","ず","せ","ぜ","そ","ぞ","た","だ","ち","ぢ","っ","つ","づ","て","で","と","ど","な","に","ぬ","ね","の","は","ば","ぱ","ひ","び","ぴ","ふ","ぶ","ぷ","へ","べ","ぺ","ほ","ぼ","ぽ","ま","み","む","め","も","ゃ","や","ゅ","ゆ","ょ","よ","ら","り","る","れ","ろ","ゎ","わ","ゐ","ゑ","を","ん","ゔ","ゕ","ゖ","ゝ","ゞ","ゟ","ァ","ア","ィ","イ","ゥ","ウ","ェ","エ","ォ","オ","カ","ガ","キ","ギ","ク","グ","ケ","ゲ","コ","ゴ","サ","ザ","シ","ジ","ス","ズ","セ","ゼ","ソ","ゾ","タ","ダ","チ","ヂ","ッ","ツ","ヅ","テ","デ","ト","ド","ナ","ニ","ヌ","ネ","ノ","ハ","バ","パ","ヒ","ビ","ピ","フ","ブ","プ","ヘ","ベ","ペ","ホ","ボ","ポ","マ","ミ","ム","メ","モ","ャ","ヤ","ュ","ユ","ョ","ヨ","ラ","リ","ル","レ","ロ","ヮ","ワ","ヰ","ヱ","ヲ","ン","ヴ","ヵ","ヶ","ヷ","ヸ","ヹ","ł","€","]","@","&",">","<","đ","Ł","|","~","^","°"]
26+
27+
mapping = {}
28+
29+
for symbol in senoritas:
30+
is_number = random.choice([True, False, False])
31+
if is_number:
32+
random_key = random.sample(numbers, 2)
33+
else:
34+
random_key = random.sample(letters, 2)
35+
36+
mapping[''.join(random_key)] = symbol
37+
38+
return mapping
39+
def ycompmap(user_seed,txt):
40+
if user_seed=="!":
41+
user_seed = str(random.randint(1,9999)).zfill(4)
42+
generated_mapping = generate_mapping(seed=user_seed)
43+
for key, value in generated_mapping.items():
44+
map.append([key,value])
45+
return str(compress_text(txt,map))+user_seed
46+
47+
def ncompmap(user_seed,txt):
48+
if user_seed=="!":
49+
user_seed = str(random.randint(1,9999)).zfill(4)
50+
generated_mapping = generate_mapping(seed=user_seed)
51+
for key, value in generated_mapping.items():
52+
map.append([key,value])
53+
return str(decompress_text(txt,map))+user_seed
54+
55+
56+
57+
def tag(txt):
58+
return(f'{etag}:{utag} | {txt}')
59+
60+
def enrichteous(text):
61+
number = 0
62+
for i in range(min(len(text), 4)):
63+
number += ord(text[i]) * (256 ** i)
64+
return number
65+
66+
def encode_text(text, key):
67+
encoded_parts = []
68+
innumero = enrichteous(key)
69+
for part in text.split("."):
70+
locvarlist = ""
71+
for i in part:
72+
locvarlist += str(ord(i) * innumero) + "_"
73+
encoded_part = cryptocode.encrypt(str(locvarlist), str(key))
74+
encoded_parts.append(encoded_part)
75+
return "`".join(encoded_parts)
76+
77+
def decode_text(encoded_text, key):
78+
decoded_parts = []
79+
innumero = enrichteous(key)
80+
for encoded_part in encoded_text.split("`"):
81+
decoded_part = ""
82+
inkod = str(cryptocode.decrypt(encoded_part, str(key))).split("_")
83+
inkod = inkod[:-1]
84+
for i in range(len(inkod)):
85+
inkod[i] = int(inkod[i])
86+
for i in inkod:
87+
decoded_part += chr(int(int(i) / innumero))
88+
decoded_parts.append(decoded_part)
89+
return ".".join(decoded_parts)
90+
91+
92+
93+
94+
95+
96+
97+
98+
99+
100+
101+
def encode_file(filename, key):
102+
with open(filename, "r", encoding="utf-8") as f:
103+
text = f.read()
104+
encoded_text = encode_text(text, key)
105+
output_filename = os.path.splitext(filename)[0] + "_enc" + os.path.splitext(filename)[1]
106+
with open(output_filename, "w", encoding="utf-8") as f:
107+
f.write(ycompmap("!",encoded_text))
108+
print(f"Encoded file saved as {output_filename}")
109+
110+
def decode_file(filename, key):
111+
with open(filename, "r", encoding="utf-8") as f:
112+
encoded_text = f.read()
113+
dd=ncompmap(encoded_text[-4:],encoded_text[:-4])
114+
decoded_text = decode_text(dd, key)
115+
output_filename = os.path.splitext(filename)[0] + "_dec" + os.path.splitext(filename)[1]
116+
with open(output_filename, "w", encoding="utf-8") as f:
117+
f.write(decoded_text)
118+
print(f"Decoded file saved as {output_filename}")
119+
120+
121+
122+
123+
124+
125+
126+
127+
128+
129+
130+
131+
132+
while True:
133+
etag="-"
134+
utag="-"
135+
action = input(tag("File or Text? (f,t): "))
136+
if action == "f" or action == "F":
137+
etag="F"
138+
filename = input(tag("Filename: "))
139+
140+
if input(tag("Encode or Decode (e,d): ")) == "e":
141+
utag="E"
142+
key = input(tag("Key: "))
143+
encode_file(filename, key)
144+
else:
145+
utag="D"
146+
key = input(tag("Key: "))
147+
decode_file(filename, key)
148+
else:
149+
etag="T"
150+
if input(tag("Encode or Decode (e,d): ")) == "e":
151+
utag="E"
152+
key = input(tag("Key: "))
153+
text = input(tag("Text: "))
154+
encoded_text = encode_text(text, key)
155+
print()
156+
print(ycompmap("!",encoded_text))
157+
else:
158+
utag="D"
159+
key = input(tag("Key: "))
160+
encoded_text = input(tag("Text: "))
161+
dd=ncompmap(encoded_text[-4:],encoded_text[:-4])
162+
decoded_text = decode_text(dd, key)
163+
print()
164+
print(decoded_text)
165+
print()
166+
print(".."*30)
167+
print()

0 commit comments

Comments
 (0)