The Cat Enigma!

Hello! Many of you have joined in with our April Fools’ activities, including the two challenges injected into the April 1st blogpost. We had several successful winners of the first competition, and a smaller number of the second, but many determined competitors – thanks to everyone who invested so much time and energy into the challenges!

We’d now like to give you the answers! Hopefully you won’t kick yourself too much if you competed but didn’t get all the way to the end. :)

Challenge 1

The first challenge commenced in the blog entry, which contained the cryptic message ‘GURER VF N CEVMR. VG’F JBEGU VG. UVAG: ZBGQ.‘ Deciphered via the magic of ROT-13, this pointed you to our April Fools MOTD (Message of the Day). Buried amongst rainbow text and pink unicorns was the string ‘VmlldyBwYWdlIHNvdXJjZSwgeW91bmcgZ3Jhc3Nob3BwZXIu‘, a Base64-encoded message pointing you to the source code of our blogpost, where the following message was hidden:

A$$p qk sc *$j7r, sc *$j7r /7 qsqv/§z Z/yr /k q a/ep,
sss /k kq7kr7 &l7k a/pr jq/7/§7 7kj$pr $§ /k7
sq§r /k klj§7 /§k$ q %aq§r Q§3 k*r§ /k klj§7 wqep
qzq/§ x*r§ c$l klz $§ /k7 x/§pc Rxx k*qk7 3/jkc! 3$ c$l k*/§p 7$?
Xraa / wrkkrj §$k 7*$x c$l x*rjr k*r ars$§q3r /7 sq3r 7xrrk ars$§q3r,
sss 7xrrk ars$§q3r 7xrrk ars$§q3r,
crq* 7xrrk ars$§q3r X*r§ e$sr wqep,
sq/a %/r k$ %/§pl§/e$j§7 qk t§ §rk

This was a Substitution Cipher (which various users decrypted in a variety of different ways, using ruby, javascript and python, as well as the ‘tr’ command line utility). The translation table is as follows:

itsaGgvewlckLomyhrzdWpAubEnj
/k7qZzyrxaepA$sc*jv3X%QlwR§&

If you want to try this for yourself, there’s an online tool for this here, or you can use the tr command line tool as follows (will require unicode support):

echo 'A$$p qk sc *$j7r, sc *$j7r /7 qsqv/§z Z/yr /k q a/ep,
sss /k kq7kr7 &l7k a/pr jq/7/§7 7kj$pr $§ /k7
sq§r /k klj§7 /§k$ q %aq§r Q§3 k*r§ /k klj§7 wqep
qzq/§ x*r§ c$l klz $§ /k7 x/§pc Rxx k*qk7 3/jkc! 3$ c$l k*/§p 7$?
Xraa / wrkkrj §$k 7*$x c$l x*rjr k*r ars$§q3r /7 sq3r 7xrrk ars$§q3r,
sss 7xrrk ars$§q3r 7xrrk ars$§q3r,
crq* 7xrrk ars$§q3r X*r§ e$sr wqep,
sq/a %/r k$ %/§pl§/e$j§7 qk t§ §rk' |
tr \/k7qZzyrxaepA\$sc*jv3X%QlwR§\& itsaGgvewlckLomyhrzdWpAubEnj

As this challenge had a larger ciphertext and was only lowercase, working out the translation table was relatively easy, and many of you seemed to manage to get it!

The first user to figure this out was elly - well done, you! The remaining users in the first ten to complete this challenge also won april-fools/ cloaks, and were the following:

Jessicah, Snova, hjf2010, Treeki, ttuttle, tonsofpcs, mth, awilcox, gnarf

Well done too to everyone who e-mailed in but came after these guys!

Challenge 2

As Challenge 1 went so well, we decided it would be a Good Idea to put together a second challenge. This was designed to be a little more complex, but started with a similar substitution cipher, with a text added to the source of the blog entry:

Un s%ctsn /%klt, kx$$&$* y/k%x*/ y/t z&tsr
X/tkt qkt n%x *%&$*, v&y/ n%xk ztys%eal ws%v&$* &$ y/t v&$r?
K vq$y y% l/%vtk n%x v&y/ lx*qk sx§hl, q$r k&rt n%x %ctk zt$etl
T%s&l/ n%xk /%%ctl tctkn l&$*st rqn, q$r wk&$* n%x y% y/t /%klt rt$y&ly
Un s%ctsn /%klt, n%x'kt q h%$n $% §%kt
Fx$$&$* qk%x$r v&y/ q §q$ %$ n%xk wqea, s&at q ykq&$ &$ y/t $&*/y...
Oq$ n%x l%sct y/t Oqy I$&*§q?
WUWKMJKSXVABPMDDWNBIUIQGLSBTYUYQCIRPUQBQLYCOLOZTVUWEFPZPMESSST

To complicate things, however, we used both upper and lowercase letters. Deciphering the lowercase text was relatively simple, as there was enough text to make divining the translation table relatively straight forward, but there were only seven unique uppercase letters in the song lyrics which emerged which were easy to identify by looking up the song (or remembering it, for those of you who’re also fans of Father Ted!) – at this point, if you competed, you probably had a translation table that looked something like this:

abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
qwertz*/&pas§$%hjklyxcvbn|__O_I___K___U__T_F____X___

This seemed to be the step many of you got stuck on – as the final string beginning ‘WUWKM…‘ was substituted using the same table as the rest of the text. Many competitors had translated the song lyrics and the ‘Cat Enigma‘ comment:

My lovely horse, running through the field
Where are you going, with your fetlocks blowing in the wind?

I want to shower you with sugar lumps, and ride you over fences
Polish your hooves every single day, and bring you to the horse dentist

My lovely horse, you're a pony no more
Running around with a man on your back, like a train in the night...

Can you solve the Cat Enigma?

But you left the sequence of capital letters at the end unaltered! Whilst many of you guessed that ‘Enigma’ referred to the infamous German electromechanical enciphering machine, without the ‘WUWKM… ciphertext translated, you had difficulty progressing further!

As this seemed to be where efforts paused, we gave you a little clue, courtesy of njan’s enigmacat (whose name is actually cinak, but who is generally called Mittens), consisting of the first eight letters of the translation table – PQOWIELA- filling some of the blanks.

From there, some of you managed to take the next step – working out that the capital letters were entered according to a predictable pattern on a qwerty keyboard. Based on the ‘O_I‘ sequence in the partially complete translation table above, we’d hoped that might not be such a big step, but perhaps it was! Tap the translation table out on a qwerty keyboard and see what we mean.

Still – with a little nudging, this was a step that some of you managed to take together (and many others guessed at or were very close to), and with the complete translation table:

abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
qwertz*/&pas§$%hjklyxcvbn|PQOWIELAKSJDURYTHFGMZNXBCV

It was possible to un-translate the enigma ciphertext:

DMDITKIJWZHXATLLDVXEMEBSGJXPOMOBYENAMBXBGOYCGCUPZMDFRAUATFJJJP

As many of you guessed, Catreferred to the enigma rotor settings, which when entered into any of the various online enigma machines (in javascript, java, or swf flavours) should produce the final plaintext. This wasn’t meant to trip anyone up (this applet defaults to the right settings, as do some of the others, and just needs the rotors to be configured) – although there are a variety of settings for enigma machines including rotor and reflector choice and plugboard settings we went with the default for many (Rotors I, II, III, Reflector B, no plugboard settings). Configured this way, the Enigma ciphertext deciphers to:

WELLDONEPLEASESENDCOOKIESANDMILKTOPINKUNICORNSATFREENODEDOTNET

Phew! All done! :) The first to complete the second part of the competition were sbp and [bjoern]. Other successful entrants were kmdm, x0F, Tordek, Lopmon, Gryllida, and yano.

Thanks to those of you who participated and we had fun talking to and interacting with – and we’ll probably be doing something similar next year! :)

April 1st, the aftermatch

Some of you might have remembered the wolfgame bot in #defocus from 2008-04-01. Reception was even better this time and people really liked it. We might even make this a tradition. Feedback in comments, please.

To get your wolfgame fix during the rest of the year, join #wolfgame . We are waiting :)

We will publish the solutions to our riddles here, but we had to promise to not do so before Sunday so we won’t. Watch this space if you are interested.

Also, remember our new nick expiry times. This is now active policy.

Important service announcement regarding #defocus

As many of you are aware, back in 2008 we changed our policy in #defocus and the method in which the channel works to require users have voice to speak. For the past few years we’ve been using a combination of manual action, scripts and bots to voice users as needed to control when and how and when they are voiced.

Starting today, we are changing the policy to one we believe is fairly balanced and which gives users much more control over gaining and keeping voice in the channel.

The new bot, known as brrflrqxt, will voice users as they send the command “!join” to #defocus and those who pass its tests will be allowed to keep their voice. The tests involve problem solving, proving that you are human, and therefore capable of lying, cheating, and backstabbing like any valuable member of #defocus; thus ensuring a safe and productive environment for all our users.

If you have any questions about this policy, feel free to ask any member of staff.

GURER VF N CEVMR. VG’F JBEGU VG. UVAG: ZBGQ.

enigma_cat_says_PQOWIELA

Change in nick expiry times

Up to now, the expiry time of nicks has been 60 days. As you know, Services compress timespans into years, weeks, and days. 60 days are 8 weeks and 4 days. Easy enough to convert, but still unnecessary. Also, a nick that has been registered for a long time should get a little bit more protection than a new one. In the past, we have sometimes asked users to wait a bit longer before requesting old nicks to be dropped. To make things easier and fairer, we have decided to change and simplify our official policy.

Starting on 2011-04-01, the expiry time will be 70 days, i.e. 10 weeks. For every full year of registration time, one week is added to the expiry time. Thus, a nick that’s been registered for three and a half years needs to have been unused for 13 weeks before another user can request to have it dropped.

We are pre-announcing this change as it would be unfair towards users to change expiry times just before their  60 days of waiting are over.  As usual, barring manual database cleanups every few years, we won’t drop nicks or channels on our own, but only at a user’s request.

Default port for IRC via TLS/SSL (hint: it’s 6697)

As some of you might be aware, there has been a push to standardize on a common port for IRC via SSL/TLS. Same as you can reasonably expect any public ircd for plain text connections to listen on port 6667, you should be able to expect any public ircd for IRC via SSL/TLS to listen on port 6697.

All IRC networks, except one, in the global top twenty which offer IRC via SSL/TLS are listening on port 6697 and many smaller networks do, as well. Clients like irssi default to 6697 as do daemons like Charybdis and seven. Similar to how port 6667 is not the only for plain text, 6697 is not intended to be the only one for SSL/TLS, but it’s still nice to have a common standard.

The Internet Draft linked above will not be made into a proper RFC quickly as these things tend to take a lot of time, but for all intents and purposes, 6697 is the canonical port for IRC via SSL/TLS, today.

Update: In case we didn’t make it clear enough (apparently we didn’t): You can still continue to use all other ports we have listened to in the past. But we will start recommending 6697 from now on.

Update2: Yes, we are listening on port 6697 on all our ircds, be they IPv4, IPv6, or .onion.

PDPC Fundraiser 2011

Hello everyone and Happy St Valentine’s Day!

Love PDPC! 2011 Fundraiser

We here at freenode and PDPC love Free and Open Source Software (FOSS), and we know that at least 70,000 of you do too.

What better time than the middle of February to show your love and appreciation?

Peer-Directed Projects Center Ltd. (PDPC) exists to support all sorts of peer-directed projects, and our roots are firmly planted in the world of FOSS. Hundreds of projects, large and small, use our services, including:

  • freenode: probably the reason you’re on this blog – the 70,000-strong IRC network focused on FOSS
  • Geeknics: the popular real-world meetups for geeks – “Geek Picnics” (we don’t bite, honest!)
  • FOSSCon: the friendly and successful conference about to enter its second year – watch this space
  • fossevents: your online guide to the real-world happenings of the FOSS universe
  • … and infinitely more! Got an idea? Get involved and let us know about it.

The aim of this fundraiser is to generate £5000, which will help to cover general operating expenses and enable us to apply for recognition as a Charity. This will help us to show our appreciation to donors and sponsors (on freenode) who may be able to claim tax benefits from their governments as a result. It also means that we can ensure that more of future donations go towards PDPC’s projects, and not to the taxman!

While the aim of the fundraiser is, of course, to generate income for PDPC, we want to give you the opportunity to express your appreciation for the projects and developers you love. For the next two weeks only, we are running the following offers:

Valentine cloaks

Would you love to send your favourite developer a valentine? Donate £10 or more and we’ll offer the target of your affections a “pdpc/valentine/message/account” cloak for the duration of the valentine period. The best bit? You get to choose “message”! Of course, you will still, subject to the same staff discretion as usual, be welcome to a PDPC supporter cloak for yourself. Donate here.

Please keep the message clean and pleasant, and be aware that we will not set cloaks that we deem to be offensive or that the recipient does not want. If you wish for us to tell the recipient that you bought their cloak, let us know. All of this, with your account name too, should be conveyed in the PayPal donation message. We will process outstanding requests at least daily, and these valentine cloaks will remain for 24 hours from when they were set.

Cloud Nine

As usual, when you donate to PDPC, we will give you the opportunity to link your donation to a channel – this might be a channel you frequent, or that for a project you love. For the next few weeks (and possibly beyond, but without the love theme!), we are going to use this data to compile a Love Cloud (yes, you guessed it – “Cloud Nine”) where at a glance you will be able to see the relative contributions in each project’s name. We are measuring donations in hugs: £5 = 1 hug (£10 = 2, £500 = 100), and the hearts will be scaled appropriately (if we have to break out some logarithmic scaling, we have success!). Cloud Nine will be sitting over the homepage of freenode.net.

We’re all about sharing the love here at freenode, so if you are naming a channel with your donation we would love it if you would tell us why. What makes this project so great? Please try to keep kudos concise! We might wallop some of the best messages (so set yourself /umode +w to see them, or /umode -w to hide them), and we will blog the collected kudos at the end of the valentine period. If you do not want your account name to be attached to feedback that you send, please mention this to us. All of this should be placed into the PayPal donation comment. Donate here.

We have some more ideas for the fundraiser in the pipeline, so keep an eye on this blog for more details!

Finally, but by no means least, significant thanks are owed to JonathanD, mgdm and Scott Rigby of BaseKamp who have contributed much time and effort to forming this fundraiser launch at short notice. You’re awesome.

So, everyone, I’d encourage you to put your hands in your pockets, send a small donation our way (£5 – the cost of a couple of pints of beer?) and, most importantly, get involved with our fundraising fun for 2011!

With love,

Martinp23, the Board and Staff.

Peer-Directed Projects Center Ltd. is a company limited by guarantee (no 06680918), 2nd Floor, 145-157 St John Street, London, EC1V 4PY, England

Sponsorship Roundup

As you may know, the network operations of freenode are fully supported by donations – of hosting and other resources – from both companies and individuals. We acknowledge all sponsors on our website, but it is nice from time to time to provide a round-up of recent changes on the sponsorship scene!

If you’re currently connected to freenode, you will be connected to a donated server – look at the “MOTD” (delivered to you on connection or by passing the command /motd) to see who has provided your particular server.

Our newest servers include roddenberry.freenode.net (Brisbane, Australia) and asimov.freenode.net (Dallas, Texas, USA), provided by On Q Telecom and by Rackspace, respectively.

Worthy of mention indeed are those companies who support the network in ways other than providing servers. Gandi provides our SSL certificate and acts as our domain registrar, and Simtec Electronics recently generously supported the network with a donation of entropykeys. Look out for a later technical blog post as we roll these out!

While this post focuses on recent additions to the sponsorship team, it’s important not to forget the ongoing contributions of all our sponsors – take another look at our acknowledgements section and give these groups the kudos they deserve!

Cheers,
Martin

freenode 70k

With apologies to cringing table-top players, we are more than happy to announce that we passed the threshold of 70,000 active users a few minutes ago. Lingering at a maximum of 69,991 lately, we have been anticipating this day for some time, now. And it has come :)

We’d like to thank all of our users for using freenode. Without you we would, quite literally, not have made this milestone.

We would also like to take this opportunity to thank all our volunteers, whatever fields they have chosen to help out in.

At the moment, we’re growing at 10,000 users per year and a bit:

http://blog.freenode.net/2007/08/freenode-has-reached-40-000-users/

http://blog.freenode.net/2008/09/50000-active-users/

http://blog.freenode.net/2009/12/happy-new-year-2010/

We’re looking forward to continuing this trend and reaching 80,000 sometime around March of 2012 :)

We are going to FOSDEM

going-to-fosdem-2011

As every year, some of freenode staff will attend FOSDEM. If you have any concerns, praise, criticism or free beer you want to share with us, you are more than welcome to meat us. The best way to coordinate meatings is to simply join #freenode-fosdem and poke us.

As an aside, we are trying to get a general IRC meating going. It’s geared towards staff/opers, developers, sponsors and anyone else who has to do with IRC behind the scenes. Tentative planning is for Saturday evening and at this time, we have people from irssi, IRCnet & freenode on board. There’s no fixed agenda and everyone is invited to suggest topics of interest, preferably before the actual meating. We might even update this post with details if there are any :)

Happy Holidays!

Just a quick note to wish each and every one of our users, sponsors, donors, volunteers and projects for making freenode great.

It’s amazing being able to communicate and collaborate with such a variety of people and projects. YOU make the network what it is and help us provide a fantastic resource for FOSS communities.

I’d also like to say a special “Thank You” to Martin (Martinp23) Peeks and Richard (RichiH) Hartmann for squeezing into my size 7’s and keeping a tight grip on the steering wheel ensuring that we don’t weer off track and crash into too many icebergs during my leave from active freenode management duties. You’re doing a tremendous job, and I’m thrilled to see that you’ve got the support from the fantastic volunteer base and our exceptional sponsors.

Have a happy Christmas (or whichever holiday you do or do not celebrate) and a fantastic New Year, I hope it brings you everything you wish for!

Oh. And don’t forget, tis the season for giving!

Cheers,

Christel x