⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cast.c

📁 DOS攻击源码
💻 C
📖 第 1 页 / 共 2 页
字号:
    0xb7747f9d, 0xab2af7b4, 0xefc34d20, 0x2e096b7c, 0x1741a254, 0xe5b6a035,    0x213d42f6, 0x2c1c7c26, 0x61c2f50f, 0x6552daf9, 0xd2c231f8, 0x25130f69,    0xd8167fa2, 0x0418f2c8, 0x001a96a6, 0x0d1526ab, 0x63315c21, 0x5e0a72ec,    0x49bafefd, 0x187908d9, 0x8d0dbd86, 0x311170a7, 0x3e9b640c, 0xcc3e10d7,    0xd5cad3b6, 0x0caec388, 0xf73001e1, 0x6c728aff, 0x71eae2a1, 0x1f9af36e,    0xcfcbd12f, 0xc1de8417, 0xac07be6b, 0xcb44a1d8, 0x8b9b0f56, 0x013988c3,    0xb1c52fca, 0xb4be31cd, 0xd8782806, 0x12a3a4e2, 0x6f7de532, 0x58fd7eb6,    0xd01ee900, 0x24adffc2, 0xf4990fc5, 0x9711aac5, 0x001d7b95, 0x82e5e7d2,    0x109873f6, 0x00613096, 0xc32d9521, 0xada121ff, 0x29908415, 0x7fbb977f,    0xaf9eb3db, 0x29c9ed2a, 0x5ce2a465, 0xa730f32c, 0xd0aa3fe8, 0x8a5cc091,    0xd49e2ce7, 0x0ce454a9, 0xd60acd86, 0x015f1919, 0x77079103, 0xdea03af6,    0x78a8565e, 0xdee356df, 0x21f05cbe, 0x8b75e387, 0xb3c50651, 0xb8a5c3ef,    0xd8eeb6d2, 0xe523be77, 0xc2154529, 0x2f69efdf, 0xafe67afb, 0xf470c4b2,    0xf3e0eb5b, 0xd6cc9876, 0x39e4460c, 0x1fda8538, 0x1987832f, 0xca007367,    0xa99144f8, 0x296b299e, 0x492fc295, 0x9266beab, 0xb5676e69, 0x9bd3ddda,    0xdf7e052f, 0xdb25701c, 0x1b5e51ee, 0xf65324e6, 0x6afce36c, 0x0316cc04,    0x8644213e, 0xb7dc59d0, 0x7965291f, 0xccd6fd43, 0x41823979, 0x932bcdf6,    0xb657c34d, 0x4edfd282, 0x7ae5290c, 0x3cb9536b, 0x851e20fe, 0x9833557e,    0x13ecf0b0, 0xd3ffb372, 0x3f85c5c1, 0x0aef7ed2  }};#define f1(y,x,kr,km)           \    t  = rotl(km + x, kr);      \    u  = s_box[0][byte(t,3)];   \    u ^= s_box[1][byte(t,2)];   \    u -= s_box[2][byte(t,1)];   \    u += s_box[3][byte(t,0)];   \    y ^= u#define f2(y,x,kr,km)           \    t  = rotl(km ^ x, kr);      \    u  = s_box[0][byte(t,3)];   \    u -= s_box[1][byte(t,2)];   \    u += s_box[2][byte(t,1)];   \    u ^= s_box[3][byte(t,0)];   \    y ^= u#define f3(y,x,kr,km)           \    t  = rotl(km - x, kr);      \    u  = s_box[0][byte(t,3)];   \    u += s_box[1][byte(t,2)];   \    u ^= s_box[2][byte(t,1)];   \    u -= s_box[3][byte(t,0)];   \    y ^= u#define f_rnd(x,n)                              \    f1(x[2],x[3],l_key[n],    l_key[n + 4]);    \    f2(x[1],x[2],l_key[n + 1],l_key[n + 5]);    \    f3(x[0],x[1],l_key[n + 2],l_key[n + 6]);    \    f1(x[3],x[0],l_key[n + 3],l_key[n + 7])#define i_rnd(x, n)                             \    f1(x[3],x[0],l_key[n + 3],l_key[n + 7]);    \    f3(x[0],x[1],l_key[n + 2],l_key[n + 6]);    \    f2(x[1],x[2],l_key[n + 1],l_key[n + 5]);    \    f1(x[2],x[3],l_key[n],    l_key[n + 4])#define k_rnd(k,tr,tm)          \    f1(k[6],k[7],tr[0],tm[0]);  \    f2(k[5],k[6],tr[1],tm[1]);  \    f3(k[4],k[5],tr[2],tm[2]);  \    f1(k[3],k[4],tr[3],tm[3]);  \    f2(k[2],k[3],tr[4],tm[4]);  \    f3(k[1],k[2],tr[5],tm[5]);  \    f1(k[0],k[1],tr[6],tm[6]);  \    f2(k[7],k[0],tr[7],tm[7])u4byte l_key[96];u4byte *set_key (const u4byte in_key[], const u4byte key_len){  u4byte i, j, t, u, cm, cr, lk[8], tm[8], tr[8];  for (i = 0; i < key_len / 32; ++i)    lk[i] = io_swap (in_key[i]);  for (; i < 8; ++i)    lk[i] = 0;  cm = 0x5a827999;  cr = 19;  for (i = 0; i < 96; i += 8)    {      for (j = 0; j < 8; ++j)	{	  tm[j] = cm;	  cm += 0x6ed9eba1;	  tr[j] = cr;	  cr += 17;	}      k_rnd (lk, tr, tm);      for (j = 0; j < 8; ++j)	{	  tm[j] = cm;	  cm += 0x6ed9eba1;	  tr[j] = cr;	  cr += 17;	}      k_rnd (lk, tr, tm);      l_key[i + 0] = lk[0];      l_key[i + 1] = lk[2];      l_key[i + 2] = lk[4];      l_key[i + 3] = lk[6];      l_key[i + 4] = lk[7];      l_key[i + 5] = lk[5];      l_key[i + 6] = lk[3];      l_key[i + 7] = lk[1];    }  return l_key;}voidaes_encrypt (const u4byte in_blk[4], u4byte out_blk[4]){  u4byte t, u, blk[4];  blk[0] = io_swap (in_blk[0]);  blk[1] = io_swap (in_blk[1]);  blk[2] = io_swap (in_blk[2]);  blk[3] = io_swap (in_blk[3]);  f_rnd (blk, 0);  f_rnd (blk, 8);  f_rnd (blk, 16);  f_rnd (blk, 24);  f_rnd (blk, 32);  f_rnd (blk, 40);  i_rnd (blk, 48);  i_rnd (blk, 56);  i_rnd (blk, 64);  i_rnd (blk, 72);  i_rnd (blk, 80);  i_rnd (blk, 88);  out_blk[0] = io_swap (blk[0]);  out_blk[1] = io_swap (blk[1]);  out_blk[2] = io_swap (blk[2]);  out_blk[3] = io_swap (blk[3]);}voiddecrypt (const u4byte in_blk[4], u4byte out_blk[4]){  u4byte t, u, blk[4];  blk[0] = io_swap (in_blk[0]);  blk[1] = io_swap (in_blk[1]);  blk[2] = io_swap (in_blk[2]);  blk[3] = io_swap (in_blk[3]);  f_rnd (blk, 88);  f_rnd (blk, 80);  f_rnd (blk, 72);  f_rnd (blk, 64);  f_rnd (blk, 56);  f_rnd (blk, 48);  i_rnd (blk, 40);  i_rnd (blk, 32);  i_rnd (blk, 24);  i_rnd (blk, 16);  i_rnd (blk, 8);  i_rnd (blk, 0);  out_blk[0] = io_swap (blk[0]);  out_blk[1] = io_swap (blk[1]);  out_blk[2] = io_swap (blk[2]);  out_blk[3] = io_swap (blk[3]);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -