red25519 1.1.0-jruby

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,35 @@
1
+ #ifndef GE25519_H
2
+ #define GE25519_H
3
+
4
+ #include "fe25519.h"
5
+ #include "sc25519.h"
6
+
7
+ #define ge25519 crypto_sign_ed25519_ref_ge25519
8
+ #define ge25519_base crypto_sign_ed25519_ref_ge25519_base
9
+ #define ge25519_unpackneg_vartime crypto_sign_ed25519_ref_unpackneg_vartime
10
+ #define ge25519_pack crypto_sign_ed25519_ref_pack
11
+ #define ge25519_isneutral_vartime crypto_sign_ed25519_ref_isneutral_vartime
12
+ #define ge25519_double_scalarmult_vartime crypto_sign_ed25519_ref_double_scalarmult_vartime
13
+ #define ge25519_scalarmult_base crypto_sign_ed25519_ref_scalarmult_base
14
+
15
+ typedef struct
16
+ {
17
+ fe25519 x;
18
+ fe25519 y;
19
+ fe25519 z;
20
+ fe25519 t;
21
+ } ge25519;
22
+
23
+ extern const ge25519 ge25519_base;
24
+
25
+ int ge25519_unpackneg_vartime(ge25519 *r, const unsigned char p[32]);
26
+
27
+ void ge25519_pack(unsigned char r[32], const ge25519 *p);
28
+
29
+ int ge25519_isneutral_vartime(const ge25519 *p);
30
+
31
+ void ge25519_double_scalarmult_vartime(ge25519 *r, const ge25519 *p1, const sc25519 *s1, const ge25519 *p2, const sc25519 *s2);
32
+
33
+ void ge25519_scalarmult_base(ge25519 *r, const sc25519 *s);
34
+
35
+ #endif