summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2016-03-19Improve ecc_25519_scalarmult_base documentationMatthias Schiffer
2016-03-19Optimize ecc_25519_scalarmult_baseMatthias Schiffer
We can elide one multiplication assuming that Z == 1 for the default base.
2016-03-19Switch internal point representation to the Ed25519 curveMatthias Schiffer
The Ed25519 curve allows slightly more efficient addition.
2016-03-18Deprecate ecc_25519_work_base_ed25519 and ecc_25519_work_base_legacyMatthias Schiffer
The deprecation of ecc_25519_work_default_base and ecc_25519_scalarmult_base{,_bits} is reverted, as the Ed25519 and legacy base points are represented in the same way now.
2016-03-18Unify legacy and Ed25519 base point by negating conversion factorsMatthias Schiffer
2015-10-25libuecc v6v6Matthias Schiffer
2015-10-23Add README and CHANGELOGMatthias Schiffer
2015-10-17Add support for the Ed25519 curveMatthias Schiffer
2015-10-17Add _legacy suffix to functions accessing points in compressed/coordinate ↵Matthias Schiffer
representation
2015-10-17Add Ed25519-compatible generator pointMatthias Schiffer
The old point is renamed, as it isn't the only default point anymore. The old name and functions using the old point are deprecated now.
2015-10-17Fix loading of packed points in edge caseMatthias Schiffer
The parity bit was not handled correctly when the squeezed value of Y is not fully reduced.
2015-10-09Fix another comment typoMatthias Schiffer
2015-10-06Use stdint types where reasonableMatthias Schiffer
Using uint32_t instead of unsigned int for the unpacked work struct ensures the code is working correctly on ABIs with ints narrower than 32 bits. While this would constitute a API/ABI change on some systems in theory, most likely all systems using libuecc so far have uint8_t == unsigned char and uint32_t == unsigned int. Also, coding style cleanup.
2015-10-03Remove some unnecessary squeeze() callsMatthias Schiffer
As only the subtrahend in a sub() call needs to be squeezed, the squeeze can be skipped in these cases.
2015-10-03Improve documenation of internal functionsMatthias Schiffer
2015-10-03Fix typo in commentMatthias Schiffer
2015-10-03Add comments clarifying when subtractions without squeeze are validMatthias Schiffer
2015-10-02Add functions for point negation and subtractionMatthias Schiffer
2015-10-02Move documentation comments for public API to the public headerMatthias Schiffer
This makes the documentation more accessible, as the header now contains all information regarding the usage of the API, and it is not necessary to generate the Doxygen documentation anymore for that.
2015-01-26libuecc v5v5Matthias Schiffer
2015-01-26Update doxygen supportMatthias Schiffer
2015-01-26Make default base and identity points accessibleMatthias Schiffer
2015-01-26Add a better explanation to ecc_25519_gf_sanitize_secret()Matthias Schiffer
2015-01-26Update copyright yearsMatthias Schiffer
2015-01-22Add reduced-bitlength scalar multiplicationMatthias Schiffer
2013-12-26libuecc v4v4Matthias Schiffer
2013-12-26Use LIB_SUFFIX in pkg-config informationMatthias Schiffer
2013-10-28Add -Wall to COMPILE_FLAGSMatthias Schiffer
2013-10-27Update Doxyfile.inMatthias Schiffer
2013-10-27Remove deprecated definitionsMatthias Schiffer
2013-10-27Respect LIB_SUFFIXMatthias Schiffer
2013-10-27Build a shared library as wellMatthias Schiffer
2013-01-09libuecc v3v3Matthias Schiffer
2013-01-09Check points for validity on loadMatthias Schiffer
2012-12-23Add pkg-config file, prepare release 2v2Matthias Schiffer
2012-12-23Lots of code documentationMatthias Schiffer
2012-12-22Change type names to follow the _t convention, add `deprecated' attributeMatthias Schiffer
2012-12-09Fix ecc_25519_gf_is_zeroMatthias Schiffer
2012-12-08Add the order of the base point to the public APIMatthias Schiffer
2012-12-08Add some Doxygen documentationMatthias Schiffer
2012-12-07Reduce before reciprocationMatthias Schiffer
2012-12-07Add GF reciprocal functionMatthias Schiffer
2012-12-07Reworked the APIMatthias Schiffer
2012-03-28Use the same key sanitization as Curve25519v0.1Matthias Schiffer
2012-03-25Add ecc_25519_secret_sanitize stub implementationMatthias Schiffer
2012-03-17Switch from inverted to extended coordinate representationMatthias Schiffer
In inverted coordinates there are 4 points that aren't representable correctly. Avoid this problem by using the extended coordinate representation, in which an add+double operation has essentially the same performance as in the inverted representation.
2012-03-16For Edwards curves, the identity element isn't at infinity, so rename the ↵Matthias Schiffer
identity check function accordingly
2012-03-15Simplyfy secret add, subtract and reduce functionsMatthias Schiffer
2012-03-15Improve modular multiplication performanceMatthias Schiffer
2012-03-14Some more renamed, some utility functionsMatthias Schiffer