HEX to ALPHA

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • HEX to ALPHA

    Hallo Leute, ich bin neu hier und hab auch gleich ein riesen Problem...

    ich möchte einen Hex String (0F1FFFFFFBFD05091E7B0001) in Alpha umconvertieren also zu (MWXUT......)


    hat einer ne Idee ?

  • #2
    Re: HEX to ALPHA

    und wo ist das problem?

    splitte den string in teile zu jeweils 2 zeichen auf, rechne hex in dec um (sofern nötig, evtl. geht's auch ohne), und lasse dir mit chr() das zugehörige zeichen ausgeben.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Comment


    • #3
      mit

      hexdec(hexwert)

      siehe Umwandkungsfunktionen

      Comment


      • #4
        Danke für die schnelle antwort, aber jetzt nochmal genau denn ich komme da nicht hin.


        Das problem ist eigentlich das das ich eine Serial generieren will in php, in Delphi habe ich es aber da die auch per php generiert werden soll komme ich nicht ganz klar

        hier nochmal genau ich habe einen String:

        0F1FFFFFFBFD05091E7B0001 <---- 24 Zeichen lang


        so geht es jetzt in delphi
        Code:
        s:=hex2alpha(copy(result,1,20), 1)+hex2alpha(copy(result,21,4),4875);
        es werden also die ersten 20 Chars in hex2alpha converted

        das ist dann: MWXUTXUP072K6P3HHN3G

        und dann die anderen 4 vom String

        mit der function:

        Code:
        function encrypt(cod:string;app:word):string;
          var i,p,k: integer;
              mkr,s:string;
        begin
          app := '4875';
          cod := 'MWXUTXUP072K6P3HHN3G...';
          result := '';
          mkr:= 'VEY6ZG13M28QR457CUF9ADHJLWKNOPTX';
          alf := '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
        
          //extract the 8char right part of the 10char resulting string
          s:=copy(hexencrypt(inttohex(app,8)),3,8);
          for i := 1 to length(cod) do begin
            p:=pos(Cod[i],alf);
            k:=ord(s[i mod 8 +1]) mod 32;
            if (p>0) then result:=result+mkr[(p+k-1) mod 32+1] else result:=result+cod[i];
          end;
        end;
        
        //parameter length must be multiple of 4
        //for each 4 hex segment this return a 5 hex segment
        function hexencrypt(s16:string):string;
        var i,J:integer;
            l,m,n:byte;
        begin
          result:='';
          l:=length(s16);
          for i := 0 to (l div 4)-1 do begin
            m:=0;
            for j:=1 to 4 do m:=m+(strtoint('$'+s16[i*4+j]) mod 4);
            result:=result+inttohex(m,1);
            for j:=1 to 4 do begin
              n:=(strtoint('$'+s16[i*4+j])+ m) mod 16;
              result:=result+inttohex(n,1);
            end;
          end;
        end;
        EDIT:
        Auch du kannst die code.tags/php.tags des Forums benutzen. code.tags by wotan


        wie gehtn das nun in php ?
        Last edited by Wotan; 28-08-2003, 10:59.

        Comment

        Working...
        X