throw runtime_error("Key generation failed");
}
-std::string RSAContext::convertToISC()
+std::string RSAContext::convertToISC(unsigned int algorithm)
{
string ret;
typedef vector<pair<string, mpi*> > outputs_t;
("Exponent2",&d_context.DQ)
("Coefficient",&d_context.QP);
- ret = "Private-key-format: v1.2\nAlgorithm: 5 (RSASHA1)\n";
+ ret = "Private-key-format: v1.2\nAlgorithm: "+lexical_cast<string>(algorithm)+" (RSASHA1)\n";
BOOST_FOREACH(outputs_t::value_type value, outputs) {
ret += value.first;
DNSSECPrivateKey dpk;
dpk.d_key.create(bits); // for testing, 1024
- string isc = dpk.d_key.convertToISC();
+ string isc = dpk.d_key.convertToISC(algorithm);
DNSKEYRecordContent drc = dpk.getDNSKEY();
drc.d_flags = 256 + keyOrZone; // KSK
drc.d_algorithm = algorithm; // 5 = RSA, we'll add '2' later on for NSEC3 if needed
string zone=cmds[1];
unsigned int id=atoi(cmds[2].c_str());
DNSSECPrivateKey dpk=dk.getKeyById(zone, id);
- cout << dpk.d_key.convertToISC() <<endl;
+ cout << dpk.d_key.convertToISC(dpk.d_algorithm) <<endl;
}
else if(cmds[0]=="export-zone-dnskey") {
string zone=cmds[1];