![]() |
Shadowrun: Awakened 29 September 2011 - Build 871
|
#include <BigTwistedEdwards.hpp>
Inheritance diagram for cat::BigTwistedEdwards:Public Member Functions | |
| BigTwistedEdwards (int regs, int bits, int C, int D, const u8 *Q, const u8 *GenPt) | |
| Leg | GetCurveD () |
| const Leg * | GetCurveQ () |
| const Leg * | GetGenerator () |
| bool | IsAffineIdentity (const Leg *in) |
| bool | LoadVerifyAffineXY (const void *in_x, const void *in_y, Leg *out) |
| void | PtAdd (const Leg *in_a, const Leg *in_b, Leg *out) |
| void | PtCopy (const Leg *in, Leg *out) |
| void | PtDouble (const Leg *in, Leg *out) |
| void | PtDoubleZ1 (const Leg *in, Leg *out) |
| void | PtEAdd (const Leg *in_a, const Leg *in_b, Leg *out) |
| void | PtEDouble (const Leg *in, Leg *out) |
| void | PtEDoubleZ1 (const Leg *in, Leg *out) |
| void | PtESubtract (const Leg *in_a, const Leg *in_b, Leg *out) |
| void | PtFillRandomX (IRandom *prng, Leg *out) |
| void | PtGenerate (IRandom *prng, Leg *out) |
| void | PtIdentity (Leg *inout) |
| int | PtLegs () |
| void | PtMultiply (const Leg *in_p, const Leg *in_k, u8 msb_k, Leg *out) |
| void | PtMultiply (const Leg *in_precomp, int w, const Leg *in_k, u8 msb_k, Leg *out) |
| void | PtMultiplyPrecomp (const Leg *in, int w, Leg *table) |
| Leg * | PtMultiplyPrecompAlloc (int w) |
| void | PtNegate (const Leg *in, Leg *out) |
| void | PtNormalize (const Leg *in, Leg *out) |
| void | PtSiMultiply (const Leg *precomp_p, const Leg *precomp_q, int w, const Leg *in_k, u8 msb_k, const Leg *in_l, u8 msb_l, Leg *out) |
| void | PtSolveAffineY (Leg *inout) |
| void | PtSubtract (const Leg *in_a, const Leg *in_b, Leg *out) |
| void | PtUnpack (Leg *inout) |
| bool | PtValidAffine (const Leg *in) |
| void | RefMul (const Leg *in_p, const Leg *in_k, u8 msb_k, Leg *out) |
| void | SaveAffineX (const Leg *in, void *out_x) |
| void | SaveAffineXY (const Leg *in, void *out_x, void *out_y) |
| void | SaveProjectiveXY (const Leg *in, void *out_x, void *out_y) |
Protected Member Functions | |
| void | PtPrecompAddSub (const Leg *in_a, const Leg *in_b, Leg *sum, Leg *diff, int neg_offset) |
Protected Attributes | |
| Leg | curve_d |
Private Attributes | |
| Leg * | A |
| Leg * | B |
| Leg * | C |
| Leg * | CurveQ |
| Leg * | D |
| Leg * | E |
| Leg * | F |
| Leg * | G |
| Leg * | Generator |
| Leg * | H |
| int | POINT_STRIDE |
| int | te_regs |
| Leg * | TempPt |
| int | TOFF |
| int | YOFF |
| int | ZOFF |
Static Private Attributes | |
| static const int | POINT_REGS = 4 |
| static const int | PRECOMP_NEG_OFFSET = PRECOMP_POINTS / 2 |
| static const int | PRECOMP_POINTS = 1 << (WINDOW_BITS-1) |
| static const int | TE_OVERHEAD = (1 + PRECOMP_POINTS) * POINT_REGS + 9 + POINT_REGS * 2 |
| static const int | WINDOW_BITS = 6 |
| static const int | XOFF = 0 |
Definition at line 67 of file BigTwistedEdwards.hpp.
| cat::BigTwistedEdwards::BigTwistedEdwards | ( | int | regs, |
| int | bits, | ||
| int | C, | ||
| int | D, | ||
| const u8 * | Q, | ||
| const u8 * | GenPt | ||
| ) |
| Leg cat::BigTwistedEdwards::GetCurveD | ( | ) | [inline] |
| const Leg* cat::BigTwistedEdwards::GetCurveQ | ( | ) | [inline] |
| const Leg* cat::BigTwistedEdwards::GetGenerator | ( | ) | [inline] |
| bool cat::BigTwistedEdwards::IsAffineIdentity | ( | const Leg * | in | ) |
| bool cat::BigTwistedEdwards::LoadVerifyAffineXY | ( | const void * | in_x, |
| const void * | in_y, | ||
| Leg * | out | ||
| ) |
| void cat::BigTwistedEdwards::PtAdd | ( | const Leg * | in_a, |
| const Leg * | in_b, | ||
| Leg * | out | ||
| ) |
| void cat::BigTwistedEdwards::PtCopy | ( | const Leg * | in, |
| Leg * | out | ||
| ) |
| void cat::BigTwistedEdwards::PtDouble | ( | const Leg * | in, |
| Leg * | out | ||
| ) |
| void cat::BigTwistedEdwards::PtDoubleZ1 | ( | const Leg * | in, |
| Leg * | out | ||
| ) |
| void cat::BigTwistedEdwards::PtEAdd | ( | const Leg * | in_a, |
| const Leg * | in_b, | ||
| Leg * | out | ||
| ) |
| void cat::BigTwistedEdwards::PtEDouble | ( | const Leg * | in, |
| Leg * | out | ||
| ) |
| void cat::BigTwistedEdwards::PtEDoubleZ1 | ( | const Leg * | in, |
| Leg * | out | ||
| ) |
| void cat::BigTwistedEdwards::PtESubtract | ( | const Leg * | in_a, |
| const Leg * | in_b, | ||
| Leg * | out | ||
| ) |
| void cat::BigTwistedEdwards::PtFillRandomX | ( | IRandom * | prng, |
| Leg * | out | ||
| ) |
| void cat::BigTwistedEdwards::PtGenerate | ( | IRandom * | prng, |
| Leg * | out | ||
| ) |
| void cat::BigTwistedEdwards::PtIdentity | ( | Leg * | inout | ) |
| int cat::BigTwistedEdwards::PtLegs | ( | ) | [inline] |
Definition at line 94 of file BigTwistedEdwards.hpp.
References cat::BigRTL::Legs(), and POINT_REGS.
{ return Legs() * POINT_REGS; }
| void cat::BigTwistedEdwards::PtMultiply | ( | const Leg * | in_p, |
| const Leg * | in_k, | ||
| u8 | msb_k, | ||
| Leg * | out | ||
| ) |
| void cat::BigTwistedEdwards::PtMultiply | ( | const Leg * | in_precomp, |
| int | w, | ||
| const Leg * | in_k, | ||
| u8 | msb_k, | ||
| Leg * | out | ||
| ) |
| void cat::BigTwistedEdwards::PtMultiplyPrecomp | ( | const Leg * | in, |
| int | w, | ||
| Leg * | table | ||
| ) |
| Leg* cat::BigTwistedEdwards::PtMultiplyPrecompAlloc | ( | int | w | ) |
| void cat::BigTwistedEdwards::PtNegate | ( | const Leg * | in, |
| Leg * | out | ||
| ) |
| void cat::BigTwistedEdwards::PtNormalize | ( | const Leg * | in, |
| Leg * | out | ||
| ) |
| void cat::BigTwistedEdwards::PtPrecompAddSub | ( | const Leg * | in_a, |
| const Leg * | in_b, | ||
| Leg * | sum, | ||
| Leg * | diff, | ||
| int | neg_offset | ||
| ) | [protected] |
| void cat::BigTwistedEdwards::PtSiMultiply | ( | const Leg * | precomp_p, |
| const Leg * | precomp_q, | ||
| int | w, | ||
| const Leg * | in_k, | ||
| u8 | msb_k, | ||
| const Leg * | in_l, | ||
| u8 | msb_l, | ||
| Leg * | out | ||
| ) |
| void cat::BigTwistedEdwards::PtSolveAffineY | ( | Leg * | inout | ) |
| void cat::BigTwistedEdwards::PtSubtract | ( | const Leg * | in_a, |
| const Leg * | in_b, | ||
| Leg * | out | ||
| ) |
| void cat::BigTwistedEdwards::PtUnpack | ( | Leg * | inout | ) |
| bool cat::BigTwistedEdwards::PtValidAffine | ( | const Leg * | in | ) |
| void cat::BigTwistedEdwards::RefMul | ( | const Leg * | in_p, |
| const Leg * | in_k, | ||
| u8 | msb_k, | ||
| Leg * | out | ||
| ) |
| void cat::BigTwistedEdwards::SaveAffineX | ( | const Leg * | in, |
| void * | out_x | ||
| ) |
| void cat::BigTwistedEdwards::SaveAffineXY | ( | const Leg * | in, |
| void * | out_x, | ||
| void * | out_y | ||
| ) |
| void cat::BigTwistedEdwards::SaveProjectiveXY | ( | const Leg * | in, |
| void * | out_x, | ||
| void * | out_y | ||
| ) |
Leg* cat::BigTwistedEdwards::A [private] |
Definition at line 82 of file BigTwistedEdwards.hpp.
Leg * cat::BigTwistedEdwards::B [private] |
Definition at line 82 of file BigTwistedEdwards.hpp.
Leg * cat::BigTwistedEdwards::C [private] |
Definition at line 82 of file BigTwistedEdwards.hpp.
Leg cat::BigTwistedEdwards::curve_d [protected] |
Definition at line 86 of file BigTwistedEdwards.hpp.
Referenced by GetCurveD().
Leg * cat::BigTwistedEdwards::CurveQ [private] |
Definition at line 82 of file BigTwistedEdwards.hpp.
Referenced by GetCurveQ().
Leg * cat::BigTwistedEdwards::D [private] |
Definition at line 82 of file BigTwistedEdwards.hpp.
Leg * cat::BigTwistedEdwards::E [private] |
Definition at line 82 of file BigTwistedEdwards.hpp.
Leg * cat::BigTwistedEdwards::F [private] |
Definition at line 82 of file BigTwistedEdwards.hpp.
Leg * cat::BigTwistedEdwards::G [private] |
Definition at line 82 of file BigTwistedEdwards.hpp.
Leg * cat::BigTwistedEdwards::Generator [private] |
Definition at line 82 of file BigTwistedEdwards.hpp.
Referenced by GetGenerator().
Leg * cat::BigTwistedEdwards::H [private] |
Definition at line 82 of file BigTwistedEdwards.hpp.
const int cat::BigTwistedEdwards::POINT_REGS = 4 [static, private] |
Definition at line 69 of file BigTwistedEdwards.hpp.
Referenced by PtLegs().
int cat::BigTwistedEdwards::POINT_STRIDE [private] |
Definition at line 71 of file BigTwistedEdwards.hpp.
const int cat::BigTwistedEdwards::PRECOMP_NEG_OFFSET = PRECOMP_POINTS / 2 [static, private] |
Definition at line 76 of file BigTwistedEdwards.hpp.
const int cat::BigTwistedEdwards::PRECOMP_POINTS = 1 << (WINDOW_BITS-1) [static, private] |
Definition at line 75 of file BigTwistedEdwards.hpp.
const int cat::BigTwistedEdwards::TE_OVERHEAD = (1 + PRECOMP_POINTS) * POINT_REGS + 9 + POINT_REGS * 2 [static, private] |
Definition at line 78 of file BigTwistedEdwards.hpp.
int cat::BigTwistedEdwards::te_regs [private] |
Definition at line 79 of file BigTwistedEdwards.hpp.
Leg* cat::BigTwistedEdwards::TempPt [private] |
Definition at line 83 of file BigTwistedEdwards.hpp.
int cat::BigTwistedEdwards::TOFF [private] |
Definition at line 71 of file BigTwistedEdwards.hpp.
const int cat::BigTwistedEdwards::WINDOW_BITS = 6 [static, private] |
Definition at line 74 of file BigTwistedEdwards.hpp.
const int cat::BigTwistedEdwards::XOFF = 0 [static, private] |
Definition at line 70 of file BigTwistedEdwards.hpp.
int cat::BigTwistedEdwards::YOFF [private] |
Definition at line 71 of file BigTwistedEdwards.hpp.
int cat::BigTwistedEdwards::ZOFF [private] |
Definition at line 71 of file BigTwistedEdwards.hpp.
Copyright © 2007-2010 by The Shadowrun: Awakened Team. This work is licensed under the GNU Lesser General Public License 3.