Пример #1
0
def encrypt(message, expanded_key, number_of_rounds, iv=''):
    encrypted_text = []
    for i in range(0, len(message), 16):
        encrypted_text += block_cipher_encrypt(message[i:i + 16], expanded_key,
                                               number_of_rounds)

    encrypted_text = [chr(i) for i in encrypted_text]
    return ''.join(encrypted_text)
def decrypt(encrypted_message, expanded_key, number_of_rounds, iv):
    print('OFB Decrypt')
    decrypted_text = []
    for i in range(0, len(encrypted_message), 16):
        initial = encrypted_message[i : i + 16]
        block_decrypted_text = block_cipher_encrypt(iv, expanded_key, number_of_rounds)   
        block_decrypted_text = array_xor(block_decrypted_text, initial)       
        decrypted_text += block_decrypted_text
        iv = initial[0:16]

    decrypted_text = [chr(i) for i in decrypted_text]
    return ''.join(decrypted_text)
def encrypt(message, expanded_key, number_of_rounds, iv):
    encrypted_text = []
    print('OFB Encrypt')
    for i in range(0, len(message), 16):
        initial = message[i : i + 16]
        block_encypted_text = block_cipher_encrypt(iv, expanded_key, number_of_rounds)           
        block_encypted_text = array_xor(block_encypted_text, initial)
        encrypted_text += block_encypted_text
        iv = block_encypted_text[0:16]

    encrypted_text = [chr(i) for i in encrypted_text]
    return ''.join(encrypted_text)
Пример #4
0
def encrypt(message, expanded_key, number_of_rounds, iv):
    print('CBC Encrypt')
    encrypted_text = []
    for i in range(0, len(message), 16):
        initial = message[i:i + 16]  # lúc đầu i1 = 0 => i2 = 16
        initial = array_xor(iv, initial)
        block_encypted_text = block_cipher_encrypt(initial, expanded_key,
                                                   number_of_rounds)
        encrypted_text += block_encypted_text
        iv = block_encypted_text[
            0:16]  # cắt ra 1 đoạn mã hóa để làm iv tiếp theo

    encrypted_text = [chr(i) for i in encrypted_text]
    return ''.join(encrypted_text)