Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 23 additions & 10 deletions amitcrypto.py
Original file line number Diff line number Diff line change
@@ -1,18 +1,31 @@
from Crypto.Cipher import XOR

key = "abcdefghijklij"
xor = XOR.XORCipher(key) # To encrypt
xor1 = XOR.XORCipher(key) # To decrypt
from Crypto.Cipher import AES
from Crypto.Util.Padding import pad, unpad
import os

key = b'abcdefghijklmnop' # 16-byte key for AES-128

def enc(sock, message, addr):
abcd = xor.encrypt(message)
print message == dec(sock, abcd, addr)
sock.sendto(abcd, addr)
return abcd
# Convert message to bytes if it's a string
if isinstance(message, str):
message_bytes = message.encode()
else:
message_bytes = message
iv = os.urandom(16) # Generate random IV
cipher = AES.new(key, AES.MODE_CBC, iv)
padded_message = pad(message_bytes, AES.block_size)
ciphertext = cipher.encrypt(padded_message)
encrypted_data = iv + ciphertext
sock.sendto(encrypted_data, addr)
return encrypted_data

def dec(sock, message, addr):
abcd = xor1.decrypt(message)
return abcd
iv = message[:16]
ciphertext = message[16:]
cipher = AES.new(key, AES.MODE_CBC, iv)
padded_plaintext = cipher.decrypt(ciphertext)
plaintext_bytes = unpad(padded_plaintext, AES.block_size)
return plaintext_bytes

#message = "dfjsdfjsdfjdsfdfsk"
#print message
Expand Down