OVH Cloud OVH Cloud

AMcD® : méthode de cryptage.

116 réponses
Avatar
arm7
Bonjour tout le monde et surtout AMcD(r) !

Il y a quelques années, j'ai vu passé ici un méthode de cryptage assez
simple, basé sur rien de mathématique ni de connu et qu'a ma connaissance ne
doit pas se craquer si facilement.


Les sources ont été distribués, et en voici le fonctionnement, en vrac :


1) un nombre purement random sur 16 bits est determiné par la lecture de
quelques timer propre au hardware et sert de SEED pour un générateur de
nombre aléatoire

2) l'outil fonctionne par bloc de 2046 bytes (2Ko moins 2 bytes)

3) un XOR est effectué sur chaque 16 bits du bloc, à la fin des 2046 bytes
XORé, la clé d'origine est stockée.

4) le clé de chiffrement qui permet aussi son déchiffrement, ne sert qu'a
initialiser une autre fonction de random

5) un tableau de 2048 vecteurs est créée avec les nombre alléatoires ainsi
générée, les vecteurs pointent tous une destination différente

6) la fonction d'un vecteur est de transporter un bit, et un seul, d'une
position vers une autre.
6b) chaque byte lu influence le random lui même afin d'obtenir un effet
d'avalanche : Un seul byte mal décodé détruira l'ensemble du bloc. A la fin,
la clé sur 16 bits sera fausse et c'est tout l'ensemble qui restera crypté.


Les sources doivent être encore trouvables...ainsi que l'outil lui même.

Qu'en pense les spécialistes du hacking ?

10 réponses

Avatar
arm7
Le .exe en question est un programme de crypto symétrique envoyé par un mec
dont l'email est , qui fait ce qui est décrit au debut de ce
post.

Si vous le voulez, et bien demandez le lui, ou faite un nouveau post en
donnant votre email parceque là, c'est un peu le foutoire !


J'ai envoyé le .exe...

Bonjour M. McDonald,

ce exe peut-il tourner sur Dos ou Windows? si oui puis-je l'avoir
aussi? :)
a+
Raymond H.



Avatar
Raymond H.
"Sylvain" a écrit dans le message de news:
41b961c4$0$3412$

Si j'ai bien compris la conversation, voici ce que Sylvain a écris
concernant la tentative de décryptage via les codes d'AMcD (mais sans
l'intégration de la clef dans le chiffré d'AllCrypter ) :

*************
on note que "l'auteur" (sic) a, dès les premières remarques postées ici,
libéré une version ne stockant pas cette clé ... et générant des
fichiers non valides (tronqués) lors du déchiffrement !
*************

je ne suis pas certain de votre bonne compréhension!




Vous avez dit ce que vous avez bien dit et les gens peuvent le lire
aussi. Et je pense très bien comprendre même si j'ai écris cela plus haut:
'Si j'ai bien compris...'. J'ai voulu simplement être poli.

mon point était de souligner (ici aussi) votre totale négligence: vous
avez libéré une version *sans le moindre test*


Faudrait expliquer en quoi est ma TOTAL négligence. Je commence à être
habituer à ce genre d'attitude dans ce forum :-) C'est souvent les mêmes.

Vous AFFIRMER que je n'ai pas fais LE MOINDRE test. Pas si pire comme
affirmation! Je n'ai que bloqué une ligne de commande: celle qui indique
d'intégrer la clef dans le chiffré. Je vous encouragerais à l'essayer avant
de m'accuser, car moi je l'ai même testé et tout va bien.


et ceci a au final privé les personnes


:-) En quoi cela prive-t-il les personnes chiffrant leurs données avec
AllCrypter? D'avoir accès à leurs données précédemment cryptées avec une
version antérieure? Lorsque je fais une mise à jour je garde la
compatibilité avec ce qui précède. Cela signifie que la version présente
d'AllCrypter peut décrypter les données qui ont été cryptées avec la clef
intégrée. AllCrypter reconnaît automatiquement si un fichier (ou des
données) a été crypté avec ou sans la clef intégrée dans le chiffré. Si la
clef est présente alors AllCrypter la reconnaît automatiquement et décrypte
les données sans qu'on lui dise qu'il y a une clef dans les données
cryptées.


chiffrant leurs données avec votre soft (en fait p.e. personne a part
vous) de l'accès à ces données.

ce fait n'est rien qu'inexcusable.


Et le fait de m'accuser faussement comme vous venez de le faire est-il
un fait qui est inexcusable? Je vous excuse à l'avance si vous le voulez
bien :)
Lorsque j'ai écris ce précédent message, je l'ai fais dans un esprit sans
rancune et sans mauvaise volonté, car j'ai subi déjà beaucoup de mépris sur
ce forum par des gens tel que vous (vous n'avez qu'à vous lire ici et c'est
évident), mais ne vous en faites pas je ne vous en tient pas rancune :-)
Passez une bonne journée
Raymond H.


Sylvain.



Avatar
NO_eikaewt_SPAM
Arm7 wrote:

Encore que statistiquement, la quantité de 1 et de 0 restera inchangée...


En XORant avec un bruit blanc ? Z'etes sur ?

En quoi cette methode est-elle plus robuste qu'un simple
XOR effectue' entre le message a chiffrer et un ensemble
de valeurs generees par un generateur psudo-aleatoire
qui utilise la clef comme graine ?



Allez, je me reponds a moi meme :

- Probleme du XOR :
-------------------

Comme le PRNG n'est pas tout a fait aleatoire, connaissant
l'ensemble de valeurs deja generees il est possible de predire
l'ensemble de valeurs qui vont etre generees avec un degre'
de certitude superieur a celui correspondant a un ensemble
de tirages successifs independants et equiprobables. En
consequence, si l'on connait une partie suffisamment
importante du clair, il devient possible de trouver le
reste en reconstituant l'ensemble des valeurs aleatoires
generees.

- Probleme de la permutation:
-----------------------------

Considerons juste l'operation de permutation, en supposant
que celle-ci est effectuee directement sur le clair.
Considerons aussi qu'une partie du clair est connue.
A l'issue de la permutation :
- Soit la valeur du bit situe' en position "i" a change',
soit elle est restee la meme (j'ai une petite tendance a
la Lapalissade, moi, aujourdhui).
- Un bit dont la valeur a change' ne peut avoir ete' echange'
qu'avec un autre bit dont la valeur a change', et dont la
valeur est differente de celle du bit courant. Un bit dont
la valeur est restee identique ne peut avoir ete' echange'
qu'avec un autre bit dont la valeur est restee identique, et
dont la valeur est egale a celle du bit courant.

Exemple :

Signification :

|Num Bit %10
|Message clair
|Message Chiffre'
|Bit a Change' ?

01234567890123456789
00100101010011110011
10011100101001101010
*-***--****-*--*-*-*

Le premier bit est a 1, sa valeur a change'. Il peut avoir
ete' echange' avec un bit a 0 dont la valeur a change', ce
qui est le cas des bits numero :

2, 7, 9, 12, 15, 17, 19.

Soit 7 places possibles au lieu de 20.

D'autre part, le chiffrement se fait par blocs. Si la portion
de clair connu est assez importante pour couvrir plusieurs
blocs, il est possible de reduire l'espace des solutions en
considerant plusieurs blocs : les permutations admissibles
seront differentes pour chaque bloc. Si une portion
suffisemment importante pour recouvrir un nombre N de blocs
(a determiner) est connue, il ne reste plus qu'une permuation
possible.

Reste a comprendre comment combiner l'attaque sur le XOR et
celle sur les permutations.

J'ai bien une idée de réponse, mais ca va encore dégénérer !


Tsss. Faites pas le timide, comme ca.

--
Tweakie

PS: Mes excuses pour la maniere dont seront distribues les
sauts de lignes dans ce message mais j'en suis venu a croire
que l'interface web2news que j'utilise a met en oeuvre un
PRNG de tres bonne qualite' pour s'assurer de l'alea de leur
repartition.




--
Posté via http://www.webatou.net/
Usenet dans votre navigateur !
Complaints-To:


Avatar
Raymond H.
"Nicob" a écrit dans le message de news:

On Fri, 10 Dec 2004 01:28:16 -0500, Raymond H. wrote:

Cher Raymon H., permettez-moi de vous dire que vous êtes réellement
désespérant ...


Ne désespérez pas :)


Mais l'algo en lui-même, personnellement je le trouve sûr si on
n'aligne pas les clefs ou si on ne les intègre pas.


Il y a une semaine, l'ensemble du soft vous semblait sûr.


Oui, c'est vrai.

Ceci ne vous
incite donc pas à une plus grande modestie ?


C'est justement ce que j'ai fais dans ce précédent message où je n'ai
méprisé personne mais où j'ai reconnu modestement et humblement la faiblesse
au niveau de l'intégration d'une clef dans le chiffré. Maintenant, ceci est
réglé dans la version présente 2.2.0.2.


La seule erreur a été l'oublie de prendre en compte l'alignement des
deux clefs (chiffrées et claires).


La seule erreur utilisée par le code d'AMcD !



Je ne parlais pas du code d'AMcD mais du fait d'avoir aligné la clef en
clair avec celle chiffrée. Car l'une dénonçait l'autre par les différences
au niveau des calculs.


D'autres vous ont parlé
(entre autres) de l'effet d'avalanche, des redondances constatées dans
le chiffré, des piètres performances, ...


Le seul problème trouvé est l'intégration de la clef et ce problème est
réglé. Personne n'a pu prouver que l'algorithme était piètre. Comme j'ai
déjà dis, ce n'est pas la complexité de l'algo qui fait qu'elle est
meilleure mais la logique utilisée et cette logique n'est nullement besoin
d'être compliquée. Vous pouvez toujours faire des tests là dessus, moi je
suis ouvert aux commentaires constructifs.


Parmi vous, plusieurs se penche sur les informations données par AMcD
le 'professionnel en la matière'


Vous n'avez aucune idée de ce que vous dites. AMcD n'est nullement un
'pro en la maitière'


Je vous fais remarquer que j'ai mis cela entre guillemets. Cela ne
signifie pas nécessairement qu'il est un pro (bien que ce ne soit pas à moi
de le juger là-dessus, mais je peux quand même voir qu'il n'est pas un ptit
débutant non plus). Et je ne dis pas non plus qu'il n'y a pas d'autres
personnes compétente en la matière sur ce forum, car juste à lire on peut
voir que plusieurs on une assez bonne connaissance dans le domaine.


et ce forum regorge de gens *très* *très* *très*
compétents dans le domaine, mais qui n'ont même pas pris la peine de
répondre à vos messages.


Sûrement.


Imaginez dans quel état ils (ces gens très forts) auraient pu mettre
votre logiciel ...

Alors quand vous dîtes qu'AllCrypter a un algo qui ne tient pas,
vous faites alors fausse route à 100% car vous n'avez pas été capable
de le prouver ni vous ni personne d'autre


En crypto, c'est à l'auteur de l'algo de prouver sa solidité, et non pas
à des hobbyistes de casser une boite noire sans interface digne de ce nom



Et vous avez bien raison. C'est pourquoi on ne peut pas dire non plus
qu'un algo ne soit pas sûr tant qu'on n'en a pas fait la preuve. Mais comme
j'ai dis, après ou à la sortie de la version 3.0 j'ai l'intention d'étaler
sur le Net des exemples via des calculs de l'algo utilisé.


(API ou command-line).

J'ai l'intention de laisser la même base de l'algo mais rajouter un
élément de plus tant qu'à faire une modification pour le code
d'identification.


Rajoutez, rajoutez, ça fera toujours des (L)heureux ...


Nicob


Bonne journée
r.h.


Avatar
remy
bonjour

l'on peut le voir ou ton algo ? un lien
celui que tu consideres comme sur

quelque chose de lisible au hasard en pseudo code
ou en c ,java,pascal
avec quelques explications histoire de bien comprendre

desole si l'on t'a deja pose la question
mais je n'ai pas tout lu

merci remy
Avatar
Erwann ABALEA
On Fri, 10 Dec 2004, Raymond H. wrote:

d'être compliquée. Vous pouvez toujours faire des tests là dessus, moi je
suis ouvert aux commentaires constructifs.


Faux. Des commentaires constructifs vous ont été donnés, vous ne les avez
pas suivi, préférant penser que vous savez mieux. Vous refusez d'aborder
la littérature consacrée, dénigrant par là même le travail de beaucoup de
gens très compétents dont c'est précisément le travail.

C'est vous qui ètes insultant, pas par des mots, mais par votre attitude.

--
Erwann ABALEA - RSA PGP Key ID: 0x2D0EABD5
-----
Cujus rei demonstrationem mirabilem sane detexi.
Hanc marginis exiguitas non caperet.
Pierre de Fermat

Avatar
Sylvain

mon point était de souligner (ici aussi) votre totale négligence: vous
avez libéré une version *sans le moindre test*


Faudrait expliquer en quoi est ma TOTAL négligence. Je commence à être
habituer à ce genre d'attitude dans ce forum :-) C'est souvent les mêmes.

Vous AFFIRMER que je n'ai pas fais LE MOINDRE test. [...]



ok, ne reprenons pas la mouche, même si "total" était excessif.

le point ici est votre "précipitation".

au travers de l'exemple de la release 2.1, qui selon vous comportait un
"problème [...] suffisant [...] pour empêcher de voir une image, lire
une vidéo [...]", il m'a semblé évident que les tests avaient été un peu
faible (msg ID: MYTrd.24724$).

qu'il s'agisse de tests avant mise à disposition au public, de choix
d'implémentation ou, plus en aval, de réflexion sur une algorithmie, je
vous incitais (simplement et en tout respect) à une attitude plus posée.

et ceci a au final privé les personnes


En quoi cela prive-t-il les personnes chiffrant leurs données avec
AllCrypter? [...]


par la façon que vous avez vous-même indiqué !

des fichiers chiffrés sans inclure la clé étaient incorrectement
déchiffrés avec la r.2.1 mais correctement avec la 2.2 - je ne souhaite
pas épiloguer sur l'historique des versions, je vous alerte simplement
sur le fait que lorsque l'on distribue un soft (via le net ou autre), on
s'engage vis a vis de ses utilisateurs, or ceux-ci étaient "embettés"
tant que la 2.2 n'était pas sortie - que le 2.1 n'est vécue que 2
heures, 2 jours ou 2 semaines n'est pas la question; donnez-vous le
temps de la réflexion puis de l'action et cela n'en sera que meilleur.

Sylvain.


Avatar
Raymond H.
"Erwann ABALEA" a écrit dans le message de news:

On Fri, 10 Dec 2004, Raymond H. wrote:

d'être compliquée. Vous pouvez toujours faire des tests là dessus, moi je
suis ouvert aux commentaires constructifs.


Faux. Des commentaires constructifs vous ont été donnés, vous ne les avez
pas suivi, préférant penser que vous savez mieux. Vous refusez d'aborder
la littérature consacrée, dénigrant par là même le travail de beaucoup de
gens très compétents dont c'est précisément le travail.

C'est vous qui ètes insultant, pas par des mots, mais par votre attitude.

Bonjour,

On a chacun ses façons d'analyser les choses et chacun à son propre
rythme et avec le temps que l'on a à notre disposition pour le faire. Mais
vous portez un jugement sans savoir le fond de mon coeur. Car je n'ai pas
le temps de lire toutes sortes de littérature sur le sujet et cela ne
constitue pas une preuve en soi d'une mauvaise attitude. On a le droit de
lire ou pas ce que l'on veut et dans la branche que l'on veut et de qui on
veut. Et en plus, on sait que ce n'est pas nécessairement les plus
(largement : dans un grand nombre de domaines) instruit qui ont les
meilleures inventions (et ici je ne prétend pas avoir le meilleur algo et
ainsi rabaisser d'autres).

Et concernant certain message sur ce groupe, je dois avouer que je n'ai
pas le temps nécessaire pour m'attarder à faire des recherches sur certains
détails qui ne me sont pas très familières. Et les codes sources en langage
C qui ont été présentés ne sont pas dans ma branche (autrement dit je ne
suis pas très familier avec le langage C, même si je peux deviner la
signification de certaines lignes de codes en C), car moi je programme en VB
de Microsoft et utilise des API, DLL si nécessaire et si sécuritaire pour
les besoins de la cause qui se présentent (pour la rapidité, etc...). Je
suis désolé que vous interprétiez cela comme du dénigrement.

Bonne journée

r.h.


--
Erwann ABALEA - RSA PGP Key ID: 0x2D0EABD5
-----
Cujus rei demonstrationem mirabilem sane detexi.
Hanc marginis exiguitas non caperet.
Pierre de Fermat



Avatar
Raymond H.
"Sylvain" a écrit dans le message de news:
41ba0bd4$0$30026$

mon point était de souligner (ici aussi) votre totale négligence: vous
avez libéré une version *sans le moindre test*


Faudrait expliquer en quoi est ma TOTAL négligence. Je commence à
être habituer à ce genre d'attitude dans ce forum :-) C'est souvent les
mêmes.

Vous AFFIRMER que je n'ai pas fais LE MOINDRE test. [...]



ok, ne reprenons pas la mouche, même si "total" était excessif.

le point ici est votre "précipitation".

au travers de l'exemple de la release 2.1, qui selon vous comportait un
"problème [...] suffisant [...] pour empêcher de voir une image, lire une
vidéo [...]", il m'a semblé évident que les tests avaient été un peu
faible (msg ID: MYTrd.24724$).

qu'il s'agisse de tests avant mise à disposition au public, de choix
d'implémentation ou, plus en aval, de réflexion sur une algorithmie, je
vous incitais (simplement et en tout respect) à une attitude plus posée.

Bonjour,


Disons que dans ce message-ci il ne s'agissait pas des versions
antérieures lorsque je parlais. Il s'agissait de la version actuelle.

Mon attitude était bonne concernant les versions antérieures et cela en tout
respect. Vous poussez un peu fort pour amener un détail d'une version dont
j'ai fait la correction la même journée où je m'en suis rendu compte. Je
n'ai eu aucune plainte sur ce petit détail, et cela n'avait rien à voir avec
l'algo lui-même mais avec le fait que certains caractères (le double de la
longue de la clef en clair) ne s'affichaient pas lorsqu'on était en mode qui
n'intégrait pas la clef. Faut quand même pas trop pousser pour dire que je
manque de respect et que mon attitude n'était pas ce qu'elle aurait dû être,
et cela concernant un détail dont je ne m'étais pas rendu compte tout de
suite. En plus si vous avez lu ce détail sur mon site c'est que justement
je l'ai écris pour le respect de ceux qui auraient eu téléchargés cette
version en question; mais comme j'ai dit, personne ne m'a mis au courrant de
ce détail car moi seul l'ai découvert par moi-même et je l'ai corrigé
aussitôt afin d'éviter cet inconvénient aux gens qui utilisent mon logiciel.
Je ne suis pas certain qu'on puisse accuser Microsoft de manque de respect
et de dire qu'il avait une attitude pas assez posée lorsque Microsoft a
sortis Windows95 avec ses milliers de bugs au début. Ce sont aussi des gens
qui communiquent à Microsoft certains bugs que Microsoft ne s'était pas
nécessairement rendu compte. Mais vous vous arrêtez sur un unique bug d'une
ancienne version d'AllCrypter pour m'accuser de la sorte. Faut le faire :)


et ceci a au final privé les personnes




Bien que l'utilisation soit gratuite, si quelqu'un viendrait à tomber sur un
problème quelconque il peut aller lire la version en question dans
l'historique que vous même avez consulté (et d'où vous avez pris votre
information dont vous parlez ici). Et à partir de là, la personne peut voir
s'il y a une version à jour qui a réglé le problème, et sinon elle peut me
communiquer l'éventuel problème afin que je puisse en faire la correction le
plus vite possible pour le bien des clients. Cette page d'historique est au
service des utilisateurs dans le but de les informer d'éventuels corrections
d'une version à jour, etc. Les mises à jour servent donc à cela, à
l'amélioration et aux éventuelles corrections.



En quoi cela prive-t-il les personnes chiffrant leurs données avec
AllCrypter? [...]


par la façon que vous avez vous-même indiqué !

des fichiers chiffrés sans inclure la clé étaient incorrectement
déchiffrés avec la r.2.1 mais correctement avec la 2.2 - je ne souhaite
pas épiloguer sur l'historique des versions, je vous alerte simplement sur
le fait que lorsque l'on distribue un soft (via le net ou autre), on
s'engage vis a vis de ses utilisateurs, or ceux-ci étaient "embettés" tant
que la 2.2 n'était pas sortie - que le 2.1 n'est vécue que 2 heures, 2
jours ou 2 semaines n'est pas la question; donnez-vous le temps de la
réflexion puis de l'action et cela n'en sera que meilleur.


Une chance que tous les programmeurs ne subissent pas votre genre de
remarque comme s'ils font exprès d'inclure des bugs dans leur logiciel :)
Mais, l'erreur et l'oubli peuvent aussi faire partie de l'humain comme on
dit, et qui peut jeter la première pierre?

Passez une bonne journée

r.h.

Sylvain.




Avatar
Raymond H.
"arm7" a écrit dans le message de news:
41b985dc$0$25759$
Le .exe en question est un programme de crypto symétrique envoyé par un
mec
dont l'email est , qui fait ce qui est décrit au debut de ce
post.


Merci pour son courriel. Je vais lui écrire pour le lui demander.
Bonne journée.
r.h.


Si vous le voulez, et bien demandez le lui, ou faite un nouveau post en
donnant votre email parceque là, c'est un peu le foutoire !


J'ai envoyé le .exe...

Bonjour M. McDonald,

ce exe peut-il tourner sur Dos ou Windows? si oui puis-je l'avoir
aussi? :)
a+
Raymond H.