دیروز که به crypto.stackexchange.com سر زدم تعدادی موضوع جالب دیدم که خوندم، همینطور سرنخ ها رو گرفتم رسیدم به مقاله های دیگه، خلاصه یه 20 تایی موضوع و بحث رو خوندم، گذارم به ویکیپدیا هم افتاد، اونجا هم یه 20 تا مقالهء دیگه خوندم! خلاصه روز پرباری بود
علم رمزنگاری خیلی گسترده است و مدام هم بروز میشه؛ آدم توی این رشته باید چند وقت یک بار دوباره تحقیق و مطالعه بکنه تا بروز باشه.
راستی یه الگوریتم رمزنگاری دیدم توی ویکیپدیا که فقط چند خطه
https://en.wikipedia.org/wiki/Speck_%28cipher%29
اینم کدش:
#include <stdint.h>
#define ROR(x, r) ((x >> r) | (x << (64 - r)))
#define ROL(x, r) ((x << r) | (x >> (64 - r)))
#define R(x, y, k) (x = ROR(x, 8), x += y, x ^= k, y = ROL(y, 3), y ^= x)
#define ROUNDS 32
void encrypt(uint64_t const pt[static 2],
uint64_t ct[static 2],
uint64_t const K[static 2])
{
uint64_t y = pt[0], x = pt[1], b = K[0], a = K[1];
R(x, y, b);
for (int i = 0; i < ROUNDS - 1; i++) {
R(a, b, i);
R(x, y, b);
}
ct[0] = y;
ct[1] = x;
}
موضوع اینه الگوریتم درست و حسابی هم هست ظاهرا، چون توسط متخصصان NSA طراحی شده.
البته فکر نمیکنم امنیتش بتونه با AES برابری بکنه!