这个程序产生加密数据文件使用的的密码,遵循Autokey security protocol和NTPv4.文件名被名字和创建时间组成的头部当做前缀,后面跟有一个类型定义的描述符标签和PEM加密的数据结构并且兼容OPENSSL库。

所有的文件名类似"ntpkey_<type>_<hostname>.<filestamp>",此处的<type>代表文件类型,<hostname>即产生文件的主机名并且<filestamp>就是以ntp秒数产生计时的时间。NTP程序期望一个通用的类似"ntpkey_<type>_whimsy.udel.edu"的通过软连接的关系。随后是一系列文件类型,第一行是文件名第二行是链接名。

ntpkey_MD5key_<hostname>.<filestamp>

MD5(128-bit)的密钥用来在对称密钥加密算法中计算消息摘要

ntpkey_RSAhost_<hostname>.<filestamp>

ntpkey_host_<hostname>

RSA  private/public host key pair 用在公钥签名中。

ntpkey_RSAsign_<hostname>.<filestamp>
ntpkey_sign_<hostname>

RSA private/public sign key pair用在公钥签名中。

ntpkey_DSAsign_<hostname>.<filestamp>
ntpkey_sign_<hostname>

DSA private/public sign key pair用在公钥签名中。

可用的摘要/签名方案

RSA:    RSA-MD2, RSA-MD5, RSA-SHA, RSA-SHA1, RSA-MDC2, EVP-RIPEMD160

DSA:    DSA-SHA, DSA-SHA1

ntpkey_XXXcert_<hostname>.<filestamp>
ntpkey_cert_<hostname>

X509v3证书使用RSA或者DSA公钥和签名。XXX是用来识别消息摘要和签名加密算法的码。

识别方案。key type pair被用来做挑战;key type key被用来应答。

ntpkey_IFFkey_<groupname>.<filestamp>
 ntpkey_iffkey_<groupname>
 Schnorr (IFF) identity parameters and keys

ntpkey_GQkey_<groupname>.<filestamp>,
 ntpkey_gqkey_<groupname>
 Guillou-Quisquater (GQ) identity parameters and keys

ntpkey_MVkeyX_<groupname>.<filestamp>,
 ntpkey_mvkey_<groupname>

Mu-Varadharajan (MV) identity parameters and keys

注意:有时因为有些统计意外这个程序不能产生并且验证加密的数据,可以被返回状态为-1表明。在这种情况下只是再次运行这程序即可。如果程序的确是以返回值0结束,数据即被验证正确。

这些加密例程可以被模数大小分类。默认值是512位,可以在加密长度和计算时间之间达成妥协,这一般应用就够了。这些例程已经被256,512,1024和2048位的大小测试过。并不是所有的消息摘要和签名加密方案都可以在小于512位的大小的情况下工作。大于2048位的计算时间在所有机器上都是不可忍受的,当然最快的处理器除外。ULTRASPARC刀锋1000需要超过9分钟来产生和验证大小是2048的模数。老的SPARC IPC可能需要整整一周。

这一个程序使用的OPenssl库需要一个随机的种子文件。就如OPENSSL文件描述的那样,文件名默认是RANDFILE环境变量在用户的家目录然后.rnd在用户的家目录。

ntp-keygen.c的更多相关文章

  1. ntp

    一: 在一台可以连接外网的服务器A上配置ntp: 配置  /etc/ntp.conf  文件: server 202.120.2.101            # local clock (LCL) ...

  2. 设置WindowServer2012 时间同步NTP

    在powershell中以管理员身份运行以下命令即可 w32tm /config /manualpeerlist:pool.ntp.org /syncfromflags:MANUAL Stop-Ser ...

  3. Windows Server 2008 R2 NTP服务器

    Server 1.查看服务器信息 w32tm /query /status 2.设置同步地址 w32tm /config /manualpeerlist:time.windows.com /syncf ...

  4. 时间同步ntp服务的安装与配置(作为客户端的配置

    在linux环境下,我们不仅可以自己设置时间,也可以对系统进行时间的同步,比如同步时间到某台物理机上或虚拟机,皆可!接下来我们就以同步时间到某台物理机为例, 一起学习学习. 1.配置本地yum源(挂载 ...

  5. CentOS7 NTP 安装配置

    NTP 网络时间协议用来同步网络上不同主机的系统时间.你管理的所有主机都可以和一个指定的被称为 NTP 服务器的时间服务器同步它们的时间.而另一方面,一个 NTP 服务器会将它的时间和任意公共 NTP ...

  6. 配置ntp服务

    配置ntp服务(hadoop搭建可参考) 一:修改选定的服务器的本地时间 date -s '2016-10-07 16:29:30' +'%F %T' //需要设置的时间 二:修改后将时间写入到硬件时 ...

  7. linux时间同步ntp服务的安装与配置

    1.首先安装NTP [root@localhost /]# yum install ntp -y 2.修改NTP配置文件,添加NTP服务器的网络位置    /etc/ntp.conf # For mo ...

  8. 如何搭建NTP服务

    最近,在搭建Oracle RAC过程中,需要用到DNS和NTP,其中,DNS用于域名.IP管理,NTP用于时间同步.其实,很久以前搭建过这两种服务,但技术,本质上,符合“用进废退”的客观规律.用得越频 ...

  9. JetBrains.DotMemory.Keygen.4.x

    GoogleN久都没找到这一类的工具. 只好折腾一个了. CSDN 免积分 0积分 下载 http://download.csdn.net/detail/caizz520/7477865 全球首发-V ...

  10. 基于ntp的多服务器时间同步脚本

    server服务器每1个小时更新一次时间,server服务器旗下同步服务器每5秒钟同步一次时间,同步服务器与外网不做交互,由server服务器进行同步时间.所以保证每一台同步服务器时间一致. #vi ...

随机推荐

  1. C#连接sqlserver数据库

    // 混合登录 写法1:Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPas ...

  2. 再谈Java方法传参那些事

    把一个变量带进一个方法,该方法执行结束后,它的值有时会改变,有时不会改变.一开始会觉得--“好神奇呀”.当我们了解java内存分析的知识后,一切都是那么简单明了了--“哦,这么回事呀”.但是今天的上机 ...

  3. Debian上安装java

    Debian 8 Jessie上安装命令: echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main&qu ...

  4. Linux启动kettle及linux和windows中kettle往hdfs中写数据(3)

    在xmanager中的xshell运行进入图形化界面 sh spoon.sh 新建一个job

  5. P2P直连?经服务器中转?

    当同一个系统的两个客户端A.B相互发送消息给对方时,如果它们之间存在P2P通道,那么消息传送的路径就有两种:直接经P2P通道传送.或者经服务器中转.如下图所示: 通常就一般应用而言,如果P2P通道能够 ...

  6. LeetCode OJ combine 3

    public class Solution { public List<List<Integer>> combinationSum3(int k, int n) { retur ...

  7. 取URL得值

    有这样一个URL:http://item.taobao.com/item.htm?a=1&b=2&c=&d=xxx&e,请写一段JS程序提取URL中的各个GET参数(参 ...

  8. SqlServer 汉字转换拼音首字母函数

    CREATE function [dbo].[Func_GetPY](@str nvarchar(4000))returns nvarchar(4000)asbegin set @str=RTRIM( ...

  9. 第1章 初识java----输出多行的语句写法

    public class onesixtwo{ public static void main(String[] args){ System.out.println("----------- ...

  10. 鼠标滚动事件 - onmousewheel

    1.Jquery-MouseWheel jquery默认是不支持支持鼠标滚轮事件(mousewheel) jquery MouseWheel下载:https://github.com/jquery/j ...