Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comment protéger la lecture d'un algo dans le code source d'un programme Fl ash ?

7 réponses
Avatar
Stephane Persillon
Bonjour =E0 tous,

Je suis confront=E9 =E0 un souci de d=E9veloppement et je n'ai aucune id=E9=
e de=20
comment faire. J'esp=E8re trouver ici une aide charitable ;-) Merci=20
d'avance =E0 vous.

Je dois r=E9aliser un algo de cryptage pour prot=E9ger des donn=E9es Exce=
l,=20
c'est =E0 dire emp=EAcher les utilisateurs de modifier les donn=E9es sach=
ant=20
qu'Excel est un support compris dans un autre programme en Flash.

Le souci est que je d=E9sire prot=E9ger l'algo (qui n'a pas besoin d'=EAt=
re=20
surpuissant) de quelqu'un qui d=E9compilerait mon Flsah et acc=E8derait d=
onc=20
=E0 mon code source.

Est-il donc possible de prot=E9ger un algo, son acc=E8s ou sa compr=E9hen=
sion,=20
dans un code source.

Il ne s'agit pas de pror=E9ger absolument l'algo mais de le prot=E9ger d'=
un=20
petit malin fouineur ;-)

Merci pour vos propositions =E0 ce propos car je ne vois variment pas=20
comment faire ?

Bien cordialement.

St=E9phane

7 réponses

Avatar
JPA
C'est une mauvaise idée de faire reposer la sécurité sur la
non-connaissance de l'algorithme. Comme vous le mentionner, il peut
être possible de "reverse-ingeneerer" le binaire afin d'obtenir
l'algorithme de chiffrement.

L'algorithme à utiliser dépend de vos contraintes (taille du code,
des clés, temps de chiffrement, opérations possibles). Par exemple
AES, ou même RC4, sont relativement simples à implémenter. Un
algorithme "fait maison" est très rarement fiable.

Bonne chance.


Stephane Persillon wrote:
Bonjour à tous,

Je suis confronté à un souci de développement et je n'ai aucune id ée de
comment faire. J'espère trouver ici une aide charitable ;-) Merci
d'avance à vous.

Je dois réaliser un algo de cryptage pour protéger des données Exce l,
c'est à dire empêcher les utilisateurs de modifier les données sach ant
qu'Excel est un support compris dans un autre programme en Flash.

Le souci est que je désire protéger l'algo (qui n'a pas besoin d'êt re
surpuissant) de quelqu'un qui décompilerait mon Flsah et accèderait d onc
à mon code source.

Est-il donc possible de protéger un algo, son accès ou sa compréhen sion,
dans un code source.

Il ne s'agit pas de proréger absolument l'algo mais de le protéger d' un
petit malin fouineur ;-)

Merci pour vos propositions à ce propos car je ne vois variment pas
comment faire ?

Bien cordialement.

Stéphane


Avatar
Philippe Martin
Stephane Persillon wrote:

Bonjour à tous,

Je suis confronté à un souci de développement et je n'ai aucune idée de
comment faire. J'espère trouver ici une aide charitable ;-) Merci
d'avance à vous.

Je dois réaliser un algo de cryptage pour protéger des données Excel,
c'est à dire empêcher les utilisateurs de modifier les données sachant
qu'Excel est un support compris dans un autre programme en Flash.

Le souci est que je désire protéger l'algo (qui n'a pas besoin d'être
surpuissant) de quelqu'un qui décompilerait mon Flsah et accèderait donc
à mon code source.

Est-il donc possible de protéger un algo, son accès ou sa compréhension,
dans un code source.

Il ne s'agit pas de proréger absolument l'algo mais de le protéger d'un
petit malin fouineur ;-)

Merci pour vos propositions à ce propos car je ne vois variment pas
comment faire ?

Bien cordialement.

Stéphane


Si le binaire est accessible, alors non.

Plusieurs techniques sont souvent utilisées pour rendre le travail "plus
difficile" ... dont:

- code auto-modifiable (possible dans certains environements)
- l'"assombrissement" du source (ex:
http://www.lysator.liu.se/~astrand/projects/pyobfuscate/)
- la décryption "runtime" du module binaire.

etc...


Philippe

Avatar
Alain
tu est dans la problématique de éditeurs de jeux protéges...

si tu est sur un ordinateur "ouvert" (rien de secret dedans, tout
débugable), c'est sans espoir... tu peux juste retarder le travail...
mais au pire il suffit de reproduire la machine virtuelle dans laquelle
tourne le système, et récupérer le flux sortant...

si il existe un logiciel non lisible, et non modifiable quelque part, tu
as l'espoir d'y mettre un module de chiffrement (algo connu) avec une
clé secrete. c'est le cas des cartes a puce ou des lecteurs de DVD.
Mais il faut aussi que tu interdise la lecture des données après
décryptage (il est simple de renumériser ce qui sort d'un lecteur DVD ou
d'un lecteur audio DRM)...
d'ou le futur cryptage des flux HDTV entre lecteur et écran...

le seul moyen que je vois c'est de rendre le contenu du fichier
"personnel", et sans intérêt pour quelqu'un d'autre...
par exemple en précalculant pas mal d'info d'après les données du
client, en ne lui laissant changer que quelques paramètres... a vérifier
si malgré tout on n'expose pas des secret (genre la politique tarifaire
d'une entreprise ou les critères d'acceptation)

un truc aussi c'est de dépendre d'une information qui est attachée a la
machine, et de livrer a chaque client une version qui ne marche que sur
sa machine... mais ca suppose qu'on ne puisse pas bidouiller le code
pour mettre l'information en dur définitivement... avec les jeux vidéo
ca ne fait que ralentir le travail...

en résumé, sans espoir a long terme, mais tu peux ralentir le travail de
décompilation...

Bonjour à tous,

Je suis confronté à un souci de développement et je n'ai aucune idée de
comment faire. J'espère trouver ici une aide charitable ;-) Merci
d'avance à vous.

Je dois réaliser un algo de cryptage pour protéger des données Excel,
c'est à dire empêcher les utilisateurs de modifier les données sachant
qu'Excel est un support compris dans un autre programme en Flash.

Le souci est que je désire protéger l'algo (qui n'a pas besoin d'être
surpuissant) de quelqu'un qui décompilerait mon Flsah et accèderait donc
à mon code source.

Est-il donc possible de protéger un algo, son accès ou sa compréhension,
dans un code source.

Il ne s'agit pas de proréger absolument l'algo mais de le protéger d'un
petit malin fouineur ;-)

Merci pour vos propositions à ce propos car je ne vois variment pas
comment faire ?

Bien cordialement.

Stéphane


Avatar
Stephane Persillon
Merci à tous pour vos réponses détaillées.

Je crains fort que mes contraintes (paas de fichier personnalisé par
utilisateur, programmation en Flash, extraction d'Excel...) ne rendetn
quasi impossible l'application des solutions proposées.

En tout cas cela m'aura permis d'éclairer ma lanterne et
l'obscurcissement de la source est peut-être une solution intéressant e.

Je reste ouvert à d'autres propositions autour de mes contraintes forte s.

Encore merci.

Bien cordialement

Stéphane
Avatar
*core*administrator
On Mon, 21 Aug 2006 23:35:59 +0200, Alain wrote:


décryptage (il est simple de renumériser ce qui sort d'un lecteur DVD ou
d'un lecteur audio DRM)...
d'ou le futur cryptage des flux HDTV entre lecteur et écran...


Le point fabile me semble être l'écran. A partir du moment ou une
image peut-être affichée (et ici elle l'est, par définition) il doit
être possible de recapturer son flux.

Avatar
JL
"Stephane Persillon" a écrit dans le message
de news: 44e984e1$0$16875$

Est-il donc possible de protéger un algo, son accès ou sa compréhension,
dans un code source.


Pour faire simple : non. Vous ne serez jamais à l'abri du reverse
engeneering.

JL.

Avatar
xorax
JL wrote:
Pour faire simple : non. Vous ne serez jamais à l'abri du reverse
engeneering.


Bien d'accord... surtout qu'en flash il existe des outils très simple
pour décompiler le code. Le plus chiant pour celui qui voudrait
fouiller (un petit fouineur je parle) serait d'obscurcir le code tout
en le séparant dans le plus de frames possible. Flash n'est pas un
environnement très apprécié pour programmer et cette difficulté en
plus peu en décourager plus d'un.