<?xml version="1.0" encoding="iso-8859-1"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
  <title>chir.ag/tech</title>
  <link>http://chir.ag/tech</link>
  <description>Chirag Mehta - Tech Web Log - &apos;blog - Chime Softwares - Indian Blogger live from Saint Petersburg, Florida, St. Petes, FL</description>
  <dc:language>en-us</dc:language>
  <dc:creator>rsstech@chir.ag</dc:creator>
  <dc:rights>Copyright 2005</dc:rights>
  <dc:date>2013-05-19T01:13:24-07:00</dc:date>
  <admin:generatorAgent rdf:resource="http://www.chime.tv" />
  <admin:errorReportsTo rdf:resource="mailto:rsstech@chir.ag"/>
  <sy:updatePeriod>hourly</sy:updatePeriod>
  <sy:updateFrequency>1</sy:updateFrequency>
  <sy:updateBase>2005-06-06T12:00+00:00</sy:updateBase>
  <image>
    <title>chir.ag/tech</title>
    <url>http://chir.ag/tech/rss.jpg</url>
    <link>http://chir.ag/tech</link>
    <width>96</width>
    <height>74</height>
  </image>
  <item>
    <title>Deep Linking, Hot Linking, and the TV-Links arrest</title>
    <link>http://chir.ag/tech/?53</link>
    <description>"&lt;i&gt;&lt;a href="http://www.tv-links.co.uk/"&gt;TV-Links&lt;/a&gt; (now dead) is a site which links to sites like Google Video and YouTube, which host clips of TV shows. Today, the Gloucestershire County Council, in association with a group called the FACT, raided the site’s servers and arrested the 26 year old man from Cheltenham who ran the site... This is what is known as &lt;a href="http://en.wikipedia.org/wiki/Deep_linking#Court_rulings"&gt;Deep Linking&lt;/a&gt; (wikipedia article). There have been a few legal cases about this already in different parts of the world.&lt;/i&gt;"&lt;br /&gt;- by &lt;a href="http://www.thenewfreedom.net/wp/2007/10/19/tv-linkscouk-raided-owner-arrested/"&gt;The New Freedom&lt;/a&gt; blog.&lt;br /&gt;&lt;br /&gt;
The author is confusing Deep Linking with Hot Linking. Deep Linking is when you link to a web page within a site other than the home or a major section page. Hot Linking is when you embed a resource from another site on to your own site without re-hosting the media yourself. Websites like &lt;a href="http://reddit.com"&gt;reddit&lt;/a&gt; and &lt;a href="http://fark.com"&gt;Fark&lt;/a&gt; deep link. TV-Links was hot linking.&lt;br /&gt;&lt;br /&gt;
I&apos;m completely in favor of deep linking except where someone is clearly abusing your content, say by linking to detailed search results on your site by spidering every form field value. I&apos;m in favor of hot linking provided due credit is given and single-click link to the hosting server is provided. Flickr thumbnail galleries, most video embeds, JavaScript widgets from Google including Adwords are technically hot linked but they all link to the hosting site and give them full credit.&lt;br /&gt;&lt;br /&gt;
What TV-Links failed to do was link to the appropriate YouTube, Veoh.com, and Google Video pages for the FLVs (Flash videos) they were playing on their site, within their own custom Flash video player. Since Veoh has MD5 type hash in their FLV url, there is practically no way to find the web page for a given Veoh video via it&apos;s FLV url. It&apos;s not easy for average users to find the YouTube or Google Videos page for a given video within TV-Links either. Submitters would upload a "Seinfeld" episode to Veoh and title it "DFPGDSFY4353FG" to ensure nobody can ever find it on the hosted site in a search for "Seinfeld episodes." Then they would submit it to TV-Links and correctly title it "Seinfeld Season 3, Episode 6." Veoh and YouTube/Google Videos have enough on their hands already and since we don&apos;t have good video fingerprinting technology yet, these videos would never be found pro-actively and completely ignored by the hosts.&lt;br /&gt;&lt;br /&gt;
TV-Links could have easily placed the original Veoh/Google/YouTube embeds on their site but they chose to directly hot-linked the FLVs. They reason they did this is of course to prevent copyright owners from easily finding the source of the video because then they could just as easily click the "Copyright Claim" buttons.&lt;br /&gt;&lt;br /&gt;
Copyright is a complex issue and as someone that runs a &lt;a href="http://chime.tv"&gt;video aggregator&lt;/a&gt;, I feel truly sorry for the TV-Links guy. The video sites and the copyright holders both stand to lose as a result of his site. Video sites incur bandwidth, storage, and compliance costs while copyright holders could experience lower DVD sales. Music is different from TV shows. We listen to the same song 30 times. How many times will you watch the same episode of 24?&lt;br /&gt;&lt;br /&gt;
I know there was a lot of wonderful content on TV-Links but I&apos;d say a majority of it, while being older material, nevertheless violated the rights of the copyright holders. Only reason TV-Links became so popular is because most of the videos worked as they weren&apos;t deleted immediately due to the aforementioned reasons. Why did TV-Links stay up so long? I don&apos;t know. Personally, I&apos;d like for TV-Links to come back but if it does, what message does it send to others? That as long as you upload content illegally on server A and link to it from server B, it&apos;s acceptable?&lt;br /&gt;&lt;br /&gt;
&lt;b&gt;Additional notes&lt;/b&gt;: There isn&apos;t an easy technical fix for the video sites to prevent the hot links as Flash deals with embedded media in it&apos;s own way. Most browsers don&apos;t send the referrer when viewing embedded videos. So playing a video on Veoh.com sends the same headers to the FLV host server as watching it on TV-Links. Additionally, most browsers now prevent 3rd party cookies (so no sessions) and Flash from 3rd party hosts does not always get full privileges to access the DOM (to avoid XSS exploits). Since video sites want their embeds to play on sites like Facebook and Myspace, they pretty much have to let anyone with valid headers stream their content.&lt;br /&gt;&lt;br /&gt;
There are Flash RTMP streams and more complex content distribution network services to stream FLVs but that adds to the cost tremendously. A Flash stream server is magnitudes more expensive than a cheap lighttpd box with ample storage.&lt;br /&gt;&lt;br /&gt;
Also, it wasn&apos;t just the simple links to the illegal content that is the issue here. Like I said, he wasn&apos;t just providing a list of illegal content. He was making it viewable in his and only his site. That means you cannot go to Google to watch that episode of Seinfeld, you HAVE to watch it on his site. Thereby, his site was a very crucial component of copyright violation. Without his site, you could never find David Attenborough&apos;s Secret Life on Plants on Veoh. That goes more than just linking to illegal content&lt;br /&gt;&lt;br /&gt;
On your site, you can provide a link to 1-10-100 illegal videos on Google or YouTube. That would constitute simple deep linking to copyrighted material, which in itself is illegal but mostly tolerated when it comes to video as copyright holders can file a DMCA request with the video host to bring down the video. His site bypassed that entire mechanism for copyright holders to even file a claim. That&apos;s why they&apos;re pissed and why he was arrested. I just hope they don&apos;t try to set any examples by completely ruining his life as a warning to others.</description>
    <dc:subject>/tech &apos;blog entry</dc:subject>
    <dc:date>2007-10-20T03:43:36-07:00</dc:date>
  </item>
  <item>
    <title>Name that Color JavaScript library</title>
    <link>http://chir.ag/tech/?52</link>
    <description>11:10 pm) A lot of people &lt;a href="http://del.icio.us/url/d2e7fc9cef62316355bfbcc539c7f7f8"&gt;loved&lt;/a&gt; my recently released &lt;a href="http://chir.ag/projects/name-that-color/"&gt;Name that Color&lt;/a&gt; app that helps you find the name of the closest matching color for any RGB value. Many &lt;a href="http://reddit.com/info/2lmfa/comments"&gt;suggested&lt;/a&gt; releasing the code or making some sort of web-service to let others use the same library in their projects. So here is the &lt;a href="http://chir.ag/tech/download/ntc/"&gt;Name that Color JavaScript&lt;/a&gt; library for all to use, embed, and extend.</description>
    <dc:subject>/tech &apos;blog entry</dc:subject>
    <dc:date>2007-09-04T23:18:03-07:00</dc:date>
  </item>
  <item>
    <title>Reddit OCDs</title>
    <link>http://chir.ag/tech/?51</link>
    <description>I spend a lot of time on &lt;a href="http://reddit.com"&gt;reddit&lt;/a&gt;, sometimes too much. While I have no qualms (yet) about the amount of time I spend there, I do have a lot of issues about HOW I spend my time there. Here are some of my reddit obsessions. I wonder if I&apos;m the only one with these:
&lt;ol&gt;
&lt;li value="10"&gt;If more than one person replies to my comment and I feel like replying to one of them, I feel obligated to say something to the rest of the repliers too.&lt;/li&gt;
&lt;li value="9"&gt;Every single link on the Hot &amp; Recommended pages must be purple. Really bad headlines for articles that I don&apos;t want to read, must get the &apos;hide.&apos;&lt;/li&gt;
&lt;li value="8"&gt;Must click on my username every few minutes to check which of my comments get up and down votes.&lt;/li&gt;
&lt;li value="7"&gt;Discover patterns within the up/down vote stream for each comment. E.g. a two-three sentence long comment made early on in a rising article can get 10-30 up votes and up to five replies even if it is not a great observation while detailed, informative comments made three hours after a link hits Hot page will get 10 up votes but rarely any comments.&lt;/li&gt;
&lt;li value="6"&gt;Open Hot, New, Recommended pages in three different tabs with the mail icon showing red in all. After reading the mail from Hot tab and closing it, click on the mail icon in other tabs and get disappointed to find no new comments.&lt;/li&gt;
&lt;li value="5"&gt;Click on the New page and smile when over 25% of articles are purple and ensure every article with a red (friend) submitter is purple.&lt;/li&gt;
&lt;li value="4"&gt;Must click every hidden comment to see why it has negative points. Act furious upon reading it and then promptly down vote it.&lt;/li&gt;
&lt;li value="3"&gt;Battle my inner-self to decide if the logical, sane, and factually correct comment at X votes that I disagree with should get a down vote because its parent/child comment that I agree with and have already awarded an up vote to, also has X points now. I have the opportunity to reverse the fate of the comments! Should I take it or just let it go?!&lt;/li&gt;
&lt;li value="2"&gt;After submitting articles, refresh the New page every 30 seconds to track their gradual fall off the page. Each time an article gets a bump of more than 5 slots, rejoice for a moment before realizing and lamenting at the predictability of my actions: "&lt;i&gt;Now due to a construct in my mind that makes their falling and their flight symbolic of my entire existence, it becomes important for me to get up and see their last second curves toward flight. It&apos;s almost as if my life will fall unless I see their ascent&lt;/i&gt;" - &lt;a href="http://www.azlyrics.com/lyrics/cake/mrmastodonfarm.html"&gt;Cake&lt;/a&gt;.&lt;/li&gt;
&lt;li value="1"&gt;Bemoan the prevalence of mildly-amusing [pic] and [video] links and not enough well-researched, well-written, unbiased articles as I up vote every funny street sign, fully aware of my own hypocrisy.&lt;/li&gt;
&lt;/ol&gt;</description>
    <dc:subject>/tech &apos;blog entry</dc:subject>
    <dc:date>2007-08-27T00:19:07-07:00</dc:date>
  </item>
  <item>
    <title>Top Seven Flash Animations of Ultimate Doom</title>
    <link>http://chir.ag/tech/?50</link>
    <description>We&apos;ve all seen amazing Flash animations over the years. Here&apos;s looking back at seven that totally kicked ass. Yes, you have seen most of them. Yes, they are worth seeing again. And again.&lt;br /&gt;&lt;br /&gt;
&lt;ol&gt;
&lt;li value="7"&gt;&lt;a href="http://allyourbase.planettribes.gamespy.com/video1_ayb.swf"&gt;All your base&lt;/a&gt; - What Top Flash list would be complete without AYB?&lt;/li&gt;
&lt;li value="6"&gt;&lt;a href="http://uploads.ungrounded.net/15000/15849_fight.swf"&gt;Xiao Xiao&lt;/a&gt; - A whole series of ass-kicking stick-figures&lt;/li&gt;
&lt;li value="5"&gt;&lt;a href="http://coldhardflash.com/video/06-endofworld.swf"&gt;End of the World&lt;/a&gt; - Hokay, we&apos;re definitely going to blow ourselves up&lt;/li&gt;
&lt;li value="4"&gt;&lt;a href="http://i.euniverse.com/funpages/cms_content/1492/humor_bin4.swf"&gt;Drop de Bomb&lt;/a&gt; - Daylight come and...&lt;/li&gt;
&lt;li value="3"&gt;&lt;a href="http://uploads.ungrounded.net/316000/316541_redkanga.swf"&gt;Animator vs Animation&lt;/a&gt; - Stick-figure thinking outside the box&lt;/li&gt;
&lt;li value="2"&gt;&lt;a href="http://www.gamerevolution.com/goodies/the_peoples_mario/the_peoples_mario.swf"&gt;People&apos;s Mario&lt;/a&gt; - Amazing quality and equally hilarious&lt;/li&gt;
&lt;li value="1"&gt;&lt;a href="http://uploads.ungrounded.net/285000/285267_ultimateshowdown.swf"&gt;The Ultimate Showdown of Ultimate Destiny&lt;/a&gt; - No, really. It is.&lt;/li&gt;
&lt;/ol&gt;</description>
    <dc:subject>/tech &apos;blog entry</dc:subject>
    <dc:date>2007-01-01T16:07:24-08:00</dc:date>
  </item>
  <item>
    <title>Black magic causing database server timeouts</title>
    <link>http://chir.ag/tech/?49</link>
    <description>After coming across &lt;a href="http://www.ibiblio.org/harris/500milemail.html"&gt;the case of the 500-mile email&lt;/a&gt; again, I was reminded of a pretty severe problem just as unexplainable that we had at our company last year.&lt;br /&gt;&lt;br /&gt;
The day after an unscheduled closing (hurricane), I started getting calls from users complaining about database connection timeouts. Since I had a very simple network with less than 32 nodes and barely any bandwidth in use, it was quite scary that I could ping to the database server for 15-20 minutes and then get "request timed out" for about 2 minutes. I had performance monitors etc. running on the server and was pinging the server from multiple sources. Pretty much every machine except the server was able to talk to the others constantly. I tried to isolate a faulty switch or a bad connection but there was no way to explain the random yet periodic failures.&lt;br /&gt;&lt;br /&gt;
I asked my coworker to observe the lights on a switch in the warehouse while I ran trace routes and unplugged different devices. After 45-50 minutes on the walkie-talkie with him saying "ya it&apos;s down, ok it&apos;s back up," I asked if he noticed any patterns. He said, "Yeah... I did. But you&apos;re going to think I&apos;m nuts. Every time the shipper takes away a pallet from the shipping room, the server times out within 2 seconds." I said "WHAT???" He said "Yeah. And the server comes back up once he starts processing the next order."&lt;br /&gt;&lt;br /&gt;
I ran down to see the shipper and was certain that he was plugging in a giant magnetomaxonizer to celebrate the successful completion of an order. Surely the electromagnetic waves from the flux capacitor were causing rip in the space-time continuum and temporarily shorting out the server&apos;s NIC card 150 feet away in another room. Nope. All he was doing was loading up the bigger boxes on the pallet first and then gradually the smaller ones on top, while scanning every box with the wireless barcode scanner. Aha! It must be the barcode scanner&apos;s wireless features that probably latch on to the database server and cause all other requests to fail. Nope. Few tests later I realized it wasn&apos;t the barcode scanner since it was behaving pretty nicely. The wireless router and it&apos;s UPS in the shipping room were configured right and seemed to be functioning normally too. It had to be something else, especially since everything was working fine just before the hurricane closing.&lt;br /&gt;&lt;br /&gt;
As soon as the next time out started, I ran into the shipping room and watched the guy load the next pallet. The moment he placed four big boxes of shampoo on the bottom row of the pallet, the database server stopped timing out! This had to be black magic! I asked him to remove the boxes and the database server began to time out again! I did not believe the absurdity of this and spent five more minutes loading and unloading the boxes of shampoo with the same exact result. I was about to fall down on my knees and start begging for mercy from the God of Ethernet when I noticed that the height at which the wireless router was placed in the shipping room was about a foot lower than the top of the four big boxes when placed on the pallet. We were finally on to something!&lt;br /&gt;&lt;br /&gt;
The wireless router lost the line-of-sight to the outside warehouse anytime a pallet was loaded with the big boxes. Ten minutes later I had the problem solved. Here is what happened. During the hurricane, there was a power failure that reset the only device in our building that wasn&apos;t connected to a UPS - a test wireless router I had in my office. The default settings on the test router somehow made it a repeater for the only other wireless router we had, the one in the shipping room. The two wireless nodes were only able to talk to each other when there were no pallets placed between them and even then the signal wasn&apos;t too strong. Every time the two wireless routers managed to talk, they created a loop in my tiny network and as a result, all packets to the database server were lost. The database server had it&apos;s own switch from the main router and hence was pretty much the furthest node. Most other PC&apos;s were on the same 16-port switch so I had no problems pinging constantly between them.&lt;br /&gt;&lt;br /&gt;
The 1-second solution to this four-hour troubleshooting nightmare was me yanking off the power to the test router. And the database server never timed out again.</description>
    <dc:subject>/tech &apos;blog entry</dc:subject>
    <dc:date>2006-12-23T23:05:25-08:00</dc:date>
  </item>
  <item>
    <title>Tagline Generator - Timeline-based Tag Clouds</title>
    <link>http://chir.ag/tech/?48</link>
    <description>Many people have asked me how they can make their own timeline-based tag cloud like my &lt;a href="http://chir.ag/projects/preztags/"&gt;US Presidential Speeches Tag Cloud&lt;/a&gt;. After a lot of cleaning up, I&apos;ve finally released the complete PHP 5 source code that works pretty well with very basic configuration.&lt;br /&gt;&lt;br /&gt;
The &lt;a href="http://chir.ag/tech/download/tagline"&gt;Tagline Generator&lt;/a&gt; is a simple PHP codebase that lets you generate chronological tag clouds from simple text data sources without manually tagging the data entries. Once you have populated the data source and configured the generator, it makes a list of all the unique words that have been used and counts how many times each word is used. Next it identifies the different variations of words and combines them under the most common variation using the Porter Stemming Algorithm. E.g. "promised", "promises", "promising", and "promise" might be grouped under "promises".&lt;br /&gt;&lt;br /&gt;
Then it removes the most common words like "the", "and", "this", "that" and some not so common language-specific words like "hitherto", and "notwithstanding". Once the commonly used language-specific words are removed, it makes a "tag cloud" in which the more commonly used words are shown in bigger font size than the less frequently used ones. Additionally, it tries to figure out how long ago a given word hit its peak usage and brightens the recently used words while fading away words haven&apos;t been used in a while.&lt;br /&gt;&lt;br /&gt;
&lt;b&gt;Demo&lt;/b&gt;: To view a demo and start using the Tagline Generator yourself, check out the &lt;a href="http://chir.ag/tech/download/tagline"&gt;Tagline Generator&lt;/a&gt; page.</description>
    <dc:subject>/tech &apos;blog entry</dc:subject>
    <dc:date>2006-11-14T01:28:26-08:00</dc:date>
  </item>
  <item>
    <title>Spam Bombed</title>
    <link>http://chir.ag/tech/?47</link>
    <description>5,666 junk emails in five hours, before I turned off my mail server. Here&apos;s what it looks like: &lt;a href="http://chir.ag/stuff/spambombed.png"&gt;Spam Bombed&lt;/a&gt;. I need an external MX-based spam filtering company.&lt;br /&gt;&lt;br /&gt;
Basically the spammers are sending junk email pretending to be me. They used [random_names]@mydomain.com as &apos;From&apos; to send lots and lots of junk email around the world. Either the receiving servers accept the message or identify it as spam and bounce it back. If they accept it, their mail users will see a spam pretending to come from me. If they bounce it, then I get a copy of the spam attached to the email. No matter what, the spammers get to show their spam to someone. So either way the spammers win. Either way, I lose.&lt;br /&gt;&lt;br /&gt;
Of course this is distributed junk mailing too. So 100 computers around the world sent hundreds of junk mails in my name. And I get the honor of experiencing the thousands that bounce back.</description>
    <dc:subject>/tech &apos;blog entry</dc:subject>
    <dc:date>2006-08-04T08:06:36-07:00</dc:date>
  </item>
  <item>
    <title>Anatomy of typical spam</title>
    <link>http://chir.ag/tech/?46</link>
    <description>I&apos;m often bombarded by over 1000 spam emails per hour on two of my dedicated servers that each host 30-40 domains. Using multiple DNS blacklists and custom filters helps cut that number down significantly, until the spammers find new IPs and new ways to bypass my pattern-match text filters. Every once in a while I look at a few spam emails to see if I can identify new patterns and block the most common ones.&lt;br /&gt;&lt;br /&gt;
I randomly selected one of the spams I hadn&apos;t yet deleted from my Thunderbird junk mail folder and decided to pick it apart. Today, instead of going after common spam words and typical spam subject lines, I wondered if there is a pattern in the headers, the way a junk email travels, that can help me identity and stop spams from IP addresses that haven&apos;t been blocked yet. It wasn&apos;t until I started running &lt;a href="http://www.tools-on.net/net.shtml"&gt;IP WHOIS&lt;/a&gt; and &lt;a href="http://www.ajaxwhois.com/"&gt;domain WHOIS&lt;/a&gt; on everything in the email that the truly global nature of spam hit me.&lt;br /&gt;&lt;br /&gt;
Here&apos;s the email I analyzed with complete headers and only a few details [edited] by me. Hover on a link to see the country information. Clicking on links will not do anything, no matter how tempting it is to &lt;i&gt;have perfect sex in your life&lt;/i&gt;.&lt;br /&gt;&lt;br /&gt;
&lt;pre class="codeblock"&gt;
Envelope-to: &lt;a href="#." title="Destination Server: United States"&gt;[edited]@chime.tv&lt;/a&gt;
Delivery-date: Sat, 15 Jul 2006 12:02:09 -0400
Received: from [&lt;a href="#." title="True Spam IP: China"&gt;60.6.118.44&lt;/a&gt;] (helo=&lt;a href="#." title="Scapegoat Server: United States"&gt;glorymail.com&lt;/a&gt;)
	by server.chime.tv with smtp
	id 1G2mal-00062M-W3
	for [edited]@chime.tv; Sat, 15 Jul 2006 12:02:09 -0400
Received: from &lt;a href="#." title="Scapegoat Spam IP: Mexico"&gt;200.23.242.202&lt;/a&gt;
  (SquirrelMail authenticated user
         [edited]@&lt;a href="#." title="Scapegoat Spam Domain: United Kingdom"&gt;colourconfidence.com&lt;/a&gt;);
  by glorymail.com with HTTP id Ab44qw9z008048783;
  Sat, 15 Jul 2006 16:07:43 +0000
Message-Id: &amp;lt;IOOCIh.squirrel@200.23.242.202&gt;
Date: Sat, 15 Jul 2006 16:07:43 +0000
Subject: Can you satisfy your girlfriend?
From: "Derek" &amp;lt;[edited]@colourconfidence.com&gt;
To: &amp;lt;[edited]@chime.tv&gt;
User-Agent: SquirrelMail/1.4.3a
X-Mailer: SquirrelMail/1.4.3a
MIME-Version: 1.0
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Antivirus: AVG for E-mail 7.1.394 [268.10.1/389]&lt;br /&gt;&lt;br /&gt;
&amp;lt;html&gt;
&amp;lt;body&gt;
Or you are afraid that she meets with someone who is better
than you in bed? Use licensed Viagra and Cialis pills from our
drug store. Now you are the best, you have perfect sex in
your life! That is US Druq store with quaIity ED
medications!&amp;lt;br&gt;&amp;lt;br&gt;&lt;br /&gt;&lt;br /&gt;
CIick here: &amp;lt;a href="http://nnqthf.&lt;a href="#." title="WHOIS Owner: Croatia"&gt;calmcrush.com&lt;/a&gt;/?&lt;a href="#." title="Affiliate: Unknown"&gt;couacwanoghy&lt;/a&gt;"&gt;
&lt;a href="#." title="Offices: India &amp; United States"&gt;US Drugs&lt;/a&gt; onIine store&amp;lt;/a&gt;&amp;lt;br&gt;&amp;lt;br&gt;&lt;br /&gt;&lt;br /&gt;
To make your life better .Even your sexuaI partner won&apos;t know you
are using Viaqra if you&apos;ll buy it here.&amp;lt;br&gt;&amp;lt;br&gt;&lt;br /&gt;&lt;br /&gt;
CONFlDENTlAL and SECURE purchase .lnstant shipping!
&amp;lt;/body&gt;
&amp;lt;/html&gt;
&lt;/pre&gt;If that techno-mumbo-jumbo was too dry for your taste, here&apos;s the itinerary of the adventurous Ms. S. Pam: Set sails from China [60.6.118.44] on route to United States [chime.tv &lt;a href="#." title="Ignore the .tv connection and that you&apos;re reading this on a .ag domain - I own interesting domains from strange countries."&gt;?&lt;/a&gt;]. While reminiscing the memoirs of her voyage, she strongly recommends you shop at this one store, USDrugs Ltd, that has offices in New York, US and Mumbai, India. And be sure to let the store know she sent you [referrer ID: couacwanoghy] so she gets some brownie points ($$$). The store [calmcrush.com] is in fact owned by a Croatian. Not satisfied with her story of travelling just a few countries, she makes up a saucy encounter story to tease you. Before leaving China, she claims, she had been vacationing in Mexico [200.23.242.202]. It was there that she met a colorful Englishman [colourconfidence.com] and they hit it off. In fact, they had such a glorious time, he even accompanied her half-way into the US [glorymail.com]. And now, she&apos;s at your door-step, awating your warm welcome.&lt;br /&gt;&lt;br /&gt;
Back to techno-babble, now what can I do about it? This one single email shows links to China, United States, India, Croatia, Mexico, and United Kingdom! Clearly the email claims to have originated in Mexico by someone using the web-based SquirrelMail. Unless I&apos;m mistaken, it&apos;s saying that a user from colourconfidence.com authenticated with (i.e. logged into) SquirrelMail hosted on glorymail.com servers. In my experience, unless colourconfidence.com and glorymail.com are on the same server (definitely not according to their IPs), it&apos;s not possible for SquirrelMail to authenticate. I often log in to SquirrelMail on https://abcd.com using user@xyz.com as long as both abcd.com and xyz.com are hosted on the same server.&lt;br /&gt;&lt;br /&gt;
Analyzing which servers an email has been through (all the Received: headers) seems pretty much useless because everything except the last one can be faked quite easily. One thing each mail server can do while receiving email is verify if the IP that is sending the email is the same one that received the email in the previous Received: header. E.g., in the above case, is the server that received the supposedly "original" email [glorymail.com] the same as the one that is sending it [60.6.118.44] on to the next one? If no, then either [60.6.118.44] is lying or it is some internally chained server setup that receives emails using [glorymail.com: 69.25.142.7] and forwards it using [60.6.118.44]. I&apos;m sure there are setups like this, but they would normally not be on entirely different IP blocks: [60.6.118.44] vs [69.25.142.7]. With an allowable subnet of 255.255.0.0 between the receiving and forwarding IP, this can in fact work to minmize faking of received headers.&lt;br /&gt;&lt;br /&gt;
Of course, there&apos;s not much spammers gain by faking headers except to confuse a few servers. Once potentially fake headers are regularly blocked, spammers will stop faking and just hit the recipient&apos;s server directly, like the next email shows:&lt;br /&gt;&lt;br /&gt;
&lt;pre class="codeblock"&gt;
Delivery-date: Sat, 15 Jul 2006 14:33:10 -0400
Received: from [88.64.177.85] (helo=S-3QY5813Q55LG1T)
	by server.chime.tv with esmtp
	id 1G1o0v-0005WJ-O7
	for [edited]@chime.tv; Sat, 15 Jul 2006 14:33:09 -0400
From: "Buford" &lt;[edited]@popstar.com&gt;
To: &lt;[edited]@chime.tv&gt;
Subject: Get the freshest But without any results
Date: Sat, 15 Jul 2006 20:36:25 +0200&lt;br /&gt;&lt;br /&gt;
Yo!
Masculine performance has never been so easy to increase
with these products. Order our magical stuff now for the
amazing prices, and we will dispatch it right away&lt;br /&gt;&lt;br /&gt;
World famous brands which keep men happy all over the world&lt;br /&gt;&lt;br /&gt;
See our offer: http://www.sherifidk.com &lt;br /&gt;&lt;br /&gt;
We thank you for being interested in our products
&lt;/pre&gt;All I know here with certainty is that [88.64.177.85] sent me that spam. [88.64.177.85] isn&apos;t on SBL/XBL or any other major DNS blacklists. I&apos;m sure it will get on a blacklist if the spam continues, but it does no immediate benefit to me as my mailbox already received 14 spams from that IP address.&lt;br /&gt;&lt;br /&gt;
Spam is such a big problem because SMTP is so simple. With just a few headers (or commands), anyone can send an email to anyone. It&apos;s easy to identify spam when it has lots of headers that raise red flags. But when it&apos;s as simple as a "Hey let&apos;s have lunch at this restaurant: http://URL" email that your friend might send, how can you block it? More and more I&apos;m noticing, there are no spammy keywords. No Viagra or Cialis. Or \/1aGr4 either. It&apos;s plain text with simple URLs with real domains in the "From" header.&lt;br /&gt;&lt;br /&gt;
Any filters to block simple spams as such will only result in blocking of legitimate emails. There are so many ideas on how to block spam but none work for every occassion. E.g. Hold off emails from first-time senders till they click on a URL to verify their authenticity. Great, more work for sender and impossible for automated senders to verify (i.e. emails from online merchants). Now the receiver has to add every automated sender to some list. Of course, spammers can fake the from address to be same as major auto-senders: checkout@amazon.com. Well, now you start verifying if IP of sender that claims to be checkout@amazon.com is same as that of amazon.com [72.21.206.5]. What happens when Amazon migrates servers to new IP block? Everyone in the world, change your filters. Filters, even highly intelligent ones, are not the answer.&lt;br /&gt;&lt;br /&gt;
Then there&apos;s &lt;a href="http://www.openspf.org/"&gt;Sender Policy Framework&lt;/a&gt;. It is promising though it has its &lt;a href="http://en.wikipedia.org/wiki/Sender_Policy_Framework#Caveats"&gt;issues&lt;/a&gt;. The biggest problem is of course, getting the entire world to use it - making every sysadmin in the world spend &lt;a href="http://www.openspf.org/forsysadmins.html"&gt;an hour and half&lt;/a&gt; to set up SASL SMTP is asking for a bit too much. It can happen but not anytime soon. Especially since Microsoft has, as usual, come up with their own way of doing this: &lt;a href="http://microsoft.com/senderid"&gt;Sender ID&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;
Comparing implementation, adoption, and technical qualities of both these and many more email authentication frameworks is not my intention today. Today, I just wanted to show how globalized spam is, from origination to destination, from point of sale to the hidden beneficiaries. Moreover, it is next to impossible to fix the problem of spam based solely on the content of individual emails. Or by catching the people that make money through spam. As long as the cost of catching spammers is greater than sending spam, it&apos;s not going to happen. Just like corruption has to be fixed from outside the system, so has to be done with spam. While the tech luminaries fight over which framework to adopt globally, I keep getting 40 spams each time I hit "Get Mail."&lt;br /&gt;&lt;br /&gt;
All I want them to do is just pick one so every one in the world can use it. I don&apos;t care if we choose the easy but inferior or select the difficult and efficient framework. Just get on it already. Don&apos;t pull an RSS vs Atom, HD-DVD vs Blu-Ray, Kari vs Scottie for no good reason.&lt;br /&gt;&lt;br /&gt;
Can you stop my spam already? kthxbye!</description>
    <dc:subject>/tech &apos;blog entry</dc:subject>
    <dc:date>2006-07-15T12:36:15-07:00</dc:date>
  </item>
  <item>
    <title>Please don't lock me out</title>
    <link>http://chir.ag/tech/?45</link>
    <description>I hate how my /tech &apos;blog has somehow become a rant against big tech companies&apos; ridiculous policies. Today&apos;s star is surprisingly my favorite domain registrar: &lt;a href="http://godaddy.com"&gt;GoDaddy&lt;/a&gt;. I have two accounts and over fifty different active domains registered via them and I love the price, the ease, and the service. Many complain about their service but I&apos;ve called them over 10 times in last six months and I&apos;ve had nothing short of a stellar experience and great help each time.&lt;br /&gt;&lt;br /&gt;
So obviously my rant is towards something else: Namely, their lock-out policy. It is common for OSes, software, and websites to lock your account for about 30-minutes to a few hours if someone tries to log in using incorrect password repeatedly. It sounds like an ideal protection against dictionary attacks and brute force methods. If you forget your password, you have about 3-5 attempts to get it right. If you still can&apos;t recall it, it doesn&apos;t make a difference if you have to wait for 30-minutes due to lock-out because you need to contact a sys-admin anyway to help reset your password. You have nothing to lose because of a lock-out. After all you forget your password in the first place. If someone else is trying to log into your account by randomly guessing passwords, they will be locked out in just a few attempts and will have to try again later. If this happens, say at your workplace, account locks might even help find who was trying to log in as you. Good security measure.&lt;br /&gt;&lt;br /&gt;
Where&apos;s the problem you ask? When it&apos;s a website that anyone in the world can access and in addition to (or instead of) usernames, it uses serial numbers for Customer IDs that anyone can guess. Like GoDaddy. If my username is &apos;mycompany&apos; and someone wants to login as me, they need to know TWO pieces of information - my username and my password. If they know my username but not my password, they will lock me out for 30-mins to 24hrs by failed login attempts. That&apos;s ok. My username is not published anywhere. However, if they can also login using my Customer ID (which happens to be a simple 7-8 digit number), the thieves can unknowingly lock me out with absolutely no prior information. With ZERO pieces of information, they can cause harm to paying customers of a company! Think about the disservice to the real paying customers.&lt;br /&gt;&lt;br /&gt;
Once a month for the last 3-4 months, someone randomly tries to log in to my GoDaddy account. I doubt whoever it is knows my username or email. Chances are they just make a random 7-8 digit number and try a bunch of different passwords. They fail (thankfully) and GoDaddy locks me out (unfortunately). Now I&apos;m prevented from buying a new domain for next few hours through no fault of mine. I have to call GoDaddy, go through the Reset-My-Password process, and come up with a new strong password each time just to log into my own account. I am now mad at GoDaddy because of some script kiddie in Indonesia. If this persists, I will consider switching registrars. With over $1500/year of my money going to GoDaddy for domain registrations, domain transfers, and SSL certificates, I expect 24/7/365 access to my accounts at my fingertips.&lt;br /&gt;&lt;br /&gt;
Dear Bob Parsons, I love reading your &apos;&lt;a href="http://www.bobparsons.com/"&gt;blog&lt;/a&gt;. Keep it up. However, make it so that nobody else in the world can lock my account just by guessing random numbers. I can go to GoDaddy right now and lock out whoever Customer ID 4294659 (or 50301231 or 89412123) is by trying to log in a few times with that ID# and password "HAHA!" If the poor schmuck that has that Customer ID tries to buy www.new-special-domain.com in the next 24-hours, GoDaddy won&apos;t let him even login. Business lost. Paying customer angry.&lt;br /&gt;&lt;br /&gt;
Solution is to require a strong password (and GoDaddy already does when you have a credit-card on file) and stop locking accounts when a Customer ID is entered. Keep locking if invalid username/passwords are entered if you want, but never if invalid customer#/password is entered. Thanks.</description>
    <dc:subject>/tech &apos;blog entry</dc:subject>
    <dc:date>2006-07-11T13:04:05-07:00</dc:date>
  </item>
  <item>
    <title>Irony at Enterprisingly Mobile speeds!</title>
    <link>http://chir.ag/tech/?44</link>
    <description>It is hard to believe that in this era of instant-everything, there exists a modern &lt;a href="http://symbol.com"&gt;technology company&lt;/a&gt; ushering the next generation of &lt;a href="http://www.symbol.com/products/rfid/rfid.html"&gt;security and identification&lt;/a&gt; tools that is for some reason putting me through an archaic process just so I can get a minor upgrade.&lt;br /&gt;&lt;br /&gt;
I wanted to reprogram the awesome barcode scanner that I&apos;ve deployed at my work: &lt;a href="http://www.symbol.com/PPT8800/"&gt;Symbol PPT8846 Wireless&lt;/a&gt; (8800 = batch, 8846 = wireless) and instead of regularly deploying minor updates to the scanning software, I now want to create a web application that runs on an Intranet server and can be accessed wirelessly by the barcode scanner. That way when business needs change, I simply change the code on the web server and instantly all the barcode scanners adapt to the new system. Having already programmed the barcode application in .Net CF using Symbol&apos;s SDK, I figured this would be as easy as adding a WebBrowser control to the .Net application and using Navigate("http://myserver/"). Except after much time-wasting I find that I need to upgrade the OS on the device from Windows CE .Net 4.1 to 4.2.&lt;br /&gt;&lt;br /&gt;
Symbol offers the upgrade for a $25 fee. Sure sounds fair. It&apos;ll make my life easier and pay for itself immediately by saving hours I spend updating and deploying software. Except I can&apos;t buy the upgrade on symbol.com - they stopped processing credit cards! I had to go through a &lt;a href="http://www.barcodediscount.com/"&gt;reseller&lt;/a&gt; (highly-recommended, got my hardware from there). This software isn&apos;t sold online so I ended up calling. The order took just minutes to place and I clicked &apos;Send and Receive&apos; on my email client so I can get the URL to download the software. After five minutes and no URL, I called up the reseller to ask why I never got the email with the URL. That&apos;s when I found out the most hypocritical order-processing system an "Enterprise Mobility" company can implement: "Yeah. We&apos;ve sent your order to Symbol. And THEY will send you an email within 3-5 business days with the URL to download the upgrade. It is completely out of our hands as a reseller and trust me, we hate this slow system too. Thanks, can I help you with anything else?"&lt;br /&gt;&lt;br /&gt;
So let me get this straight. Symbol.com, a technology leader in barcode scanners, RFID readers, and hand-held devices, takes THREE to FIVE DAYS to send me an email with a URL to download a single FILE????? I am not an impatient person. I can wait three weeks for Dell to assemble my new NAS device. I can wait a week for a vendor to mail me a DVD. However, I CANNOT wait FIVE DAYS to download a file that I have already paid for and should be able to download instantly. I&apos;m sorry but this is absolutely pathetic and completely backwards for a company that has executive-level speakers going around the world giving seminars on expediting order-processing.&lt;br /&gt;&lt;br /&gt;
If you asked me what&apos;s the definition of irony, this is it, at it&apos;s finest. Last month I attended a very informative seminar hosted by a Symbol speaker. He was indeed very experienced and clearly explained what RFID can or canot do. The #1 thing he mentioned though is that by using Symbol&apos;s RFID tools, one can ensure immediate order-processing because out-of-stock inventory can be a thing of the past. Order-processing! Order-processing! That&apos;s what Symbol wants me to improve. And they take just "3-5 business days to send me an email..."&lt;br /&gt;&lt;br /&gt;
*sigh* I still love the Symbol products. The technology really is good and very developer-friendly. Highly-recommend the PPT8846. Works great without any problems. Symbol support even replaced an internal battery for free when it was failing.&lt;br /&gt;&lt;br /&gt;
&lt;b&gt;Update - May 8th 2006, 3pm:&lt;/b&gt; I received the download file from Symbol and am in the process of upgraging the OS. Even though I got the file much earlier than I was told to expect it, the fact of the matter still remains - no automated way to download online purchases.</description>
    <dc:subject>/tech &apos;blog entry</dc:subject>
    <dc:date>2006-05-05T13:35:45-07:00</dc:date>
  </item>
</channel>
</rss>