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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? prime.c

?? 一個測試DES加密算法和測試程序
?? C
字號:
/* PRIME.C - primality-testing routines
 */

/* Copyright (C) RSA Laboratories, a division of RSA Data Security,
     Inc., created 1991. All rights reserved.
 */

#include "global.h"
#include "rsaref.h"
#include "r_random.h"
#include "nn.h"
#include "prime.h"

static unsigned int SMALL_PRIMES[] = { 3, 5, 7, 11 };
#define SMALL_PRIME_COUNT 4

static int ProbablePrime PROTO_LIST ((NN_DIGIT *, unsigned int));
static int SmallFactor PROTO_LIST ((NN_DIGIT *, unsigned int));
static int FermatTest PROTO_LIST ((NN_DIGIT *, unsigned int));

/* Generates a probable prime a between b and c such that a-1 is
   divisible by d.

   Lengths: a[digits], b[digits], c[digits], d[digits].
   Assumes b < c, digits < MAX_NN_DIGITS.
   
   Returns RE_NEED_RANDOM if randomStruct not seeded, RE_DATA if
   unsuccessful.
 */
int GeneratePrime (a, b, c, d, digits, randomStruct)
NN_DIGIT *a, *b, *c, *d;
unsigned int digits;
R_RANDOM_STRUCT *randomStruct;
{
  int status;
  unsigned char block[MAX_NN_DIGITS * NN_DIGIT_LEN];
  NN_DIGIT t[MAX_NN_DIGITS], u[MAX_NN_DIGITS];

  /* Generate random number between b and c.
   */
  if (status = R_GenerateBytes (block, digits * NN_DIGIT_LEN, randomStruct))
    return (status);
  NN_Decode (a, digits, block, digits * NN_DIGIT_LEN);
  NN_Sub (t, c, b, digits);
  NN_ASSIGN_DIGIT (u, 1, digits);
  NN_Add (t, t, u, digits);
  NN_Mod (a, a, digits, t, digits);
  NN_Add (a, a, b, digits);

  /* Adjust so that a-1 is divisible by d.
   */
  NN_Mod (t, a, digits, d, digits);
  NN_Sub (a, a, t, digits);
  NN_Add (a, a, u, digits);
  if (NN_Cmp (a, b, digits) < 0)
    NN_Add (a, a, d, digits);
  if (NN_Cmp (a, c, digits) > 0)
    NN_Sub (a, a, d, digits);

  /* Search to c in steps of d.
   */
  NN_Assign (t, c, digits);
  NN_Sub (t, t, d, digits);

  while (! ProbablePrime (a, digits)) {
    if (NN_Cmp (a, t, digits) > 0)
      return (RE_DATA);
    NN_Add (a, a, d, digits);
  }

  return (0);
}

/* Returns nonzero iff a is a probable prime.

   Lengths: a[aDigits].
   Assumes aDigits < MAX_NN_DIGITS.
 */
static int ProbablePrime (a, aDigits)
NN_DIGIT *a;
unsigned int aDigits;
{
  return (! SmallFactor (a, aDigits) && FermatTest (a, aDigits));
}

/* Returns nonzero iff a has a prime factor in SMALL_PRIMES.

   Lengths: a[aDigits].
   Assumes aDigits < MAX_NN_DIGITS.
 */
static int SmallFactor (a, aDigits)
NN_DIGIT *a;
unsigned int aDigits;
{
  int status;
  NN_DIGIT t[1];
  unsigned int i;
  
  status = 0;
  
  for (i = 0; i < SMALL_PRIME_COUNT; i++) {
    NN_ASSIGN_DIGIT (t, SMALL_PRIMES[i], 1);
    if ((aDigits == 1) && ! NN_Cmp (a, t, 1))
      break;
    NN_Mod (t, a, aDigits, t, 1);
    if (NN_Zero (t, 1)) {
      status = 1;
      break;
    }
  }
  
  /* Zeroize sensitive information.
   */
  i = 0;
  R_memset ((POINTER)t, 0, sizeof (t));

  return (status);
}

/* Returns nonzero iff a passes Fermat's test for witness 2.
   (All primes pass the test, and nearly all composites fail.)
     
   Lengths: a[aDigits].
   Assumes aDigits < MAX_NN_DIGITS.
 */
static int FermatTest (a, aDigits)
NN_DIGIT *a;
unsigned int aDigits;
{
  int status;
  NN_DIGIT t[MAX_NN_DIGITS], u[MAX_NN_DIGITS];
  
  NN_ASSIGN_DIGIT (t, 2, aDigits);
  NN_ModExp (u, t, a, aDigits, a, aDigits);
  
  status = NN_EQUAL (t, u, aDigits);
  
  /* Zeroize sensitive information.
   */
  R_memset ((POINTER)u, 0, sizeof (u));
  
  return (status);
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区在线观看视频| 亚洲综合男人的天堂| 国产91色综合久久免费分享| 制服丝袜在线91| 亚洲国产精品一区二区尤物区| 香蕉久久一区二区不卡无毒影院| 欧美无砖专区一中文字| 午夜免费久久看| 欧美成人乱码一区二区三区| 国产一区不卡视频| 一区精品在线播放| 欧美主播一区二区三区美女| 日韩黄色在线观看| 2024国产精品| 91丨国产丨九色丨pron| 亚洲一级在线观看| 日韩精品一区二区三区在线播放 | 懂色av中文字幕一区二区三区| 中文字幕在线免费不卡| 欧美亚一区二区| 久久99日本精品| 综合色天天鬼久久鬼色| 91精品久久久久久蜜臀| 高清shemale亚洲人妖| 亚洲一本大道在线| 26uuu另类欧美亚洲曰本| 91久久精品午夜一区二区| 麻豆一区二区99久久久久| 国产精品美女www爽爽爽| 欧美日韩一区不卡| 成人三级在线视频| 午夜久久久影院| 国产精品毛片高清在线完整版| 欧美日本高清视频在线观看| 成人中文字幕在线| 日韩福利电影在线观看| 专区另类欧美日韩| 久久久久久亚洲综合| 欧美性视频一区二区三区| 国产精品白丝jk黑袜喷水| 午夜伊人狠狠久久| 国产精品网友自拍| 欧美一区二区成人6969| 日本乱人伦一区| 国产成人免费视频一区| 奇米影视一区二区三区| 一级做a爱片久久| 中文字幕一区二区日韩精品绯色| 欧美一卡二卡三卡| 欧美日韩免费观看一区二区三区| 国产成人午夜99999| 日本亚洲一区二区| 午夜精品一区在线观看| 亚洲视频你懂的| 久久久99久久精品欧美| 欧美成人精品3d动漫h| 欧美亚洲自拍偷拍| 色成年激情久久综合| 国产精品自拍在线| 久久国产人妖系列| 五月天丁香久久| 夜夜嗨av一区二区三区| 成人欧美一区二区三区1314| 2023国产精品自拍| 欧美xxxxx裸体时装秀| 日韩视频一区在线观看| 91精品国产入口| 在线播放中文字幕一区| 欧美欧美欧美欧美首页| 制服丝袜亚洲色图| 8x8x8国产精品| 欧美日韩你懂的| 欧美日韩一区二区欧美激情| 欧美日韩mp4| 51精品秘密在线观看| 欧美精品自拍偷拍动漫精品| 欧美日本在线一区| 宅男在线国产精品| 欧美疯狂做受xxxx富婆| 91.xcao| 666欧美在线视频| 日韩欧美国产综合在线一区二区三区| 国产精品欧美精品| 亚洲国产成人午夜在线一区| 中文字幕 久热精品 视频在线| 国产色婷婷亚洲99精品小说| 国产日产精品一区| 国产精品乱人伦一区二区| 国产精品久久久久久久午夜片| 国产精品久线在线观看| 亚洲黄色免费网站| 婷婷成人综合网| 极品少妇xxxx精品少妇偷拍| 国产91综合网| 91影院在线免费观看| 在线观看日韩毛片| 日韩欧美专区在线| 久久免费视频色| 亚洲欧美日韩国产另类专区| 亚洲亚洲精品在线观看| 久久国产精品第一页| 成人一区二区三区视频在线观看 | 亚洲国产综合在线| 亚洲第一福利视频在线| 日本欧美一区二区三区乱码 | 中文字幕在线不卡一区| 亚洲精品免费在线观看| 日本欧美韩国一区三区| 国产精品99精品久久免费| av在线一区二区| 欧美日本不卡视频| 精品国产乱码久久久久久牛牛| 中文字幕免费不卡在线| 亚洲一区二区三区美女| 毛片不卡一区二区| 91小视频在线免费看| 欧美一级理论片| 国产精品色哟哟网站| 图片区日韩欧美亚洲| 成人妖精视频yjsp地址| 欧美剧在线免费观看网站 | 亚洲男同性恋视频| 久久精品国产精品亚洲精品| 99久久综合狠狠综合久久| 91精品国产麻豆| 亚洲图片另类小说| 国产乱码精品一区二区三区av| 日本高清成人免费播放| 国产夜色精品一区二区av| 亚洲国产日日夜夜| 成人黄色av电影| 日韩欧美另类在线| 亚洲成人免费观看| av在线一区二区三区| 久久午夜羞羞影院免费观看| 亚洲高清免费一级二级三级| 99久久精品费精品国产一区二区| 欧美大胆人体bbbb| 亚洲va韩国va欧美va| 99v久久综合狠狠综合久久| 久久亚洲二区三区| 免费看欧美美女黄的网站| 欧美三级午夜理伦三级中视频| 亚洲欧美综合在线精品| 国产91精品露脸国语对白| 日韩欧美一区二区视频| 精品一区二区三区在线观看国产| 亚洲日本va午夜在线影院| 亚洲丶国产丶欧美一区二区三区| 成人三级伦理片| 久久精品欧美一区二区三区麻豆| 毛片av一区二区| 欧美一级一区二区| 亚洲va欧美va天堂v国产综合| 91色porny在线视频| 国产精品网站导航| 国产激情偷乱视频一区二区三区| 精品国产伦一区二区三区观看方式 | 国产精品久久久久久久久搜平片 | av在线不卡免费看| 国产日韩精品一区二区三区| 国产大片一区二区| 亚洲精品一区二区三区99| 热久久一区二区| 日韩免费视频一区二区| 天堂影院一区二区| 欧美精品 国产精品| 婷婷激情综合网| 亚洲色图一区二区| 26uuu精品一区二区 | 一区二区三区免费看视频| 粉嫩一区二区三区在线看| 国产视频亚洲色图| 国产成人av一区二区三区在线观看| 久久中文字幕电影| 国产一区二区免费在线| 国产欧美一区二区精品性| 国产一区二区精品久久| 欧美经典一区二区| 99国产精品久| 亚洲丰满少妇videoshd| 日韩欧美视频一区| 国产在线一区二区综合免费视频| www激情久久| 99久久er热在这里只有精品66| 亚洲美女免费视频| 欧美色图一区二区三区| 美女视频第一区二区三区免费观看网站| 欧美一区二区私人影院日本| 精品一区二区免费在线观看| 国产精品热久久久久夜色精品三区 | 91精品久久久久久久久99蜜臂 | 丰满亚洲少妇av| 自拍偷在线精品自拍偷无码专区 | 99久久伊人精品| 亚洲一区二区精品视频| 日韩精品一区二区三区四区视频 | 欧亚一区二区三区| 美女网站视频久久| 国产精品久久午夜夜伦鲁鲁|