Mercurial > dropbear
comparison gendss.c @ 794:d386defb5376 ecc
more ecdsa signkey work, not correct
author | Matt Johnston <matt@ucc.asn.au> |
---|---|
date | Sun, 28 Apr 2013 23:17:43 +0800 |
parents | c3de235d9506 |
children | 724c3e0c8734 |
comparison
equal
deleted
inserted
replaced
793:70625eed40c9 | 794:d386defb5376 |
---|---|
45 | 45 |
46 dropbear_dss_key * gen_dss_priv_key(unsigned int size) { | 46 dropbear_dss_key * gen_dss_priv_key(unsigned int size) { |
47 | 47 |
48 dropbear_dss_key *key; | 48 dropbear_dss_key *key; |
49 | 49 |
50 if (size != 1024) { | |
51 dropbear_exit("DSS keys have a fixed size of 1024 bits"); | |
52 } | |
53 | |
50 key = m_malloc(sizeof(*key)); | 54 key = m_malloc(sizeof(*key)); |
51 | 55 |
52 key->p = (mp_int*)m_malloc(sizeof(mp_int)); | 56 key->p = (mp_int*)m_malloc(sizeof(mp_int)); |
53 key->q = (mp_int*)m_malloc(sizeof(mp_int)); | 57 key->q = (mp_int*)m_malloc(sizeof(mp_int)); |
54 key->g = (mp_int*)m_malloc(sizeof(mp_int)); | 58 key->g = (mp_int*)m_malloc(sizeof(mp_int)); |
55 key->y = (mp_int*)m_malloc(sizeof(mp_int)); | 59 key->y = (mp_int*)m_malloc(sizeof(mp_int)); |
56 key->x = (mp_int*)m_malloc(sizeof(mp_int)); | 60 key->x = (mp_int*)m_malloc(sizeof(mp_int)); |
57 m_mp_init_multi(key->p, key->q, key->g, key->y, key->x, NULL); | 61 m_mp_init_multi(key->p, key->q, key->g, key->y, key->x, NULL); |
58 | 62 |
59 seedrandom(); | |
60 | |
61 getq(key); | 63 getq(key); |
62 getp(key, size); | 64 getp(key, size/8); |
63 getg(key); | 65 getg(key); |
64 getx(key); | 66 getx(key); |
65 gety(key); | 67 gety(key); |
66 | 68 |
67 return key; | 69 return key; |