Каталог бесплатных научных работ
Меню навигации
Каталог работ
Помощь с материалом
Помощь с Антиплагиатом
Контакты
Главная
Каталог работ
Программирование, компьютеры и кибернетика
Сущность и основные виды шифрования
Сущность и основные виды шифрования - Контрольная работа
бесплатно
0
4.5
66
Контрольная работа
Программирование
Программирование, компьютеры и кибернетика
Размещено:
05.08.2019
Особенность соблюдения конфиденциальности передаваемой информации. Обладание пользователей определенным аутентичным ключом. Использование симметричного и асимметричного шифрования. Характеристика генерации ключевой пары и расшифрования сообщения.
You searched for: {{term}}
Score:
{{score}}
Recaptcha token:
{{recaptcha_token}}
Action:
{{action}}
Error! Please check the JS Console in your dev tools.
{{message}}
Аннотация к работе
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования НИЖЕГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ им. Реализация методов симметричного и ассиметричного шифрования (наименование темы проекта или работы)Симметричное шифрование использует один и тот же ключ и для зашифрования, и для расшифрования. 0x00, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x1B, 0x36, 0x6C, 0XD8, 0XAB, 0x4D, 0x9A, 0x2F, 0x5E, 0XBC, 0x63, 0XC6, 0x97, 0x35, 0x6A, 0XD4, 0XB3, 0x7D, 0XFA, 0XEF, 0XC5, 0x91, 0x39, ) def text2matrix(text): matrix = [] for i in range(16): byte = (text >> (8 * (15 - i))) & 0XFF if i % 4 == 0: matrix.append([byte]) else: matrix[i / 4].append(byte) return matrix def matrix2text(matrix): text = 0 for i in range(4): for j in range(4): text |= (matrix[i][j] << (120 - 8 * (4 * i j))) return text class AES: def __init__(self, master_key): self.change_key(master_key) def change_key(self, master_key): self.round_keys = text2matrix(master_key) # print self.round_keys for i in range(4, 4 * 11): self.round_keys.append([]) if i % 4 == 0: byte = self.round_keys[i - 4][0] \ # print self.round_keys def encrypt(self, plaintext): self.plain_state = text2matrix(plaintext) self.__add_round_key(self.plain_state, self.round_keys[:4]) for i in range(1, 10): self.__round_encrypt(self.plain_state, self.round_keys[4 * i : 4 * (i 1)]) self.__sub_bytes(self.plain_state) self.__shift_rows(self.plain_state) self.__add_round_key(self.plain_state, self.round_keys[40:]) return matrix2text(self.plain_state) def decrypt(self, ciphertext): self.cipher_state = text2matrix(ciphertext) self.__add_round_key(self.cipher_state, self.round_keys[40:]) self.__inv_shift_rows(self.cipher_state) self.__inv_sub_bytes(self.cipher_state) for i in range(9, 0,-1): self.__round_decrypt(self.cipher_state, self.round_keys[4 * i : 4 * (i 1)]) self.__add_round_key(self.cipher_state, self.round_keys[:4]) return matrix2text(self.cipher_state) def __add_round_key(self, s, k): for i in range(4): for j in range(4): s[i][j] ^= k[i][j] def __round_encrypt(self, state_matrix, key_matrix): self.__sub_bytes(state_matrix) self.__shift_rows(state_matrix) self.__mix_columns(state_matrix) self.__add_round_key(state_matrix, key_matrix) def __round_decrypt(self, state_matrix, key_matrix): self.__add_round_key(state_matrix, key_matrix) self.__inv_mix_columns(state_matrix) self.__inv_shift_rows(state_matrix) self.__inv_sub_bytes(state_matrix) def __sub_bytes(self, s): for i in range(4): for j in range(4): s[i][j] = Sbox[s[i][j]] def __inv_sub_bytes(self, s): for i in range(4): for j in range(4): s[i][j] = INVSBOX[s[i][j]] def __shift_rows(self, s): s[0][1], s[1][1], s[2][1], s[3][1] = s[1][1], s[2][1], s[3][1], s[0][1] s[0][2], s[1][2], s[2][2], s[3][2] = s[2][2], s[3][2], s[0][2], s[1][2] s[0][3], s[1][3], s[2][3], s[3][3] = s[3][3], s[0][3], s[1][3], s[2][3] def __inv_shift_rows(self, s): s[0][1], s[1][1], s[2][1], s[3][1] = s[3][1], s[0][1], s[1][1], s[2][1] s[0][2], s[1][2], s[2][2], s[3][2] = s[2][2], s[3][2], s[0][2], s[1][2] s[0][3], s[1][3], s[2][3], s[3][3] = s[1][3], s[2][3], s[3][3], s[0][3] def __mix_single_column(self, a): # please see Sec 4.1.2 in The Design of Rijndael for i in range(4): u = xtime(xtime(s[i][0] ^ s[i][2])) v = xtime(xtime(s[i][1] ^ s[i][3])) s[i][0] ^= u s[i][1] ^= v s[i][2] ^= u s[i][3] ^= v self.__mix_columns(s) test.py import unittest rom aes import AES class AES_TEST(unittest.TESTCASE): def SETUP(self): master_key = 0x000102030405060708090a0b0c0d0e0f self.AES = AES(master_key) def test_encryption_decription(self): laintext = 0x00112233445566778899aabbccddeeff print "plain text =", hex(plaintext) encrypted = self.AES.encrypt(plaintext) print "encripted text =", hex(encrypted) decrypted = self.AES.decrypt(encrypted) print "decrypted text =", hex(decrypted) if __name__ == "__main__": unittest.
Заказать написание новой работы
Популярные работы
бесплатно
0
Курсовая работа
Маркетинг
Маркетинг, реклама и торговля
Особенности рекламы в магазине "Магнит"
Размещено:
21.03.2019
бесплатно
0
Курсовая работа
Оборудование молочной промышленности
Производство и технологии
Исследование гомогенизатора в производстве кисломолочных продуктов
Размещено:
10.01.2019
бесплатно
0
Курсовая работа
Без предмета
Маркетинг, реклама и торговля
Маркетинговое исследование рынка парикмахерских услуг
Размещено:
09.01.2019
бесплатно
0
Реферат
История
История и исторические личности
Подготовка Красной армии к Великой Отечественной войне
Размещено:
14.03.2019
бесплатно
0
Курсовая работа
Семейная психология
Психология
Ролевые ожидания и притязания супругов в молодой семье с разным уровнем удовлетворенности браком
Размещено:
09.01.2019
бесплатно
0
Курсовая работа
Товароведение непродовольственных товаров
Маркетинг, реклама и торговля
Товароведная характеристика лечебно-гигиенической косметики
Размещено:
15.10.2019
Новые загруженные работы
бесплатно
0
Реферат
Экономика машиностроительного производства
Экономика и экономическая теория
Экономика машиностроительного производства
Размещено:
04.03.2020
бесплатно
0
Лекция
Экономика машиностроительного производства
Экономика и экономическая теория
Экономика машиностроительного производства
Размещено:
04.03.2020
бесплатно
0
Контрольная работа
Экономика
Экономика и экономическая теория
Экономика малого бизнеса в сфере туризма и гостиничного сервиса
Размещено:
04.03.2020
бесплатно
0
Учебное пособие
Экономика
Экономика и экономическая теория
Экономика малого бизнеса
Размещено:
04.03.2020
бесплатно
0
Контрольная работа
Экономика отрасли
Экономика и экономическая теория
Экономика лесного хозяйства
Размещено:
04.03.2020
Дисциплины научных работ
Астрономия и космонавтика
(1640)
Банковское, биржевое дело и страхование
(17130)
Безопасность жизнедеятельности и охрана труда
(9694)
Биология и естествознание
(15089)
Бухгалтерский учет и аудит
(21807)
Военное дело и гражданская оборона
(2427)
География и экономическая география
(6683)
Геология, гидрология и геодезия
(8085)
Государство и право
(90982)
Журналистика, издательское дело и СМИ
(4628)
Иностранные языки и языкознание
(18669)
История и исторические личности
(32049)
Коммуникации, связь, цифровые приборы и радиоэлектроника
(13962)
Краеведение и этнография
(2068)
Кулинария и продукты питания
(6325)
Культура и искусство
(15897)
Литература
(13524)
Маркетинг, реклама и торговля
(29173)
Математика
(7120)
Медицина
(54840)
Международные отношения и мировая экономика
(13612)
Менеджмент и трудовые отношения
(47894)
Музыка
(2448)
Педагогика
(53477)
Политология
(9287)
Программирование, компьютеры и кибернетика
(36416)
Производство и технологии
(36631)
Психология
(32092)
Разное
(372)
Религия и мифология
(4346)
Рубрика
(44)
Сельское, лесное хозяйство и землепользование
(19996)
Социология и обществознание
(18330)
Спорт и туризм
(14943)
Строительство и архитектура
(12880)
Таможенная система
(2637)
Транспорт
(14967)
Физика и энергетика
(24517)
Философия
(14270)
Финансы, деньги и налоги
(33984)
Химия
(9719)
Экология и охрана природы
(12280)
Экономика и экономическая теория
(75840)
Экономико-математическое моделирование
(4303)
Этика и эстетика
(2616)
Посмотреть все работы
Хотите, перезвоним вам?
Жду звонка!