Générateur de mots de passe

Bonjour le forum.

Je souhaite votre aide pour pouvoir mettre en place un générateur de mots de passe valables une heure en fonction de l’heure, de la date et du matricule du membre afin d’ouvrir une feuille.

Ossature du mdp : XAA1 – HHJJ – XXXD – XFXX

Exemple avec le matricule BM9–004, le mercredi 9 décembre 2020 à 09h25mn

Le mdp à générer serait RBM9 – 0518 – CZDG – FRPJ.

DECOMPOSITION & EXPLICATION :

  1. RBM9 : R est mis au hasard et ne compte pas ; on peut y mettre n’importe quelle lettre. Ce qui compte ici c’est de mettre BM9 qui fait partie de la 1ère partie du matricule.
  2. 0518 : 05 ici correspond à l’heure -4 (09h-4h=05) et 18 correspond à la date en chiffre +9 (9+9 décembre=18) +9 est choisi ici pour permettre que nous soyons au moins à 10 (2 chiffres)
  3. CZDG : CZD ne comptent pas, peu importe les 3 1ères lettres mises ici. Ce qui compte, c’est la dernière lettre qui correspond au dernier chiffre du matricule +3 (4+3=7ème lettre de l’alphabet G). Donc les lettres à choisir vont de C (0+3=3) à L (9+3=12).
  4. FRPJ : ici c’est F et sa position qui comptent, les autres sont remplies au hasard.
  5. F correspond au jour +1 (Jeudi +1= Vendredi en anglais F) pour compliquer les choses les lettres suivantes sont choisies (en français ou en anglais) pour représenter chaque jour afin d’éviter les répétitions : M pour lundi, T pour mardi, W pour mercredi, J pour Jeudi, F pour Vendredi, S pour samedi et D pour Dimanche.
  6. La position de F dépend de l’heure calculée dans 2 ci-dessus (05) :
  7. Si 05 est dans l’intervalle : [00 - 06] alors F au début ce qui donne FXXX
  8. Si 05 est dans l’intervalle : [07 - 12] alors F en 2ème position ce qui donne XFXX
  9. Si 05 est dans l’intervalle : [13 - 18] alors F en 3ème position ce qui donne XXFX
  10. Si 05 est dans l’intervalle : [19 - 23] alors F en dernière position ce qui donne XXXF.

Le générateur doit pouvoir s’adapter à un PC donc l’heure et la date du système d'exploitation seraient en anglais ainsi qu’aux différents classements de la date et au système am – pm.

Si possible fonctionnel au minimum avec Office 2010 en montant.

Merci pour l’intérêt.

Cordialement,

SD

Bonsoir Serge Delor, le forum,

Un début de réflexion.......

Tu dis que F correspond au jour + 1, donc dans ton exemple mercredi + 1 soit jeudi, non ? Donc lettre J (et non F)

6serge-delor2.xlsm (125.79 Ko)

Bonne soirée,

[EDIT] Coucou X Cellus

Bonsoir Serge Delor,

Beaucoup de complications au chiffrage du mot de passe puis ensuite à son déchiffrage.

Je te propose pour la date du 09/12/2020 9h25mn.

XBIM-EEBH-E392-DCBA

En MP si tu souhaites connaître la réalisation.

Edit: Coucou Xorsankukai

Bonsoir!

Et quand on sait qu'on craque un mdp sur office en quelques fractions de secondes,...

N'est-ce pas se compliquer la vie pour vraiment pas grand chose ?

Par contre, que le challlenge de programmation soit intéressant, aucun doute.

Suite,

@ Xorsankukai,

Tu as inséré un programme de déchiffrage? dans ton fichier modifié. Afin de ne pas dépasser l'heure permise.

Suite,

Salut JoyeuxNoel,

Dans le cas d'un code à décrypter hors du programme utilisé mais par un fichier externe (hors-site) de type réseau.

Type clé publique et clé privée. Ce sera pas en quelques secondes...
[s=co-8db3e2][/s]


Oui c'est ça, il faut passer par des applications tierces malheureusement.

Salut Serge,
Salut l'équipe,

vraiment pour le plaisir de coder... Après, tu fais ce que tu veux...
Un double-clic sur la feuille démarre la macro.

sMDP = Chr(64 + Int(Rnd * 26) + 1) & Left([B3], 3) & "-" & Format(Abs(Hour(Now) - 4), "00") & Day(Date) + 9 & "-"
sItem = Choose(Weekday(Date, vbMonday) + 1, "M", "T", "W", "T", "F", "S", "S", "M")
iIdx = CInt((Abs(Hour(Now) - 4) - IIf(Hour(Now) > 0, 1, 0)) / 6) + 5
For x = 1 To 8
    If x < 5 Then sMDP = sMDP & IIf(x = 4, Chr(64 + (CInt(Right([B3], 1)) + 3)) & "-", Chr(64 + Int(Rnd * 26) + 1))
    If x > 4 Then sMDP = sMDP & IIf(x = iIdx, sItem, Choose(Int(Rnd * 9) + 1, "L", "M", "W", "J", "T", "V", "F", "S", "D"))
Next
11mdp-delor.xlsm (21.62 Ko)

A+

Bonjour tout le monde,


@ X Cellus:

@ Xorsankukai, Tu as inséré un programme de déchiffrage? dans ton fichier modifié. Afin de ne pas dépasser l'heure permise.

Que nenni, je ne me suis pas occupé de cette contrainte ....je me suis contenté de générer un code en essayant de suivre les instructions données*....ce n'était qu'un début de réflexion, je voulais essayer de simplifier par la suite mais curulis57 m'a découragé, difficile (impossible pour moi) de faire mieux,

*Je n'ai pas compris cette partie:

capture

Pourquoi C à L ?


@curulis57:

Je me doutais que je pouvais simplifier mon code, mais à ce point...., chapeau l'artiste !

Très intéressant cette fonction "Choose" qui évite de passer par un tableau de correspondance,


Cordialement,

Bonjour le forum.

Merci beaucoup. Vos contributions sont très interessantes.

Je suis satisfait.

Chapeau les artistes Xorsankukai, Curulis57, et les autres.

Tu dis que F correspond au jour + 1, donc dans ton exemple mercredi + 1 soit jeudi, non ? Donc lettre J (et non F)

Merci d'avoir compris où je voulais en venir.

*Je n'ai pas compris cette partie:

capture

Pourquoi C à L ?

Les lettres vont de C à L parce que 0+3=3. C est la 3ème lettre car 0 est le plus petit nombre et 9 le plus grand. 9+3=12 et L étant la 12ème.

Merci à tous

J'ai l'embarras du choix chez qui valider.

Cordialement,

SD

Re,

Merci pour ton retour et pour avoir passé le sujet en résolu,

J'ai l'embarras du choix chez qui valider.

Ne t'embarrasse pas, net avantage au maestro curulis57,

Bonne continuation,

Merci beaucoup.

Cordialement,

SD

Rechercher des sujets similaires à "generateur mots passe"