This commit is contained in:
2025-06-10 11:54:50 +02:00
parent fe82635333
commit 7351838abb
14 changed files with 622 additions and 0 deletions

31
tp3/df.c Normal file
View File

@@ -0,0 +1,31 @@
#include "df.h"
uint64 expm(uint64 m, uint64 e, uint64 mod)
{
uint128 _r = 1;
uint128 _m = (uint128)m;
uint128 _mod = (uint128)mod;
while (e > 0) {
if (e % 2 == 1) {
_r = (_r * _m) % _mod;
}
_m = (_m * _m) % _mod;
e = e / 2;
}
return (uint64)_r;
}
uint64 generateur(uint64 p)
{
uint64 q = (p - 1) / 2;
uint64 g = 2;
while (1) {
if (expm(g, 2, p) != 1 && expm(g, q, p) != 1) {
return g;
}
g++;
}
}