Website Ladezeit & PageSpeed verbessern: So geht´s!

Website PagespeedDie Seitenladezeiten einer Website sind nicht nur für Usability und Traffic entscheidend, sondern spielen auch für die SEO Optimierung eine große Rolle. Google gab im Blog 2012 bekannt, dass der PageSpeed einer Website direkt in das Ranking mit einfließe.
Sicherlich macht der Pagespeed nur einen geringen Teil des Rankings aus, doch er kann einer Website bei totalen Abweichungen schaden. Daher macht es Sinn, die Seitenladezeit zu optimieren. Wie man das mit kleinen Verbesserungen schnell erreichen kann, zeige Ich in diesem Artikel. 5 Tipps für schnellere Seitenladezeiten!

 

Warum der Pagespeed einer Website wichtig ist

Die Seitenladezeiten einer Website sind für Besucher sehr wichtig. Leute, die auf der Suche nach einem bestimmten Produkt oder Artikel sind, der genau ihren Vorstellungen entspricht, entscheiden sich in kürzester Zeit, ob Sie ihre Website lesen oder Sie sich eine Alternative suchen sollten. Wird der Besucher dann auch noch durch lange Wartezeiten an seiner Recherche gehindert, sinkt seine Kaufbereitschaft und sein Interesse.

Man könnte die Aussagen als belanglose Thesen abstempeln, doch eine Studie von Amazon bewies, dass die Conversion Rate pro 0.1 Sekunden zusätzlicher Antwortzeit um 1% sinke (Conversion = Bestimmtes Ziel einer Website, das erreicht werden soll. Bei Onlineshops ist der Verkauf eine Conversion). Demnach macht eine Sekunde Unterschied einen Verlust von 10% aus.

Vorteile von schnelleren Webseiten:

  • Mehr organische Zugriffe über Suchmaschinen durch die PageSpeed Berücksichtigung
  • Höhere Conversion Rate

Testen Sie die Geschwindigkeit ihrer Website:Auf webpagetest.org erhalten Sie detallierte Informationen und Statistiken (ohne Anmeldung)!

1. Http-Anfragen reduzieren

Jede Anfrage über ein Http-Request kostet Zeit. Der Grund, warum Ich dies an erster Stelle benenne, liegt in der Natur der Sache.

Http Verbindungen unterstützen keinen Datenstrom. Für jedes geladene Bild /Stylesheet wird eine neue Verbindung aufgebaut und im Anschluss wieder getrennt. Für Besucher von Smartphones und Tablets, die über mobiles Internet surfen, ist das sehr aufwändig und zeitraubend.

Optimierung: Überlegen Sie, welche Ressourcen wirklich benötigt werden. Versuchen Sie, externe Inhalte möglichst direkt zu integrieren. Javascript Code muss nicht zwangsweise extern eingebunden werden. Stattdessen empfiehlt es sich, den Quellcode direct über <script> und </script> einzubinden.

 

2. Verschiedene Bildergrößen bereitstellen (Skalieren)

Bei Websites, die mit vielen Bildern arbeiten, machen diese einen großen Anteil der Datenmenge aus. Ein weiterer Grund, Bilder zu skalieren und in möglichst vielen verschiedenen Größen bereitzustellen. Wer eine Seite mit dem Smartphone aufruft und ein großes Bild herunterladen muss, das im Nachhinein sowieso verkleinert wird, bekommt das Bild nicht in besserer Qualität zu sehen als ein für kleine Bildschirme optimiertes Bild.

Optimierung: Stellen Sie im Optimalfall drei Größen für Bilder bereit, die häufig zum Einsatz kommen. Je nach Displaygröße laden Sie dann das entsprechende Bild. Wie sie verschiedene Größen einer Datei bereitstellen und diese (ohne Javascript!) abhängig vom Gerät anzeigen, habe Ich im Artikel Schnellere Ladezeiten durch Conditional Loading gezeigt. Ein nützlicher Service zur Bildverkleinerung ist tinipng.com, der PNG Bilder möglichst verlustfrei komprimiert.

 

3. Dateien bereithalten: Browser-Cache benutzen

Es macht keinen Sinn, alle Elemente einer Seite bei jedem Aufruf neu zu laden. Abhilfe dagegen schafft das nicht unbekannte Browser Caching. Über den Header der Website teilen Sie dem Browser mit, wie lange er die Elemente lokal speichern soll.

Optimierung: Über die Header Daten können Sie einen „Expires“ Wert angeben. Wie der Name schon suggeriert, legt man mit diesem Wert das Ablaufdatum fest. So wird ein Bild nicht bei jedem Aufruf neu geladen, sondern beispielsweise alle 2 Wochen. Google empfiehlt: Bilder mindestens 1 Woche im Browser Cache speichern!

 

4. Javascript im Footer laden

Optimierung: Laden Sie Javascript Quellcode erst am Ende der Seite. Dies hat den entscheidenden Vorteil, dass erst der Inhalt dargestellt und erst im Anschluss das Script geladen wird. Der Besucher kann ihren Inhalt also bereits lesen, während der Browser das Script noch herunterlädt. Auch Besuchertools (z.B. Google Analytics) können im Footer geladen werden.

 

5. CSS & Javascript komprimieren

Eine weitere Stütze zur Pagespeed Optimierung kann die Komprimierung von CSS- und Javascript Ressourcen sein. In CSS Stylesheets befinden sich oft Kommentare und viele Leerzeichen sowie Zeilenumbrüche, die der Benutzer nicht braucht.

Optimierung: Ich empfehle: Speichern Sie eine lesbare und eine komprimierte Version ab. Arbeiten Sie immer an der lesbaren Version und erzeugen Sie daraus wieder eine komprimierte Datei. Laden Sie schließlich nur die komprimierte Datei auf den Webserver. Für diese Aufgabe gibt es die nützlichen Tools csscompressor.com und javascriptcompressor.com. Der Name sollte die Funktionalität bereits erklären 🙂

 

Fazit

Die Pagespeed Optimierung kann für Websites, die sich bisher nicht damit beschäftigt haben, relativ einfach mit üblichen Werkzeugen durchgeführt werden. Im Anbetracht des Aufwands lohnt sich die Optimierung defitnitiv. Wer die Seitenladezeit seiner Website testen möchte, kann das über Pagespeed Insight von Google tun. Auf CoderDesigner gibt es ebenfalls einen interessanten Artikel über Google Pagespeed.

Quellen:

http://www.torbenleuschner.de/blog/730/pagespeed-so-machst-du-deine-website-schneller/
http://unbounce.com/conversion-rate-optimization/a-fast-web-site-increases-conversions/
http://javascriptcompressor.com/
http://csscompressor.com/

Bild: Bernd Kasper  / pixelio.de

Website Pagespeed verbessern – Schnellere Ladezeiten durch Conditional Loading mit Media Queries

Responsive WebdesignSeitenladezeiten sind ein durchaus entscheidender Faktor in puncto Usability. Der vor allem durch Smartphones hervorgerufene Unterschiede zwischen Displaygrößen stellen Webentwickler und Webdesigner vor neue Aufgaben. Aus einer statista.de Statistik geht hervor, dass bereits 2013 rund 95% der Internetnutzer mit einer Bandbreite von 2 MBit / s oder mehr im Internet surften. Von diesen Werten können Smartphone Nutzer beim mobilen Internet ohne einen LTE Tarif nur träumen.

Was ist Conditional Loading?

Conditional Loading – übersetzt „bedingtes Laden“ – ist der Mechanismus, Website Inhalte je nach Gerät in optimierter Form darzustellen. In der Praxis kann dies beispielsweise bedeuten, dass alle Geräte, deren Bildschirmbreite 500 oder weniger Pixel beträgt, ein 500 Pixel breites Hintergrundbild erhalten. Geräte, deren Breite 500 Pixel überschreitet, erhalten ein größeres Bild (z.B. mit 700 Pixel Breite). Es gibt verschiedene Arten des Conditional Loadings.

Alle guten Dinge sind Drei

Man kann über eine Klasse wie MobileDetect überprüfen, ob der Besucher eine Website von einem Smartphone, Tablet oder Desktop PC aufruft. Die Methode finde ich allerdings nicht optimal, da Design & Programmlogik vermischt werden müssten. Man müsste sich im Script um die Darstellung kümmern. Javascript lässt sich ebenfalls für Conditional Loading verwenden, indem man die Breite und Höhe der Geräte über die Standard Javascript Funktionen abfragt. Mein Favorit bleibt jedoch das Conditional Loading über CSS. Seit CSS 3.0 ist es möglich, mithilfe einiger Längenattribute eigene Stylesheets für bestimmte Gerätegrößen zu definieren.

 

Media Queries – Das individuelle Stylesheet

Media Queries sind relativ simpel. Sie werden innerhalb eines Stylesheets definiert und überschreiben die CSS-Eigenschaften speziell für ein gewisses Gerätemedium oder eine Gerätegröße.

Die Queries funktionieren wie eine if-Abfrage und sind wie folgt aufgebaut: media <Medientyp> and (weitere Attribute, z.B. Gerätebreite)

Eine Beispiel Query, die alle Geräte mit einer Breite von 500 Pixeln auswählt, sähe wie folgt aus:

@media all and (min-device-width: 500px) {
spezielle CSS Eigenschaften für Geräte mit einer Breite von <500px
}

Als Medientypen kann man zahlreiche Werte definieren, darunter beispielsweise print zum Druck der Website oder handheld für Geräte die üblicherweise in der Hand gehalten werden. Eine Übersicht über die Medientypen lässt sich dem Dokument von SelfHtml zu Mediaqueries entnehmen. Ich verwende für Responsive Webdesign dennoch meist all als Medientyp, weil die entsprechenden Stylesheets dann auch auf Desktop PCs geladen werden, was ich ebenfalls sinnvoll finde.

Stylesheets auf die Gerätegröße zurechtschneiden (Unterschied zwischen Geräte- und Fensterbreite)

Widmen wir uns nun den Größenangaben der Geräte. Es gibt einen wesentlichen Unterschied bei den Attributen, den man bei der Implementierung beachten sollte: Man kann für die Media Queries die Gerätegröße oder die aktuelle Größe des Browserfensters als Bedingung festsetzen. Der Unterschied ist für Besucher von Desktop PCs besonders entscheidend. Wenn man die Gerätebreite für das nachfolgende Stylesheet auf 500 Pixel festsetzt, dann wird es nur für entsprechend kleine Geräte verwendet. Setzt man jedoch nur die Breite als Bedingung fest, laden auch Browser, deren Browserfenster die Breite unterscheidet, diese Eigenschaften.

Media Query für Gerätebreite

@media all and (max-device-width:749px){
Stylesheet
}

Media Query für Breite des Browserfensters

@media all and (max-width:749px){
Stylesheet
}

 

Bilder von Gerätegröße abhängig herunterladen

Ziel ist es, durch das Conditional Loading Datenmengen einzusparen, die unnötig übertragen werden. In der heutigen Zeit mag dies auf den ersten Augenblick vielleicht “sinnlos” zu wirken, doch für Smartphone Besucher können macht die Datenmenge einen großen Teil der Usability aus. Das W3 Konsortium empfiehlt sogar ein Maximum von 20KB für mobile Websites. Aus diesem Grund laden wir die verkleinerten Bilder für Mobilgeräte über CSS.

Ein Browser arbeitet immer mit dem letzten CSS-Wert, den er versteht. Aus diesem Grund nimmt man beim Stylesheet eine Abstufung vor. Die Bedingungen werden von oben nach unten immer kleiner. Erst definieren wir in unserem Beispiel das Stylesheet für alle Geräte, dann für 750 Pixel Breite und zu guter Letzt für 500 Pixel Breite. Ich empfehle, für statische Bilder am besten 3 oder mehr Versionen anzulegen. Groß, mittel und klein. Hier ein Beispiel zur Implementierung:

 

#teaser{
background-image: url(background-image.jpg);
}
 
@media all and (max-width:750px{
 
#teaser{
background-image: url(background-image-middle.jpg);
}
 
}
 
@media all and (max-width:500px{
 
#teaser{
background-image: url(background-image-small.jpg);
}
 
}

 

Welche Technik nutzt ihr für Responsive Webdesign Bilder? Lasst es mich in den Kommentaren wissen! 🙂

 

 

 

Bild: Jorma Bork  / pixelio.de

Wie funktionieren Domains und wie registriere ich eine Domain?

Domains sind für Websiten unerlässlich. Sie sind das Salz zur Suppe. Wer im Internet gefunden werden will, der braucht eine eigene Domain. Technisch ist eine Website auch ohne Domain zu erreichen, jedoch surft kein Mensch auf diese Weise im Netz. Wie das Prinzip Domain <> Website funktioniert und wie man sich eine eigene Domain erstellen kann, zeige ich in diesem Beitrag.

Was ist eine Domain?

Eine Domain funktioniert wie eine Adresse. Wenn Ich jemanden besuchen möchte und nur die Information habe, dass derjenige ein Haus besitzt, hilft mir das nicht weiter. Ich brauche die Adresse, um zum Ziel zu gelangen. Das gleiche Prinzip gilt für Websites. Eine Website liegt auf einem Server. Um darauf zugreifen zu können, benötige ich die IP-Adresse des Servers. Die Domain ist praktisch nichts anderes als eine für Menschen lesbare Darstellung einer IP-Adresse.

 

So funktioniert der Aufruf einer Website

  • Der Besucher fragt eine Website an (z.B. www.maxkops.de)
  • Der sogenannte Domain Name Server wandelt den Domainnamen in eine IP-Adresse um (z.B. 109.237.130.79)
  • Der Besucher baut nun eine Verbindung zum Webserver auf und sieht den gewünschten Inhalt

 

domain_server_umleitung

 

Wie erstelle ich eine eigene Domain?

Für jede Domainendung (z.B. .de/.at/.com) gibt es eine zentrale Verwaltungsstelle. Diese verwaltet die Domains und die Inhaberdaten und kümmert sich um die Bereitstellung der Adressen. Für .de Domains ist die DENIC zuständig. Wichtig ist, dass es jede Domain logischerweise nur ein einziges mal geben darf.

Wenn Sie ihre eigene .de Domain einrichten möchten, brauchen Sie einen Hoster, der sich um die Einrichtung kümmert. Für jede Adresse muss monatlich ein gewisser Betrag entrichtet werden. Für .de Adressen liegt der Betrag im Raum von 0,39€ bis 0,99€. Die Verträge laufen immer mindestens 12 Monate und werden in der Regel auch jährlich abgerechnet. Sie bezahlen also bspw. 7€ und „mieten“ die Domain für 12 Monate. Ich benutze bewusst das Wort „mieten“, da man eine Domain nie wirklich besitzen kann. Die Verwaltung obliegt immer der jeweiligen Verwaltungsstelle wie der DENIC. Sie können die Domains dort lediglich registrieren.

 

Eine eigene Domain für meinen Blogspot / Blogger Account erstellen
Ebenfalls oft wurde ich gefragt, wie man eine eigene Domain für einen bestehenden Blog, der bei einem kostenlosen Anbieter wie Blogger gehostet ist, einrichten kann. Es reicht, eine Domain bei einem Anbieter zu registrieren. Nachdem Sie die Domain erfolgreich registriert haben, können Sie eine Weiterleitung einrichten.

Eine Domain umziehen
Ein Domainumzug findet immer mit einem sogenannten Autorisierungscode (AuthCode) statt. Der aktuelle „Besitzer“ einer Domain kann den AuthCode bei seinem Hoster anfordern. Mit dem Authcode kann man eine Domain dann zu jedem anderen Hoster umziehen oder Sie an eine andere Person übergeben.

Wie entscheide Ich mich für einen Hoster?

Oft werde Ich gefragt, welcher Hoster denn der Beste sei. Dies kann ich definitiv nicht pauschal beantworten. Möchte man lediglich eine Domain registrieren, die man als Weiterleitung auf einen bestehenden Blog wie Blogspot / Blogger benutzt, dann ist der Unterschied zwischen den Anbietern meist nicht groß. Die Verwaltung erfolgt immer noch bei der Domain-Verwaltungsstelle. Der Hoster ist in dem Falle nur ein Vermittler. Solange der Hoster seriös ist und akzeptable Kündigungs- und Vertragsverhältnisse bereitstellt, kann er frei gewählt werden.

Bekannte Hoster
Bekannte Hoster sind Strato und. Bei Strato habe Ich mit Domains bisher nur positive Erfahrungen gemacht. Godaddy ist ein Hoster mit Sitz in den USA und hat mittlerweile mehr als 12 Millionen Kunden.

Lockangebote
Achten Sie bei Angeboten auch auf den Preis ab dem 2. Jahr. Meist bieten Hoster sehr vergünstigte Domains an, die dann nach 12 Monaten kräftig zu Buche schlagen.

Domain + Speicherplatz
Möchte man neben der Domain auch Speicherplatz (Webspace) mieten, empfiehlt es sich, einen Vergleich durchzuführen. Auf Hosttest kann man den Tarif nach eigenen Bedürfnissen anpassen und die verschiedenen Anbieter vergleichen.
Ich hoffe, dass Ich die wichtigsten Details und Fragen zu Domains geklärt habe.

Wofür nutzt ihr Domains und welchen Anbieter verwendet ihr? Schreibt doch einen Kommentar unter diesem Beitrag! 🙂

Bild:

Adblocker: Ist es unfair, Werbung zu blockieren?

open-house-1163357_640 AdBlocker! Jeder kennt Sie, viele benutzen ihn. AdBlocker erledigen eine ziemliche genaue Sache: Sie blockieren Anzeigen auf Websites. Installiert werden diese Tools als Browser Plugin. Das momentan beliebteste Plugin ist AdBlock Plus. Hier möchte Ich mich nicht mit dem technischen Aspekt beschäftigen, sondern viel mehr Hintergrund, Folgen und die moralische Seite beleuchten.

 

 

 

 Mehrwert für den Nutzer

Der Mehrwert für den Nutzer ist sehr eindeutig: Nervige und agressive Werbung wird kurzerhand   ausgeblendet. Webseiten werden auf ihren Inhalt beschränkt, quasi auf das, was der Besucher zu lesen wünscht. Dem Benutzer eines Adblockers entstehen faktisch nur Vorteile.

 

Auswirkungen für Webmaster und Blogger

Nutzern, die ein entsprechendes Plugin nutzen, werden keine oder nur wenige Anzeigen eingeblendet. Anzeigen sind für den Großteil der Website-Betreiber die wichtigste Einnahmequelle. Sie funktioniert ohne eine Investition der Besucher. Der Betreiber wird entlohnt, ohne dass der Besucher dies bezahlt. Werden diese Anzeigen nun nicht mehr ausgeliefert, entfällt mit der Einnahmequelle auch eine wesentliche Existenzgrundlage.

 

Sind AdBlocker unfair?

Ich persönlich verwende der Fairness halber keinen AdBlocker. Leute, die mir unentgeldlich Informationen liefern, sollten in meinen Augen für ihren Aufwand entlohnt werden. Kann ich diese Entlohnung liefern, ohne selbst direkt dafür zu bezahlen, dann nutze ich diese Möglichkeit.

Andererseits kann ich auch einen Teil der AdBlock Nutzer verstehen. Allerdings nur, wenn das Blocken selektiv und nicht prinzipiell erfolgt. Die Plugins bieten Möglichkeiten, Ausnahmeregeln hinzuzufügen oder das Blocken einzuschränken. Auf Webseiten, die auf den ersten Blick mehr Anzeigen als Content zeigen, ist ein AdBlocker durchaus angebracht. Auf Websites, die einige Text-Anzeigen oder Banner am Seitenrand platzieren, finde ich das Blocken unangebracht.

Ein mittlerweile noch geringerer Teil der Internetnutzer verwendet zur Danksagung Micropayment Dienste wie flattr. flattr bietet die Möglichkeit, Produzenten diverser Medien (Musik, Text, Video,…) zu unterstützen. Der Benutzer leistet eine monatliche Zahlung, deren Höhe er selbst bestimmt. Dieses Geld wird dann – abzüglich einer geringen Betreibergebühr – an die selbst ausgewählten Produzenten aufgeteilt. Webmaster binden einen Button ein, auf den Nutzer klicken können, um sie über flattr zu unterstützen. Der Dienst lässt sich ebenfalls mit sozialen Netzwerken wie Instagram verbinden, sodass auch die Produzenten eines Bilds, das man mit „gefällt mir“ markiert, einen Teil des Betrags erhalten. Micropayment Dienste sind aufgrund ihrer Einfachheit eine tolle Möglichkeit, Leute zu unterstützen, die einen Mehrwert bieten. Dennoch basieren Sie auf der Eigenleistung des Unterstützers.

Der erste Schritt, einen Webmaster zu untersützen ist, den Adblocker zu deaktivieren.

 

Screenshot des AdBlock Plus Plugins

 

Bild: Newchurch/flickr.com/cc-by

Google integriert Bitcoin Währungsumrechner in die Suche

BitCoin_Logo_With_US_DollarAuch Google gewährt dem Bitcoin in seinem Währungsumrechner Präsenz. Ab sofort können Bitcoins über die Google Suche mit dem integrierten Bitcoin Währungsrechner in alle bestehenden Währungen des Tools umgerechnet werden.
Bing ergänzte seinen hauseigenen Umrechner bereits vor fünf Monaten um die zur Zeit beliebteste Crypto-Währung.

Die Beachtung eines so großen und einflussreichen Unternehmens zeigt erneut, wie verbreitet die seit 2009 existierende Crypto-Währung ist. Zu der Breitentauglichkeit von Bitcoins schrieb ich bereits einen Artikel.

Wie und Wo kann ich den Umrechner nutzen?

Der Umrechner lässt sich leicht über die Google Suche bedienen, indem man die beiden Währungen wie gesprochen angibt. Möchte man Euro in Dollar umrechnen, reicht beispielsweise eine Suche nach „5 euro in dollar“. Lässt man die Zahl weg, erhält man den gewünschten Wechselkurs.

Eine Bitcoin Umrechnung ist bisher nur über die Google.com Website in englischer Sprache verfügbar. So kann eine Anfrage aussehen:

Google Bitcoin Umrechnung [Bild]

 

 

Wie kann ich den Bitcoin Währungsrechner aktivieren?

Da die Bitcoin Konvertierung momentan nur auf der englischen Google.com Website möglich ist, muss man die Spracheinstellungen als Nutzer einer anderen Google Seite (.de / .at / .ch / …) anpassen.

 

 

 

Öffnen Sie dazu die SGoogle Spracheinstellungenucheinstellungen und das Untermenü Sprache

 

 

 

 

 

 

 

 

 

Wählen Sie nun English als Sprache aus und speichern Sie die Änderungen. Die Funktion steht ihnen anschließend zur Verfügung.

Google Spracheinstellungen 2

 

Viel Spaß!

 

Die Bedeutung von Google für den Bitcoin

Die Integration seitens Googles zeigt erneut, dass der Bitcoin allgemeine Beachtung findet. Google zeigt sein Interesse und sein Vertrauen in Kryptowährungen mit diesem Tool und verleiht dem Bitcoin eine höhere Liquidität. Offenbar werden die virtuellen Zahlungsmittel von großen Unternehmen aus der IT-Branche als sinnvoll empfunden. Nicht zuletzt die geplante Nod to Pay Funktion für Google Glass Datenbrillen zeigt, dass sich der Bitcoin in naher Zukunft als beständiges Zahlunsgmittel etablieren und für den Alltagsgebrauch bewähren könnte.
Quellen:
http://google.com
http://www.chip.de/news/Google-Waehrungsumrechnung-nun-auch-fuer-Bitcoin_71026973.html

Bild: BitCoin Logo With US Dollar“ by Web-dev-chrisOwn work. Licensed under CC0 via Wikimedia Commons.

PHP: Sichere Formulare und Datenübermittlung

Kein Webentwickler kommt um Formulare herum. Sie sind ein nicht wegzudenkender Teil des World Wide Webs und auf nahezu jeder Website vorhanden. Ist es nun die Kommentarfunktion, ein Kontaktformular oder ein Login-System, in allen drei Fällen haben wir es mit Benutzereingaben zu tun. Die Eingaben sollten immer entsprechend gesichert sein, um böswilligen Handlungen zu aus dem Weg zu gehen. Welche Angriffsmöglichkeiten es bei Formularen gibt und wie man Sie als Entwickler verhindern kann zeige Ich euch hier!

 

1. Cross-Site-Scripting (XSS)

Ich beginne mit dem Cross-Site-Scripting (kurz: XSS), weil die Lücke potentiell bei allen Scripts vorhanden ist, die eine zuvor erfolgte Benutzereingabe ausgeben. Damit habe Ich auch schon das wesentliche Prinzip erklärt: Bei XSS Attacken versucht der Angreifer in der Regel, Javascript Code einzuschleusen. Er sendet also ein mehr oder weniger gefährliches Script an ihr PHP Script. Wenn man diese Eingabe nicht filtert, wird der Javascript Code ausgeführt.

Um das praktisch zu erläutern: Wenn Ich über ein ungeschütztes Formular einen Kommentar schreiben würde und als Name den folgenden Javascript Code angebe, dann würde jeder Besucher automatisch auf meine Webseite weitergeleitet, wenn er den Kommentar aufruft:

 

<script>
window.location="http://maxkops.de";
</script>

Das Ausmaß dieses Fehlers wird schnell klar. Doch eben so leicht ist die Lösung des Problems! PHP bringt dafür die htmlentities Funktion mit. Der übergebene String wird von allen HTML Tags befreit. Eine Javascript Ausführung ist so nicht mehr möglich:

htmlentities($_POST['koomentarinhalt'], ENT_QUOTES);

Der Parameter ENT_QUOTES bewirkt, dass auch einfache Anführungszeichen entfernt werden. Es empfiehlt sich, generell auf diese Funktion zu setzen. Früher wurden Strings auch mit str_replace „gesichert“, indem z.B. „<script>“ mit einem Leerzeichen ersetzt wurde. Dies ist aber nicht sicher, wie Wir bereits in diesem Artikel gezeigt haben.

Man sollte die Funktion ebenfalls bei der Verwendung von $_SERVER[‚PHP_SELF‘] gebrauchen.

Hinweis:

Wenn ein Formularfeld einen bestimmten Datentyp erwartet, ist es einfacher, die Variable zu casten. Wenn ich den Typ mit int auf eine Zahl setze, werden automatisch alle anderen Zeichen entfernt.

 

2. SQL Injection

Die SQL Injection ist eine ebenso beliebte und gefährliche Angriffsmöglichkeit für Datenbanken. Eine entsprechende Injection schleust einen SQL Code ein, mit dem man möglicherweise Änderungen an der Datenbank vornehmen kann. Als Beispiel nehme ich folgende SQL Anfrage:

SELECT * WHERE `name` = '$suche'

$suche ist die Benutzereingabe, die getätigt wird. Durch eine Eingabe eines einfachen Anführungszeichens kann man den String in der SQL Anweisung schließen. Alles was danach folgt, wird als normaler SQL Befehl verstanden. Lautet die Eingabe also

' OR WHERE '1' = '1

dann entsteht folgende SQL Anweisung:

SELECT * WHERE `name` = '' OR WHERE '1' = '1'

Es werden also nicht nur die Zeilen ausgewählt, in denen der Name ein leerer String ist, sondern alle. (‚1‘ = ‚1‘ ist immer erfüllt.) Bisher ist das zwar nicht dramatisch, hängt der Angreifer jedoch einen DELETE Befehl an, sind die wertvollen Daten schneller gelöscht als Ihnen lieb ist.

 

3. Datei Uploads

Datei Uploads sind nützliche Funktionen einer Website, man sollte Sie aber nicht zu leichtsinnig einsetzen. Vor der Implementierung eines Upload Formulars sollte feststehen, wofür dieses genutzt werden soll (z.B. Bilder) und welche Dateitypen akzeptiert werden sollen (z.B. JPG,PNG,TIF). Lassen Sie nur diese Dateitypen zu! Wenn keine Filterung erfolgt, können auch PHP Dateien hochgeladen und anschließend auf ihrem Webserver ausgeführt werden. So wird die nette Fotoupload Homepage schnell zur Spamschleuder.

 

Hierzu ein kleines Snippet:

$erlaubte_dateitypen = array("image/gif", "image/jpg");

$dateityp= $_FILES['datei']['type'];
if(in_array($dateityp,$erlaubte_dateitypen){
//Upload durchführen
}
else{
echo "Unerlaubte Dateiendung";
}

 

Personalisiertes Onlineshopping: Wie gehen Shops mit ihren Daten um?

Look, you got Mail!
photodesk.at

Zwei Drittel der Deutschen kaufen Online

Onlineshopping ist längst kein Small Business mehr. Mittlerweile kaufen zwei Drittel der deutschen Bevölkerung online ein. Eine Frage, die sich dabei immer wieder stellt, ist das personalisierte Einkaufen. Damit ist die Sammlung und Auswertung von ihren Daten und Kaufgewohnheiten gemeint, mithilfe derer Sie relevante Empfehlungen erhalten. Jeder, der schon einmal bei Amazon eingekauft hat, kennt diese Marketingstrategien.

Warum die global player so viel Wert auf unsere Daten legen

Ist dieses angewandte personal marketing nun ein Mehrwert für den Käufer, oder verkaufen wir damit lediglich unsere sensiblen Daten an große Konzerne, die Sie nur für eigene Zwecke verwenden? Zunächst einmal sind die Händler daran interessiert, jedem Kunden seine eigenen und auf ihn zugeschnittenen Angebote zu präsentieren. Dabei ist nichts wertvoller als Informationen zur Kaufverhalten, Interessenkategorien und sozialem Hintergrund. Die Unternehmen werden diese wertvollen Informationen also aufgrund ihres Werts nur für sich selbst nutzen wollen. Ein Weiterverkauf wäre unprofitabel.

Mein zugeschnittener Einkauf. Ein Mehrwert oder reiner Kommerz?

Die Argumente gegen Verkaufsstrategien dieser Art sind nicht immer von der Hand zu weisen und durchaus verständlich. Ich habe mich mit der Frage „Personalisiertes Onlineshopping – Ja oder nein?“ genauer auseinandergesetzt und eine Infografik entworfen, die Vor- und Nachteile darstellt. Es sollte letztendlich jeder selbst entscheiden, ob er im personalisierten Shopping einen Mehrwert oder einen Identitätsverlust sieht. Deswegen habe ich beide Seiten aufgegriffen. Wer sich für zugeschnittenen Einkauf ausspricht, der muss prinzipiell nichts tun, um die Vorteile weiterhin genießen zu können. Wer dem jedoch entkommen möchte, kann dies nur erreichen indem er dort einkauft, wo bisher noch keine entsprechenden Mittel zum Einsatz kommen. Dazu zählt mittlerweile jedoch nur noch der kleine Fachhandel oder Newcomer in der Branche.

 
(Auf das Bild klicken, um es zu vergrößern)


Infografik

Quellen:
http://www.bitkom.org/de/presse/78284_77580.aspx

Mit dem Smartphone auf Reise: Neue Roaming Tarife in der EU

Coffee in the MorningCreative Commons License jenny downing  Khánh Hmoong 

 

 

Ab dem 01.07.2014 gelten wieder neue EU Roaming Tarife für Gespräche, SMS und mobiles Internet. Die Regelungen haben sich für Nutzer nur verbessert, viele Aktivitäten mit dem Smartphone sind wesentlich günstiger geworden.

Kostenlose Übersicht als PDF am Ende des Artikels als Download!

 

Preisänderungen zum 1. Juli

Das neue EU-Gesetz tritt ab 1. Juli in Kraft und schränkt die Mobilfunkpreise zu Gunsten der Endverbraucher weiter ein.
Ankommende SMS von weltweit sind innerhalb der EU kostenlos.
SMS innerhalb der EU kosten nur noch maximal 7,2 Cent.
Abgehende Anrufe schlagen dennoch mit maximal 22,8 Cent pro Minute zu Buche. Die eingehenden Anrufe sind jedoch mit (max.) 0,06€ zu bezahlen.

 

Daten-Roaming
Erstmals wird beim Internet an der richtigen Stelle gedrosselt, beim Preis: Datenuploads und -downloads dürfen in der EU per Gesetz nur noch höchstens 0,24€ pro MB kosten.

 

Der EU Notruf
Der EU Notruf 112 ist selbstverständlich kostenlos. Experten raten, sich diese Notfallnummer einzuspeichern, da sie in der gesamten EU und zusätzlich in Island, Liechtenstein, Monaco, Mazedonien, Montenegro, Norwegen, der Schweiz, Serbien und in der Ukraine erreichbar ist.

 

 

Ich habe ein Whitepaper mit den neuen Tarifen angefertigt. Wer sich die Übersicht abspeichern oder ausdrucken möchte, kann sie sich kostenlos herunterladen.

 

Hinweis: Es handelt sich bei den Tarifen um eine gesetzliche Vorgabe, die für alle Mobilfunkanbieter gilt. Es ist möglich, dass ihr persönlicher Provider niedrigere Preise verlangt, meist entsprechen die Romaing Preise jedoch den Vorgaben. Entsprechende Informationen finden Sie beim Anbieter selbst.

Droht die Bitcoin Mining Zentralisierung? GHash.IO wird gefährlich

Hü Hot 20/52
Creative Commons License Dennis Skley

Dezentralisierung der Bitcoins
Ein wesentliches Element von Bitcoins ist die Dezentralisierung. Sie ist Teil des ganzen Systems und in gewisser Weise notwendig, um das System aufrecht zu erhalten. Wer die Funktionsweise des Peer-To-Peer Netzwerks nicht mehr ganz auf dem Schirm hat, sollte sich zumindest darüber klar werden, dass man quasi das ganze System kontrollieren kann, wenn man die absolute Mehrheit besitzt. Einfach gesagt: Wenn jemand mehr als 50% der gesamten Hash-Leistung in das Netzwerk einspeist.
Bisher hat sich niemand große Sorgen darum gemacht, dass dieser Fall in der Praxis wirklich eintreten kann. Aufgrund der Masse an Bitcoin Minern auf der ganzen Welt ist es zunehmend schwerer geworden, einen großen Anteil der Hash-Leistung zu erzielen.

 

Ausgehende Gefahr von GHash.IO
Diesen Erwartungen zuwider zeigten die letzten Tage gefährliche Entwicklungen der Mining-Verteilung. Mit den 37.92 Ph/s, die GHash liefert, hätte der Pool einen Anteil von 42% bis zu 47%. Das kommt den nötigen 51% sehr nahe! Sollte GHash die Mehrheitsstellung erreichen, ist es dem Anbieter unter anderem möglich, sogenannte double spends durchzuführen, also einen Bitcoin mehrfach auszugeben. Diese Handlung würde dem Kerngedanken und der Funktionsweise von Bitcoins grundlegend widersprechen und sie aushebeln.

 

Statement vom Pool Betreiber
Der Pool Betreiber meldete sich bezüglich der 51%-Attacke wie folgt zu Wort:

“GHash.IO does not have any intentions to execute a 51% attack… it could risk our investments in physical hardware and we see no benefit from having 51% stake in mining”

…Was in etwa so viel bedeutet, dass seitens des Betreibers kein Interesse an einer 51% Attacke besteht, weil er die Hardware Investitionen nicht riskieren möchte. Weiter sieht er keinen Mehrwert darin, 51% der Hashing-Leistung zu kontrollieren. Es sollen präventive Maßnahmen ergriffen werden, beispielsweise die Kooperation mit einem Tool von dem cex.io Mining-Pool, über das die Leistung auf verschiedene Pools verteilt wird.

 

Schutz vor der Zentralisierung
Oben genannte Risiken und Gefahren einer Mining Konzentration sind nicht zu unterschätzen. Nicht zuletzt MtGox, einst der größte Bitcoin USD Marktplatz, hat uns gezeigt, wie schnell sich das Blatt einer seriösen und etablierten Firma wenden kann. Ich möchte GHash.IO damit nichts Bösartiges unterstellen, sondern allgemein vor eben diesem Problem warnen. Es zu verhindern ist nur möglich, indem man (zumindest teilweise oder zeitweise) auf GHash.IO verzichtet. Ein Pool kann noch so viele Vorteile haben, doch was nützen diese, wenn die Funktion des Bitcoin Systems dadurch gefährdet wird?
Ich persönlich nutze den „betroffenen“ Pool nicht, daher mache Ich andere Teilnehmer auf den Verzicht aufmerksam.
Was haltet ihr von davon? Nutzt ihr GHash und werdet ihr es meiden? Schreibt eure Meinungen in die Kommentare!

 

 

Update (14.06.2014)

GHash.IO hat es tatsächlich geschafft. Die 50% Marke ist überschritten, der Anbieter trumpft in Mining Statistiken mit Anteilen von ca. 51%. Was genau Sie damit anstellen oder nicht anstellen, ist noch unklar. Überspitzte Mutmaßungen möchte Ich mir auch sparen und auf den Verstand der Betreiber hoffen.

Quellen:
newsbtc.com
cryptocoinsnews.com
bitcoinblog.de
ghash.io

 

 

Google Glass: Nod To Pay Funktion ermöglicht Bitcoin Zahlungen durch Nicken

Googles Datenbrille Glass erhält mit Nod to Pay eine Funktion, die eine Bitcoin Bezahlung durch Nicken ermöglicht.

Das Startup Unternehmen Eaze aus den Niederlanden erfand die Technologie und veröffentlichte die erste Beta Version.
Mit Hilfe der Gestensteuerung wertet die App neben dem Nicken auch gesprochene Signale aus. So können schnell und unkompliziert Bitcoin Zahlungen durchgeführt werden. Der Zahlungsvorgang wird über bestehende Systeme, darunter der Marktplatz Coinbase und die Blockchain unter blockchain.org, abgewickelt.
Der Einsatz von Fiat Währungen wie Euro und Dollar ist bereits geplant.

Weiter gab Eaze an, dass die Technologie des niederländischen Startups die erste veröffentliche App dieser Art sei.