44 ldns_rr *rr, *sig, *dnskey_rr;
48 rrset = ldns_rr_list_new();
50 status = ldns_rr_new_frm_str(&rr,
"example.com. IN A 192.168.0.1", 0, NULL, NULL);
51 if (status == LDNS_STATUS_OK) ldns_rr_list_push_rr(rrset, rr);
53 status = ldns_rr_new_frm_str(&rr,
"example.com. IN A 192.168.0.2", 0, NULL, NULL);
54 if (status == LDNS_STATUS_OK) ldns_rr_list_push_rr(rrset, rr);
58 sign_params->
owner = ldns_rdf_new_frm_str(LDNS_RDF_TYPE_DNAME,
"example.com.");
60 sign_params->
keytag = ldns_calc_keytag(dnskey_rr);
70 ldns_rr_list_deep_free(rrset);
72 ldns_rr_free(dnskey_rr);
83 unsigned char rnd_buf[1024];
87 printf(
"Generating %lu bytes of random data... ",
88 (
unsigned long)
sizeof(rnd_buf));
91 printf(
"Failed, error: %d\n", result);
98 printf(
"Generating 32-bit random data... ");
102 printf(
"Generating 64-bit random data... ");
104 printf(
"%llu\n", (
long long unsigned int)r64);
113 const unsigned int rsa_keysizes[] = { 512, 768, 1024, 1536, 2048, 4096 };
114 const unsigned int dsa_keysizes[] = { 512, 768, 1024 };
115 unsigned int keysize;
132 for (i=0; i<(
sizeof(rsa_keysizes)/
sizeof(
unsigned int)); i++) {
133 keysize = rsa_keysizes[i];
135 printf(
"Generating %d-bit RSA key... ", keysize);
147 printf(
"Extracting key identifier... ");
155 printf(
"OK, %s\n",
id);
159 printf(
"Signing (RSA/SHA1) with key... ");
160 result = hsm_test_sign(ctx, key, LDNS_RSASHA1);
163 printf(
"Failed, error: %d\n", result);
169 printf(
"Signing (RSA/SHA256) with key... ");
170 result = hsm_test_sign(ctx, key, LDNS_RSASHA256);
173 printf(
"Failed, error: %d\n", result);
179 if ( keysize >= 1024) {
180 printf(
"Signing (RSA/SHA512) with key... ");
181 result = hsm_test_sign(ctx, key, LDNS_RSASHA512);
184 printf(
"Failed, error: %d\n", result);
191 printf(
"Deleting key... ");
195 printf(
"Failed: error: %d\n", result);
209 for (i=0; i<(
sizeof(dsa_keysizes)/
sizeof(
unsigned int)); i++) {
210 keysize = dsa_keysizes[i];
212 printf(
"Generating %d-bit DSA key... ", keysize);
224 printf(
"Extracting key identifier... ");
232 printf(
"OK, %s\n",
id);
236 printf(
"Signing (DSA/SHA1) with key... ");
237 result = hsm_test_sign(ctx, key, LDNS_DSA);
240 printf(
"Failed, error: %d\n", result);
246 printf(
"Deleting key... ");
250 printf(
"Failed: error: %d\n", result);
264 for (i=0; i<1; i++) {
265 printf(
"Generating 512-bit GOST key... ");
277 printf(
"Extracting key identifier... ");
285 printf(
"OK, %s\n",
id);
289 printf(
"Signing (GOST) with key... ");
290 result = hsm_test_sign(ctx, key, LDNS_ECC_GOST);
293 printf(
"Failed, error: %d\n", result);
299 printf(
"Deleting key... ");
303 printf(
"Failed: error: %d\n", result);
314 if (hsm_test_random()) {