如何使用DNSKEY对应的DS验证DNSKEY
名称服务器上的DNSKEY可以通过使用存储在其父名称服务器上的DNSKEY DS进行验证。根据RFC4034: DS记录通过包含该记录的摘要来引用DNSKEY RR 德内斯基 摘要是通过连接 具有DNSKEY RDATA的DNSKEY RR的完全限定所有者名称, 然后应用摘要算法如何使用DNSKEY对应的DS验证DNSKEY,dns,Dns,名称服务器上的DNSKEY可以通过使用存储在其父名称服务器上的DNSKEY DS进行验证。根据RFC4034: DS记录通过包含该记录的摘要来引用DNSKEY RR 德内斯基 摘要是通过连接 具有DNSKEY RDATA的DNSKEY RR的完全限定所有者名称, 然后应用摘要算法 digest = digest_algorithm( DNSKEY owner name | DNSKEY RDATA); "|" denotes concatenation DNSKEY RDATA =
digest = digest_algorithm( DNSKEY owner name | DNSKEY RDATA);
"|" denotes concatenation
DNSKEY RDATA = Flags | Protocol | Algorithm | Public Key.
以下示例显示DNSKEY RR及其对应的DS RR
dskey.example.com. 86400 IN DNSKEY 256 3 5 ( AQOeiiR0GOMYkDshWoSKz9Xz
fwJr1AYtsmx3TGkJaNXVbfi/
2pHm822aJ5iI9BMzNXxeYCmZ
DRD99WYwYqUSdjMmmAphXdvx
egXd/M5+X7OrzKBaMbCVdFLU
Uh6DhweJBjEVv5f2wwjM9Xzc
nOf+EPbtG9DMBmADjFDc2w/r
ljwvFw==
) ; key id = 60485
dskey.example.com. 86400 IN DS 60485 5 1 ( 2BB183AF5F22588179A53B0A
98631FAD1A292118 )
有人能告诉我如何基于DNSKEY生成DS吗?我的具体问题是如何连接和生成“DNSKEY RDATA”?
提前感谢。根据此信息: 实际上,摘要是通过以下字段计算的:, 连接: DNSKEY所有者名称:se。(0x 02736500) 标志:257(0x0101) 议定书:3 (0x03)算法:5(0x05)公钥:Aw 以十六进制表示的前四个字段如下:02736500 0101 03 05 我的问题是如何计算DNSKEY域名的值(在本例中为se.)。我不知道的概念是“有线格式”。幸运的是,英国Nominet的罗伊·阿伦兹(Roy Arends)向我清楚地解释了这是什么: “wireformat”中的域名是一组标签,其中每个标签前面都有一个长度值,并以空标签(值0x00)结尾 对于“se”,导线格式为:02(长度为“se”),然后是73 65(ascii值的十六进制表示形式为“s”和“e”),然后是空标签(值00):0x 02 73 65 00 对于root(“.”)而言,该值仅为00,因此为0x00 “dnssec工具”的长度为12个字符,因此长度值为:0c dnssec工具的十六进制ascii表示法:64 6e 73 65 63 2d 74 6f 6f 6c 73“组织”的长度为3个字符,因此长度值为:03 然后用十六进制表示org:6f 72 67,后跟 空标签:00 总而言之:“dnssec tools.org.”是 0x0c646e737365632d746f6f6c73036f726700 谢谢阿吉安·罗伊