DS-"Upload"-Formate zum Parent über den DFN

Wer seine Zonen über den DFN bezieht, schickt derzeit seine DS RRs für den Parent per E-Mail normalerweise an hostmaster@dfn.de 

Der DFN würde sich dabei folgende Formate wünschen (Beispiele mit uni-r.eu, 2 KSKs):

Falls die TLD .eu oder .de ist, hätte der DFN den KSK gerne im Format:

domain:  <domain-name>.<tld>
dnskey: xxx y z <key-string ohne blanks>

xxx - Flags (für KSK 257)

y - Protocol (das ist normalerweise eine 3 für DNSSEC)

z - Algorithm (das variiert, 8=z.B. RSA/SHA-256))

z.B. mit dig:

dig <domainname> DNSKEY | grep -i 257 | awk '{ print "domain: "$1"\ndnskey: "$5" "$6" " $7" "$8$9$10$11$12$13$14$15;}'  


domain: uni-r.eu. 
dnskey: 257 3 8 AwEAAdz4/JCQP4jB8yJMivmsKYwjuF[gekürzt]DoEdYsBsjmOQzaAmJ0E= 
domain: uni-r.eu.
dnskey: 257 3 8 AwEAAdfDkpTOmt264HJQMuYgxHbo[gekürzt]7nT1kZj6dPXkM/6Vwc=

 Falls es sich um andere TLDs (.com, .net, .org, ...) handelt, hätte der DFN gerne die DS RRs in folgendem Format:

<domainname>:
dnssec.ds.1.ds.keytag: <keyid>
dnssec.ds.1.ds.alg: <Algorithm>
dnssec.ds.1.ds.digesttype: <Digesttype, 1 = SHA-1, 2 = SHA-256>
dnssec.ds.1.ds.digest.hex: <Hash des Secure Entry Points>

... je einmal per Digest-Type.

.z.B.  auf dem Inline-Signing-Proxy:

#!/bin/bash
zone=<domainname>;
alg=<algnumber>;
keydirpath=<Pfad zu den Keys>/${zone};
toolpath=/usr/sbin/dnssec-dsfromkey
ksks=$(dig $zone DNSKEY +rrcomments @localhost | grep -i KSK | awk '{print $NF}');
for k in $ksks
        do
                if [[ ${#k} == 4 ]]
                        then k="0"$k
                fi
        $toolpath $keydirpath/K$zone.+00$alg+$k.key |
        awk '{print "\n'$zone':\ndnssec.ds.1.ds.keytag: "$4"\ndnssec.ds.1.ds.alg: "$5"\ndnssec.ds.1.ds.digesttype: "$6"\ndnssec.ds.1.ds.digest.hex: "$7;}'
done

uni-r.eu:
dnssec.ds.1.ds.keytag: 27169
dnssec.ds.1.ds.alg: 8
dnssec.ds.1.ds.digesttype: 1
dnssec.ds.1.ds.digest.hex: 587B4D57788FAB3E0D28F1CFEA830293696E561C
uni-r.eu:
dnssec.ds.1.ds.keytag: 27169
dnssec.ds.1.ds.alg: 8
dnssec.ds.1.ds.digesttype: 2
dnssec.ds.1.ds.digest.hex: 093747C1B1649C230094FE79BB623638F405BEDFE673F1D8838F1911827EB2BA

uni-r.eu:
dnssec.ds.1.ds.keytag: 60547
dnssec.ds.1.ds.alg: 8
dnssec.ds.1.ds.digesttype: 1
dnssec.ds.1.ds.digest.hex: F5CAB7DFA1DCBA02CD13CFC47F13D725E89F43ED

uni-r.eu:
dnssec.ds.1.ds.keytag: 60547
dnssec.ds.1.ds.alg: 8
dnssec.ds.1.ds.digesttype: 2
dnssec.ds.1.ds.digest.hex: 6C3F5B2618F931C6414BC2DF94ABB30EB1A4E1A5150D5415D5804AD8F64CBCEF