Evgenii Stratonikov
63834fe8c1
Remove non-AVX parts from avx package
...
Remove Inv(), Mul1(), And() because right now
they have no AVX optimizations.
2019-10-15 13:22:36 +03:00
Evgenii Stratonikov
0f8b498b58
Alias gf127.GF127
2019-10-15 13:22:36 +03:00
Evgenii Stratonikov
d891a9c591
Restructure code layout
...
Provide default implementations in gf127 package and
all optimizations in subpackages. This way it will be easier
to use from a client.
2019-10-15 13:22:31 +03:00
Evgenii Stratonikov
f296adb043
Remove usage of unsafe
2019-10-10 11:04:15 +03:00
Evgenii
9a258e8741
Add test for marshalling/unmarshalling
2019-06-24 11:02:42 +03:00
Evgenii
d9e26aa6de
Use testify/require for testing
2019-06-24 10:56:15 +03:00
Evgenii
4618e1484c
Add partial AVX2 support (multiplication by 10 and 11)
...
AVX2 permits working with 256-bit registers. Thus we can
multiply 2 GF(2^127) elements in parallel.
This commit adds 2 such functions for multiplication by 10 and 11).
2019-06-21 17:45:49 +03:00
Evgenii
d5efd8bdce
add SubtractR/L operation on hashes
...
- add Inverse operation to sl2
- fix a bug in xN()
2019-01-29 16:11:50 +03:00
Evgenii
ebb124e812
add random GF(2^127)-element generator
2019-01-29 14:25:17 +03:00
Evgenii
b380bca1d2
add inversion function
2019-01-29 14:11:08 +03:00
Evgeniy Kulikov
42499b9eb0
Fix formatting
2019-01-03 11:04:43 +03:00
Evgeniy Kulikov
5cf44c62ac
Initial
2018-12-29 16:04:17 +03:00