Just wanted to check that you've tested that this doesn't cause a SIGSEGV when "challenge" is absent.  (I had thought aka["challenge"] would return NULL if there was no member, but code reading suggests I could be wrong.  Worth explicitly testing, though.)