Toon posts:

[Delphi] md5 code uit string filteren!

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hoi.,

Ben lekker met MSN Protocol aan het knoeien, nu loop IK vast bij het volgende (control+alt+del werkt niet ;))

de servers stuurd dit:

USR 6 MD5 S 3b7926d277068ec49576a0c40598ff21

ik wil dus 3b7926d277068ec49576a0c40598ff21 er uit filteren, hoe doe ik dat?? ik heb het met copy geprobeerd maar dat lukte me niet!! help!!

  • jelmervos
  • Registratie: Oktober 2000
  • Niet online

jelmervos

Simple user

regex >:)

"The shell stopped unexpectedly and Explorer.exe was restarted."


Verwijderd

Topicstarter
Op Sunday 28 October 2001 15:00 schreef jelmervos het volgende:
regex >:)
Maar hoe wert het in delphi ? ? :):)

  • jelmervos
  • Registratie: Oktober 2000
  • Niet online

jelmervos

Simple user

Op Sunday 28 October 2001 15:01 schreef Stoel het volgende:

[..]

Maar hoe wert het in delphi ? ? :):)
Zit er standaard niet in, da's wel jammer. Maar natuurlijk is er een component die het voor je fixed. Zie www.torry.net

"The shell stopped unexpectedly and Explorer.exe was restarted."


Verwijderd

sinds wanneer krijg je bij het msn protocol een md5 string van de server

Verwijderd

Topicstarter
Op Sunday 28 October 2001 15:02 schreef MisterJava het volgende:
sinds wanneer krijg je bij het msn protocol een md5 string van de server
zins een hele tijd, je krijgt een code terug, en daar achter zet je je wachtwoord, en die codeer je weer met md5, dat dacht ik!! maar ik moet dus die code er uit erregien

  • elnino
  • Registratie: Augustus 2001
  • Laatst online: 03-09 05:13
Op Sunday 28 October 2001 15:04 schreef Stoel het volgende:

[..]

zins een hele tijd, je krijgt een code terug, en daar achter zet je je wachtwoord, en die codeer je weer met md5, dat dacht ik!! maar ik moet dus die code er uit erregien
Zie ook mijn reply in je andere topic... [topic=302995/1/50]

(Delphi heeft toch wel een functie die overeenkomt met Mid van VB?)

  • jelmervos
  • Registratie: Oktober 2000
  • Niet online

jelmervos

Simple user

Op Sunday 28 October 2001 15:10 schreef elnino het volgende:

[..]

(Delphi heeft toch wel een functie die overeenkomt met Mid van VB?)
Yep, Copy genaamd. :)

"The shell stopped unexpectedly and Explorer.exe was restarted."


  • elnino
  • Registratie: Augustus 2001
  • Laatst online: 03-09 05:13
Op Sunday 28 October 2001 15:12 schreef jelmervos het volgende:
Yep, Copy genaamd. :)
Het wordt dus iets als Copy('USR...', begin van MD5string, aantal karakters van MD5string 32 dacht ik);

Dus:
code:
1
2
Form1.Caption := 
Copy('USR 6 MD5 S 3b7926d277068ec49576a0c40598ff21', 13, 32);

Form1.Caption vervangen door iets anders uiteraard (ik wist niks beters >:) )... en de USR 6-string ook vervangen door de input...

edit: ff een enter tussen de code gezet, anders wordt de opmaak van GoT verstoord en dat haat ik... :r

  • jelmervos
  • Registratie: Oktober 2000
  • Niet online

jelmervos

Simple user

Is een optie, maar werkt niet altijd. Omdat "Begin van MD5 string" ook iets anders kan zijn.
Bijvoorbeeld:
code:
1
Copy('USR 10 MD5 S 3b7926d277068ec49576a0c40598ff21', 13, 32);

zal niet meer werken

"The shell stopped unexpectedly and Explorer.exe was restarted."


Verwijderd

Topicstarter
Op Sunday 28 October 2001 15:28 schreef jelmervos het volgende:
Is een optie, maar werkt niet altijd. Omdat "Begin van MD5 string" ook iets anders kan zijn.
Bijvoorbeeld:
code:
1
Copy('USR 10 MD5 S 3b7926d277068ec49576a0c40598ff21', 13, 32);

zal niet meer werken
hoe pak je het dan aan????

  • jelmervos
  • Registratie: Oktober 2000
  • Niet online

jelmervos

Simple user

Op Sunday 28 October 2001 15:47 schreef Stoel het volgende:

[..]

hoe pak je het dan aan????
Regex is een oplossing. Je kunt ook 32 tekens vanaf rechts nemen. Maar dan kan alleen als je zeker weet dat er nooit iets achter die MD5 string komt.

"The shell stopped unexpectedly and Explorer.exe was restarted."


Verwijderd

Je kan natuurlijk ook gewoon met 'n looptje door die string lopen en tekens beginnen tekopieren bij de 4e spatie en ophouden aan het eind van de string (of de volgende spatie als er nog wat achter aan komt he?)

Verwijderd

Topicstarter
kan iemand mee een voorbeeldje geven, met dat pos van rechts, hoe doe je dat? ? is dat moeilijk?

Verwijderd

ik heb geen delphi maar neem aan dat het zoiets word?

copy(string, len(string)-32,32) ?

wees zelf es wat creativer man...

  • jelmervos
  • Registratie: Oktober 2000
  • Niet online

jelmervos

Simple user

Op Sunday 28 October 2001 16:04 schreef Yarvieh het volgende:
ik heb geen delphi maar neem aan dat het zoiets word?

copy(string, len(string)-32,32) ?

wees zelf es wat creativer man...
Idd... zoek zelf es wat uit. Gewoon logisch nadenken!

"The shell stopped unexpectedly and Explorer.exe was restarted."


  • Bergen
  • Registratie: Maart 2001
  • Laatst online: 08-09 08:43

Bergen

Spellingscontroleur

Jah brugklaswiskunde... Loop door de string, onthoud de spatieposities en pak met Copy de stukjes uit de string..

Verwijderd

Standaard zoek/vervang dingetje in Pascal:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function StrTran(AString: string; const ASearch, AReplace: string): string;
var
  iPos: integer;
begin
  Result := '';
  iPos := 1;
  while iPos > 0 do begin
    iPos := Pos(ASearch, AString);
    if iPos > 0 then begin
    Result := Result + Copy(AString, 1, iPos-1) + AReplace;
    AString := Copy(AString, iPos + Length(ASearch), Length(AString));
    end;
  end;
  Result := Result + AString;
end;

StrTran genoemd omdat 'ie in Clipper ook zo heet. :+

  • elnino
  • Registratie: Augustus 2001
  • Laatst online: 03-09 05:13
Op Sunday 28 October 2001 15:48 schreef jelmervos het volgende:
Regex is een oplossing. Je kunt ook 32 tekens vanaf rechts nemen. Maar dan kan alleen als je zeker weet dat er nooit iets achter die MD5 string komt.
Misschien stuurt MSN er ook nog een /r/n achteraan... dus dan wordt het iets als len-34 o.i.d. Wees ff creatief met strings en het lukt wel ;). Handig scriptje trouwens dat zoeken en vervangen. Als /14 nou een codebase had zou hij daar in gezet moeten worden... (Doet me trouwens denken aan het volgende: [topic=188692/1/50])
Pagina: 1