<?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>TrueJournals &#187; comcast</title>
	<atom:link href="http://truejournals.com/tags/comcast/feed/" rel="self" type="application/rss+xml" />
	<link>http://truejournals.com</link>
	<description>College student; Engineer; Programmer; Nerd.</description>
	<lastBuildDate>Mon, 18 Jul 2011 04:24:51 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Why Net Neutrality is Important</title>
		<link>http://truejournals.com/2010/08/20/why-net-neutrality-is-important/</link>
		<comments>http://truejournals.com/2010/08/20/why-net-neutrality-is-important/#comments</comments>
		<pubDate>Sat, 21 Aug 2010 04:45:37 +0000</pubDate>
		<dc:creator>TrueJournals</dc:creator>
				<category><![CDATA[life]]></category>
		<category><![CDATA[technology]]></category>
		<category><![CDATA[thoughts]]></category>
		<category><![CDATA[comcast]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[net neutrality]]></category>
		<category><![CDATA[network]]></category>

		<guid isPermaLink="false">http://truejournals.com/?p=187</guid>
		<description><![CDATA[I can&#8217;t believe I haven&#8217;t written a blog post about Net Neutrality.  For those of you who know me personally, you should know that I&#8217;m a very strong supporter of Net Neutrality, and believe it&#8217;s very important that we make sure the Internet is kept neutral.  However, for whatever reason, there are a LOT of [...]]]></description>
			<content:encoded><![CDATA[<p>I can&#8217;t believe I haven&#8217;t written a blog post about Net Neutrality.  For those of you who know me personally, you should know that I&#8217;m a very strong supporter of Net Neutrality, and believe it&#8217;s very important that we make sure the Internet is kept neutral.  However, for whatever reason, there are a LOT of misconceptions about Net Neutrality, and what exactly it entails.  Since Net Neutrality in reaction to Comcast has once again come up in the news recently, I figured I should write a blog post about the subject.</p>
<p>First, let&#8217;s go into some background on the Comcast case.  A year or so ago, Comcast decided that its network was being congested by too much <acronym title="Peer-to-Peer">P2P</acronym> traffic; namely, traffic from the <a class="vt-p" href="http://bittorrent.com">BitTorrent</a> P2P protocol.  So, they decided that they would clear their network of this congestion by carefully denying BitTorrent connections.  They did this by looking into the traffic that BitTorrent was sending over the network, and sending back false information so that connections to peers would fail.  The actual details of how this was done is outside the point of this post.</p>
<p>After some outrage from Comcast customers who used BitTorrent, the <acronym title="Federal Communications Commission">FCC</acronym> decided it would step in and tell Comcast to stop or suffer consequences.  As soon as this happened, there was some question about whether or not the FCC actually had the power to do this.  But, the case went to court and a judge decided that the FCC <strong>did</strong> have the power to do this, and that Comcast had to stop denying BitTorrent connections in this way.  This was a major win for users of the Internet: the court decision basically meant that your <acronym title="Internet Service Provider">ISP</acronym> can&#8217;t deny you from accessing information on the Internet.<span id="more-187"></span></p>
<p>However, the case was appealed by Comcast because that&#8217;s just the way the US legal system works.  The appeals court reversed the decision of the first court, and decided the FCC did <strong>not</strong> have this power, which is true.  Currently, the FCC does not have power to do anything about network management on the Internet.  Because of this, their decision to sanction Comcast for shaping the network was not allowed by any law.  So, the clear answer to this conundrum is to have Congress pass a law which would give the FCC this power, right?</p>
<p>In my opinion, yes.  This is the essence of Net Neutrality: give the FCC the power to force ISPs to be neutral, that is, to allow users to access any website, with any protocol.  This is the current spirit of the Internet: that anyone can access any part of it, and that it&#8217;s easy for someone to create a new site that becomes an overnight sensation.  The idea of an open Internet is not possible without Net Neutrality.  So, why hasn&#8217;t this been an issue in the past?</p>
<p>Probably because it&#8217;s never needed to be an issue.  As users start using more bandwidth, ISPs are looking for ways to get more money.  If there is no law forcing the net to be neutral, then ISPs can manage their network however they want.  Let&#8217;s say, for example, that your ISP partners with Google and Wikipedia.  Your ISP&#8217;s basic package will allow you to access these two sites.  Want to use Bing, or Yahoo!?  That&#8217;ll be an extra $20 a month.  Want to access any website you want?  It&#8217;ll cost you.  We&#8217;ve created a situation where innovation is stifled on the greatest frontier for innovation.</p>
<p>One of the great things that has come out of the Internet is small businesses.  A small business can easily create a website with a good product, and become big.  Without Net Neutrality, this becomes <strong>very</strong> difficult.  A small business would first have to give some money to your ISP in order for you to be able to get to their site.  But, remember that there are multiple ISPs, and the small business would have to pay <strong>all</strong> of them to reach all their potential customers.</p>
<p>It&#8217;s possible, however, that competition wouldn&#8217;t allow this to happen.  One ISP would have to be &#8220;the first&#8221; to implement a pricing scheme like this.  If consumers voted with their dollars and switched ISP if this happened, then ISPs everywhere would be sent a message that this is no way to run a business.  Unfortunately, however, I have a feeling that most people would just go along with it without knowing any better.  After all, the big sites that people actually use would be able to afford the fees an ISP would put on them to get to their user base.</p>
<p>So, what do we do?  Check out http://www.savetheinternet.com/ .  Find out what net neutrality <strong>really</strong> means, and join the fight to keep the net neutral!</p>
<p>[Note: I had originally written this post on April 11.  I think it's finished, and reading over it, it does seem finished.  I'm really not sure why I never published it.  Perhaps I was going to add more... I just don't remember now!  Oh, well... better late than never.  News since this post: Google and Verizon's Net Neutrality proposal has many outraged.  I haven't looked into it much, but I'll see if I can poke around it a bit more and write a post about my thoughts.]</p>
]]></content:encoded>
			<wfw:commentRss>http://truejournals.com/2010/08/20/why-net-neutrality-is-important/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>New Caller ID Development</title>
		<link>http://truejournals.com/2009/05/24/new-caller-id-development/</link>
		<comments>http://truejournals.com/2009/05/24/new-caller-id-development/#comments</comments>
		<pubDate>Sun, 24 May 2009 14:30:04 +0000</pubDate>
		<dc:creator>TrueJournals</dc:creator>
				<category><![CDATA[thoughts]]></category>
		<category><![CDATA[caller id]]></category>
		<category><![CDATA[comcast]]></category>
		<category><![CDATA[hacking]]></category>
		<category><![CDATA[update]]></category>

		<guid isPermaLink="false">http://truejournals.com/?p=86</guid>
		<description><![CDATA[I will continue to update this post throughout today and tomorrow with the latest developments of my caller ID research. Sunday, 9:30 AM &#8211;I&#8217;ve discovered an interesting line while decompiling Comcast&#8217;s software (in an if statement which handles incoming messages): (arg1.from[0].match(CALLER_ID_SERVICE_JID) &#124;&#124; arg1.from[0].match(CALLER_ID_SERVICE_JID_TEST)) This means that comcast IS checking who the message is coming from. [...]]]></description>
			<content:encoded><![CDATA[<p>I will continue to update this post throughout today and tomorrow with the latest developments of my caller ID research.</p>
<p><strong>Sunday, 9:30 AM</strong> &#8211;I&#8217;ve discovered an interesting line while decompiling Comcast&#8217;s software (in an if statement which handles incoming messages):</p>
<blockquote><p>(arg1.from[0].match(CALLER_ID_SERVICE_JID) || arg1.from[0].match(CALLER_ID_SERVICE_JID_TEST))</p></blockquote>
<p>This means that comcast IS checking who the message is coming from.  Although, they seem to do something else if it&#8217;s not from one of these two addresses.  Also, what is CALLER_ID_SERVICE_JID_TEST?  I&#8217;ll have to do some more exploring!</p>
<p><strong>Sunday, 1:44 PM</strong> &#8212; Hmm&#8230; some interesting declarations:</p>
<blockquote><p>public static const CALLER_ID_SERVICE_JID_TEST:String=&#8221;vismedia02@comcast.net&#8221;;<br />
public static const CALLER_ID_SERVICE_JID:String=&#8221;callerid_alert@comcast.net&#8221;;</p></blockquote>
<p><strong>Monday, 9:19 AM</strong> &#8212; I&#8217;ve discovered an interesting URL in the code &#8212; <a href="http://machenmusik.com">machenmusik.com</a> &#8212; it&#8217;s the package for the caller id decoding function (so, the project should be hosted there).  However, it currently just gives a login prompt.  Very strange.  Anyway, I&#8217;m attempting to translate the caller ID decoding into python.  I&#8217;ll let others translate it from there.  We&#8217;ll see how this works out&#8230;</p>
<p><strong>Monday, 3:18 PM</strong> &#8212; Well, after playing with the decompiled actionscript a bunch, I can&#8217;t get it to return any comprehensible output.  The same goes for the python I translated.  So, I&#8217;m kinda giving up right now due to lack of knowlege.  If someone else would like to pick up where I&#8217;ve left off, contact me and I can send you what I have so far&#8230;  It was worth a try, right?</p>
]]></content:encoded>
			<wfw:commentRss>http://truejournals.com/2009/05/24/new-caller-id-development/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Comcast&#8217;s Caller ID</title>
		<link>http://truejournals.com/2009/05/23/comcasts-caller-id/</link>
		<comments>http://truejournals.com/2009/05/23/comcasts-caller-id/#comments</comments>
		<pubDate>Sat, 23 May 2009 22:22:38 +0000</pubDate>
		<dc:creator>TrueJournals</dc:creator>
				<category><![CDATA[thoughts]]></category>
		<category><![CDATA[brainstorm]]></category>
		<category><![CDATA[caller id]]></category>
		<category><![CDATA[comcast]]></category>
		<category><![CDATA[hacking]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://truejournals.com/?p=83</guid>
		<description><![CDATA[Comcast has recently added a new feature to their digital voice service: caller ID anywhere.  Simply download a program on your computer, enter your comcast.net username and password, and you&#8217;ll get a small alert any time you get a call.  The same system allows comcast to show caller ID alerts on your TV. So, how [...]]]></description>
			<content:encoded><![CDATA[<p>Comcast has recently added a new feature to their digital voice service: caller ID anywhere.  Simply download a program on your computer, enter your comcast.net username and password, and you&#8217;ll get a small alert any time you get a call.  The same system allows comcast to show caller ID alerts on your TV.</p>
<p>So, how does this work?  Did comcast come up with some super-secret way to encode this data so no one but them can use it?  Nope; they&#8217;re simply using XMPP.</p>
<p>For those unaware, XMPP is a very nice concept: an open messaging protocol.  This means that companies don&#8217;t need to invent their own protocol, or shell out big bucks to use another protocol.  Just grab a server and client, and you have an instant messaging system.  XMPP is also designed to be expandible.  Is there a feature you need that it&#8217;s missing?  Just code it in, following the current specifications.  The problem with this is that different clients can conform to different specifications for things that aren&#8217;t part of the official protocol, but that&#8217;s another discussion.</p>
<p>Comcast decided to not reinvent the wheel, and just use XMPP, with a little twist.  If you already know a bit about XMPP, I&#8217;ll give you the stanza as a client receives it:<span id="more-83"></span></p>
<blockquote><p>&lt;message to=&#8221;bob.graese@comcast.net/comcast&#8221; from=&#8221;callerid_alert@comcast.net/wcdc01b&#8221; id=&#8221;sn-30552863&#8243; type=&#8221;headline&#8221;&gt;&lt;CInfo&gt;3NoAaS45q2vvGEmdgNb35TReIbQcE7F5d4vtkBu0l1bsyVdLRr3VxaTyWbV<br />
nyXpEIgjAs1QbBV2CK1HJjIb+yvTDOMXh5uDGh+Q552jyV6vxPM10+tlhNBfTEvNjB7QJnTHkd2Mmj5<br />
Cl3JCdoRRw8/RTGSzDGrSQwLAmpht6GmS7DNMGcHc=&lt;/CInfo&gt;&lt;/message&gt;</p></blockquote>
<p>(The line breaks above have been inserted by me in order to not destroy the layout)  So, what&#8217;s all this saying?  When your phone rings, comcast sends you a message over the XMPP protocol.  This message goes TO (your_main_account)@comcast.net, using the resource &#8220;comcast&#8221;, and comes FROM callerid_alert@comcast.net (very original naming), with a little resource tacked on the end there.  Each message has a unique ID, and a tag saying that the message is a &#8220;headline&#8221; (I&#8217;m not sure on the specifics of this, I&#8217;m guessing this would be used for news items in a XMPP client).  Then, Comcast starts the non-standard part.</p>
<p>When sending an IM over XMPP, there&#8217;s usually a body tag inside the message tag.  However, Comcast has invented a CInfo tag, which isn&#8217;t part of the XMPP specification.  Inside, there&#8217;s a long, encoded string.  Unfortunately, I haven&#8217;t worked out how they encode it (I&#8217;ll be working on that in the coming days; Any ideas?  Let me know!)</p>
<p>So, what does this mean?  It means that everything is unsecure (except the CInfo tag).  Theoretically, if comcast&#8217;s programming is dumb enough, I could send a caller ID message to any comcast user, and have it display on their TV and computer, even though their phone isn&#8217;t ringing.  Or, I could call their house, then send them a different caller ID message, and spoof my caller ID info.</p>
<p>Of course, this all hinges on the assumption that comcast figured no one would think of this.  I&#8217;m guessing that Comcast doesn&#8217;t check who the message is FROM.  If they do, and it needs to be from callerid_alert@comcast.net, then none of this will work.  However, if they don&#8217;t check, this could be a fun security excersise.</p>
<p>But first, I need to decode the information inside CInfo.  I don&#8217;t have much security expertise, so I can&#8217;t guarantee any progress on this.  If you have an idea, please let me know.  If you figure it out on your own, I&#8217;d also like to know.  If you use my ideas to expand into your own project, a small link is all I ask.</p>
<p>Stay tuned in the next couple of days to see if I can make any progress.</p>
]]></content:encoded>
			<wfw:commentRss>http://truejournals.com/2009/05/23/comcasts-caller-id/feed/</wfw:commentRss>
		<slash:comments>23</slash:comments>
		</item>
	</channel>
</rss>

