Archive for January, 2008

master is the name of my main work machine

Flattr this!

Comments Comments Off on Poor master

Well, its time to review my design ideas for the Ghost project.

Ghost aims to be a Full-featured Browser-based RPG. These are some fundamental ideas i had. Feel free to comment em.

  1. Game:
    • RPG style (long time playing, with levelign stats etc)
    • Basic Game is GPL (as it uses GPL things, less trouble if we release with GPL)
    • Make money with Graphics/Extension Packs (eg. a easy extension management), other ppl can provide own extensions.
  2. Client:
    • Browser game (works on FF for sure, IE would be fine, more others cool. For developement we only support FF.)
    • Use standalone FF as a downloadable game client (aka XUL Runner, PRISM etc), we can include graphics there (is secure?)
    • Thin Client. Client displays Data and sends back events to server.
    • No additional requirements, (X/HT)ML, JS and css only. NO PLUGINS
    • 2D Graphics.
    • Security is providen by server. Dont relly on Client input be of anything special. If a client sends bugged Data,never accep.
    • Since we use JS and a BrowserClient side code injection is easy. So we need be extra carefull with player input on server side.
  3. Server:
    • We use php as Language.
    • Game uses phpBB3 for User Management.
    • We use the phpBB3 DB Layer for DB access.
    • Webhoster-ready. We shouldnt require any special settings in the .htaccess or php.ini. Basicaly i want same requirements as phpBB3 (we may go for php5 only since some really usefull things added there)
    • Dont use timers or rely on tasks run on specific times. We use cron jobs like phpBB. But we are asynchron since we cant guarantee the game runs (if no one plays for some days)
    • Shall we use a existing (GPL)-RPG-Engine? It would be cool to make it work with any of those ASCII-Games.
    • No loops!
    • User interaction is done on server with the use of sockets. A output-Script will run until timed out, and send all needed things to the user. If we got shut down by server prozess we send a last exit message and then let the client restart us. This should be done by the basic game processes transparent for the game (so this would be a bi-directional communication via xml-http)
  4. Security
    • All input will be XML
    • All possible input needs be VALID in respect to a provided DTD.
    • Output XML needs be very strict so we dont open XSS trouble. (do we need rich-text??)
    • All operations need be tested for Thread safety. PHP has some trouble with this.
    • Usage of OO would maybe make us less vulnerable. On the other side OO will need some more server cpu. So I rather wont use OO. Lets stay functional as phpBB3 does.
    • Dont use php-hacks, keep code clean.
    • For XML DTD, do we use a hirarchical Tree or keep it in single DTDs? single ones are safer (not in general i think)?
    • If phpBB3 breaks, we break. Therefore we need a phpBB3 security Expert. By make our game a phpBB mod and follow the mod guidelines, we can get help from the phpBB3 ppl.

Flattr this!

Comments Comments Off on Fundamental programming design for ghost

heise online – Urteil: Kein Mitverschulden eines Phishing-OpfersDer Titel des Heise Artikels ist sehr Misslungen. Wie wir lesen können muss das Opfer nämlich einge Voraussetzungen erfüllen, die nicht nur trivial sind.

Als Mindestvoraussetzungen für einen solchen Schutz nennt das Gericht die Verwendung einer aktuellen Virenschutzsoftware und einer Firewall sowie das regelmäßige Einspielen von Sicherheitsupdates für das Betriebssystem sowie die verwendete Software.

Ich kenne selbst viele Menschen die auf automatische Updates vertrauen. Das wäre ja toll wenn es denn auch richtig funktionieren würde. Leider tut es das nicht. Das sehe ich beinahe täglich.

Die meisten meiner Freunde verwenden mitlerweile eine AV-Software. Das man für für die Standart installierte AV aber manchmal ein Abo kaufen muss wissen die wenigsten. Zumindest hier warnt Windows den Anwender.

Dieser Artikel stellt damit auch die Frage nach AV Software auf Linux/Mac. Tatsächlich gibt es solche. Sie wird meist für Fimren angebotn in denen einfach jeder Computer ein AV haben muss. Im allgemeinen werden diese AVs aber als  nutzlos angesehen. Im besten Fall helfen sie die Weitergabe eines bereits infizierten Dokuments zu verhindern. Man darf diese AVs auch nicht mit Server-Produkten verwechseln welche Mail und FileServer schützen. Diese sind aber in den wenigsten Fällen für Desktop-Anwendung gedacht.

Außerdem müsse man erwarten können, dass er deutliche Hinweise auf gefälschte E-Mails und Internetseiten seiner Bank erkennt, so etwa “sprachliche Mängel, deutlich falsche Internet-Adresse,

vertipper Domains fallen mir da ein….. passiert jedem einmal…

Adresse ohne https://,

mit https ist das so eine Sache… es fällt auf wenn es Eingesetzt wird. Wird es nicht Eingesetzt, vermisst man es nicht.

kein Schlüsselsymbol in der Statusleiste”.

forget this!

Positiv ist der letzte Absatz :

Es lägen daher keine Anhaltspunkte dafür vor, dass die Täter die Kontodaten erlangt haben, weil der Kläger seinen Sorgfaltsmaßstab nicht eingehalten habe.

Endlich können sich die Banken nicht mehr länger hinter ihrer AGB verstecken und immer den Kunden anschwärzen. Sie müssen schon etwas genauer darlegen wo der Kunde die Sorgfaltspflicht nicht eingehalten hat.

Definitiv ein Schritt in die richtige Richtung. Ein Teil der Anforderungen ist Nachvollziehbar. Ich hoffe die Richter werden von Fall zu Fall die Medienfähigkeit des Opfers in betracht ziehen.

Flattr this!

Comments Comments Off on Mindestvoraussetzung für das Internet

Datenbrillen. Darüber denken wir doch schon lange nach. Dinge aus dem Cyberspace direkt in die Realität einblenden. In Dennou Coil sind solche Brillen sind Alltag.  Aber wo Software ist sind auch Bugs/Hacks und natürlich diverse Programmierexperimente. Am stärksten wird diese neue Technologie natürlich von Kindern verwendet. Anders als die Erwachsenen, die hauptsächlich ein neues Kommunikationsmittel haben, entdecken sie eine ganz neue Welt.

Technisch gesehen ist Dennou Coil sehr gut. Es werden viele Details gezeichnet und die japanische Grossstadt ist deutlich erkennbar. Auch hebt sich der Stil positiv vom 0815-anime-standart-cgi ab. Die Geschichte wird äusserst konsistent erzählt, und geht auch in die Tiefe.

Eine 9 auf AniDB 

Flattr this!

Comments Comments Off on Dennou Coil

I discovered css some years ago. Since then i used it frequently for some of my websites, mainly to customize phpBB forums. The Greck Website is a nice small css-based html page.

For the Ghost-projekt I started to look a little bit deeper into css. So I went out and checked the World Wide Web Consortium WebSite. While playing around I found this blog entry about css, and got really impressed by those guys and what css can do.

Well, now here i am. Having a lot to play with and even more that I dont understand completly.

For sure, the most interesting part for me right now are the pseudo-elements and -classes. Looks fun to play with. So I tried this:


HTML
<body><div>
<p>first child in this html.<br/>forcing a line break for sake of example.</p>
<p>next child in this html.<br/>forcing a line break for sake of example.</p>
</div></body>

CSS
p:first-child { color: red;}
p:first-line {	color: blue;}

So far so good. You can see the example here.
Looks right? First Child is red, second black. and the first lines of both are blue. Well….
Lets review the css docu on w3c. In special check what type those selectors have.
:first-child is a attribute selector (classes are attributes)
:first-line is a element selector
so whats the precedence for those 2?
checking the relevant css docus we calculate these values:
p:first-child: a=0, b=0, c=1, d=1
p:first-line: a=0, b=0, c=0, d=2
now check the first the first <p> tag. Shouldn’t the first-child be more specific and therefore overwrite the first-line?
well, we can go and try force it even more.
lets change the firs-child style selector to
div p:first-child ...
this time we have a specific precedence of a=0, b=0, c=1, d=2
this clearly should outrule the first-line style.

Well, there is a way to explain this.
According to the css specification about the pseudo elements the UA creates a fictional tag sequence by inserting <p:first-line> and its end tag into the tree. BUT the UA doesn’t (mustn’t ?) write this back into the real Document tree. Therefore, the p:first-child has a p:first-line inside thats not visible to the HTML/Javascript/etc.

Why is that worth a blog here?
Well, basicaly we can create a browser state where the DOM-Tree and the css tree are out of sync. This could be used to hide/display things not in the DOM-tree. I don’t found a way to abuse this so far…but its still interesting to know that css and DOM see different things.

PS: I am a complete newb in css. I have no idea if my explanation above is correct, nor i see a way to prove it. Any explanation/addition/references are highely welcomed.

Flattr this!

Comments Comments Off on exploring css, inside w3c