moduli 中文手册

译者:金步国


版权声明

本文作者是一位自由软件爱好者,所以本文虽然不是软件,但是本着 GPL 的精神发布。任何人都可以自由使用、转载、复制和再分发,但必须保留作者署名,亦不得对声明中的任何条款作任何形式的修改,也不得附加任何其它条件。您可以自由链接、下载、传播此文档,但前提是必须保证全文完整转载,包括完整的版权信息和作译者声明。

其他作品

本文作者十分愿意与他人共享劳动成果,如果你对我的其他翻译作品或者技术文章有兴趣,可以在如下位置查看现有作品的列表:

BUG报告,切磋与探讨

由于作者水平有限,因此不能保证作品内容准确无误,请在阅读中自行鉴别。如果你发现了作品中的错误,请您来信指出,哪怕是错别字也好,任何提高作品质量的建议我都将虚心接纳。如果你愿意就作品中的相关内容与我进行进一步切磋与探讨,也欢迎你与我联系。联系方式:MSN: [email protected]


MODULI(5)                 OpenBSD Programmer's Manual                MODULI(5)

名称
     moduli - 系统模数文件


描述
     /etc/ssh/moduli 文件包含用于 sshd(8) 的全局范围的 Diffie-Hellman 素数模数(prime modulus)。

     这个文件中的每一行都包含下列字段: Time, Type, Tests, Tries, Size, Generator, Modulus 。
     字段之间使用空白符分隔。每个字段的具体含义如下:

     Time: yyyymmddhhmmss  标明这一行被添加时刻的系统时间,00000000000000 表示未知。

     Type: 整数  指定素模(prime modulus)的内部结构
           0:      未知。表示在协议操作时从另一端获取,并保存下来以便将来分析。
           1:      随意的结构。也就是一个普通的大数。
           2:      安全的结构(p = 2q + 1)。满足基本的结构要求。
           3:      满足Schnorr签名方案的要求。强度比较低。
           4:      Sophie-Germain(q = (p-1)/2)。索菲热尔曼素数,通常在检测素数强度的过程中生成。
           5:      强安全的结构。通常用于生成RSA公钥。

     Tests: 整数(位字段)  指定用于判断一个数是否是素数的方法。
       可以是下面值的叠加,比如:6 表示同时使用 sieve 和 Miller-Rabin 方法。推荐使用 30 。
           0:      不测试。表示在协议操作时从另一端获取,并保存下来以便将来分析。
           1:      组合(composite)。会导致一个或多个测试失败。这种情况下,最高位用于指定失败的测试。
           2:      筛子(sieve)。使用一组小素数来检查是否可以整除。
           4:      Miller-Rabin
           8:      Jacobi
           16:     椭圆曲线(Elliptic Curve)

     Tries: 整数  取决于最高有效测试位的值,不同的数值所代表的方法如下:
           0:      不测试(总是零)
           1:      组合
           2:      筛子。过滤多少过素数,一般大约是 32,000,000 个。
           4:      Miller-Rabin;  M-R 迭代次数,一般大约是 32 到 64 次。
           8:      Jacobi;  未知(总是零)
           16:     Elliptic Curve;  未使用(总是零)

     Size: 整数  指定最高有效位的数量(0 到 1,000,000)

     Generator: 16进制字符串  指定用于 Diffie-Hellman 交换最好的发生器。
                        0(未知或可变), 2, 3, 5, 等等...

     Modulus: 16进制字符串  素数模数(prime modulus)

     这个文件用于在需要模数的时候从中搜寻符合条件(Time, Size, Generator)的模数。
     如果有多个模数都是合格的,那么将倾向于选择较新的模数,但也并不是说旧的模数就一定没有机会被使用。

     可以使用 ssh-keygen(1) 工具来生成新模数。


文件
     /etc/ssh/moduli

参见
     ssh-keygen(1), sshd(8)

OpenBSD 4.2                      May 31, 2007                                2