نقل قول نوشته شده توسط SZsXsZS مشاهده تاپیک
راستی یه الگوریتم رمزنگاری دیدم توی ویکیپدیا که فقط چند خطه
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 برابری بکنه!
خیلی‌ وقت بود دنبال یه الگوریتم سریع و با امنیت متوسط/خوب میگشتم احتمالا به درد من میخوره (بهتره برای موضوعاتی که به این تاپیک ربطی‌ نداره تو بخش خودش تاپیک ایجاد بشه)

البته الگوریتم با قدرت AES همین حالا هم وجود داره chacha20-poly1305 که چند ساله اجرایی شده و دنیا رمزنگاری الگوریتم جدیدی به حساب میاد در حال حاضر خیلی‌ از غولهای‌ اینترنتی مثل گوگل, فیسبوک, کلود فلار, ویزا کارت و... به این الگوریتم مهاجرت کردن به دلیل اینکه در کنار امنیت خوبش پرفورمنس خیلی‌ خوبی‌ هم داره تو رمزنگاری فقط امنیت مهم نیست چیزی که به اندازه امنیت مهم هست سرعت پردازش هست که می‌تونه هزینه‌های سرور‌های بزرگ رو به مقدار قابل توجی کاهش بده و همچنین تو کامپیوترهای جیبی‌ هم باعث می‌شه انرژی کمتری صرف پردازش بشه که باعث صرفه جویی در مصرف باطری می‌شه

این نتایج بنچمارک الگوریتمهای مختلف رو کامپیوتر منه:
type            	16 bytes     64 bytes     256 bytes    1024 bytes   8192 bytes   16384 bytes
chacha20-poly1305 81109.32k 145302.35k 246685.76k 258933.31k 263730.33k 264456.20k
chacha20 115274.44k 198422.90k 390654.99k 405981.39k 410297.62k 411064.72k
aes-128-cbc 69128.70k 78088.70k 81174.07k 81249.24k 79965.24k 80604.32k
aes-256-cbc 51901.55k 55649.78k 57602.00k 57891.29k 57943.07k 58040.60k
aes-128-gcm 36732.21k 43238.44k 96182.36k 103388.09k 104936.15k 104886.04k
aes-256-gcm 28769.41k 33372.52k 80532.20k 87074.71k 88707.66k 88794.52k
aes-128-ctr 46843.66k 54598.40k 172586.67k 194556.28k 201581.48k 202342.40k
aes-128-ofb 65602.52k 74269.11k 76572.21k 77349.14k 77355.48k 77549.08k
des-cbc 31732.41k 35228.92k 36133.79k 36337.52k 36516.88k 36360.30k
camellia-128-cbc 46407.84k 72056.02k 83611.60k 86968.04k 88196.77k 87988.77k
bf-cbc 55239.62k 63547.59k 66546.55k 67155.03k 67229.94k 67202.55k


با اینکه chacha20 به صورت پیشفرض از کلید ۲۵۶ بیتی استفاده می‌کنه اما از تمام مدهای جدید و قدیمی‌ AES-128 و الگوریتم‌های دیگه هم سریعتره البته الگوریتم poly1305 که برای اصالت سنجی در این رمزنگاری استفاده شده خودش از AES استفاده می‌کنه.