Spaces:
Paused
Paused
Update app.py
Browse files
app.py
CHANGED
@@ -26,14 +26,16 @@ def derive_key(custom_key, key_size):
|
|
26 |
hasher = SHA256.new()
|
27 |
hasher.update(custom_key.encode('utf-8'))
|
28 |
full_hash = hasher.digest()
|
29 |
-
#
|
30 |
-
return full_hash[:key_size // 8]
|
31 |
|
32 |
def encrypt_string(plain_text, key, key_size):
|
33 |
"""Encrypt a string using AES in CBC mode with specified key size."""
|
34 |
try:
|
35 |
if not plain_text:
|
36 |
return "Error: Please provide text to encrypt."
|
|
|
|
|
37 |
derived_key = derive_key(key, key_size)
|
38 |
plain_text_bytes = plain_text.encode('utf-8')
|
39 |
iv = get_random_bytes(AES.block_size)
|
@@ -49,6 +51,8 @@ def decrypt_string(encrypted_text, key, key_size):
|
|
49 |
try:
|
50 |
if not encrypted_text:
|
51 |
return "Error: Please provide encrypted text."
|
|
|
|
|
52 |
derived_key = derive_key(key, key_size)
|
53 |
raw = base64.b64decode(encrypted_text)
|
54 |
iv = raw[:AES.block_size]
|
|
|
26 |
hasher = SHA256.new()
|
27 |
hasher.update(custom_key.encode('utf-8'))
|
28 |
full_hash = hasher.digest()
|
29 |
+
# Convert key_size to integer before division
|
30 |
+
return full_hash[:int(key_size) // 8]
|
31 |
|
32 |
def encrypt_string(plain_text, key, key_size):
|
33 |
"""Encrypt a string using AES in CBC mode with specified key size."""
|
34 |
try:
|
35 |
if not plain_text:
|
36 |
return "Error: Please provide text to encrypt."
|
37 |
+
if not key:
|
38 |
+
return "Error: Please provide a key."
|
39 |
derived_key = derive_key(key, key_size)
|
40 |
plain_text_bytes = plain_text.encode('utf-8')
|
41 |
iv = get_random_bytes(AES.block_size)
|
|
|
51 |
try:
|
52 |
if not encrypted_text:
|
53 |
return "Error: Please provide encrypted text."
|
54 |
+
if not key:
|
55 |
+
return "Error: Please provide a key."
|
56 |
derived_key = derive_key(key, key_size)
|
57 |
raw = base64.b64decode(encrypted_text)
|
58 |
iv = raw[:AES.block_size]
|