Pull to refresh
1
0
Send message

Что-то в последнее время тема криптографии в ударе, то на одном, то на другом ресурсе что нибудь про шифры да и попадется. Винил "умные" ленты, раз уж я в такие статьи стабильно заглядываю, а тут на днях подшефному студенту в качестве зачетной работы по си задали реализацию AES.

ООП с продемонстрированным здесь полиморфизмом пришло на замену чисто процедурному программированию не потому, что оно быстрее, а потому, что в реальных проектах (когда речь идет о мегабайтах кода) проще в голове удерживать взаимосвязь всех этих абстракций между собой, проще вносить изменения, проще и быстрее вводить в курс дела новых разработчиков, ну и так далее

Вспомнилось, как впервые познакомился с сетью Фейстеля, один и тот же алгоритм шифрует и дешифрует, причем, с любой придуманной функцией F, удивление было таковым, что я на бумаге "прогонял" по алгоритму биты, пытаясь поймать момент, где "происходит магия"

Ну вот, ни рекурсивного спуска тебе, ни обратной польской нотации, калькулятор спрограммировал называется

Спасибо за двадцатилетний флэшбек с лекций по алгебре. Если позволите, поясню для школь тех, кто совсем не дружит с группами, операциями по модулю и обратными кодами. У нас в целое (рассмотрим 8 бит) помещаются числа от -128 до +127, то есть, если мы поменяем знак у -1 получим +1, если у -2 получим +2, ..., если у -127 получим +127, если поменяем знак у -128, что получим? Следующее число после 127, а так как они закончились, начинаем с наименьшего в нашей числовой шкале, то есть -128.

Information

Rating
Does not participate
Registered
Activity