nettle  3.7.3
About: Nettle is a low-level cryptographic library.
  Fossies Dox: nettle-3.7.3.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

ecc-add-jjj.c File Reference
#include "ecc.h"
#include "ecc-internal.h"
Include dependency graph for ecc-add-jjj.c:

Go to the source code of this file.

Macros

#define x1   p
 
#define y1   (p + ecc->p.size)
 
#define z1   (p + 2*ecc->p.size)
 
#define x2   q
 
#define y2   (q + ecc->p.size)
 
#define z2   (q + 2*ecc->p.size)
 
#define x3   r
 
#define y3   (r + ecc->p.size)
 
#define z3   (r + 2*ecc->p.size)
 
#define h   scratch
 
#define z1z1   (scratch + ecc->p.size)
 
#define z2z2   z1z1
 
#define z1z2   (scratch + 2*ecc->p.size)
 
#define w   (scratch + ecc->p.size)
 
#define i   (scratch + 2*ecc->p.size)
 
#define j   h
 
#define v   i
 
#define tp   (scratch + 3*ecc->p.size)
 

Functions

void _nettle_ecc_add_jjj (const struct ecc_curve *ecc, mp_limb_t *r, const mp_limb_t *p, const mp_limb_t *q, mp_limb_t *scratch)
 

Macro Definition Documentation

◆ h

#define h   scratch

◆ i

#define i   (scratch + 2*ecc->p.size)

◆ j

#define j   h

◆ tp

#define tp   (scratch + 3*ecc->p.size)

◆ v

#define v   i

◆ w

#define w   (scratch + ecc->p.size)

◆ x1

#define x1   p

◆ x2

#define x2   q

◆ x3

#define x3   r

◆ y1

#define y1   (p + ecc->p.size)

◆ y2

#define y2   (q + ecc->p.size)

◆ y3

#define y3   (r + ecc->p.size)

◆ z1

#define z1   (p + 2*ecc->p.size)

◆ z1z1

#define z1z1   (scratch + ecc->p.size)

◆ z1z2

#define z1z2   (scratch + 2*ecc->p.size)

◆ z2

#define z2   (q + 2*ecc->p.size)

◆ z2z2

#define z2z2   z1z1

◆ z3

#define z3   (r + 2*ecc->p.size)

Function Documentation

◆ _nettle_ecc_add_jjj()

void _nettle_ecc_add_jjj ( const struct ecc_curve ecc,
mp_limb_t r,
const mp_limb_t p,
const mp_limb_t q,
mp_limb_t scratch 
)

Definition at line 42 of file ecc-add-jjj.c.

References ecc_mod_add, ecc_mod_mul, ecc_mod_sqr, ecc_mod_sub, ecc_mod_submul_1, h, i, j, ecc_curve::p, tp, v, w, x1, x2, x3, y1, y2, y3, z1, z1z1, z1z2, z2, z2z2, and z3.