<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Coder-Blog &#187; informatik</title>
	<atom:link href="http://coder-blog.de/tag/informatik/feed" rel="self" type="application/rss+xml" />
	<link>http://coder-blog.de</link>
	<description>Just another WordPress site</description>
	<lastBuildDate>Fri, 15 Jul 2011 17:53:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Java-Tutorial: Methoden</title>
		<link>http://coder-blog.de/java-tutorial-methoden</link>
		<comments>http://coder-blog.de/java-tutorial-methoden#comments</comments>
		<pubDate>Fri, 08 Apr 2011 00:08:48 +0000</pubDate>
		<dc:creator>Eugen</dc:creator>
				<category><![CDATA[Java-Tutorials]]></category>
		<category><![CDATA[informatik]]></category>
		<category><![CDATA[java-tutorial]]></category>
		<category><![CDATA[methoden]]></category>
		<category><![CDATA[programmfluss]]></category>

		<guid isPermaLink="false">http://coder-blog.de/?p=328</guid>
		<description><![CDATA[Methoden dienen dazu, um Coder durch Auslagern übersichtlicher und wartungsfreundlicher zu gestalten. Beim Aufruf einer Methode wird die aufrufende Methode unterbrochen, bis die aufgerufene Methode abgearbeitet wurde. Eine Methode stellt somit ein kleines Unterprogramm dar. <a href="http://coder-blog.de/java-tutorial-methoden">mehr <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Wie der Titel schon erahnen lässt, beschäftigt sich dieser Beitrag mit Java Methoden. Wer Funktionen aus anderen Programmiersprachen wie beispielsweise PHP, C usw. schon kennt, wird sich mit Methoden schnell anfreunden können. Um zu verdeutlichen wie man mit Methoden arbeitet, sollten wir uns zunächst folgenden Code anschauen.</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #008000; font-style: italic; font-weight: bold;">/**
 * Klasse Programm soll die Verwendung von Methoden verdeutlichen.
 */</span>
<span style="color: #000000; font-weight: bold;">class</span> Programm <span style="color: #009900;">&#123;</span>
    <span style="color: #008000; font-style: italic; font-weight: bold;">/**
     * Methode add addiert zwei uebergebene Parameter und gibt die Summe zurueck
     * @param summand_1 Der erste Summand
     * @param summand_2 Der zweite Summand
     * @return Das Ergebnis der Addition beider  Summanden
     */</span>
    <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">int</span> add<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> summand_1, <span style="color: #000066; font-weight: bold;">int</span> summand_2<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
        <span style="color: #000000; font-weight: bold;">return</span> summand_1 <span style="color: #339933;">+</span> summand_2<span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #008000; font-style: italic; font-weight: bold;">/**
     * Methode hallo gibt ihren Namen aus. Welche weitere Methode sie aufgerufen hat und
     * welches Ergebnis sie von der anderen Methode erhalten hat.
     */</span>
    <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> hallo<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
        <span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Ich bin die Methode &quot;</span>hallo<span style="color: #0000ff;">&quot;&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Ich rufe die Methode &quot;</span>add<span style="color: #0000ff;">&quot; mit den Parametern 3 und 4 auf&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000066; font-weight: bold;">int</span> summe <span style="color: #339933;">=</span> add<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">3</span>, <span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Ich habe als Ergebnis die Summe &quot;</span> <span style="color: #339933;">+</span> summe <span style="color: #339933;">+</span> <span style="color: #0000ff;">&quot; von &quot;</span>add<span style="color: #0000ff;">&quot; erhalten&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
    <span style="color: #008000; font-style: italic; font-weight: bold;">/**
     * Main-Methode wird vom Compiler gesucht und automatisch aufgerufen
     */</span>
    <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Das ist ein Beispiel, das die Verwendung von Methoden erklaeren soll&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        hallo<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Hier endet die main-Methode und damit das Programm&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p><span id="more-328"></span><br />
Dieses Programm enthält insgesamt drei Methoden, die wir definiert haben. Zunächst ist da die bereits bekannte main-Methode. Diese wird beim Kompilieren und beim Ausführen des Programms gesucht und automatisch aufgerufen. Sie ermöglicht also der JVM den Einstieg in unser Programm. Ohne ihr würde nichts funktionieren. Wichtig ist, dass ein Programm nur eine main-Methode haben darf, da sonst nicht klar ist, welche dieser Methoden ausgeführt werden sollen.<br />
Die zweite Methode ist die Methode &#8220;hallo&#8221;. Sie ähnelt in ihrem Methodenkopf sehr stark der main-Methode. Der einzige Unterschied ist, dass unsere hallo-Methode keine Parameter übergeben bekommt. Parameter sind die Elemente, die von der runden öffnenden und schließenden Klammer, die hinter der Bezeichnung der Methode kommt, eingeschlossen werden. Zu erkennen ist, dass die main-Methode einen Parameter mit der Bezeichnung &#8220;args&#8221; übergeben bekommt. Dieser Parameter ist vom Typ ein String-Array.</p>
<p>Die Methode &#8220;hallo&#8221; ruft in Zeile 22 eine weitere Methode auf, die wir &#8220;add&#8221; genannt haben. Das Ergebnis, dass uns die Methode &#8220;add&#8221; liefert, wird der Variablen &#8220;summe&#8221; zugewiesen. Der Wert der Variablen wird dann in der drauf folgenden Zeile ausgegeben.<br />
Die Methode &#8220;add&#8221; addiert die beiden übergebenen Parameter. Das Ergebnis der Addition wird dann zurückgegeben. Das Zurückgeben erfolgt stets mit dem Schlüsselwort &#8220;return&#8221;. Sobald wir etwas zurückgeben möchten, müssen wir im Methodenkopf notieren welchen Typ die Rückgabe haben wird. Deshalb steht vor der Bezeichnung der add-Methode das Schlüsselwort &#8220;int&#8221;. Zurückgegeben werden können alle erdenklichen Typen wie int, long, float, double, String, Arrays und Objekte. Da wird in der Methode &#8220;hallo&#8221; nichts zurückgeben wollen, sondern nur Ausgaben tätigen, muss vor dem Methodennamen das Schlüsselwort &#8220;void&#8221; stehen. Es heißt soviel wie &#8220;Ich geben nichts zurück&#8221;. Die main-Methode darf per Konvention nur void sein.</p>
<p>Was ist nun der Sinn hinter Methoden? Methoden dienen dazu, um Code durch Auslagern übersichtlicher und wartungsfreundlicher zu gestalten.</p>
<p>Methoden werden nacheinander wie sie im Programm aufgerufen werden abgearbeitet. Methoden, die andere Methoden aufrufen, werden unterbrochen und fahren erst nachdem die aufgerufene Methode beendet ist, in ihrem Programmfluss fort. In unserem Beispiel wird zunächst du die JVM die main-Methode ausgeführt. In dieser Methode rufen wir die Methode &#8220;hallo&#8221; auf. Somit wird die Methode main zunächst unterbrochen und die hallo-Methode ausgeführt. Methode &#8220;hallo&#8221; ruft wiederum die Methode &#8220;add&#8221; auf, der sie die zwei Parameter 3 und 4 übergibt, um dann den eigenen Programmfluss zu unterbrechen und den Weg für &#8220;add&#8221; frei zu machen. Nachdem &#8220;add&#8221; die beiden Parameter addiert hat, kann &#8220;hallo&#8221; fortfahren und ebenfalls beendet werden. Jetzt wird weiter die Methode &#8220;main&#8221; ausgeführt, bis diese abgearbeitet wurde und unser Programm schließlich beendet werden kann.<br />
Den Programmfluss soll das nachfolgende Bild darstellen.</p>
<div id="attachment_338" class="wp-caption aligncenter" style="width: 307px"><a href="http://coder-blog.de/wp-content/uploads/methoden.gif"><img class="size-full wp-image-338 " title="Programmfluss der Methoden" src="http://coder-blog.de/wp-content/uploads/methoden.gif" alt="Programmfluss der Methoden main, hallo und add" width="297" height="201" /></a><p class="wp-caption-text">Programmfluss der Methoden</p></div>
]]></content:encoded>
			<wfw:commentRss>http://coder-blog.de/java-tutorial-methoden/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>MD5 entschlüsseln mittels c0llision-API</title>
		<link>http://coder-blog.de/md5-entschluesseln</link>
		<comments>http://coder-blog.de/md5-entschluesseln#comments</comments>
		<pubDate>Wed, 27 Oct 2010 20:44:57 +0000</pubDate>
		<dc:creator>Eugen</dc:creator>
				<category><![CDATA[Angewandte Informatik]]></category>
		<category><![CDATA[Programmiersprachen]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[curl]]></category>
		<category><![CDATA[informatik]]></category>
		<category><![CDATA[md5 entschlüsseln]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://coder-blog.de/?p=280</guid>
		<description><![CDATA[Die Seite c0llision.net stellt eine API zur Verfügung, die dazu genutzt werden kann, um einen MD5-Hash zu entschlüsseln. Wie der Zugriff auf die API abläuft und man sie nutzt, soll hier erklärt werden. <a href="http://coder-blog.de/md5-entschluesseln">mehr <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Der <a href="http://de.wikipedia.org/wiki/Message-Digest_Algorithm_5" target="_blank">Message-Digest-Algorithm 5</a>, oder kurz MD5 ist ein verbreitetes Verfahren, um einen String zu verschlüsseln. Dabei wird mit Hilfe einer bestimmten Funktion &#8211; der Hashfunktion &#8211; die eingegebene Zeichenkette mittels eines Algorithmus in einen 128-Bit-Hashwert überführt. Dieser Wert wird üblicherweise durch einen 32-stelligen, hexadezimalen String dargestellt.</p>
<p>In vielen Unix-Systemen sind die MD5-Bibliotheken bereits integriert und können über die Konsole genutzt werden.<br />
Auf einem Mac sieht der Aufruf beispielsweise so aus:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">md5 <span style="color: #660033;">-s</span> <span style="color: #ff0000;">&quot;ein string, den ich verschlüsseln will&quot;</span></pre></div></div>

<p>Mit dem Ergebnis:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">MD5 <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #ff0000;">&quot;ein string, den ich verschlüsseln will&quot;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> = fbf50beb87218a44ed02a7cf4dca9868</pre></div></div>

<p><span id="more-280"></span><br />
Wie man erkennt entspricht der String &#8220;ein string, den ich verschlüsseln will&#8221; dem MD5-Hash fbf50beb87218a44ed02a7cf4dca9868.</p>
<p>Ein Merkmal der MD5-Funktion besteht darin, dass ein Hash-Wert nicht ohne Weiteres wieder entschlüsselt werden kann.<br />
Deswegen wird MD5 oft genutzt um Passwörter verschlüsselt in Datenbanken zu speichern.</p>
<p>Was macht man nun, wenn man aber mal doch diesen Hash entschlüsselt haben möchte? Da das zurückrechnen nicht möglich ist, verwendet man eine besondere Datenstruktur, die sogenannten <a href="http://de.wikipedia.org/wiki/Rainbow_Table" target="_blank">Rainbow Tables</a>. Im Internet finden sich zahlreiche Seiten, die eine Entschlüsselung von Hashes mittels Rainbow Tables anbieten. Darunter findet man auch die Seite <a href="http://www.c0llision.net/" target="_blank">c0llision.net</a>, die u.a mittels einer API ermöglicht auf ihre Dienste zuzugreifen. Wie man diese nutzt, will ich in den folgenden Textabschnitten erklären. Dabei stütze ich mich auf diese Dokumentation: <a href="http://www.c0llision.net/rest_api_documentation">http://www.c0llision.net/rest_api_documentation</a>.</p>
<p>Der Zugriff auf die API erfolgt über die URL http://api.dev.c0llision.net/. Die API unterstützt drei verschiedene Formate, die einem als Ergebnis einer Anfrage geliefert werden. Zur Auswahl stehen dabei JSON, XML und YAML. Ich habe mich hier für JSON entschieden, da später der Zugriff über PHP bequemer ist. Als Algorithmen werden LM, NTLM und wie eingangs erwähnt MD5 unterstützt. Diese Angaben müssen der URL angehängt werden. Dabei erhält man folgendes Muster, um eine Anfrage an die c0llision API absetzen zu können:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">http:<span style="color: #000000; font-weight: bold;">//</span>api.dev.c0llision.net<span style="color: #000000; font-weight: bold;">//</span>crack<span style="color: #000000; font-weight: bold;">//</span></pre></div></div>

<p>Wollen wir nun den MD5-Hash fbf50beb87218a44ed02a7cf4dca9868 entschlüsselt haben und das Ergebnis als JSON zurückgeliefert bekommen, würden wir folgende Anfrage abschicken:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">http:<span style="color: #000000; font-weight: bold;">//</span>api.dev.c0llision.net<span style="color: #000000; font-weight: bold;">/</span>json<span style="color: #000000; font-weight: bold;">/</span>crack<span style="color: #000000; font-weight: bold;">/</span>md5<span style="color: #000000; font-weight: bold;">/</span>fbf50beb87218a44ed02a7cf4dca9868</pre></div></div>

<p>Um diese Anfrage bequem per Skript verarbeiten zu können, habe ich folgendes kleines PHP-Programm geschrieben:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #339933;">&lt;!--</span>?php
  <span style="color: #000000; font-weight: bold;">function</span> crack<span style="color: #009900;">&#40;</span><span style="color: #000088;">$algorithm</span><span style="color: #339933;">,</span> <span style="color: #000088;">$hash</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
    <span style="color: #666666; font-style: italic;">//Convert algorithm to lowercase</span>
    <span style="color: #000088;">$algorithm</span> <span style="color: #339933;">=</span> <span style="color: #990000;">strtolower</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$algorithm</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000088;">$pattern</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">''</span><span style="color: #339933;">;</span>
    <span style="color: #000088;">$url</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'http://api.dev.c0llision.net/json/crack/'</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #666666; font-style: italic;">//Check algorithm</span>
    <span style="color: #b1b100;">switch</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$algorithm</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
      <span style="color: #b1b100;">case</span> <span style="color: #0000ff;">'md5'</span><span style="color: #339933;">:</span>
        <span style="color: #000088;">$pattern</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'/^([0-9a-f]{32})$/'</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$url</span> <span style="color: #339933;">.=</span> <span style="color: #0000ff;">'md5/'</span><span style="color: #339933;">;</span>
      <span style="color: #b1b100;">break</span><span style="color: #339933;">;</span>
&nbsp;
      <span style="color: #b1b100;">case</span> <span style="color: #0000ff;">'lm'</span><span style="color: #339933;">:</span>
        <span style="color: #000088;">$pattern</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'/^([0-9a-f]{32}:[0-9a-f]{32})$/'</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$url</span> <span style="color: #339933;">.=</span> <span style="color: #0000ff;">'lm/'</span><span style="color: #339933;">;</span>
      <span style="color: #b1b100;">break</span><span style="color: #339933;">;</span>
&nbsp;
      <span style="color: #b1b100;">case</span> <span style="color: #0000ff;">'ntlm'</span><span style="color: #339933;">:</span>
        <span style="color: #000088;">$pattern</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'/^([0-9a-f]{32})$/'</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$url</span> <span style="color: #339933;">.=</span> <span style="color: #0000ff;">'ntlm/'</span><span style="color: #339933;">;</span>
      <span style="color: #b1b100;">break</span><span style="color: #339933;">;</span>
&nbsp;
      <span style="color: #b1b100;">default</span><span style="color: #339933;">:</span>
        <span style="color: #b1b100;">return</span> <span style="color: #009900; font-weight: bold;">FALSE</span><span style="color: #339933;">;</span>
      <span style="color: #b1b100;">break</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #666666; font-style: italic;">//Check hash</span>
    <span style="color: #000088;">$check</span> <span style="color: #339933;">=</span> <span style="color: #990000;">preg_match</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$pattern</span><span style="color: #339933;">,</span> <span style="color: #000088;">$hash</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span> <span style="color: #339933;">===</span> <span style="color: #000088;">$check</span> <span style="color: #339933;">||</span> <span style="color: #009900; font-weight: bold;">FALSE</span> <span style="color: #339933;">===</span> <span style="color: #000088;">$check</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
      <span style="color: #b1b100;">return</span> <span style="color: #009900; font-weight: bold;">FALSE</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #666666; font-style: italic;">//Build final URL</span>
    <span style="color: #000088;">$url</span> <span style="color: #339933;">.=</span> <span style="color: #000088;">$hash</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #666666; font-style: italic;">//Initialize CURL and set options</span>
    <span style="color: #000088;">$curl_handle</span> <span style="color: #339933;">=</span> <span style="color: #990000;">curl_init</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #990000;">curl_setopt</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$curl_handle</span><span style="color: #339933;">,</span> CURLOPT_URL<span style="color: #339933;">,</span> <span style="color: #000088;">$url</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #990000;">curl_setopt</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$curl_handle</span><span style="color: #339933;">,</span> CURLOPT_HEADER<span style="color: #339933;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #990000;">curl_setopt</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$curl_handle</span><span style="color: #339933;">,</span> CURLOPT_RETURNTRANSFER<span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">TRUE</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #990000;">curl_setopt</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$curl_handle</span><span style="color: #339933;">,</span> CURLOPT_TIMEOUT<span style="color: #339933;">,</span> <span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #666666; font-style: italic;">//Execute CURL request</span>
    <span style="color: #000088;">$result</span> <span style="color: #339933;">=</span> <span style="color: #990000;">curl_exec</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$curl_handle</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #990000;">curl_close</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$curl_handle</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #b1b100;">return</span> <span style="color: #000088;">$result</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
&nbsp;
  <span style="color: #000000; font-weight: bold;">function</span> crackMD5<span style="color: #009900;">&#40;</span><span style="color: #000088;">$hash</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">return</span> crack<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'md5'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$hash</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
&nbsp;
  <span style="color: #000000; font-weight: bold;">function</span> crackLM<span style="color: #009900;">&#40;</span><span style="color: #000088;">$hash</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">return</span> crack<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'lm'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$hash</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
&nbsp;
  <span style="color: #000000; font-weight: bold;">function</span> crackNTLM<span style="color: #009900;">&#40;</span><span style="color: #000088;">$hash</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">return</span> crack<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'ntlm'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$hash</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
?<span style="color: #339933;">--&gt;</span></pre></div></div>

<p>Das Programm definiert eine Prozedur &#8220;crack&#8221;, welche die ganze Funktionalität liefert. In ihr wird zunächst ein Teil der URL gespeichert, auf die im weiteren Programmablauf mittels cURL zugegriffen wird. Nachdem die Variable &#8220;url&#8221; gesetzt wurde, wird überprüft ob ein korrekter Algorithmus gewählt wurde und das Muster des Hashs zum Algorithmus passt. Beispielsweise darf ein MD5-Hash lediglich aus 32 hexadezimalen Zahlen bestehen. Ist ein gültiger Hash übergeben, wird er an die URL gehängt. Diese ist nun vollständig zusammengebaut. Mittels cURL wird nun eine GET-Anfrage abgesetzt, die Antwort in die result-Variable gespeichert und zurückgegeben. Die weiteren Funktionen &#8220;crackMD5&#8243;, &#8220;crackLM&#8221; und &#8220;crackNTLM&#8221; nutzen lediglich &#8220;crack&#8221;, indem sie ihr die entsprechenden Parameter übergeben.<br />
Die crackMD5-Funktion wollen wir nun nutzen, um den Hash 098f6bcd4621d373cade4e832627b4f6 zu entschlüsseln.<br />
Ein PHP-Skript könnte zum Beispiel so aussehen:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #339933;">&lt;!--</span>?php
  <span style="color: #000088;">$hash</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'098f6bcd4621d373cade4e832627b4f6'</span><span style="color: #339933;">;</span>
  <span style="color: #000088;">$result</span> <span style="color: #339933;">=</span> crackMD5<span style="color: #009900;">&#40;</span><span style="color: #000088;">$hash</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #000088;">$json</span><span style="color: #339933;">;</span>
  <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #009900; font-weight: bold;">FALSE</span> <span style="color: #339933;">!==</span> <span style="color: #000088;">$result</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
    <span style="color: #000088;">$json</span> <span style="color: #339933;">=</span> <span style="color: #990000;">json_decode</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$result</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #666666; font-style: italic;">// HTTP 200 received</span>
    <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">200</span> <span style="color: #339933;">!==</span> <span style="color: #000088;">$json</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'response'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'status'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'code'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
        <span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'Server response: '</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$json</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'response'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'status'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'code'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
    <span style="color: #666666; font-style: italic;">// Hash already cracked</span>
    <span style="color: #b1b100;">elseif</span><span style="color: #009900;">&#40;</span><span style="color: #009900; font-weight: bold;">TRUE</span> <span style="color: #339933;">!==</span> <span style="color: #000088;">$json</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'response'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'result'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'cracked'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
        <span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'Sorry, your hash has not been cracked yet'</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
    <span style="color: #b1b100;">else</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$json</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'response'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'result'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'plaintext'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'raw'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
?<span style="color: #339933;">--&gt;</span></pre></div></div>

<p>Es setzt eine Anfrage durch die Funktion &#8220;crackMD5&#8243; an die c0llision API ab und speichert die Antwort in die Variable &#8220;result&#8221;. Hat &#8220;crackMD5&#8243; eine gültige Antwort zurückgegeben, so dekodieren wir den JSON-String mittels der PHP-Funktion &#8220;<a href="http://php.net/manual/de/function.json-decode.php">json_decode</a>&#8220;. Dann wird geprüft, ob der Server mit einem HTTP-200-Status geantwortet hat und der zu entschlüsselnde Hash bereits gecrackt wurde. Ist dies der Fall, wird der entsprechende Klartext des Hashs ausgegeben.</p>
]]></content:encoded>
			<wfw:commentRss>http://coder-blog.de/md5-entschluesseln/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Java-Tutorial: Kommentare</title>
		<link>http://coder-blog.de/java-tutorial-kommentare</link>
		<comments>http://coder-blog.de/java-tutorial-kommentare#comments</comments>
		<pubDate>Sun, 29 Mar 2009 22:00:06 +0000</pubDate>
		<dc:creator>Eugen</dc:creator>
				<category><![CDATA[Java-Tutorials]]></category>
		<category><![CDATA[Blockkommentar]]></category>
		<category><![CDATA[informatik]]></category>
		<category><![CDATA[java-lernen]]></category>
		<category><![CDATA[java-tutorial]]></category>
		<category><![CDATA[javadoc]]></category>
		<category><![CDATA[JavaDoc-Kommentar]]></category>
		<category><![CDATA[Kommentare]]></category>
		<category><![CDATA[oop programmierung]]></category>
		<category><![CDATA[programmiersprache java]]></category>
		<category><![CDATA[uni-informatik]]></category>
		<category><![CDATA[Zeilenkommentar]]></category>

		<guid isPermaLink="false">http://coder-blog.de/?p=121</guid>
		<description><![CDATA[Java-Tutorial zu den verschiedenen Kommentaren, die in der Programmiersprache Java zur Verfügung stehen. <a href="http://coder-blog.de/java-tutorial-kommentare">mehr <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Als Kommentare bezeichnet man in Programmiersprachen besondere Code-Teile, die vom Compiler nicht in Maschinencode – in Java Bytecode – übersetzt werden, sondern nur den Lesern beziehungsweise den Programmierern dienen.<br />
Neben selbst sprechenden Namen für Variablen, Klassen und Methoden, sollte man Kommentare verwenden, um bestimmte Stücke des Quellcodes zu dokumentieren. Damit erleichtert man zum Einen anderen Entwicklern zu verstehen was ein Codefragment macht und zum anderen ist man dadurch in der Lage auch ein Programm zu verstehen, das man zum letzten mal vor einigen Monaten angesehen hat.<br />
Auch benutzt man Kommentare, um Anmerkungen &#8211; wie TODOs &#8211; festzuhalten, die einem während dem Programmieren auffallen.</p>
<p>Java bietet uns drei Möglichkeiten von Kommentaren:</p>
<ul>
<li> <strong>Zeilenkommentar</strong></li>
<li><strong> Blockkommentar</strong></li>
<li><strong> JavaDoc-Kommentar</strong></li>
</ul>
<p>Ein Zeilenkommentar gilt nur für eine Zeile und wird mit einem // eingeleitet. Möchte man Kommentare über mehrere Zeilen hinweg setzten, so bietet sich das Blockkommentar dafür an. Dieses wird mit einem /* eingeleitet und endet mit */.<br />
Das JavaDoc-Kommentar ist ein besonderes Blockkommentar, das zum Beispiel Beschreibungen von Funktionen  und / oder deren Parameter enthält. Beginnt man ein Kommentar mit /** und schließt es mit */ ab, handelt es sich um diesen Typ von Kommentar. Mit dem im JDK mitgelieferten Tool javadoc ist es möglich diese Kommentare zu einer API-Dokumentation zu generieren.<span id="more-121"></span></p>
<p>Mit Kommentaren können wir Code auch zum Testen und zur Fehlersuche auskommentieren, um diese vor dem Compiler zu verstecken.</p>
<p>Dieses Beispiel soll uns die Verwendung von Kommentaren in Java verdeutlichen:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #008000; font-style: italic; font-weight: bold;">/**
 * @author eugen
 * @version 1.0
 */</span>
<span style="color: #000000; font-weight: bold;">class</span> RasenMaehen
<span style="color: #009900;">&#123;</span>
  <span style="color: #666666; font-style: italic;">/*
  * Dieses Programm berechnet, ob man seinen Rasen mähen sollte
  */</span>
  <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main <span style="color: #009900;">&#40;</span> <span style="color: #003399;">String</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args <span style="color: #009900;">&#41;</span>
  <span style="color: #009900;">&#123;</span>
    <span style="color: #666666; font-style: italic;">//Maße in cm</span>
    <span style="color: #000066; font-weight: bold;">int</span> aktuelleLaenge <span style="color: #339933;">=</span> <span style="color: #cc66cc;">53</span><span style="color: #339933;">;</span>
    <span style="color: #000066; font-weight: bold;">int</span> gewuenschteLaenge <span style="color: #339933;">=</span> <span style="color: #cc66cc;">20</span><span style="color: #339933;">;</span>
    <span style="color: #000066; font-weight: bold;">int</span> maxUeberschuss <span style="color: #339933;">=</span> <span style="color: #cc66cc;">10</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #666666; font-style: italic;">// Wenn Ueberschuss zu groß, muss gemaeht werden</span>
    <span style="color: #000000; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span> <span style="color: #009900;">&#40;</span>aktuelleLaenge – gewuenschteLaenge<span style="color: #009900;">&#41;</span> <span style="color: #339933;">&gt;</span> maxUeberschuss <span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
      <span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Rasen muss gemaeht werden&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
    <span style="color: #000000; font-weight: bold;">else</span>
    <span style="color: #009900;">&#123;</span>
      <span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Geht noch!&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
  <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Bei dem ersten Kommentar handelt es sich um einen JavaDoc-Kommentar, der besondere Schlüsselwörter wie @author enthält, die vom javadoc-Tool ausgewertet werden können.<br />
Der zweite Kommentar auf den wir stoßen ist ein Blockkommentar, der sich über drei Zeilen hinzieht.<br />
Bei dem dritten und vierten Kommentar verwenden wir nun den Zeilenkommentar, der wie gesagt nur eine Zeile auskommentiert.</p>
]]></content:encoded>
			<wfw:commentRss>http://coder-blog.de/java-tutorial-kommentare/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java-Tutorial: Variablen</title>
		<link>http://coder-blog.de/java-tutorial-variablen</link>
		<comments>http://coder-blog.de/java-tutorial-variablen#comments</comments>
		<pubDate>Fri, 27 Mar 2009 21:24:07 +0000</pubDate>
		<dc:creator>Eugen</dc:creator>
				<category><![CDATA[Java-Tutorials]]></category>
		<category><![CDATA[informatik]]></category>
		<category><![CDATA[java-tutorial]]></category>
		<category><![CDATA[lernen]]></category>
		<category><![CDATA[objektorientierte programmierung]]></category>
		<category><![CDATA[studium]]></category>
		<category><![CDATA[variablen]]></category>

		<guid isPermaLink="false">http://coder-blog.de/?p=81</guid>
		<description><![CDATA[In diesem Java-Tutorial lernen wir was Variablen sind und was man mit ihnen anstellen kann. <a href="http://coder-blog.de/java-tutorial-variablen">mehr <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>In diesem Java-Tutorial lernen wir was Variablen sind und was man mit ihnen anstellen kann.</p>
<p>Variablen werden viele schon aus der Mathematik kennen. Schauen wir und beispielsweise eine einfache Gleichung aus der Algebra an.<br />
<code>x² + 2x = 0</code><br />
Dabei ist x eine Variable, die für verschiedene Zahlen steht. Dass x die Werte 0 und -2 annehmen kann, damit die Gleichung auch korrekt ist, ist hier unwichtig.</p>
<p>Eine Variable in der Programmierung kann man sich als Box vorstellen, in die wir verschiedenste Werte reinstecken und diese dann wieder auslesen oder verändern können.</p>
<p>Die Variable ist eine Box, die den Namen &#8220;zahl&#8221; trägt. In diese Box können wir nun zum Beispiel eine Zahl &#8220;hineinschieben&#8221; &#8211; hier ist es die 5. Später können wir auf diese gespeicherte 5 zugreifen, indem wir einfach dazu den Namen der Variablen verwenden.</p>
<p><span id="more-81"></span>Dies wollen wir nun in Java mit folgendem Code übertragen.</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000066; font-weight: bold;">int</span> zahl<span style="color: #339933;">;</span>
zahl <span style="color: #339933;">=</span> <span style="color: #cc66cc;">5</span><span style="color: #339933;">;</span></pre></div></div>

<p>In der ersten Zeile sagen wir dem Compiler, dass wir eine Variable zahl in unserem Programm haben werden. In der zweiten Zeile weisen wir der Variablen zahl den Wert 5 zu.<br />
Den obigen Code können wir so auch verkürzt aufschreiben:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000066; font-weight: bold;">int</span> zahl <span style="color: #339933;">=</span> <span style="color: #cc66cc;">5</span><span style="color: #339933;">;</span></pre></div></div>

<p>Jetzt kann man beim weiteren Programmieren auf diese Variable zugreifen, sie verändern oder mit ihr Rechnungen durchführen. Dazu dieses Beispiel:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">class</span> VariablenTutorial
<span style="color: #009900;">&#123;</span>
  <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span>
  <span style="color: #009900;">&#123;</span>
    <span style="color: #000066; font-weight: bold;">int</span> zahl <span style="color: #339933;">=</span> <span style="color: #cc66cc;">5</span><span style="color: #339933;">;</span>
    <span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Ich bin die Variable zahl! Mein Wert ist: &quot;</span> <span style="color: #339933;">+</span> zahl<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    zahl <span style="color: #339933;">=</span> <span style="color: #cc66cc;">3</span><span style="color: #339933;">;</span>
    <span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Ich bin die Variable zahl! Mein Wert ist: &quot;</span> <span style="color: #339933;">+</span> zahl<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    zahl <span style="color: #339933;">=</span> zahl <span style="color: #339933;">+</span> <span style="color: #cc66cc;">3</span><span style="color: #339933;">;</span>
    <span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Ich bin die Variable zahl! Mein Wert ist: &quot;</span> <span style="color: #339933;">+</span> zahl<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Die Ausgabe dieses Programmes sollte wie folgt aussehen:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">Ich bin die Variable zahl<span style="color: #000000; font-weight: bold;">!</span> Mein Wert ist: <span style="color: #000000;">5</span>
Ich bin die Variable zahl<span style="color: #000000; font-weight: bold;">!</span> Mein Wert ist: <span style="color: #000000;">3</span>
Ich bin die Variable zahl<span style="color: #000000; font-weight: bold;">!</span> Mein Wert ist: <span style="color: #000000;">6</span></pre></div></div>

<p>Was geschieht nun in unserem Programmablauf?<br />
In der ersten Zeile der main-Methode erstellen wir eine Variable zahl, die den Wert 5 zugewiesen bekommt. Danach rufen wir System.out.println() mit einem Text auf und übergeben unsere Variable. In der dritten Zeile überschreiben wir unsere Variable mit einem neuen Wert und geben wieder eine Meldung auf der Konsole aus. In der fünften Zeile rechnen wir mit dieser Variable. Der Wert der Variable zahl, der jetzt 3 ist, wird mit 3 addiert und das Ergebnis wird wieder in unsere Variable zahl gespeichert. Eine erneute Ausgabe auf der Konsole zeigt uns, dass die Variable zahl jetzt den Wert 6 angenommen hat.<br />
Was dieses &#8220;int&#8221; da vor der Variable zu suchen hat, klären wir im nächsten Tutorial. Freut euch drauf!</p>
]]></content:encoded>
			<wfw:commentRss>http://coder-blog.de/java-tutorial-variablen/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Erster Eintrag</title>
		<link>http://coder-blog.de/erster-eintrag</link>
		<comments>http://coder-blog.de/erster-eintrag#comments</comments>
		<pubDate>Sun, 22 Mar 2009 08:29:47 +0000</pubDate>
		<dc:creator>Eugen</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[affiliate marketing]]></category>
		<category><![CDATA[coder-blog.de]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[google analytics]]></category>
		<category><![CDATA[informatik]]></category>
		<category><![CDATA[lernen]]></category>
		<category><![CDATA[seo]]></category>
		<category><![CDATA[studium]]></category>
		<category><![CDATA[suchmaschinenoptimierung]]></category>
		<category><![CDATA[tld]]></category>
		<category><![CDATA[todo]]></category>
		<category><![CDATA[web2.0]]></category>

		<guid isPermaLink="false">http://coder-blog.de/?p=3</guid>
		<description><![CDATA[Um mal auf den Web2.0 - Hype aufzuspringen habe ich mir eben ein Blog mit Wordpress erstellt.
Wie es scheint, ist hier noch einiges zu tun. <a href="http://coder-blog.de/erster-eintrag">mehr <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Um mal auf den Web2.0 &#8211; Hype aufzuspringen habe ich mir eben ein Blog mit WordPress erstellt.</p>
<p>Wie es scheint, ist hier noch einiges zu tun. Die vorläufige ToDo-Liste sieht wie folgt aus.</p>
<p>ToDo:</p>
<ul>
<li>eine anständige TLD für dieses Blog bestellen (done &#8211; coder-blog.de)</li>
<li>eigenes Design erstellen</li>
<li>Artikel aus dem ersten Semester des <a title="Informatikstudium der TU Berlin" href="http://www.eecs.tu-berlin.de/" target="_blank">Informatikstudiums</a> nachschreiben</li>
<li>bei <a title="Google Analytics" href="http://www.google.com/analytics/de-DE/" target="_blank">Google Analytics</a> anmelden (done &#8211; Tracking Code eingebunden)</li>
<li>Keywords <a title="Trafficmaxx Suchmaschinenoptimierung" href="http://www.trafficmaxx.de/suchmaschinenoptimierung.htm" target="_blank">SEO</a> &#8211; vorteilhaft aussuchen (vorläufige Keywords gefunden)</li>
<li>eventuell ein wenig <a title="Zanox Affiliate" href="http://www.zanox.com/de/" target="_blank">Affiliate Marketing</a> betreiben, damit Kosten des Blogs gedeckt werden (Bewerbungsphase)</li>
</ul>
<p>So, genug Werbung gemacht!  XD</p>
<p>Sollten diese Punkte nicht demnächst abgearbeitet worden sein, bin ich entweder noch im Winterschlaf oder die Motivation für das Blog ist dahin. <img src='http://coder-blog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  Wahrscheinlicher ist aber, dass ich wegen des Studium keine Zeit habe irgendwelche Artikel zu schreiben.</p>
<p>Aber ich werde mich bemühen mich in den Arsch zu treten und mich darum zu kümmern, denn ein weiterer Nebeneffekt, der nicht zu verachten ist, dass dieses Blog mir auch dazu dienen kann, meinen mehr oder weniger gelernten Stoff besser zu verstehen.</p>
<p>Wir werden sehen &#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://coder-blog.de/erster-eintrag/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

