echo $begrüßung;
Einen Hashwert berechnet man ja über einen Textstring, indem wird ja nun das & als & dargestellt,
nein, das ist der XML-String. Der Textstring enthält nur das "&".
Das verstehe ich nicht, der Textstring (im Editor) enthält doch das & *verwirrt sei*
Cheatah meint sicher, dass der Hash-Wert rein über die via XML zu transportierenden Daten gebildet werden soll, dann hast du ein &. Wenn der Hashwert aber über den XML-Quelltext gebildet werden soll, dann muss das & genommen werden, genauso wie die <> zur Elementbegrenzung und auch die Elementnamen und ebenfalls die Attribute inklusive Werte und Begrenzungszeichen mitgenommen werden wüssen. Dann gibt es aber möglicherweise ein Problem mit dem Whitespace, der zur Formatierung zwischen Elementen (und Attributen) eingefügt ist, ansonsten aber keine Information überträgt. Unterschiedlicher Whitespace ändert an den den Daten nichts, wohl aber am Hash-Wert, wenn er mitgehasht wird.
Wir haben eine XML-Schnittstelle. Die wird auf der einen Seite erzeugt und auf der anderen Seite geprüft mittels eines Hashwertes über das Dokument. Das XML-Dokument ist kanonisiert, d.h. die Sonderzeichen sind kodiert. Die erstellende Seite hashed & und die Prüfende nur &. Jetzt ist die Frage, gibt es dazu eine Doku oder Ähnliches über das Verfahren an sich, was richtig ist. Muss man sich einfach einigen, was ist sinnvoller?
Ich denke, hier kommt es auf die gegenseitige Vereinbarung an. Ihr könnt euch auf das relativ unaufwendige Hashen des XML-Quelltextes (unter Auslassung der zur Formatierung verwendeten Whitespacezeichen) einigen, oder ihr bildet Hash-Wete über die Daten und müsst dabei auch irgendwie die Element- und Attributnamen mit berücksichtigen (ganz zu schweigen von Namensräumen, Verarbeitungsanweisungen <?... und Kommentaren).
echo "$verabschiedung $name";