Mercurial > dropbear
comparison ecc.h @ 793:70625eed40c9 ecc
A bit of work on ecdsa for host/auth keys
author | Matt Johnston <matt@ucc.asn.au> |
---|---|
date | Sun, 14 Apr 2013 00:50:03 +0800 |
parents | e465ed10c51d |
children | c19acba28590 |
comparison
equal
deleted
inserted
replaced
768:6e6ce39da2fc | 793:70625eed40c9 |
---|---|
9 #ifdef DROPBEAR_ECC | 9 #ifdef DROPBEAR_ECC |
10 | 10 |
11 struct dropbear_ecc_curve { | 11 struct dropbear_ecc_curve { |
12 int ltc_size; // to match the byte sizes in ltc_ecc_sets[] | 12 int ltc_size; // to match the byte sizes in ltc_ecc_sets[] |
13 const ltc_ecc_set_type *dp; // curve domain parameters | 13 const ltc_ecc_set_type *dp; // curve domain parameters |
14 const struct ltc_hash_descriptor *hashdesc; | 14 const struct ltc_hash_descriptor *hash_desc; |
15 const char *name; | 15 const unsigned char *name; |
16 }; | 16 }; |
17 | 17 |
18 extern struct dropbear_ecc_curve ecc_curve_nistp256; | 18 extern struct dropbear_ecc_curve ecc_curve_nistp256; |
19 extern struct dropbear_ecc_curve ecc_curve_nistp384; | 19 extern struct dropbear_ecc_curve ecc_curve_nistp384; |
20 extern struct dropbear_ecc_curve ecc_curve_nistp521; | 20 extern struct dropbear_ecc_curve ecc_curve_nistp521; |
21 extern struct dropbear_ecc_curve *dropbear_ecc_curves[]; | 21 extern struct dropbear_ecc_curve *dropbear_ecc_curves[]; |
22 | 22 |
23 void dropbear_ecc_fill_dp(); | 23 void dropbear_ecc_fill_dp(); |
24 struct dropbear_ecc_curve* curve_for_dp(const ltc_ecc_set_type *dp); | |
24 | 25 |
25 // "pubkey" refers to a point, but LTC uses ecc_key structure for both public | 26 // "pubkey" refers to a point, but LTC uses ecc_key structure for both public |
26 // and private keys | 27 // and private keys |
27 void buf_put_ecc_raw_pubkey_string(buffer *buf, ecc_key *key); | 28 void buf_put_ecc_raw_pubkey_string(buffer *buf, ecc_key *key); |
28 ecc_key * buf_get_ecc_raw_pubkey(buffer *buf, const struct dropbear_ecc_curve *curve); | 29 ecc_key * buf_get_ecc_raw_pubkey(buffer *buf, const struct dropbear_ecc_curve *curve); |