<?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>MagicalTux in Japan &#187; Geek Attitude</title>
	<atom:link href="http://blog.magicaltux.net/category/geek-attitude/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.magicaltux.net</link>
	<description>Geekness brought me to Japan!</description>
	<lastBuildDate>Mon, 26 Jul 2010 21:31:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>GG.ST: Added new server in germany</title>
		<link>http://blog.magicaltux.net/2010/07/27/gg-st-added-new-server-in-germany/</link>
		<comments>http://blog.magicaltux.net/2010/07/27/gg-st-added-new-server-in-germany/#comments</comments>
		<pubDate>Mon, 26 Jul 2010 21:31:16 +0000</pubDate>
		<dc:creator>MagicalTux</dc:creator>
				<category><![CDATA[Geek Attitude]]></category>
		<category><![CDATA[GG.ST]]></category>
		<category><![CDATA[IRC]]></category>
		<category><![CDATA[IRC Network]]></category>
		<category><![CDATA[Network]]></category>

		<guid isPermaLink="false">http://blog.magicaltux.net/?p=506</guid>
		<description><![CDATA[A new server for the GG.ST IRC Network has been added, this time in Germany. The goal is to replace the french server (at OVH) which network has been really bad lately (at least one down a week). The server is already online in the irc.gg.st pool, and will be used to monitor stability of [...]]]></description>
			<content:encoded><![CDATA[<p>A new server for the <a href="http://gg.st/" target="_blank">GG.ST IRC Network</a> has been added, this time in Germany. The goal is to replace the french server (at <a href="http://www.ovh.com" target="_blank">OVH</a>) which network has been really bad lately (at least one down a week).</p>
<p>The server is already online in the irc.gg.st pool, and will be used to monitor stability of the new server. If things are stable, the French server will be removed from the pool (before August 15th) and taken offline a few days later.</p>
<p>You can <a href="http://pro.tibanne.com/index.php?do=details&amp;task_id=166" target="_blank">track the operation online</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.magicaltux.net/2010/07/27/gg-st-added-new-server-in-germany/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP can do anything, what about some ssh?</title>
		<link>http://blog.magicaltux.net/2010/06/27/php-can-do-anything-what-about-some-ssh/</link>
		<comments>http://blog.magicaltux.net/2010/06/27/php-can-do-anything-what-about-some-ssh/#comments</comments>
		<pubDate>Sun, 27 Jun 2010 07:06:36 +0000</pubDate>
		<dc:creator>MagicalTux</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[gmp]]></category>
		<category><![CDATA[OpenSSL]]></category>
		<category><![CDATA[pinetd2]]></category>
		<category><![CDATA[SSH]]></category>

		<guid isPermaLink="false">http://blog.magicaltux.net/?p=501</guid>
		<description><![CDATA[Last time I already tried to prove PHP can do anything when it comes to network protocols by implementing a DNS server. This time I&#8217;m doing it again with a server-side implementation of the SSH2 protocol. You probably know SSH at least by its name. It&#8217;s a of secure telnet replacement which also allows many [...]]]></description>
			<content:encoded><![CDATA[<p>Last time I already tried to prove PHP can do anything when it comes to network protocols by <a href="http://blog.magicaltux.net/2009/02/16/php-dns-daemon/">implementing a DNS server</a>. This time I&#8217;m doing it again with a server-side implementation of the SSH2 protocol.</p>
<p>You probably know SSH at least by its name. It&#8217;s a of secure telnet replacement which also allows many other things such as port forwarding, remote file management (with sftp) and more.</p>
<p>With PHP I could write a fully working SSH server in only 3 days. Of course I didn&#8217;t implement every single extension there is to SSH, but I&#8217;ve implemented:</p>
<ul>
<li>SSH2 protocol only (no SSH1, anyway who uses that anymore?)</li>
<li>Encryption protocols: aes128-cbc,blowfish-cbc,serpent256-cbc,cast128-cbc,3des-cbc (via <a href="http://php.net/mcrypt">mcrypt</a>)</li>
<li>Message digests: hmac-sha1,hmac-sha1-96,hmac-md5,hmac-md5-96 (via <a href="http://php.net/hash">hash</a>)</li>
<li>No compression as I cannot easily keep a compression context active (the gzip extension in php is missing a way to create a compression context)</li>
<li>Password and public key (ssh-dss and ssh-rsa) identification</li>
<li>Ability to program an interactive shell in PHP (there are send and recv functions in a separate class, anyone can have some fun and write something out of that. Should be possible to make a wrapper to communicate with a shell launched with proc_open)</li>
<li>Support for multiple channels</li>
<li>SFTP subsystem</li>
<li>Can be easily extended to add support for custom channels or re-use the ssh protocol for something else</li>
</ul>
<p>My goal when writing this was to provide a replacement for the FTP protocol for the customers of <a href="http://www.kalyhost.com/">my hosting service</a>. FTP has many drawbacks, including no encryption (you can with ftps or ftpes) and the way ftp transmits data (another connection has to be opened on a different port, leading most of the time to some problems for people behind a NAT and/or firewalled servers).</p>
<p>With this ssh server supporting sftp, I finally got the replacement I was looking for. Of course it uses more CPU than a C ssh server (about 3 times more) but the difference isn&#8217;t that big. Next steps will include fork()&#8217;ing to open channels (will allow the SFTP server to chroot) and maybe support for some SSH extensions.</p>
<p>To implement the SSH protocol the following PHP extensions were used:</p>
<ul>
<li><strong>OpenSSL</strong>: used to generate secure bits when negociating the key, and used to generate the host signature on connection. I was hoping to use openssl_verify() to verify the key used when logging in, but I couldn&#8217;t manage to convert the ssh-rsa key to something openssl would understand, so I re-implemented signature verification with gmp.</li>
<li><strong>MCrypt</strong>: The ssh protocol is encrypted (usually with something like AES128). mcrypt has the required functions to handle encryption in block mode</li>
<li><strong>Hash</strong>: each packet transmitted over SSH is optionally signed with a HMAC signature. In order to generate and verify those signatures I used hash_hmac()</li>
<li>And finally the most important: <strong>GMP</strong>. As I was missing some functions to properly handle the initial Diffie-Hellman key exchange (and later to implement publickey authentication) I had to re-implement those in PHP. Of course working with 1024 bits integers is not something we can use the native int type for. GMP (and bc) allows such calculations (and I used them). I was missing the ability in gmp to read from/convert to binary values, so I had to add the use of bin2hex() and pack(&#8216;H*&#8217;, &#8230;) to be able to work with binary values easily. GMP computations are only used when negociating keys (the ssh rfc recommands doing this once an hour, or every gigabyte of data transmitted) or when using the publickey authentification.</li>
</ul>
<p>What did I create a ssh server for? The same thing I created a DNS server for fun and for <a href="http://www.kalyhost.com/" target="_blank">KalyHost</a>. In order to provide services updated in realtime I wrote a database-backed dns server a while ago, and now a ssh server (which can be database-backed too by extending the &#8220;Base&#8221; class).</p>
<p>The sourcecode can be downloaded from the SVN: <a href="http://ookoo.org/svn/pinetd2/trunk/code/classes/Daemon/SSHd/">http://ookoo.org/svn/pinetd2/trunk/code/classes/Daemon/SSHd/</a> this depends on <a href="http://www.pinetd.com/">pinetd2</a>, a framework I wrote which allows to easily create daemons in PHP, and which I already used to create various things (FTP, Mail server, etc).</p>
<p>People willing to help on pinetd2 (code and/or documentation) are welcome. If you do not mind being called crazy because you make something else than webpages in PHP, you can contact me <a href="mailto:mark@hell.ne.jp">by mail</a> or <a href="irc://irc.gg.st/php">on IRC</a> (or by leaving a comment on this post too if you wish to).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.magicaltux.net/2010/06/27/php-can-do-anything-what-about-some-ssh/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>MagicalTux vs. Microsoft &#8211; VICTORY !</title>
		<link>http://blog.magicaltux.net/2010/06/19/magicaltux-vs-microsoft-victory/</link>
		<comments>http://blog.magicaltux.net/2010/06/19/magicaltux-vs-microsoft-victory/#comments</comments>
		<pubDate>Sat, 19 Jun 2010 02:33:22 +0000</pubDate>
		<dc:creator>MagicalTux</dc:creator>
				<category><![CDATA[Geek Attitude]]></category>
		<category><![CDATA[IRL]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Moving worldwide]]></category>
		<category><![CDATA[XBox 360]]></category>

		<guid isPermaLink="false">http://blog.magicaltux.net/?p=498</guid>
		<description><![CDATA[A while ago I posted about moving in another country with a XBox 360. At this time it was cool since I still had a french credit card, but when I closed my bank account in France, things went somehow awry. I had to buy a 12 months xbox live code on eBay France to [...]]]></description>
			<content:encoded><![CDATA[<p>A while ago I posted about <a href="http://blog.magicaltux.net/2009/08/16/moving-in-another-country-with-a-xbox-360/" target="_self">moving in another country with a XBox 360</a>. At this time it was cool since I still had a french credit card, but when I closed my bank account in France, <a href="http://blog.magicaltux.net/2010/04/04/xbox-360-xbox-live-back-to-hell/" target="_self">things went somehow awry</a>. I had to buy a 12 months xbox live code on eBay France to get my account working since you cannot add a japanese credit card on a french xbox live account&#8230;</p>
<p>However microsoft had tried to bill my french CC once more and it failed. Of course it&#8217;ll fail but for some reason Microsoft has a weird billing scheme. If it tries to bill but it fails, it will still give you what you tried to pay, then it will bug you every now and then to get your money. This is really stupid (they could just don&#8217;t give anything) or really brilliant (they can bill stuff you don&#8217;t want then try to get your money claiming you asked for that).</p>
<p>Anyway I had my account expire 12 months later so I didn&#8217;t care much. At some point I got annoyed by all those emails so I asked the microsoft support which replied they couldn&#8217;t help me with their tools, and told me I should contact phone support&#8230;<br />
I just decided to ignore those emails until&#8230; until microsoft blocked my account. Yes, they just decided to suspend my account because they couldn&#8217;t get the money for 1 month, and aren&#8217;t intelligent enough to just remove one month from my current billing period&#8230; So I had an account expiring in some 10 months suspended because they couldn&#8217;t bill one month&#8230;</p>
<p>I then tried to add (again) my japanese credit card to see if I could re-activate my account (I really want to play a game right now to cool off a bit, and I hate it when some american based company tries to stop me) and it WORKED! Yeah! Somehow I could add a japanese credit card to a french xbox live account. I&#8217;m not sure if this is a glitch or just that microsoft suddently decided that you could want to move to another country without losing all your achievements, but yes, it worked!!!!</p>
<p>So here I am, finally resolved this problem with Microsoft. I posted about my success on the xbox live forums (<a href="http://forums.xbox.com/33048410/ShowPost.aspx" target="_blank">this thread</a>, page 14) so we&#8217;ll know if this was just a glitch, or if microsoft became intelligent.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.magicaltux.net/2010/06/19/magicaltux-vs-microsoft-victory/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adding memory to w001.tx.us</title>
		<link>http://blog.magicaltux.net/2010/05/28/adding-memory-to-w001-tx-us/</link>
		<comments>http://blog.magicaltux.net/2010/05/28/adding-memory-to-w001-tx-us/#comments</comments>
		<pubDate>Fri, 28 May 2010 10:16:49 +0000</pubDate>
		<dc:creator>MagicalTux</dc:creator>
				<category><![CDATA[Geek Attitude]]></category>
		<category><![CDATA[Memory]]></category>
		<category><![CDATA[Munin]]></category>
		<category><![CDATA[RAM]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Server management]]></category>
		<category><![CDATA[w001.tx.us]]></category>

		<guid isPermaLink="false">http://blog.magicaltux.net/?p=492</guid>
		<description><![CDATA[Lately server w001.tx.us has been having troubles running because it is running out of memory almost everyday. Not even mentionning the fact caching has difficulties running because it has no available memory to cache in. We decided to plan addition of some memory today May 28th at 01:00 GMT to go from 6GB to 12GB. [...]]]></description>
			<content:encoded><![CDATA[<p>Lately server w001.tx.us has been having troubles running because it is running out of memory almost everyday. Not even mentionning the fact caching has difficulties running because it has no available memory to cache in.</p>
<p>We decided to plan addition of some memory today May 28th at 01:00 GMT to go from 6GB to 12GB. The server loved it and is now filling all the newly available space with cache. The server guys were incredibly fast, took only 3 minutes downtime to add the memory. Thanks guys!</p>
<p><a href="http://blog.magicaltux.net/wp-content/uploads/2010/05/memory-day.png"><img class="aligncenter size-medium wp-image-493" title="Daily memory for w001.tx.us" src="http://blog.magicaltux.net/wp-content/uploads/2010/05/memory-day-300x259.png" alt="" width="300" height="259" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.magicaltux.net/2010/05/28/adding-memory-to-w001-tx-us/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Birth of a new webcomic?</title>
		<link>http://blog.magicaltux.net/2010/05/20/birth-of-a-new-webcomic/</link>
		<comments>http://blog.magicaltux.net/2010/05/20/birth-of-a-new-webcomic/#comments</comments>
		<pubDate>Wed, 19 May 2010 20:44:01 +0000</pubDate>
		<dc:creator>MagicalTux</dc:creator>
				<category><![CDATA[Geek Attitude]]></category>
		<category><![CDATA[Packets]]></category>
		<category><![CDATA[Router]]></category>
		<category><![CDATA[Truck]]></category>
		<category><![CDATA[Webcomic]]></category>

		<guid isPermaLink="false">http://blog.magicaltux.net/?p=486</guid>
		<description><![CDATA[Today I was explaining to someone how data is being transmitted between routers on Internet. Thinking a bit more I believe stories involving routers communicating around the world encountering various stories (blocking firewall, rogue BGP packets, DDoS, etc) could make an interesting webcomic, both on the amusing side and the educational side. Just so you [...]]]></description>
			<content:encoded><![CDATA[<p>Today I was explaining to someone how data is being transmitted between routers on Internet. Thinking a bit more I believe stories involving routers communicating around the world encountering various stories (blocking firewall, rogue BGP packets, DDoS, etc) could make an interesting webcomic, both on the amusing side and the educational side.</p>
<p>Just so you know I absolutely sucks when it comes to drawing stuff, however the pencil tool in gimp seems to give interesting results (maybe). The easiest is to look at my first drawing explaining the structure of a packet and showing a router getting ready to route one of such packets.</p>
<p style="text-align: center;"><a href="http://blog.magicaltux.net/wp-content/uploads/2010/05/routers_and_packets.png"><img class="size-medium wp-image-487 aligncenter" title="Routers and packets" src="http://blog.magicaltux.net/wp-content/uploads/2010/05/routers_and_packets-300x187.png" alt="" width="300" height="187" /></a></p>
<p>The truck represents the link layer (usually ethernet). The idea with this image was to show that a router will usually just look at the IP layer and never look lower unless it is the target of the packet (ie. bgp sessions, etc).</p>
<p>Anyway I&#8217;ll see if I can put another image a bit bigger with frames (let&#8217;s try 3~4 frames) and a small fun story involving routers and packets (routers don&#8217;t have hands, they manipulate and direct packets with thoughts. Having to move hands would make the routing process too long). Now what&#8217;s missing is a name for this potential webcomic (and maybe someone to draw the stuff better than I do ; while I think routers are OK as blobs with big eyes, I need to improve my drawing of a truck and a packet)&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.magicaltux.net/2010/05/20/birth-of-a-new-webcomic/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>SeedFuck&#8230; oui..? non !</title>
		<link>http://blog.magicaltux.net/2010/04/29/seedfuck-oui-non/</link>
		<comments>http://blog.magicaltux.net/2010/04/29/seedfuck-oui-non/#comments</comments>
		<pubDate>Thu, 29 Apr 2010 05:44:42 +0000</pubDate>
		<dc:creator>MagicalTux</dc:creator>
				<category><![CDATA[Geek Attitude]]></category>
		<category><![CDATA[Hacking]]></category>
		<category><![CDATA[French]]></category>
		<category><![CDATA[Hadopi]]></category>
		<category><![CDATA[Seedfuck]]></category>

		<guid isPermaLink="false">http://blog.magicaltux.net/?p=471</guid>
		<description><![CDATA[Ça fait longtemps que je n&#8217;ai pas écrit d&#8217;article en français, mais ces derniers jours je vois que beaucoup de français se disent &#8220;ça y est, avec SeedFuck, Hadopi est fini&#8221;. Je tiens a préciser que non! Ça m&#8217;énerve de voir tout un tas de sources s&#8217;extasier devant du vent en croyant savoir comment le [...]]]></description>
			<content:encoded><![CDATA[<p>Ça fait longtemps que je n&#8217;ai pas écrit d&#8217;article en français, mais ces derniers jours je vois que beaucoup de français se disent &#8220;ça y est, avec SeedFuck, Hadopi est fini&#8221;. Je tiens a préciser que non! Ça m&#8217;énerve de voir <a href="http://www.itespresso.fr/outil-seedfuck-defie-pro-hadopi-34718.html" target="_blank">tout</a> <a href="http://www.korben.info/seedfuck-hadopi.html" target="_blank">un</a> <a href="http://www.degroupnews.com/actualite/n4705-seedfuck-p2p-telechargement-internet-hadopi.html?xtor=RSS-1" target="_blank">tas</a> <a href="http://www.lepost.fr/article/2010/04/23/2044827_seedfuck-le-logiciel-qui-permet-d-effacer-votre-identite-virtuelle.html" target="_blank">de</a> <a href="http://www.clubic.com/telecharger/logiciel-telechargement-p2p/bittorrent/actualite-337744-frederic-mitterrand-appele-pencher-seedfuck.html" target="_blank">sources</a> <a href="http://questions.assemblee-nationale.fr/q13/13-77590QE.htm" target="_blank">s&#8217;extasier</a> devant du vent en croyant savoir comment le P2P en torrent marche (pour la petite histoire, je suis l&#8217;auteur d&#8217;un client torrent que personne n&#8217;utilise, mais ça fait quand même de moi quelqu&#8217;un qui sait comment ça marche).</p>
<p>Je ne suis pas particulièrement un défenseur d&#8217;Hadopi, mais je ne compte pas rester les bras croisés pendant que de telles inepties circulent sur Internet. Nos amis nantais (Trident Media Guard) n&#8217;auront pas de difficulté a passer au travers de SeedFuck et déterminer aisément les vraies ips.</p>
<p>Si j&#8217;était moi même une société nantaise mandatée par l&#8217;état pour tracker les ips qui téléchargent et partagent un fichier torrent donné mon mode opératoire serait légèrement différent. Le processus serait simple:</p>
<ul>
<li>Connexion au tracker comme étant un client avec 0% du fichier, le tracker envoie une série de peers auquel je peux me connecter. Le tracker va également publier ma propre IP pour permettre aux peers de se connecter à moi.</li>
<li>J&#8217;établis des connexions aux peers et j&#8217;attend d&#8217;en reçevoir</li>
<li>Pour chaque peer qui se connecte à moi, ou que je contacte:
<ul>
<li>Je lui demande une partie du fichier qu&#8217;elle a et que mes autres peers n&#8217;ont pas ou peu (prévu comme ça dans le standard bittorrent)</li>
<li>Une fois la partie reçue je compare son checksum à ce qui est indiqué dans le fichier torrent</li>
<li>Si ça match, je stock la partie reçue avec l&#8217;ip d&#8217;origine, et la date/heure. En effet j&#8217;ai sous les yeux un flagrant délit de distribution de données sous copyright par une ip &#8220;en personne&#8221;</li>
</ul>
</li>
</ul>
<p>Ce mode opératoire rend la détection du client d&#8217;analyse Hadopi difficile (se comporte comme un client torrent, et l&#8217;usage d&#8217;un client id + une ip dynamique changés chaque jour n&#8217;aidera pas a la détection) tout en donnant une preuve irréfutable qu&#8217;une IP donnée a participé à un acte de piratage.</p>
<p>Seedfuck se contente d&#8217;ajouter dans les IPs connues du tracker de nouvelles IPs aléatoires. Cela signifie pas que ces ips vont réellement distribuer le fichier en question. Tout ce que ça fera est de réduire le ratio de peers valides dans la base du tracker, et diminuer la qualité du téléchargement P2P.</p>
<p>Donc je dis bravo à celui qui a imaginé Seedfuck, y&#8217;avais pas mieux pour aider l&#8217;état !</p>
<h2>FAQ</h2>
<p><strong>Y&#8217;a écrit dans le brevet de TMG qu&#8217;ils n&#8217;allaient pas faire comme ça.</strong></p>
<blockquote><p>On peut espérer pour eux qu&#8217;ils n&#8217;ont pas prévu de rester sur une méthode unique du début à la fin. Si je peux me permettre de le rappeler, le combat entre le bien et le mal est un combat sans fin où chaque côté a l&#8217;avantage un moment, et ne l&#8217;a plus le moment d&#8217;après (à vous de décider quel côté est le bien et lequel est le mal).</p>
<p>De toutes façons le fait d&#8217;avoir breveté une méthode (moisie) ne les empêche pas d&#8217;utiliser une autre méthode.</p></blockquote>
<p><strong>Vérifier un checksum pour un morceau de fichier ne permet pas d&#8217;être sur a 100% qu&#8217;il s&#8217;agit bien du même fichier</strong></p>
<blockquote><p>Oui non hé ho! On parle là d&#8217;une IP qui répond au protocole bittorrent, confirme être sur le torrent en question, et qui a fourni des données binaires pour lesquelles le SHA1 correspond exactement. Les chances d&#8217;avoir une collision en SHA1 sont extrêmement faibles, pour le moment aucune collision n&#8217;a été trouvée, et les chances de collision sont calculées à 1 sur 2^63, ça laisse du temps).</p>
<p>Même si on ne peut effectivement pas être sur a 100% de rien du tout, c&#8217;est du 99.99999% avec de toutes façons une IP qui répond au protocole BT (la méthode TMG est plutôt du genre 70%).</p></blockquote>
<p>PS: Si vous m&#8217;en voulez de donner un mode opératoire qui permet de contourner seedfuck ou n&#8217;importe quelle autre méthode en générant un cas de flagrant délit (l&#8217;ip en question a fourni un bout de fichier qui correspond au checksum du torrent, et donc est valide), essayez plutôt de vous demander pourquoi vous n&#8217;y avez pas pensé vous même.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.magicaltux.net/2010/04/29/seedfuck-oui-non/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>XBox 360 &amp; XBox Live, back to hell</title>
		<link>http://blog.magicaltux.net/2010/04/04/xbox-360-xbox-live-back-to-hell/</link>
		<comments>http://blog.magicaltux.net/2010/04/04/xbox-360-xbox-live-back-to-hell/#comments</comments>
		<pubDate>Sun, 04 Apr 2010 14:27:55 +0000</pubDate>
		<dc:creator>MagicalTux</dc:creator>
				<category><![CDATA[Geek Attitude]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Moving worldwide]]></category>
		<category><![CDATA[XBox 360]]></category>

		<guid isPermaLink="false">http://blog.magicaltux.net/?p=466</guid>
		<description><![CDATA[Ok, I posted a while ago about the impossibility to change the country associated with a XBox Live Gamertag. Now my situation has evolved since I don&#8217;t have a french card anymore. For those who do not want to read the old article because they have time constraints, basically the problem is when you have [...]]]></description>
			<content:encoded><![CDATA[<p>Ok, I posted <a href="http://blog.magicaltux.net/2009/08/16/moving-in-another-country-with-a-xbox-360/" target="_blank">a while ago</a> about the impossibility to change the country associated with a XBox Live Gamertag. Now my situation has evolved since I don&#8217;t have a french card anymore. For those who do not want to read the old article because they have time constraints, basically the problem is when you have a XBox Live account, you cannot change country nor use payment method from a different country. Add to this the fact I moved from France to Japan, and you have a nice problem, <a href="http://forums.xbox.com/1/3863862/ShowPost.aspx" target="_blank">shared by dozens of people</a>.</p>
<p>Recently my French credit card expired. Because of this I couldn&#8217;t buy stuff on Apple iTunes store, and my XBox 360 gold account is expiring.</p>
<p>On Apple, I clicked a nice button &#8220;Change country&#8221;. There I was asked to enter address and billing informations in Japan (Apple probably verified that my credit card was indeed japanese), and once completed, my apple account was japanese. It took only one minute.</p>
<p>Now what about Microsoft? Why wouldn&#8217;t they be able to allow one of their customers to update his account informations to a new country, after proving he is indeed in this country?</p>
<p>Anyway this time I&#8217;ll pursue this until I get a GOOD reply from Microsoft. I won&#8217;t accept stuff like &#8220;create a new gamertag&#8221;.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.magicaltux.net/2010/04/04/xbox-360-xbox-live-back-to-hell/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>The new &#8220;Domain Registry of America&#8221;: &#8220;Domain Renewal Group&#8221;</title>
		<link>http://blog.magicaltux.net/2010/03/24/the-new-domain-registry-of-america-domain-renewal-group/</link>
		<comments>http://blog.magicaltux.net/2010/03/24/the-new-domain-registry-of-america-domain-renewal-group/#comments</comments>
		<pubDate>Wed, 24 Mar 2010 05:31:27 +0000</pubDate>
		<dc:creator>MagicalTux</dc:creator>
				<category><![CDATA[Geek Attitude]]></category>
		<category><![CDATA[Domain names]]></category>
		<category><![CDATA[Domain Registry of America]]></category>
		<category><![CDATA[Domain Renewal Group]]></category>
		<category><![CDATA[domains]]></category>
		<category><![CDATA[DROA]]></category>
		<category><![CDATA[Marketting abuse]]></category>
		<category><![CDATA[Registrar]]></category>

		<guid isPermaLink="false">http://blog.magicaltux.net/?p=464</guid>
		<description><![CDATA[Today I received my mail from France and noticed a weird letter coming from &#8220;US Postage paid, Jamaica N.Y. 11431, Permit #9014&#8243;. The letter had the old familiar look you get from those &#8220;Domain Registry of Amarica&#8221;: american flag, and company name containing the word &#8220;Domain&#8221; and trying to look like the company handling domain [...]]]></description>
			<content:encoded><![CDATA[<p>Today I received my mail from France and noticed a weird letter coming from &#8220;US Postage paid, Jamaica N.Y. 11431, Permit #9014&#8243;. The letter had the old familiar look you get from those &#8220;Domain Registry of Amarica&#8221;: american flag, and company name containing the word &#8220;Domain&#8221; and trying to look like the company handling domain renewals for everyone (that&#8217;s the impression you get from the name)&#8230; oh and let us not forget the amercan flag, it&#8217;s important to be american.</p>
<p>This one contains a return enveloppe to &#8220;Domain Renewal Group, 56 Gloucester Rd., Suite 526, London, England, SW7 4UB&#8221;. I guess since they posted this to France, it&#8217;s only normal they put an address somewhere close.</p>
<p>The letter itself is exactly the same you get from &#8220;Domain Registry of America&#8221;: your domain will expire soon and you have to reply by date D to renew it.</p>
<p>Even if this letter outlines the fact this is not an bill but an easy way to switch to a different provider, direct marketting of domain owners is seen as bad practice, and as far as I know, only them are doing it, and they are now doing it with different names, most likely to mitigate their bad image over new names the customer hasn&#8217;t been warned about.</p>
<p>Whois of the domain domainrenewalgroup.com shows it is owned by &#8220;Domain Registrar &#8211; Domain Registry Group&#8221; with an email on droa.com, the well known &#8220;Domain Registry of America&#8221;.</p>
<p>Some more remarks on the letter:</p>
<ul>
<li>It introduce the ability to choose a registrar as something new. It says &#8220;Privatization of Domain Registrations and Renewals now allows the consumer the choice of Registrars [...]&#8220;. The &#8220;now&#8221; is likely to confuse almost anyone (ability to be a registrar for com/net/org domains has existed since November 30th 1999)</li>
<li>The letter focuses on payment and says nothing about the transfer procedure. The customer has no information on the process that will come, with the obligation to unlock domain, etc</li>
<li>Nothing is said either about services linked to the domain. For example let&#8217;s say you have a web hosting with domain name and you pay 40€/year. This letter tells you you can renew for 28€/year, and while explicitly stating this is a domain renewal, most customers won&#8217;t make the difference.<br />
Also, the letter states that not renewing will result into the customer &#8220;losing his online identity, making it difficult for his customers and friends to locate him on the Web&#8221;. This  sounds like renewing with them will allow the customer to keep his online presence, which is false.</li>
<li>The second paragraph is formulated in a way that will make most people think they have to renew with them. While it is an impressive work of marketting, it lacks something called ethics.</li>
</ul>
<p>Most registrars have been tired of the plague brought by DROA, and have to tell their customers that those letters are not bills, because <em>customer won&#8217;t read</em>. One would expect after all those years DROA to go out of business, but it&#8217;s not the case, and they are probably quite comfortable (when I see the price they ask for, I can understand).</p>
<p>Some day another registrar might decide to use the same kind of letter and attempt to trick people into transferring domains at an outrageous price, let&#8217;s just hope the practice will become prosecutable before it happens (it is already technically illegal, as whois information is not made for mass-marketting but for fixing technical problems, still DROA seems to be doing fine).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.magicaltux.net/2010/03/24/the-new-domain-registry-of-america-domain-renewal-group/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>SimpleDNSd: new features &amp; bugfix</title>
		<link>http://blog.magicaltux.net/2010/03/19/simplednsd-new-features-bugfix/</link>
		<comments>http://blog.magicaltux.net/2010/03/19/simplednsd-new-features-bugfix/#comments</comments>
		<pubDate>Fri, 19 Mar 2010 00:24:42 +0000</pubDate>
		<dc:creator>MagicalTux</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[KalyHost]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[pinetd2]]></category>
		<category><![CDATA[PZC]]></category>
		<category><![CDATA[SimpleDNSd]]></category>

		<guid isPermaLink="false">http://blog.magicaltux.net/?p=462</guid>
		<description><![CDATA[Anyone using SimpleDNSd is strongly encouraged to update to latest SVN (you will have to erase the php-5.3.1 directory and recompile php to get it patched correctly). The current SVN version will most likely go release candidate and be released later. Current SVN release includes many fixes and improvements, including for SimpleDNSd, the DNS daemon [...]]]></description>
			<content:encoded><![CDATA[<p>Anyone using SimpleDNSd is strongly encouraged to update to <a href="https://ookoo.org/svn/pinetd2/trunk/" target="_blank">latest SVN</a> (you will have to erase the php-5.3.1 directory and recompile php to get it patched correctly). The current SVN version will most likely go release candidate and be released later.</p>
<p>Current SVN release includes many fixes and improvements, including for SimpleDNSd, the DNS daemon written in PHP.</p>
<p>This includes:</p>
<ul>
<li>Support for delegation-only zones: it is now possible to handle TLDs via SimpleDNSd. I did a test by adding &#8220;free&#8221; domain names to the <a href="https://www.kalyhost.com/" target="_blank">KalyHost</a> service. Those domains can be ordered for free, and a webinterface is made available to control the domain DNS, allowing you to test SimpleDNSd and see how easily changes are done in realtime.</li>
<li>Support for PHP new requested feature (<a href="http://bugs.php.net/51295" target="_blank">PHP bugreport #51295</a>): queries to the DNS daemon were failing or returning wrong data randomly because of this bug. It took me a while to point this out as it was rather random. Basically current PHP implementation of SQLite3 has no &#8220;busy timeout&#8221;, meaning requests will fail immediatly if database is busy.<br />
I had to add a busyTimeout() method in SQLite3 (similar to the one already existing for the old sqlite PHP extension) and use it. This means we&#8217;ll have to wait for this patch to be added to a current PHP release before pinetd2 can be released as stable.</li>
<li>PZC: &#8220;Progressive Zone Change&#8221;. This is one feature no other DNS daemon has (or maybe they do, I don&#8217;t know). This feature allows to schedule change of a domain to a new zone. When the scheduled time comes closer, the DNSd will send expiration time smaller and smaller to make records expire on the time the zone will change.</li>
</ul>
<p><strong>A bit more about PZC:</strong><br />
Let&#8217;s say we have domain &#8220;example.com&#8221; pointing to zone A. Calling API method <em>domainPzc(&#8216;example.com&#8217;, &#8216;B&#8217;, time()+86400);</em> will make domain example.com pointing to zone B in 24 hours. In the meantime, no returned record will expire after the scheduled time for zone change: any record obtained 15 seconds before zonechange will be marked to expire in 15 seconds.<br />
This features allow a really precise control of &#8220;DNS Propagation&#8221;: you decide exactly when zone change will happen. Note that if you have a record in your zone expiring in 3 days, you shouldn&#8217;t schedule zone changes less than 3 days before effective date, or it might not have the expected behaviour.</p>
<p>As far as I know, no other DNS server support such a feature allowing to switch to a different zone with full control of when it will &#8220;propagate&#8221;.</p>
<p>(I know some resolvers out there will not follow expiration times given by the authoritative DNS server, however I like to think those are only a minority, and that PZC will give the expected behaviour for almost everyone)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.magicaltux.net/2010/03/19/simplednsd-new-features-bugfix/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Registrars and authcodes</title>
		<link>http://blog.magicaltux.net/2010/03/11/registrars-and-authcodes/</link>
		<comments>http://blog.magicaltux.net/2010/03/11/registrars-and-authcodes/#comments</comments>
		<pubDate>Thu, 11 Mar 2010 14:29:35 +0000</pubDate>
		<dc:creator>MagicalTux</dc:creator>
				<category><![CDATA[Geek Attitude]]></category>
		<category><![CDATA[Authcode]]></category>
		<category><![CDATA[Ethics]]></category>
		<category><![CDATA[GoDaddy]]></category>
		<category><![CDATA[OVH]]></category>
		<category><![CDATA[Registrar]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[whois]]></category>

		<guid isPermaLink="false">http://blog.magicaltux.net/?p=458</guid>
		<description><![CDATA[Many registrars out there have found different ways to implement Verisign&#8217;s requirement of harder-to-guess authcodes for domains by asking to have at least one symbol character (non letter, non number) in the authcode. This had different effect on different registrars. For example french registrar OVH have implemented it a bit too well, resulting in authcodes [...]]]></description>
			<content:encoded><![CDATA[<p>Many registrars out there have found different ways to implement Verisign&#8217;s requirement of harder-to-guess authcodes for domains by asking to have at least one symbol character (non letter, non number) in the authcode.</p>
<p>This had different effect on different registrars. For example french registrar OVH have implemented it a bit too well, resulting in authcodes like &#8220;d*zuW.;2t/!&gt;pHbU&#8221;, while others have decided that it wasn&#8217;t their problem, and just added a prefix to their authcodes. This is the case for example of GoDaddy, whose authcodes are limited in randomness. An authcode will look like: &#8220;S1-AF94C9510BA1C&#8221;. Yeah right, &#8220;S1-&#8221; followed by an uppercase hexadecimal string. I&#8217;m pretty sure Verisign wasn&#8217;t expecting this when they published the new requirement.</p>
<p>Anyway conditions to steal a domain are pretty much complex (you need to have it unlocked, need to know the authcode, and once transfer is started, the current registrant must not ask his registrar to cancel the transfer for 5 days, and even after the domain is transferred, there are ways to get it back &#8211; it&#8217;s just more expensive). Stealing a domain is a complex operation which will most likely be followed by legal repercussions.</p>
<p>Best thing to do is to <a href="http://whois.nf/" target="_blank">check from times to times in a whois</a> that your domain is really showing your name and address. If not, you might need to do something about it before it&#8217;s too late. You might want to consider transferring your domain to <a href="http://www.kalyhost.com/" target="_blank">a company which cares about you</a> <img src='http://blog.magicaltux.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  (we&#8217;ll even fight your old provider if troubles arise, they can refuse transfer only in some specified cases, as long as you are owner of your domain).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.magicaltux.net/2010/03/11/registrars-and-authcodes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
