MCPcopy Create free account
hub / github.com/Serial-Studio/Serial-Studio / modL

Function modL

app/src/ThirdParty/tweetnacl.c:808–834  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

806 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x10};
807
808sv modL(u8* r, i64 x[64])
809{
810 i64 carry, i, j;
811 for (i = 63; i >= 32; --i) {
812 carry = 0;
813 for (j = i - 32; j < i - 12; ++j) {
814 x[j] += carry - 16 * x[i] * L[j - (i - 32)];
815 carry = (x[j] + 128) >> 8;
816 x[j] -= carry << 8;
817 }
818 x[j] += carry;
819 x[i] = 0;
820 }
821 carry = 0;
822 FOR(j, 32)
823 {
824 x[j] += carry - (x[31] >> 4) * L[j];
825 carry = x[j] >> 8;
826 x[j] &= 255;
827 }
828 FOR(j, 32) x[j] -= carry * L[j];
829 FOR(i, 32)
830 {
831 x[i + 1] += x[i] >> 8;
832 r[i] = x[i] & 255;
833 }
834}
835
836sv reduce(u8* r)
837{

Callers 2

reduceFunction · 0.85
crypto_signFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected