Annonce

Réduire
Aucune annonce.

Le cryptage affine

Réduire
X
 
  • Filtre
  • Heure
  • Afficher
Tout nettoyer
nouveaux messages

  • Tutoriel Le cryptage affine

    Salut la compagnie !

    Ca fait un petit bail que je n'ai rien posté (en fait, je crois même que je n'ai rien posté du tout ... ).

    Donc, pour mon "come back" (je ne sais pas s'il va durer ^^), je vais faire quelques tutos de cryptographie.

    Aujourd'hui, on ne se foule pas la rate, c'est dimanche, on va commencer avec de la cryptographie affine. Vous allez voir, c'est tout con.

    Le système de cryptographie affine est un vieux système de cryptographie (très) simple. Son principal problème est qu'il ne résiste pas à une analyse fréquentielle, donc je vous déconseille de crypter des données sensibles avec ...


    I. Prérequis mathématiques

    Savoir ce qu'est une congruence dans Z : http://fr.wikipedia.org/wiki/Congruence_sur_les_entiers


    II. Le système en lui-même

    Alors, nous allons tout d'abord coder l'alphabet de la manière suivante : A=0, B=1, C=2, ..., Z=25.
    On notera x le rang de la lettre choisie. Ex : Pour A, x=0
    Choisissez un nombre que nous noterons a, premier avec 26 et strictement inférieur à 26, et b un autre nombre strictement inférieur à 26.
    La lettre cryptée, dont le rang sera noté y, sera : y ≡ ax+b [26].
    Voilà le fonctionnement de ce système.

    Maintenant :

    Pourquoi a doit être premier avec 26 ?
    Parce que si vous prenez un nombre non premier avec 26, vous aurez des doublons de lettre codées, c'est-à-dire que deux lettres différentes pourront avoir la même lettre codée, ce qui, vous l'aurez compris, est un peu problématique ...

    Pourquoi a et b doivent être strictement inférieurs à 26 ?
    En fait, il n'y a aucune obligation à cela. Cependant, par sa nature même, la congruence rend inutile l'utilisation de chiffre supérieurs à 26. Ainsi, contrairement au RSA (dont je vais prochainement faire un tuto), rien ne sert de prendre des chiffres supérieurs à 26.


    III. Exemple

    Prenons a=7 et b=8.

    A=0 : y≡7x0+8≡8[26] La lettre de rang 8 est I, donc A est codé en I.
    B=1 : y≡7x1+8≡15[26] La lettre de rang 15 est P, donc B est codé en P.
    C=2 : y≡7x2+8≡22[26] La lettre de rang 22 est W, donc C est codé en W.
    D=3 : y≡7x3+8≡29[26]≡3[26] La lettre de rang 3 est D, donc D est codé en D.

    Et ainsi de suite ...

  • #2
    ouais, bah c'est le code de césar tout simplement?
    "Tout le monde savait que c'était impossible. Est arrivé un qui ne le savait pas et qui l'a fait !" Marcel Pagnol ////// "Certains voient les choses telles qu’elles sont et se disent pourquoi donc ? D’autres rêvent de choses qui n’ont jamais existé et se disent pourquoi pas !" George Bernard Shaw

    Commentaire


    • #3
      En fait, le code de César est un cas particulier où a=0

      Commentaire


      • #4
        Pour information, je posterai une centaine de tutoriels sur des algorithmes de cryptographie d'ici quelques semaines/mois. Nous sommes actuellement entrain de travailler (sur ce forum, dans une section "à part") sur un tool en Python qui réunira tous ces algorithmes

        Ce tool est sous licence GNU GPL et bénéficiera d'un portail de téléchargement depuis un sous-domaine de l'hackademy

        Le chiffre Affine en fera partie. De façon plus évoluée que celle décrite ici Le chiffre de César y est aussi, bien entendu, et bien d'autres encore
        sigpic

        Cyprium Download Link

        Plus j'étudie plus j'me rends compte que je n'sais rien.

        †|

        Commentaire


        • #5
          Envoyé par SAKAROV Voir le message
          Pour information, je posterai une centaine de tutoriels sur des algorithmes de cryptographie d'ici quelques semaines/mois. Nous sommes actuellement entrain de travailler (sur ce forum, dans une section "à part") sur un tool en Python qui réunira tous ces algorithmes

          Ce tool est sous licence GNU GPL et bénéficiera d'un portail de téléchargement depuis un sous-domaine de l'hackademy

          Le chiffre Affine en fera partie. De façon plus évoluée que celle décrite ici Le chiffre de César y est aussi, bien entendu, et bien d'autres encore
          J'ai hate de voir tout ça
          "Tout le monde savait que c'était impossible. Est arrivé un qui ne le savait pas et qui l'a fait !" Marcel Pagnol ////// "Certains voient les choses telles qu’elles sont et se disent pourquoi donc ? D’autres rêvent de choses qui n’ont jamais existé et se disent pourquoi pas !" George Bernard Shaw

          Commentaire


          • #6
            Oui cryptage trop simple mais très sympa,sa donne déjà une mise en pratique des congruences donc c'est cool à étudier.

            ps: Sakarov tes projets donnent envie de rêver,j'ai hâte de voir le petit monstre(tool) à moins que je l'ai pas vu

            Commentaire

            Chargement...
            X