October 6, 2022

Archives for January 2015

Nine awesome Bitcoin projects at Princeton

As promised, here are the final project presentations from the Bitcoin and cryptocurrency technologies class I taught at Princeton. I encouraged students to build something real, rather than toy class projects, and they delivered. I hope you’ll find these presentations interesting and educational, and that you build on the work presented here (I’ve linked to the projects on GitHub if the code is available).

If you haven’t already, you should sign up for the online version of this class we’re teaching starting in a couple of weeks. The class will prepare you to do projects just like these.

[Read more…]

Android WebView security and the mobile advertising marketplace

Freedom to Tinker readers are probably aware of the current controversy over Google’s handling of ongoing security vulnerabilities in its Android WebView component. What sounds at first like a routine security problem turns out to have some deep challenges.  Let’s start by filling in some background and build up to the big problem they’re not talking about: Android advertising.
[Read more…]

Sign up now for the Bitcoin and cryptocurrency technologies online course

At Princeton I taught a course on Bitcoin and cryptocurrency technologies during the semester that just ended. Joe Bonneau unofficially co-taught it with me. Based on student feedback and what we accomplished in the course, it was extremely successful. Next week I’ll post videos of all the final project presentations.

The course was based on a series of video lectures. We’re now offering these lectures free to the public, online, together with homeworks, programming assignments, and a textbook. We’ve heard from computer science students at various institutions as well as the Bitcoin community about the need for structured educational materials, and we’re excited to fill this need.

We’re using Piazza as our platform. Here’s the course page. To sign up, please fill out this (very short) form.

The first several book chapters are already available. The course starts February 16, and we’ll start making the videos available closer to that date (you’ll need to sign up to watch the videos Edit: we’ve changed this policy; the lectures are also publicly available). Each week there will be a Google hangout with that week’s lecturer. We’ll also answer questions on Piazza.

[Read more…]

Anonymous programmers can be identified by analyzing coding style

Every programmer learns to code in a unique way which results in distinguishing “fingerprints” in coding style. These fingerprints can be used to compare the source code of known programmers with an anonymous piece of source code to find out which one of the known programmers authored the anonymous code. This method can aid in finding malware programmers or detecting cases of plagiarism. In a recent paper, we studied this question, which we call source-code authorship attribution. We introduced a principled method with a robust feature set and achieved a breakthrough in accuracy.

[Read more…]

Shaping Wi-Fi’s future: the wireless-mobile convergence

According to recent news, Comcast is being sued because it is taking advantage of users’ resources to build up its own nationwide Wi-Fi network. Since mid-2013 the company has been updating consumers’ routers by installing new firmware that makes the router partially devoted to the “home-user” network and partially devoted to the “mobile-user” network (a Comcast service named Xfinity WiFi). In fact, the same network infrastructure offers two different kinds of connection: the first one covers a comparatively restricted (local) area and stays under the relative control of the private end-user; the second kind of connection is “shared” between Comcast customers and covers a wider area, compatible with the range of national mobile carriers. In other words: the last mile of data transmission is being made mostly by a group of home based routers (or access points) that offers two different Internet connection services, the local “private” network and the metropolitan “shared” network.

[Read more…]