ROT13

Partagez votre expérience de PureBasic avec les autres utilisateurs.
Heis Spiter
Messages : 1092
Inscription : mer. 28/janv./2004 16:22
Localisation : 76
Contact :

ROT13

Message par Heis Spiter »

Rien d'exeptionnel, mais comme je l'ai codé, autant partager.
Petite précision, c'est le vrai ROT13 de base. Et non celui qui transforme tout (le faux :lol:)

Code : Tout sélectionner

Procedure ROT13(In.s, Out.l)

  Lenght.l = Len(In)
  For k = 0 To Lenght
    Letter.s = Mid(In, k, 1)
    Asc.w = Asc(Letter)
    If Asc > 64 And Asc < 91
      Asc.w = Asc + 13
      If Asc > 90
        Asc.w = Asc - 26
      EndIf
    ElseIf Asc > 96 And Asc < 123
      Asc.w = Asc + 13
      If Asc > 122
        Asc.w = Asc - 26
      EndIf
    EndIf
    Start.s = Left(In, k-1)
    Last.s = Right(In, Lenght-k)
    In.s = Start+Chr(Asc)+Last
  Next k
  PokeS(Out, In)

EndProcedure
Heis Spiter, webmaster du site http://www.heisspiter.net
Développeur principal et administrateur du projet Bird Chat
Parti courir au bonheur du dév. public et GPL :D
Avatar de l’utilisateur
Progi1984
Messages : 2659
Inscription : mar. 14/déc./2004 13:56
Localisation : France > Rennes
Contact :

Message par Progi1984 »

Quest ce que ROT13 ?
Heis Spiter
Messages : 1092
Inscription : mer. 28/janv./2004 16:22
Localisation : 76
Contact :

Message par Heis Spiter »

Le système de codage dit de César. Il est peu puissant (voir pas du tout), mais permet juste de cacher les infos au premier abord.
Voici le même texte en ROT13.
Lr flfgèzr qr pbqntr qvg qr Péfne. Vy rfg crh chvffnag (ibve cnf qh gbhg), znvf crezrg whfgr qr pnpure yrf vasbf nh cerzvre nobeq.
Heis Spiter, webmaster du site http://www.heisspiter.net
Développeur principal et administrateur du projet Bird Chat
Parti courir au bonheur du dév. public et GPL :D
Avatar de l’utilisateur
Jacobus
Messages : 1559
Inscription : mar. 06/avr./2004 10:35
Contact :

Message par Jacobus »

On peut utiliser le "faux" et le rendre plus puissant :wink:
que même César en perdrait son latin :lol:
Quand tous les glands seront tombés, les feuilles dispersées, la vigueur retombée... Dans la morne solitude, ancré au coeur de ses racines, c'est de sa force maturité qu'il renaîtra en pleine magnificence...Jacobus.
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Message par Backup »

topic déplacé dans " XOR avec mot de pass"

:D
Dernière modification par Backup le dim. 08/mai/2005 9:29, modifié 2 fois.
Heis Spiter
Messages : 1092
Inscription : mer. 28/janv./2004 16:22
Localisation : 76
Contact :

Message par Heis Spiter »

C'est le codage XOR que tu as fait, non ?
Heis Spiter, webmaster du site http://www.heisspiter.net
Développeur principal et administrateur du projet Bird Chat
Parti courir au bonheur du dév. public et GPL :D
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Message par Backup »

oui !! mais au lieu d'utiliser toujour le meme chiffre pour "x-oriser" la lettre
a coder (et le text ) , on utilise une variante plus évolué , car on utilise comme reference au codage un text entier ou un simple mot de passe
c'est évident que plus le mot est grand plus dur sera le décodage !
puisque chaque lettre du mot de pass sert de clef pour décoder une lettre
du text !!

le Xor simple lui utilise un seul referent (clef ) pour coder un text complet !

pour coder "DOBRO"
avec un chiffe mettont 10

on va faire un xor avec
10 et D
10 et O
10 et B
10 et R
10 et O

c'est le codage utilisé par certaine images un peux chaude !! :D


mon Xor est un peu plus évolué car pour coder Dobro avec "NUL " (ben oui ! :D )

on va faire un Xor entre

N et D
U et O
L et B
N et R
U et O


voila !! sans mot de passe je vois pas comment on pourrai retrouver !! :D
surtout si le mot de passe fait 5000 characteres !!

:lol:
Répondre