2700

2701

./2689 : oh bon sang, c'est encore pire que ce que je croyais.

Le soft de chiffrement utilise aussi rand()... mais contrairement au soft de génération de clés, il n'appelle même pas srand(). Donc il utilise systématiquement les mêmes nombres "aléatoires". couic
Moi qui voulais utiliser du code "sur étagère" pour pas devoir toucher à la partie crypto...
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

2702

'fin si y'a juste le RNG a changer c'est un moindre mal... l'entropie en embarqué c'est toujours un peu chiant si t'a pas de RNG hardware.

aussi t'as regardé les sources du rand() en question? c'est peut être une version custom basé sur un RNG spécifique au chip...

2703

Le soft de chiffrement tourne sur PC, il n'y a que la partie déchiffrement qui est dans le µC. Donc le rand() est celui de la libc : trop prévisible pour servir en crypto, et qui ressort toujours les mêmes nombres si tu ne changes pas la seed. Bref dans l'état actuel, tout le code qui est censé introduire un état initial aléatoire est un magnifique placebo. J'ai vérifié en chiffrant deux fois un même fichier, les versions chiffrées sont strictement identiques entre elles.

Alors oui, s'il n'y a "que" ça qui déconne dans le code c'est pas dur à corriger (d'ailleurs je l'ai déjà fait), mais justement ça me donne pas du tout confiance pour le reste grin
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

2704

2705

Zerosquare (./2703) :
Donc le rand() est celui de la libc : trop prévisible pour servir en crypto, et qui ressort toujours les mêmes nombres si tu ne changes pas la seed.
Ça n'utilise même pas par défaut le timestamp actuel comme graine ? O_o
avatar

2706

Même pas. Ils l'ont fait dans le générateur de clés, mais oublié de le faire dans le code de chiffrement.
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

2707

Ok, ma foi en l'humanité vient d'en prendre un coup, là.
avatar

2708

Nil: ca ne garantit rien sans RTC la date redémarre tjs du même point. Avec la RTC on peut toujours la bidouiller.

2709

Si j'ai bien compris c'est chiffré depuis son PC, donc j'espère qu'il a une RTC grin
avatar

2710

(oui, quand même ^^
De toute façon, maintenant j'ai remplacé ça par des appels à RtlGenRandom)
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

2711

Nil (./2707) :
Ok, ma foi en l'humanité vient d'en prendre un coup, là.
Oh !

2712

Vous connaissez le gars qui a laissé partir en prod un bout de script dans lequel il a oublié de mettre un else ?

if (machin)
{
toto();
}
{
tata();
}

Avec des erreurs non détectées en test, qui apparaissaient aléatoirement, avec des impacts dans des bases de données secondaires un peu partout ?
Heureusement que je peux remonter semi-automatiquement tous les dégâts occasionnés (ça fait 6 mois que ça tourne comme ça, ça a eu le temps de s'installer partout) et écrire un script de correction, mais parfois je me foutrais des beignes...
avatar

2713

#tests#
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

2714

#tests#

qui m'ont permis de trouver un if(blahblahblah); {...}

2715

Il y a eu des tests, mais qui n'ont pas permis de mettre en valeur le problème... concrètement, là, les deux "seuls" problèmes est que ça génère de identifiants internes beaucoup trop longs mais avec possibilités de collisions (donc avant d'avoir une collision, il a fallu attendre 6 mois), et ça génère des identifiants différents pour une même personne à chaque mise à jour d'informations personnelles (chose qui arrive relativement rarement sur une courte période), tout en conservant le premier identifiant (donc in fine, c'est invisible pour les utilisateurs et les gestionnaires, je ne m'en suis rendu compte que parce que j'ai ma base de données qui a doublé de volume d'un coup avec la mise à jour des dossiers).
Bref tests...
avatar

2716

2717

squalyl -> ton compilo/interpréteur ne balance pas un warning pour ça ?

2718

Ça doit être un de ces compilos tordus pour CPU obscurs tongue
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

2719

ni msvc 2015 ni keil arm ne l'ont vu.

2720

Je suis presque sur que clang le trouve; et GCC aussi... Going to test
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

2721

Faut activer l'option (dans le profil !) du compilo, aussi embarrassed

2722

Maya:code godzil$ clang testcaca.c -o testcaca testcaca.c:6:16: warning: if statement has empty body [-Wempty-body] if (argc > 2); ^ testcaca.c:6:16: note: put the semicolon on a separate line to silence this warning 1 warning generated. Maya:code godzil$ cat testcaca.c #include <stdio.h> int main(int argc, char *argv[]) { if (argc > 2); { printf("Prout"); } return 0; }

Hmmmm GCC le trouve mais pas par defaut:

godzil@box4 ~ $ gcc testcaca.c -o testcaca -Wall
testcaca.c: In function ‘main’:
testcaca.c:6:3: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
   if (argc > 2);
   ^~
testcaca.c:7:3: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘if’
   {
   ^
godzil@box4 ~ $ 

et le message d'erreur est heu... incomprehensible au mieux
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

2723

c'est grave si je m'en suis deja servi dans des while de ce genre de comportmeent, docteur ? grin

2724

while (foo); a un sens, if (foo); pas vraiment.

Et pour le message d'erreur de GCC, je comprends très bien ce qu'il veut dire. Je ne comprends pas pourquoi tellement de gens ne comprennent pas les messages d'erreur de GCC.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

2725

C'est normal, tu es un fork de TIGCC.
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

2726

Faut reconnaitre que ça va encore. Les messages pondus par des erreurs avec la STL sont 100 fois plus imbitables.
Mais j'aime pas cette habitude de geek extrémiste, qui pour apporter 1% de précision à une phrase, la complexifie par over 9000%.

2727

Le souci dans mon cas, c'est que c'est du PHP et que le bout de code est un patch fait à l'arrache avec vim, donc je cumulais grin
#bestWayToWorkEver
#testingIsDoubting
avatar

2728



RHHHHHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA #tete# #porte#

2729

On voit que le lavage de cerveau des populistes de droite fonctionne. roll
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

2730

-"des populistes de droite", sinon ce serait facile à régler.