The yubikey one time password scheme
On Monday July 4th, we put together another one of those 0x375 meetings. What is 0x375 you say?
0x375 (Thessaloniki Tech Talk Sessions) is an independent, non commercial, non vendor biased and loosely organized meeting of hackers centered in the city of Thessaloniki, Greece. During 0x375, people meet to give presentations on technical topics ranging from simple administration procedures to advanced kernel exploitation techniques. Drinks, food and fun are an integral part of the meeting!
In a nutshell: informal, heavily fun meetings of tech savvy people of various backgrounds.
During this last meeting I gave a presentation about the Yubikey, an “open” security token I’ve used for a couple of projects during this past year.
The video of the talk is available on livestream (in Greek, sorry). The English slides are available here.
Next time you’re in Thessaloniki make sure you check 0x375 out or even better give a presentation yourself! We’ve got a constant call for papers on.
Fast, thread-safe Thunk in Java
6 months ago or so I was going through Wealthfront’s website when I stumbled upon their recruiting puzzle for the “Backend software engineer” position. The page is still online but not linked under their Available Positions list so I guess it’s alright to publicly discuss that puzzle.
The puzzle reads
Provide an alternate implementation of the following class (a thunk) that uses no conditional logic. For extra credit, make it thread-safe.
abstract class Thunk<T> { private boolean evaluated; private T value; public T get() { if (!evaluated) { value = compute(); evaluated = true; } return value; } abstract protected T compute(); }
Couple of issues with hardy heron
Ubuntu 8.04 aka Hardy Heron has been around for a few days now, so updating my system* was a completely logical step.
Murphy was – of course – stalking around the corner, so a couple of problems came up.
Problem 1: I’m suspending quite a lot.
Or that’s at least what makes this problem important to me.
In a nutshell, after sleeping (suspending to ram) the system fails to wake up. It seems that a kernel module related to USB (ehci_hcd) doesn’t like being suspended any more.
Anyway, good news are that we can kindly ask PM to unload the module before suspending the system.
Luckily this works :)
Just run the following as root
echo SUSPEND_MODULES=\"ehci_hcd\" > /etc/pm/config.d/WORKAROUND
Problem 2: Sound Line-out doesn’t “out” anything
Well that’s simple. My soundcard’s line out stoped outputing anything.
Took a wild guess that proved to be quite right: alsa failed to correctly autodetect the model of the codec implementation. Hardcoding it does the job.
Again as root
echo "options snd-hda-intel model=laptop-micsense" >> /etc/modprobe.d/alsa-base
Hope this helps.
* the system in question is a gigabyte W251U laptop. This is pretty much an OEMed fujitsu siemens amilo SI1520.