File: val_crypto.h

package info (click to toggle)
dnssec-tools 1.13-1
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 16,064 kB
  • sloc: perl: 44,399; ansic: 31,547; cpp: 21,306; sh: 15,813; xml: 2,113; makefile: 1,390; pascal: 836; python: 290; csh: 11
file content (66 lines) | stat: -rw-r--r-- 2,687 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
/*
 * Copyright 2005-2012 SPARTA, Inc.  All rights reserved.
 * See the COPYING file distributed with this software for details.
 *
 * Author: Abhijit Hayatnagarkar
 *
 */

#ifndef VAL_CRYPTO_H
#define VAL_CRYPTO_H


void            dsasha1_sigverify(val_context_t * ctx,
                                  const u_char *data,
                                  size_t data_len,
                                  const val_dnskey_rdata_t * dnskey,
                                  const val_rrsig_rdata_t * rrsig,
                                  val_astatus_t * key_status,
                                  val_astatus_t * sig_status);

void            rsamd5_sigverify(val_context_t * ctx,
                                 const u_char *data,
                                 size_t data_len,
                                 const val_dnskey_rdata_t * dnskey,
                                 const val_rrsig_rdata_t * rrsig,
                                 val_astatus_t * key_status,
                                 val_astatus_t * sig_status);

u_int16_t       rsamd5_keytag(const u_char *pubkey, size_t pubkey_len);

void            rsasha_sigverify(val_context_t * ctx,
                                  const u_char *data,
                                  size_t data_len,
                                  const val_dnskey_rdata_t * dnskey,
                                  const val_rrsig_rdata_t * rrsig,
                                  val_astatus_t * key_status,
                                  val_astatus_t * sig_status);

int             ds_sha_hash_is_equal(u_char * name_n,
                                     u_char * rrdata,
                                     size_t rrdatalen,
                                     u_char * ds_hash,
                                     size_t ds_hash_len);

#ifdef HAVE_SHA_256
int             ds_sha256_hash_is_equal(u_char * name_n,
                                        u_char * rrdata,
                                        size_t rrdatalen,
                                        u_char * ds_hash,
                                        size_t ds_hash_len);
#endif

#ifdef LIBVAL_NSEC3
u_char       *nsec3_sha_hash_compute(u_char * qc_name_n,
                                       u_char * salt, size_t saltlen,
                                       size_t iter, u_char ** hash,
                                       size_t * hashlen);
#endif

char           *get_base64_string(u_char *message, size_t message_len,
                                  char *buf, size_t bufsize);

int             decode_base64_key(char *keyptr, u_char * public_key,
                                  size_t keysize);

#endif