php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Sonstiges > Out of Order
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


Out of Order Unsere Plauderecke. Hier könnt Ihr euch über alles unterhalten, was selbst im Off-Topic keinen Sinn ergibt!

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 1 Stimmen, 5,00 durchschnittlich.
  #106 (permalink)  
Alt 04-07-2008, 20:05
Schanz
 Newbie
Links : Onlinestatus : Schanz ist offline
Registriert seit: Jun 2004
Beiträge: 62
Schanz ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Gut ich hab die Lösung auch soweit... Muss sie noch in PHP umsetzen
Mit Zitat antworten
  #107 (permalink)  
Alt 04-07-2008, 20:07
Blackgreetz
 PHP Junior
Links : Onlinestatus : Blackgreetz ist offline
Registriert seit: Oct 2005
Beiträge: 901
Blackgreetz ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von Schanz
Gut ich hab die Lösung auch soweit... Muss sie noch in PHP umsetzen
Da häng ich gerade ^^...
Bin leider kein PHP-Pro^^
Mit Zitat antworten
  #108 (permalink)  
Alt 04-07-2008, 20:11
Bueddl
 Guest
Bueddl
Beiträge: n/a
Standard

*hust* ich hab derweil aufgegeben^^

Warte auf die nächste, für mich machbare, Aufgabe^^
Mit Zitat antworten
  #109 (permalink)  
Alt 04-07-2008, 20:23
TheFish511
 Newbie
Links : Onlinestatus : TheFish511 ist offline
Registriert seit: Feb 2008
Beiträge: 76
TheFish511 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
edit: lasst euch doch auch mal was von nem jüngeren gesagt sein^^ Hashs zurückrechnen generell nicht eindeutig möglich^^
Du bist nicht der Jüngste hier.

Ich habs kurz für bis zu 9 Zeichen gemacht, wie das darüber hinaus geht, schau ich mir morgen an.
Mit Zitat antworten
  #110 (permalink)  
Alt 04-07-2008, 20:24
TroX
 Registrierter Benutzer
Links : Onlinestatus : TroX ist offline
Registriert seit: Dec 2006
Ort: Schweiz
Beiträge: 156
TroX ist zur Zeit noch ein unbeschriebenes Blatt
Standard

also bis 9 zeichen ists ja einfach, aber dann... keine ahnung mehr
__________________
Freedom is a state of mind. Not a state in which we live.

troxdev.ch | animefieber
Mit Zitat antworten
  #111 (permalink)  
Alt 04-07-2008, 20:27
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Ich hab auch nie gesagt, dass die Hashes zurückgerechnet werden sollen, sondern der Algorithmus. Das erstmal für die Besserwisser. Darüberhinaus ist der Algorithmus auch nicht besonders gut.

Kleiner, nicht geplanter Tipp: Ich hab hier schonmal einen Hash-Algorithmus gepostet, der jetzige arbeitet sehr ähnlich. Wenn auch mit ein zwei entscheidenden Unterschieden.

@Schanz: Ich frag mich, wie du die Lösung haben willst, ohne diese implementiert zu haben?! Wie hast du das getestet?
Mit Zitat antworten
  #112 (permalink)  
Alt 04-07-2008, 20:31
Schanz
 Newbie
Links : Onlinestatus : Schanz ist offline
Registriert seit: Jun 2004
Beiträge: 62
Schanz ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von unset
Ich hab auch nie gesagt, dass die Hashes zurückgerechnet werden sollen, sondern der Algorithmus. Das erstmal für die Besserwisser. Darüberhinaus ist der Algorithmus auch nicht besonders gut.

Kleiner, nicht geplanter Tipp: Ich hab hier schonmal einen Hash-Algorithmus gepostet, der jetzige arbeitet sehr ähnlich. Wenn auch mit ein zwei entscheidenden Unterschieden.

@Schanz: Ich frag mich, wie du die Lösung haben willst, ohne diese implementiert zu haben?! Wie hast du das getestet?
Nun ja.. sagen wir mal ich HOFFE die Lösung zu haben... bin aber eigentlich recht zuversichtlich...
WIE ich das dann hinbekommen habe erzähl ich wenn es soweit ist (oder auch nicht)

// Edit: BLAAAAAAAA ich liege KOMPLETT Falsch...
Ich höre auch auf jetzt ^^ Ich komme leider nicht drauf :P Vieleicht setz ich mich heute Nacht nochmal dran .... Vieleicht hilft das was ich habe jemandem weiter:

PHP-Code:
<?php
if(!isSet($_GET['string']) || empty($_GET['string'])) die();

/*
** Konvertiert ein Zeichen in den Code
** Zuerst wird der ermittelte ASCII Wert des Zeichens durch 9 geteilt!
** Sollte das Ergebniss keine Nachkommastellen haben ist die Code "9", andernfalls traegt der den Wert der 1. Nachkommastelle
*/
function chrToCrypt($chr)
{
  
$code ord($chr)/9;
  
$code is_int($code) ? "9" substr($code, (strpos($code".")+1), 1);
  
  return 
$code;
}

/*
** Konvertiert einen String in einen Hash-Code
** Wie genau muesst ihr euch schon selber ansehen
*/
function cryptString($str)
{
  
// Der String wird alle 9 Zeichen 'geteilt' und in ein Array geschrieben
  
$splitted str_split($str9);
  
  
// Ein String mit 10 Zeichen wuerde 2 Arrays fuellen, das 2. jedoch nur mit einem Zeichen
  // Daher wird das letzte Array 'aufgefuellt' und zwar indem der String wiederholt wird
  
$entry count($splitted)-1;
  
$splitted[$entry] = substr(str_repeat($splitted[$entry], 9), 09);
  
  
// Nun wird jeder einzelne Buchstabe durch die entsprechende Code Ziffer ersetzt
  
foreach($splitted as $string)
  {
    
$cplstring "";
    
    for(
$i=0;$i<=8;$i++)
    {
      
$chr substr($string$i1);
      
$cplstring .= chrToCrypt($chr);
    }
    
    
$crypted[] = $cplstring;
  }
  
  
  
  return 
$crypted;
}

print_r(cryptString($_GET['string']));
?>

Geändert von Schanz (04-07-2008 um 20:35 Uhr)
Mit Zitat antworten
  #113 (permalink)  
Alt 04-07-2008, 20:38
Blackgreetz
 PHP Junior
Links : Onlinestatus : Blackgreetz ist offline
Registriert seit: Oct 2005
Beiträge: 901
Blackgreetz ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hallo,

hier ist der Algorithmus:

Testen: http://blacksoul.redio.de/phpr/unset...p?string=HALLO

PHP-Code:
<?php
function cryptbis9($string){

   
$crypted "";

   for(
$i=0;$i<strlen($string);$i++){

       
$sign ord($string{$i}) % 9;
       
$sign = ($sign == 0) ? $sign;

       
$crypted .= $sign;

   } 
// for

   
if(strlen($crypted) < 9$crypted substr(str_repeat($crypted,9),0,9);

   return 
$crypted;

//cryptbis9

function cryptab10($string){

   
$crypted "";

   
$tupellength floor((strlen($string) / 9)+1);
   if(
floor(strlen($string)/$tupellength) < 9){
    
$addstring = (((floor(strlen($string)/$tupellength)) * $tupellength)-(strlen($string)%$tupellength));
    
$string .= substr($string,0,$addstring);
   }      
//if


   
for($i=0;$i<(strlen($string)/$tupellength);$i++){
      
$zcrypted 0;
      
$k $i*$tupellength;

      for(
$j=0;$j<$tupellength;$j++){
         
$sign ord($string{($k+$j)}) % 9;
         
$sign = ($sign == 0) ? $sign;

         
$zcrypted += $sign;
      }   
//for

      
$zcrypted $zcrypted 9;
      
$zcrypted = ($zcrypted == 0) ? $zcrypted;

      
$crypted .= (string) $zcrypted;

   }   
//for

   
if(strlen($crypted) < 9$crypted substr(str_repeat($crypted,9),0,9);

   return 
$crypted;
}   
//cryptab10


if(isset($_GET['string'])) echo (strlen($_GET['string']) > 9) ? cryptab10($_GET['string']) : cryptbis9($_GET['string']);

?>
@unset: War das nun gefordert, oder hab ich dich falsch verstanden?
Mit Zitat antworten
  #114 (permalink)  
Alt 04-07-2008, 20:40
Bueddl
 Guest
Bueddl
Beiträge: n/a
Standard

@unset, meintest du diesen post aus dem Forum JavaScript:

PHP-Code:
function hash(Source) {
    var 
HashBase 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890';
    var 
WorkingSource Source;
    var 
Hash '';
    
    var 
Counter 0;
    while((
WorkingSource.length 32) != 0) {
        if(
Counter WorkingSource.length) {
            
Counter 0;
        }
        
        
WorkingSource WorkingSource WorkingSource.substr(Counter1);
        
        
Counter++;
    }
    
    while((
WorkingSource.length 32) != 0) {
        
WorkingSource WorkingSource.substr(0WorkingSource.length 1);
    }
    
    var 
CharsPerPart WorkingSource.length 32;
    for(var 
032i++) {
        var 
SubPart WorkingSource.substr(i*CharsPerPartCharsPerPart);
        var 
PartCode 0;
        for(var 
0SubPart.lengthj++) {
            
PartCode PartCode HashBase.indexOf(SubPart.substr(j1));
        }
        
        if(
!= 0) {
            
PartCode PartCode*i;
        }
        
        
PartCode PartCode HashBase.indexOf(Hash.length1) * Source.length;
        
        while(
PartCode HashBase.length) {
            
PartCode PartCode HashBase.length;
        }
        
        while(
PartCode 0) {
            
PartCode++;
        }
        
        if(
HashBase.substr(PartCode1) == 'undefined') { 
            
Hash Hash HashBase.substr(i1);
        } else {
            
Hash Hash HashBase.substr(PartCode1);
        }
    }
    
    return 
Hash;

also den hier? JavaScript - CustomHash


und wenn das hier fertig ist, also schätzungsweise Monat morgen, kannst du hier dann deinen Code mal posten, würde mich echt mal interressieren =)

Geändert von Bueddl (04-07-2008 um 20:42 Uhr)
Mit Zitat antworten
  #115 (permalink)  
Alt 04-07-2008, 20:55
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Herylichen Glueckwunsch Blackgreetz. Da ist mir doch tatsaechlich vor Schreck grade die Festplatte weggeballert - bin grade auf nem live debian. Werde, wenn hier alles wieder geht, meinen Code posten. Zwischenzeitlich kannst du ja die naechste Aufgabe formulieren ..
Mit Zitat antworten
  #116 (permalink)  
Alt 04-07-2008, 21:07
Blackgreetz
 PHP Junior
Links : Onlinestatus : Blackgreetz ist offline
Registriert seit: Oct 2005
Beiträge: 901
Blackgreetz ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Was für ein Schreck?

Hmm ... ja ... Aufgabe -g-
Ich bin nicht so wirklich kreativ..
Versuch mir bis morgen Mittag was auszudenken, ansonsten sag ich bescheid, dass jmd. anderes kann^^..

mfg
Mit Zitat antworten
  #117 (permalink)  
Alt 04-07-2008, 21:19
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Nenene, so geht das nicht. Du musst dir schon selbst was ausdenken!

Ach ja, hier meine Implementation:

PHP-Code:
<?php

    
function hashMe($sToHash) {
        if(
strlen($sToHash) == 0) {
            return 
false;
        }
        
        if(
strlen($sToHash) < 9) {
            
// Weniger als 9 Zeichen
            
$iRound 0;
            while(
strlen($sToHash) < 9) {
                
$sToHash.= $sToHash[$iRound];
                
$iRound++;
            }
        } elseif(
strlen($sToHash) == 9) {
            
// Genau 9 Zeichen
        
} elseif(strlen($sToHash) > 9) {
            
// Mehr als 9 Zeichen
            
$iRest strlen($sToHash) % 9;
            
$iToFill $iRest;
            for(
$i 0$i $iToFill$i++) {
                
$sToHash.= $sToHash[$i];
            }
        }

        
// Chunk-Size
        
$iChunkSize strlen($sToHash) / 9;

        
// Wieviel Chunks haben wir
        
$iChunkCount strlen($sToHash) / $iChunkSize;

        
// Chunks berechnen
        
for($i 0$i $iChunkCount$i++) {
            
// Chunk holen
            
$sChunk substr($sToHash$i $iChunkSize$iChunkSize);
            
$iDigit 0;

            
// Direkten Chunkwert ermitteln
            
for($j 0$j strlen($sChunk); $j++) {
                
$iDigit $iDigit ord($sChunk[$j]);
            }

            while(
$iDigit >= 10) {
                
$iDigit quersumme($iDigit);
            }

            
// Speichern
            
$iHash.= $iDigit;
            unset(
$iDigit);
        }

        
// Ausgeben
        
return $iHash;
    }

    function 
quersumme($iZahl) {
        
$sZahl = (string) $iZahl;
        for(
$i 0$i strlen($sZahl); $i++) {
            
$iOutput $iOutput + (int) $sZahl[$i];
        }
        return 
$iOutput;
    }

?>
Mit Zitat antworten
  #118 (permalink)  
Alt 04-07-2008, 21:20
PHP-Desaster
 PHP Expert
Links : Onlinestatus : PHP-Desaster ist offline
Registriert seit: Mar 2006
Beiträge: 3.105
PHP-Desaster befindet sich auf einem aufstrebenden Ast
Standard

Ging es jetzt nur um das Knacken des Algos? Schade, war leider abwesend. Gucke mir Blackgreetz's Lösung nicht an, vielleicht mach ich's ja noch mal aus Langeweile
Aber her mit der nächsten Aufgabe ^^
Mit Zitat antworten
  #119 (permalink)  
Alt 04-07-2008, 21:49
TheFish511
 Newbie
Links : Onlinestatus : TheFish511 ist offline
Registriert seit: Feb 2008
Beiträge: 76
TheFish511 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Menno, da ist einmal nen Freund da und man hat nicht so viel Zeit zum coden und schon ist die schöne Aufgabe gelöst, bevor man richtig anfangen kann.
Naja, her mit der nächsten Aufgabe^^
Mit Zitat antworten
  #120 (permalink)  
Alt 04-07-2008, 22:25
Bueddl
 Guest
Bueddl
Beiträge: n/a
Wink

danke für deinen code unset, denke mal werde ihn villeicht etwas Modufizierunund nutzen =) (muss ich dir dann iwas wie ne Lizensgebühr zahlen )

Lg,
Bueddl
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 19:33 Uhr.