Communiquer en langage code

Bonjour,

Je me permet de poser une petite question sur ce forum, j'ai quelque base en excel mais je suis très très loin d'être un spécialiste.

Je voudrais, avant que je passe des heures a essayer de le faire, créer un tableur excel où l'idée serait que de communiquer de façon codé a l'aide d'un mot clé. Je rentre le mot clé en haut de la page, en dessous colle le message reçu et grâce au mot clé, le message deviens "lisible".

Pouvoir le faire dans le sens inverse aussi. Ecrire le message et avec le mot clé le message se transforme en message codé.

Est ce que cela est faisable sans macro ?

Merci d'avance

Cordialement,

Bonjour,

à quoi devrait ressembler le message codé, des lettres ou des mots dans le désordre ?
Le plus simple serait d'avoir une liste des messages avec un code à côté, et quand on reçoit un des messages, on va chercher le code associé (même ligne).

Pour faire simple le mot clé serait : LAPIN (exemple)

Le message codé a base de lettre et chiffre sans sens

Si vous n'avez pas besoin d'un cryptage solide, alors vous pouvez tenter ce que je suggérais.

oui c'est une solution, merci

Ca peut marcher pour 99% des messages que j'ai besoin

comment je monte ca ?

Hello,

Une proposition. Gestion en full majuscule car sans vba c'est pas possible de gérer la casse. Donc t'as juste à mettre ton mot/Phrase dans la case jaune (codé ou décodé) et après tu vas sur la dernière ligne

@+

12classeur2.xlsx (18.97 Ko)

Et la version VBA, je ne sais plus de qui j'avais récupéré ça à l'époque... Peut être sur le forum

5classeur3.xlsm (16.11 Ko)
Function ChiffrerTexte(ByVal texte As String, ByVal cle As String) As String
    Dim alphabet As String
    alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"

    Dim i As Long, posTexte As Long, posCle As Long
    Dim resultat As String
    Dim cTexte As String, cCle As String

    For i = 1 To Len(texte)
        cTexte = Mid(texte, i, 1)
        cCle = Mid(cle, ((i - 1) Mod Len(cle)) + 1, 1)

        posTexte = InStr(1, alphabet, cTexte, vbBinaryCompare)
        posCle = InStr(1, alphabet, cCle, vbBinaryCompare)

        If posTexte > 0 And posCle > 0 Then
            resultat = resultat & Mid(alphabet, _
                ((posTexte + posCle - 2) Mod Len(alphabet)) + 1, 1)
        Else
            resultat = resultat & cTexte
        End If
    Next i

    ChiffrerTexte = resultat
End Function

Function DechiffrerTexte(ByVal texte As String, ByVal cle As String) As String
    Dim alphabet As String
    alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"

    Dim i As Long, posTexte As Long, posCle As Long
    Dim resultat As String
    Dim cTexte As String, cCle As String

    For i = 1 To Len(texte)
        cTexte = Mid(texte, i, 1)
        cCle = Mid(cle, ((i - 1) Mod Len(cle)) + 1, 1)

        posTexte = InStr(1, alphabet, cTexte, vbBinaryCompare)
        posCle = InStr(1, alphabet, cCle, vbBinaryCompare)

        If posTexte > 0 And posCle > 0 Then
            resultat = resultat & Mid(alphabet, _
                ((posTexte - posCle + Len(alphabet)) Mod Len(alphabet)) + 1, 1)
        Else
            resultat = resultat & cTexte
        End If
    Next i

    DechiffrerTexte = resultat
End Function

@+

Bonjour,

Est-ce que la notion d'authentification du destinataire et le caractère aléatoire du mot codé ont leur importance ?

Hello,

en power query à partir d'Excel 2016 , en utilisant des fonctions de cryptage et décryptage avec décalage, ou exclusif et utilisation de caractères unicodes.

chiffremessage

Ami calmant, J.P

Merci Baroute et pork, je regarde ca dans la soirée !

Pas de notion d'authentification spécialement

Le mot clé sera donné en avance aux personnes en question. Ce ne sera pas spécialement un mot mais un ensemble de lettre. Et il changera, par exemple, tt les 6 jours

Bonsoir,

Une proposition VBA qui n'est pas de moi... Elle utilise le cryptage César :

Cette version ne prend pas en compte une clée personnalisée, mais j'y travaille !

@ bientôt

LouReeD

Le fichier "modifié" :

Il suffit d'entrer un message en A2, donner la clef, le message crypté s'affiche en C2, c'est le message à envoyer.
Une fois reçu, le message sera coller en A7, donner la clé de cryptage, le message décrypté s'affiche en C7.

Si la clef n'est pas bonne alors le décryptage ne correspond à rien.

@ bientôt

LouReeD

Merci à toi, je vais regarder ca aussi

Rechercher des sujets similaires à "communiquer langage code"