[Javascript] Code source page html - Signification = ?

Bonsoir,
Ne connaissant encore pas grand chose du monde de la programmation, j’aurais aimé que quelqu’un m’explique ce que cet extrait de code source signifie … :??:
Merci d’avance! Bonne soirée. :slight_smile:

<script>

function submitentry(){
password = document.password1.password2.value.toLowerCase()
passcode = 1
for(i = 0; i < password.length; i++) {
passcode *= password.charCodeAt(i);
}
if(passcode==173888649396000)
{
alert("bien joué !");
window.location=password+".htm";
}else
{
alert("essaye encore ...")
}
  
}
</script>

il permet juste d’accéder à une page en entrant un mot de passe.

Merci de cette réponse rapide … Seulement, ça, je pense que je l’avais à peu prêt compris quand même … :smiley: Mais ce que j’aurais souhaité savoir, c’est comment accéder à ce mot de passe en question; pour cela, il me faut réussir à traduire ce code, que je ne parviens pas à traduire … Me fais-je bien comprendre? :ane:

ça j’y avait bien pensé aussi.

mais

  1. tu le l’as pas demandé
  2. s’il y a un mot de passe, c’est pour une bonne raison sûrement. :oui:
  1. A présent je le demande, il s’agissait juste d’un oubli! :bounce:
  2. Pour info, il s’agit d’un site de challenges, dans lequel on doit trouver toutes sortes de pass et autres infos cachées. Si tu doutes, je te passe le lien.

:slight_smile: :slight_smile:

Je vous conseille de lire ce topic :

http://www.clubic.com/forum/charte-du-foru…on-t306797.html

C’est la charte du forum Prog.

En l’occurrence : prière de mettre le langage dans le titre. - javascript -

(nota: oui, je n’ai fait que copier/coller ce texte au travers des topics sans langage dans le titre)

Sinon, le nombre fait péter les limites des entiers sur 4 octets, et si tu veux le décoder, amuse toi bien à décomposer le pass code en plusieurs séquences. Tu peux (je pense) approximer la longueur par une puissance de (2^8).

pass : cdeitvy

assez simple ca doit etre dans le debut des challenges.
dans le code en gros il met le mot de passe en lettre minuscule et multiplie les lettres une a une, le resultat etant le premier terme de la multiplication suivante.

Merci de vos réponses :slight_smile:
Cependant, merci pour la réponse Noxk, mais j’aurais tout de même préféré comprendre et ne pas indiquer la réponse bêtement … je ne pense pas que ce soit de cette façon que je progresserai. :neutre:
Ainsi, si tu as le temps, ou quelqu’un d’autre évidemment, j’aurais fortement apprécié que tu m’indiques sur le code source que j’ai posté à quoi correspond chaque ligne, chaque instruction en quelque sorte … (pas exigeant moi … :riva: :ange: ).

Bonne journée à vous tous! :smiley:

Up! :bounce:

:ane:

Merde, moi qui croyais avoir la solution quand j’ai vu qu’il y avait une nouvelle réponse :smiley:

2 solutions:

  • trouver directement le mot de passe de façon arithmétique: c’est possible car l’algo est simple, mais ce serait impossible avec des vrais chiffrement clef publique/clef privée.

  • faire du brute cracking (pas sûr de l’ortho) cad générer des mots en bouclant sur toutes les lettres de l’alphabet jusqu’à trouver le bon mot de passe : ça marche à tous les coups si on connait à la fois l’algo et le mot de passe crypté (ici 173888649396000). par contre, ça prend du temps dès que le mot de passe est trop long, et qu’on utilise des maj/min des chiffres et de car spéciaux, ça peut prendre facilement plusieurs années si le gars a bien choisi son mot de passe (et que les admin ont pas limité à 7 lettre :/)

pour la 1ère solution, maintenant que tu sait que le mot de passe fait 7 lettres, il faut résoudre l’algo:
173888649396000=x0x1x2x3x4x5x6 avec xi entier de 97 à 122 (pour des lettres minuscules) c’est des maths, je détaille pas :smiley:

pour la 2ème: dans le langage de ton choix, tu réalise la fameuse multiplication en générant ton mot de passe avec des boucles imbriquées pour chaque lettredu mot de passe, bref, une génération de toutes les combinaison de mots possibles.
un amélioration possible est ensuite d’utiliser des mots du dictionnaire pour les malins qui prennent encore des mot du dictionnaire comme mot de passe, ton algo trouvera plus facilement certains mot de passe.
C’est pas vraiment du cracking, certains admin utilisent ça juste pour vérifier que les mots de passe entrés sont valable (s’il est cracké en moins de 10 s on rejette le mot de passe).

à toi de jouer :wink:

Justement, tu prend le nombre, et tu prend la puissance de 256 la plus proche

(puisque c’est une combinaison de 255255255*…*255)

Cela t’approximera la taille de la chaîne.

Ensuite, comme c’est en minuscule ici, ‘a’ … ‘z’ ça s’échalonne de 97…122 (dixit deltree).

Pour le brute force, ça devrait pas trop être difficile. Suffit de chercher efficacement (ex: tu minore !)