Verifieur de bytecode
Résolu
test
-
messolhi -
messolhi -
pouvez vous m'expliquez le principe du vérifieur de bytecode
11 réponses
salut a tous
i semblerait que ce soit "vérificateur" et non vérifieur ,cela concerne semble t-il la securité destéléchargements sur des Java Card Applets voila un lien
X. Leroy. Vérification de Bytecode pour la carte futée de Java. Pratique en matière De Logiciel Et Expérience, 32:319 -- 340, 2002, http://citeseer.ist.psu.edu/leroy02bytecode.html Plus
bon je vais me coucher c'est trop dur
salut et à bientôt sur CCM
i semblerait que ce soit "vérificateur" et non vérifieur ,cela concerne semble t-il la securité destéléchargements sur des Java Card Applets voila un lien
X. Leroy. Vérification de Bytecode pour la carte futée de Java. Pratique en matière De Logiciel Et Expérience, 32:319 -- 340, 2002, http://citeseer.ist.psu.edu/leroy02bytecode.html Plus
bon je vais me coucher c'est trop dur
salut et à bientôt sur CCM
en fait c'est un sujet qu'on m'a balancé et sur lequel je dois dicerter sur trois page, expliquer le principe, etc et comme je ne sais vraiment pas grand chose là dessus, voili voilou. pour celui ou celle qui m'a demandé si c'est bytecode java, ou autre , je dois pondre quelque chose de général, alors comme je ne c'est pas si le principe est vraiment différent d'un langage à l'autre????
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
salut test
tu devrais aller voir sur les liens suivants
www.alaide .com
http://fr.wikipedia.org/wiki/bytecode_java
sur Google
bonne recherche
a bientôt
PS :il est de mise sur le forum d'utiliser des formules de politesse-voir la charte du forum/sans rancune
tu devrais aller voir sur les liens suivants
www.alaide .com
http://fr.wikipedia.org/wiki/bytecode_java
sur Google
bonne recherche
a bientôt
PS :il est de mise sur le forum d'utiliser des formules de politesse-voir la charte du forum/sans rancune
Un compilateur produit du code qui ne fonctionne que sur un processeur (ou une gamme de processeur).
Pour faire fonctionner le programme sur un nouveau processeur, il faut recompiler le programme.
Dans le cas d'une machine virtuelle (Java, C#/VB.Net, Python...), le code est compilé dans un pseudo-langage machine qui ne correspond à aucun processeur.
Un interpréteur de ce langage machine est développé pour chaque processeur, permettant de faire tourner les programmes compilés dans le pseudo-langage machine sans recompilation sur chaque processeur pour lequel la machine virtuelle existe.
Ça évite donc d'avoir à recompiler chaque programme.
La machine virtuelle, avant d'exécuter le pseudo-langage machine (bytecode), vérifie qu'il est correcte.
Pour faire fonctionner le programme sur un nouveau processeur, il faut recompiler le programme.
Dans le cas d'une machine virtuelle (Java, C#/VB.Net, Python...), le code est compilé dans un pseudo-langage machine qui ne correspond à aucun processeur.
Un interpréteur de ce langage machine est développé pour chaque processeur, permettant de faire tourner les programmes compilés dans le pseudo-langage machine sans recompilation sur chaque processeur pour lequel la machine virtuelle existe.
Ça évite donc d'avoir à recompiler chaque programme.
La machine virtuelle, avant d'exécuter le pseudo-langage machine (bytecode), vérifie qu'il est correcte.
je suis encore debutante
dit mois svp pourquoi en a besoin d utilser des methodes de verfi comme la method B pour la verif byte code c la machine virtuel verfier le ?
merci
dit mois svp pourquoi en a besoin d utilser des methodes de verfi comme la method B pour la verif byte code c la machine virtuel verfier le ?
merci
Bonjour,
La méthode B permet de prouver de façon formelle qu'une application fait ce qu'on lui demande, et uniquement cela.
Ainsi, on peut prouver scientifiquement par cette méthode que l'application est infaillible (au point de vue logiciel).
Le bytecode verifier a le même objectif, il valide uniquement les applications dont la syntaxe correspond à un fonctionnement normal.
Maintenant, prenons un système sans bytecode verifier embarqué, on peut installer sur celui-là un bytecode trafiqué manuellement (disons au niveau assembleur, même si ce n'est pas exactement ça), qui déclenchera un comportement anormal.
Autrement dit, une application qui passe au bytecode verifier au début, puis qui est ensuite modifier pour avoir un comportement abusif et installer sur un système pourra nuire au système.
Il n'y a donc pas vraiment de différence entre la méthode B et le bytecode verifier, ce sont plutôt deux outils tendant vers le même objectifs, mais l'un est théorique (B) et l'autre est pratique(BCV) mais pas très utile s'il n'est pas embarqués directement sur le système.
A bientôt.
La méthode B permet de prouver de façon formelle qu'une application fait ce qu'on lui demande, et uniquement cela.
Ainsi, on peut prouver scientifiquement par cette méthode que l'application est infaillible (au point de vue logiciel).
Le bytecode verifier a le même objectif, il valide uniquement les applications dont la syntaxe correspond à un fonctionnement normal.
Maintenant, prenons un système sans bytecode verifier embarqué, on peut installer sur celui-là un bytecode trafiqué manuellement (disons au niveau assembleur, même si ce n'est pas exactement ça), qui déclenchera un comportement anormal.
Autrement dit, une application qui passe au bytecode verifier au début, puis qui est ensuite modifier pour avoir un comportement abusif et installer sur un système pourra nuire au système.
Il n'y a donc pas vraiment de différence entre la méthode B et le bytecode verifier, ce sont plutôt deux outils tendant vers le même objectifs, mais l'un est théorique (B) et l'autre est pratique(BCV) mais pas très utile s'il n'est pas embarqués directement sur le système.
A bientôt.
Bonjour,
La méthode B est une méthode formelle, c'est à dire qu'elle prouve que le système est théoriquement parfait.
Dans un cas où la sécurité doit être assuré, c'est la seule preuve que l'on ait lors de la conception.
Oui seulement voila, il reste une fois la conception éprouvé, la partie développement !
Mettons que le codeur qui suit le plan en théorie à la lettre rajoute quelques erreurs spéciales (genre un champ qui n'a pas de limite de taille pourrait provoquer une attaque par dépassement de tampon), alors la seul le bcv pourra corriger les erreurs techniques.
Pire encore, le codeur maléfique qui se laisse une porte de passage crypté (ou pas) dans son code (un type de backdoor). A ce niveau là, la méthode B ne peut plus rien assuré !
La méthode B est une vérification au niveau de la conception.
Le bcv effectue une vérification au niveau du code binaire final de l'exécutable.
donc pour répondre à ta question, ces deux vérifications ne s'effectue pas en même temps.
Après pour ce qui est du besoin de faire ces vérifications, c'est au cas par cas.
A bientôt
PS : Pas besoin de poster trois fois pour voir ton message ...
La méthode B est une méthode formelle, c'est à dire qu'elle prouve que le système est théoriquement parfait.
Dans un cas où la sécurité doit être assuré, c'est la seule preuve que l'on ait lors de la conception.
Oui seulement voila, il reste une fois la conception éprouvé, la partie développement !
Mettons que le codeur qui suit le plan en théorie à la lettre rajoute quelques erreurs spéciales (genre un champ qui n'a pas de limite de taille pourrait provoquer une attaque par dépassement de tampon), alors la seul le bcv pourra corriger les erreurs techniques.
Pire encore, le codeur maléfique qui se laisse une porte de passage crypté (ou pas) dans son code (un type de backdoor). A ce niveau là, la méthode B ne peut plus rien assuré !
La méthode B est une vérification au niveau de la conception.
Le bcv effectue une vérification au niveau du code binaire final de l'exécutable.
donc pour répondre à ta question, ces deux vérifications ne s'effectue pas en même temps.
Après pour ce qui est du besoin de faire ces vérifications, c'est au cas par cas.
A bientôt
PS : Pas besoin de poster trois fois pour voir ton message ...