History

libsec: add secp384r1 curve parameters for tls

cinap_lenrek committed 10 years ago

Commit fbff9591 parent e33e6675 files · +18 −0Browse files

Unified · Split

5 files
  1. include/libsec.h +1 −0
  2. libsec/Makefile +1 −0
  3. libsec/secp384r1.c +12 −0
  4. libsec/tlshand.c +1 −0
  5. libsec/x509.c +3 −0
include/libsec.h+1−0
@@ -529,6 +529,7 @@ char* X509ecdsaverify(uchar *sig, int siglen, ECdomain *dom, ECpub *pub); · 528 unmodified lines
529/* curves */529/* curves */
530void secp256r1(mpint *p, mpint *a, mpint *b, mpint *x, mpint *y, mpint *n, mpint *h);530void secp256r1(mpint *p, mpint *a, mpint *b, mpint *x, mpint *y, mpint *n, mpint *h);
531void secp256k1(mpint *p, mpint *a, mpint *b, mpint *x, mpint *y, mpint *n, mpint *h);531void secp256k1(mpint *p, mpint *a, mpint *b, mpint *x, mpint *y, mpint *n, mpint *h);
532void secp384r1(mpint *p, mpint *a, mpint *b, mpint *x, mpint *y, mpint *n, mpint *h);
532 533
533DigestState* ripemd160(uchar *, ulong, uchar *, DigestState *);534DigestState* ripemd160(uchar *, ulong, uchar *, DigestState *);
534 535
libsec/Makefile+1−0
@@ -60,6 +60,7 @@ OFILES=\ · 59 unmodified lines
60 salsa.$O\60 salsa.$O\
61 secp256k1.$O\61 secp256k1.$O\
62 secp256r1.$O\62 secp256r1.$O\
63 secp384r1.$O\
63 sha1.$O\64 sha1.$O\
64 sha1pickle.$O\65 sha1pickle.$O\
65 sha2_128.$O\66 sha2_128.$O\
libsec/secp384r1.c+12−0
@@ -0,0 +1,12 @@
1#include "os.h"
2#include <mp.h>
3void secp384r1(mpint *p, mpint *a, mpint *b, mpint *x, mpint *y, mpint *n, mpint *h){
4 strtomp("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFF0000000000000000FFFFFFFF", nil, 16, p);
5 uitomp(3UL, a);
6 mpsub(p, a, a);
7 strtomp("B3312FA7E23EE7E4988E056BE3F82D19181D9C6EFE8141120314088F5013875AC656398D8A2ED19D2A85C8EDD3EC2AEF", nil, 16, b);
8 strtomp("AA87CA22BE8B05378EB1C71EF320AD746E1D3B628BA79B9859F741E082542A385502F25DBF55296C3A545E3872760AB7", nil, 16, x);
9 strtomp("3617DE4A96262C6F5D9E98BF9292DC29F8F41DBD289A147CE9DA3113B5F0B8C00A60B1CE1D7E819D7A431D7C90EA0E5F", nil, 16, y);
10 strtomp("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7634D81F4372DDF581A0DB248B0A77AECEC196ACCC52973", nil, 16, n);
11 mpassign(mpone, h);
12 }
libsec/tlshand.c+1−0
@@ -350,6 +350,7 @@ static uchar compressors[] = { · 349 unmodified lines
350 350
351static Namedcurve namedcurves[] = {351static Namedcurve namedcurves[] = {
352 0x0017, secp256r1,352 0x0017, secp256r1,
353 0x0018, secp384r1,
353};354};
354 355
355static uchar pointformats[] = {356static uchar pointformats[] = {
libsec/x509.c+3−0
@@ -1696,13 +1696,16 @@ static DigestAlg *digestalg[NUMALGS+1] = { · 1695 unmodified lines
1696};1696};
1697 1697
1698static Ints15 oid_secp256r1 = {7, 1, 2, 840, 10045, 3, 1, 7};1698static Ints15 oid_secp256r1 = {7, 1, 2, 840, 10045, 3, 1, 7};
1699static Ints15 oid_secp384r1 = {5, 1, 3, 132, 0, 34};
1699 1700
1700static Ints *namedcurves_oid_tab[] = {1701static Ints *namedcurves_oid_tab[] = {
1701 (Ints*)&oid_secp256r1,1702 (Ints*)&oid_secp256r1,
1703 (Ints*)&oid_secp384r1,
1702 nil,1704 nil,
1703};1705};
1704static void (*namedcurves[])(mpint *p, mpint *a, mpint *b, mpint *x, mpint *y, mpint *n, mpint *h) = {1706static void (*namedcurves[])(mpint *p, mpint *a, mpint *b, mpint *x, mpint *y, mpint *n, mpint *h) = {
1705 secp256r1,1707 secp256r1,
1708 secp384r1,
1706 nil,1709 nil,
1707};1710};
1708 1711

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t