亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ripemd.c

?? rsa加密算法的c++實現,此程序實現利用公鑰解密
?? C
?? 第 1 頁 / 共 3 頁
字號:
  /*    solution of l+1+k = 448 mod 512, in this example k = 448-1-24 */  /*    = 423, 7 bit following the single "1" plus additional         */  /*    13 ULONGs (i.e. 416 bit) in the positions ULBlock[1]...[13].  */  /* 3. The length of the message is appended in 64 bit (2 ULONGs).   */  /*                                                                  */  /*    01100001 01100010 01100011 1 000...00 00...011000             */  /*       "a"      "b"      "c"   1+ 423Bit   64 bit (length)        */  /* Message length modulo 64 ULONG-blocks (512 bit) */  rest = total[0] & 0x3f;  /* Insert ULONGs into ULBlock */  for (i = 0; i < (rest >> 2); i++)    {      ULBlock[i] = UC2UL (clear);      clear += 4;    }  /* Remaining UCHARs go into ULBLock. Invariant: 0 <= i <= 15 */  for (j = i << 2; j < rest; j++)    {      ULBlock[i] |= (ULONG)*clear++ << ((j & 3) << 3);    }  /* Append 0x80 to ULBlock: At least one byte is still free */  ULBlock[i] |= (ULONG)0x80 << ((j & 3) << 3);  if (rest > 55) /* No space left for appending the message length (8 Byte), */    {            /* therefore store length into the following block          */      swallow (stomach, ULBlock);      memset (ULBlock, 0, sizeof (ULONG) << 4);    }  /* Append message length in bit */  ULBlock[14] = total[0] << 3;  ULBlock[15] = (total[0] >> 29) | (total[1] << 3);  swallow (stomach, ULBlock);#ifdef FLINT_SECURE  /* Overwrite temporary variables */  Zero4Ulong (&ULBlock[0], &ULBlock[1], &ULBlock[2], &ULBlock[3]);  Zero4Ulong (&ULBlock[4], &ULBlock[5], &ULBlock[6], &ULBlock[7]);  Zero4Ulong (&ULBlock[8], &ULBlock[9], &ULBlock[10], &ULBlock[11]);  Zero4Ulong (&ULBlock[12], &ULBlock[13], &ULBlock[14], &ULBlock[15]);#endif  return;}/******************************************************************************//* RIPEMD-128 kernel functions                                                *//******************************************************************************/static voidappetize128 (ULONG *stomach){  stomach[0] = 0x67452301UL;  stomach[1] = 0xefcdab89UL;  stomach[2] = 0x98badcfeUL;  stomach[3] = 0x10325476UL;  return;}static voidswallow128 (ULONG *stomach, ULONG *ULBlock){  int round, rol;  ULONG x;  ULONG a1 = stomach[0];  ULONG b1 = stomach[1];  ULONG c1 = stomach[2];  ULONG d1 = stomach[3];  ULONG a2 = stomach[0];  ULONG b2 = stomach[1];  ULONG c2 = stomach[2];  ULONG d2 = stomach[3];  /*lint -e123 Don't complain about "Macros ... defined with arguments" */  /* Rounds and parallel rounds 0-15 */  for (round = 0; round < 16; round++)    {      rol = s1[round];      x = a1 + (b1 ^ c1 ^ d1) + ULBlock[round];      CHAIN128 (a1, b1, c1, d1, x, rol);      rol = s2[round];      x = a2 + (c2 ^ (d2 & (b2 ^ c2))) + ULBlock[r2[round]] + 0x50a28be6UL;      CHAIN128 (a2, b2, c2, d2, x, rol);    }  /* Rounds and parallel rounds 16-31 */  for (round = 16; round < 32; round++)    {      rol = s1[round];      x = a1 + (d1 ^ (b1 & (c1 ^ d1))) + ULBlock[r1[round]] + 0x5A827999UL;      CHAIN128 (a1, b1, c1, d1, x, rol);      rol = s2[round];      x = a2 + ((b2 | ~c2) ^ d2) + ULBlock[r2[round]] + 0x5c4dd124UL;      CHAIN128 (a2, b2, c2, d2, x, rol);    }  /* Rounds and parallel rounds 32-47 */  for (round = 32; round < 48; round++)    {      rol = s1[round];      x = a1 + ((b1 | ~c1) ^ d1) + ULBlock[r1[round]] + 0x6ed9eba1UL;      CHAIN128 (a1, b1, c1, d1, x, rol);      rol = s2[round];      x = a2 + (d2 ^ (b2 & (c2 ^ d2))) + ULBlock[r2[round]] + 0x6d703ef3UL;      CHAIN128 (a2, b2, c2, d2, x, rol);    }  /* Rounds and parallel rounds 48-63 */  for (round = 48; round < 64; round++)    {      rol = s1[round];      x = a1 + (c1 ^ (d1 & (b1 ^ c1))) + ULBlock[r1[round]] + 0x8f1bbcdcUL;      CHAIN128 (a1, b1, c1, d1, x, rol);      rol = s2[round];      x = a2 + (b2 ^ c2 ^ d2) + ULBlock[r2[round]];      CHAIN128 (a2, b2, c2, d2, x, rol);    }  /* Result in stomach */  d2 += c1 + stomach[1];  stomach[1] = stomach[2] + d1 + a2;  stomach[2] = stomach[3] + a1 + b2;  stomach[3] = stomach[0] + b1 + c2;  stomach[0] = d2;#ifdef FLINT_SECURE  /* Overwrite temporary variables */  Zero4Ulong (&a1, &b1, &c1, &d1);  Zero4Ulong (&a2, &b2, &c2, &d2);  ZeroUlong (&x);#endif    return;}static voiddigest128 (ULONG *stomach, UCHAR *clear, ULONG total[]){  ULONG i,j, rest;  ULONG ULBlock[16];  memset (ULBlock, 0, sizeof (ULONG) << 4);  /* Padding as for RIPEMD-160 */  /* Message length modulo 64 ULONG-blocks (512 bit) */  rest = total[0] & 0x3f;  /* Insert ULONGs into ULBlock */  for (i = 0; i < (rest >> 2); i++)    {      ULBlock[i] = UC2UL (clear);      clear += 4;    }  /* Remaining UCHARs go into ULBLock. Invariant: 0 <= i <= 15 */  for (j = i << 2; j < rest; j++)    {      ULBlock[i] |= (ULONG)*clear++ << ((j & 3) << 3);    }  /* Append 0x80 to ULBlock: At least one byte is still free */  ULBlock[i] |= (ULONG)0x80 << ((j & 3) << 3);  if (rest > 55) /* No space left for appending the message length (8 Byte), */    {            /* therefore store length into the following block          */      swallow128 (stomach, ULBlock);      memset (ULBlock, 0, sizeof (ULONG) << 4);    }  /* Append message length in bit */  ULBlock[14] = total[0] << 3;  ULBlock[15] = (total[0] >> 29) | (total[1] << 3);  swallow128 (stomach, ULBlock);#ifdef FLINT_SECURE  /* Overwrite temporary variables */  Zero4Ulong (&ULBlock[0], &ULBlock[1], &ULBlock[2], &ULBlock[3]);  Zero4Ulong (&ULBlock[4], &ULBlock[5], &ULBlock[6], &ULBlock[7]);  Zero4Ulong (&ULBlock[8], &ULBlock[9], &ULBlock[10], &ULBlock[11]);  Zero4Ulong (&ULBlock[12], &ULBlock[13], &ULBlock[14], &ULBlock[15]);#endif  return;}#ifdef FLINT_SECURE/******************************************************************************//*                                                                            *//*  Function:   Purging of variables                                          *//*  Syntax:     ZeroUlong (ULONG *a);                                         *//*  Input:      ULONG *a (Pointer to ULONG variable to be purged)             *//*  Output:     *a overwritten by 0                                           *//*  Returns:    -                                                             *//*                                                                            *//******************************************************************************/static inline void ZeroUlong (ULONG *a){  *a = 0;}/******************************************************************************//*                                                                            *//*  Function:   Purging of variables                                          *//*  Syntax:     Zero2Ulong (ULONG *a, ULONG *b);                              *//*  Input:      ULONG *a (Pointer to ULONG variable to be purged)             *//*              ULONG *b (Pointer to ULONG variable to be purged)             *//*  Output:     *a, *b overwritten by 0                                       *//*  Returns:    -                                                             *//*                                                                            *//******************************************************************************/static inline void Zero2Ulong (ULONG *a, ULONG *b){  *a = *b = 0;}/******************************************************************************//*                                                                            *//*  Function:   Purging of variables                                          *//*  Syntax:     Zero4Ulong (ULONG *a, ULONG *b, ULONG *c, ULONG *d);          *//*  Input:      ULONG *a (Pointer to ULONG variable to be purged)             *//*              ULONG *b (Pointer to ULONG variable to be purged)             *//*              ULONG *c (Pointer to ULONG variable to be purged)             *//*              ULONG *d (Pointer to ULONG variable to be purged)             *//*  Output:     *a, *b, *c and *d overwritten by 0                            *//*  Returns:    -                                                             *//*                                                                            *//******************************************************************************/static inline void Zero4Ulong (ULONG *a, ULONG *b, ULONG *c, ULONG *d){  *a = *b = *c = *d = 0;}/******************************************************************************//*                                                                            *//*  Function:   Purging of Array                                              *//*  Syntax:     ZeroUcharArray (UCHAR *a, int Len);                           *//*  Input:      UCHAR *a (Pointer to array of UCHARs)                         *//*              int Len (Length of array in byte)                             *//*  Output:     Array overwritten by 0                                        *//*  Returns:    -                                                             *//*                                                                            *//******************************************************************************/static inline void ZeroUcharArray (void *a, size_t Len){  memset ((UCHAR*)a, 0, Len);}#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
免费精品视频在线| 国内成+人亚洲+欧美+综合在线| 久久久精品tv| 精品少妇一区二区三区视频免付费| 在线成人av网站| 日韩一级片在线观看| 欧美大片一区二区| 精品久久久久久久久久久久久久久久久| 欧美二区乱c少妇| 日韩欧美国产一区二区在线播放 | 色欧美片视频在线观看| 91捆绑美女网站| 欧美日韩免费视频| 日韩一区二区三区视频| 久久久久成人黄色影片| 中文字幕亚洲一区二区va在线| 亚洲视频 欧洲视频| 亚洲国产一区二区视频| 美女任你摸久久| 丁香天五香天堂综合| 91色porny在线视频| 91精品国产欧美一区二区成人| 精品久久人人做人人爰| 中文字幕成人网| 亚洲另类在线制服丝袜| 七七婷婷婷婷精品国产| 成人av在线一区二区三区| 欧美亚男人的天堂| 精品国产自在久精品国产| 中文字幕一区在线| 毛片av中文字幕一区二区| 不卡一卡二卡三乱码免费网站| 欧美午夜精品理论片a级按摩| 欧美videossexotv100| 最好看的中文字幕久久| 蜜臀av性久久久久av蜜臀妖精| 国产v日产∨综合v精品视频| 欧美高清dvd| 国产精品黄色在线观看| 麻豆成人久久精品二区三区红| 国产69精品久久久久毛片| 欧美日韩黄色一区二区| 国产精品久久精品日日| 青椒成人免费视频| 欧美伊人久久久久久久久影院 | 亚洲国产电影在线观看| 视频一区二区国产| 91精品办公室少妇高潮对白| 26uuu亚洲综合色欧美| 亚洲成人综合在线| 99re这里只有精品视频首页| 精品精品国产高清a毛片牛牛| 亚洲精品老司机| 丁香婷婷深情五月亚洲| 久久蜜臀精品av| 免费在线观看成人| 337p亚洲精品色噜噜狠狠| 中文字幕欧美一| 成人一区二区三区中文字幕| 国产亚洲精品bt天堂精选| 日韩va亚洲va欧美va久久| 欧美探花视频资源| 一区二区三区久久| 一本色道久久综合亚洲精品按摩| 国产精品免费网站在线观看| 国产精品亚洲成人| wwwwxxxxx欧美| 国产精品一二三| 26uuu色噜噜精品一区二区| 久久精工是国产品牌吗| 日韩视频中午一区| 久久国产欧美日韩精品| 精品国产乱码久久久久久久| 蜜桃av噜噜一区二区三区小说| 欧美年轻男男videosbes| 图片区小说区国产精品视频| 欧美日韩一级视频| 日本成人在线电影网| 欧美成人精品福利| 久久国内精品视频| 国产日产亚洲精品系列| 成人一级视频在线观看| 亚洲男人都懂的| 欧美性生活一区| 天天操天天色综合| 久久先锋影音av| 不卡电影一区二区三区| 亚洲一线二线三线久久久| 在线观看不卡视频| 美女视频黄 久久| 国产午夜精品久久久久久免费视 | 亚洲精品视频免费观看| 欧美精品久久一区| 国产揄拍国内精品对白| 亚洲国产精品成人综合| 欧美亚洲免费在线一区| 美女尤物国产一区| 国产精品夫妻自拍| 在线电影一区二区三区| 国产精品99久久不卡二区| 国产精品久久久久影院色老大 | 91亚洲永久精品| 视频在线在亚洲| 久久香蕉国产线看观看99| 成人av电影观看| 秋霞电影一区二区| 国产精品国产三级国产有无不卡| 欧美亚洲自拍偷拍| 国产91精品入口| 亚洲第一会所有码转帖| 国产欧美精品一区二区色综合 | 亚洲精品少妇30p| 精品国产伦理网| 欧美亚洲一区三区| 成人听书哪个软件好| 婷婷六月综合网| 欧美国产乱子伦| 欧美mv日韩mv| 欧美性大战久久久久久久蜜臀| 国产精品77777| 视频在线观看91| 亚洲精品五月天| 亚洲国产经典视频| 久久这里都是精品| 91精品国产福利| 欧美日韩激情一区| 99re66热这里只有精品3直播 | 亚洲欧美精品午睡沙发| 久久精品日产第一区二区三区高清版 | 精品精品国产高清一毛片一天堂| 色婷婷一区二区| 成人黄色免费短视频| 激情久久五月天| 日本成人在线电影网| 亚洲va欧美va天堂v国产综合| 欧美极品少妇xxxxⅹ高跟鞋 | 国产精品女同一区二区三区| 欧美巨大另类极品videosbest | 日韩三级中文字幕| 欧美日韩一二区| 欧洲av在线精品| 91网站黄www| 99久久精品99国产精品| 成人精品视频一区二区三区| 国产精品亚洲专一区二区三区| 久热成人在线视频| 麻豆国产91在线播放| 蜜桃视频在线观看一区| 天堂av在线一区| 日韩中文字幕不卡| 奇米精品一区二区三区在线观看一| 亚洲高清三级视频| 亚洲va欧美va国产va天堂影院| 亚洲视频在线一区二区| 亚洲欧美自拍偷拍| 亚洲欧美激情一区二区| 亚洲美女在线一区| 亚洲高清视频在线| 青青草97国产精品免费观看| 麻豆freexxxx性91精品| 精品一区二区免费视频| 国产成人一级电影| 国产电影精品久久禁18| 成人理论电影网| 色视频一区二区| 91麻豆精品国产| 337p日本欧洲亚洲大胆精品| 国产日本欧洲亚洲| 一区二区三区四区五区视频在线观看| 亚洲精品写真福利| 日本免费在线视频不卡一不卡二| 精品一区二区免费视频| 成人av免费网站| 欧美绝品在线观看成人午夜影视| 日韩欧美一级精品久久| 亚洲国产精品传媒在线观看| 亚洲免费在线电影| 蜜臀久久99精品久久久久宅男 | 日韩一区中文字幕| 亚洲一区二区在线观看视频 | 欧美影视一区在线| 日韩色在线观看| 1区2区3区国产精品| 亚洲国产精品一区二区久久恐怖片| 琪琪久久久久日韩精品| kk眼镜猥琐国模调教系列一区二区| 日本精品一区二区三区高清| 日韩欧美一区二区视频| 自拍视频在线观看一区二区| 美女精品自拍一二三四| 成人的网站免费观看| 日韩一区二区三免费高清| 中文字幕五月欧美| 国内久久精品视频| 欧美午夜一区二区三区免费大片| 国产日韩v精品一区二区| 天天操天天色综合| 91在线看国产| 久久综合久久99| 天堂一区二区在线|