Posts

Showing posts from May, 2025

(Cyber Security)

  (using pycrypt libraries) HILL CIPHER import numpy as np from Crypto.Util.number import inverse import math   def text_to_numbers(text):     return [ord(char) - ord('A') for char in text.upper() if char.isalpha()]   def numbers_to_text(numbers):     return ''.join(chr(num + ord('A')) for num in numbers)   def create_key_matrix_from_integers(int_list, size):     if len(int_list) != size * size:         raise ValueError(f"Need exactly {size*size} integers for the key matrix.")     return np.array(int_list).reshape(size, size) % 26   def is_invertible_mod26(matrix):     det = int(round(np.linalg.det(matrix))) % 26     return math.gcd(det, 26) == 1, det   def hill_encrypt(plaintext, key_matrix):     size = key_matrix.shape[0]     plaintext_numbers = text_to_numb...