主权项 |
1.一种用于计算机执行的密码程序应用中的方法,所述应用的安全性取决于大素数,所述方法产生一个或一个以上用于所述密码程序应用的可能候选素数,其特征在于所述方法包括以硬件执行的密码应用指令,所述指令按以下的步骤程序实施:提供一具有一指定的第一比特大小的伪随机数;将所述伪随机数加上一第一增量以产生一第一候选数,所述第一增量要这样选择以使所述第一候选数为一组极小素数的互素数;由所述第一候选数开始,通过相对于一列除所述极小素数组之外的小素数作试除来重复地检验相继的候选数,直到找出一候选数,其为所述列中全部的所述小素数的互素数,所述相继候选数由以下步骤检验:(i)计算所述第一候选数的一组模简化数,所述模简化数组的元素为余数,所述余数相当于所述第一候选数以一所述小素数列中的一些不同素数组的每一相应乘积为模,所述乘积具有一指定的最大第二比特大小,所述第二比特大小比所述第一比特大小至少小四分之三;(ii)维持一主增量,对于每一所述相继候选数,所述主增量都要校正,当以每一相继更新的所述主增量加到所述第一候选数时,就会提供下一个为所述极小素数组的互素数的所述相继候选数;(iii)对于以目前校正的所述主增量来增量的所述模简化数组的每一元素,除非以及直到找出一候选数为合数为止,通过相对于相应的小素数组的每一素数作试除检验所述的增量的元素以确定所得余数是否为零值,如是的话,则标明目前的候选数为合数;在找出一为所述列中全部的所述小素数的互素数之后,使相等于所述第一候选数与所述目前的主增量相加的所述候选数,接受至少一严格的可能素性检验,而且假如根据任何一所述严格的可能素性检验找出一候选数为合数,那么就如前所述般通过相对于所述小素数组作试除不断地检验所述相继候选数直到找出一既通过所述小素数试除又通过所述严格的可能素性检验的候选数,这样的候选数被认为是一可能素数;以及将所述可能素数用于所述密码程序。 |