SSH support was started by Eric Myrhe (heavenlyhash on GitHub) - he stopped working
on it 8 months ago or so. I pulled, squashed, rebased, and refactored his code. I
then pushed it as a proposal here: https://dev.gitblit.com/tickets/gitblit.git/6
I plan to wrap my brain around SSH later this Spring but right now I'm focused on squashing
bugs and merging Tickets. I am months overdue on 1.4.0 and I need to get it released.
Where to store public keys. That is a good question.
Short answer: not sure yet.
Longer answer: Maybe in a repo?
I'm thinking of adopting Gerrit's style of refs/meta for repo settings. I'm also considering
adopting something like Gitolite's admin repo for server settings, ssh keys, etc.
Other than thinking about it I haven't sat down to really consider all the pros and
cons of those ideas.
If you want to contribute to SSH support don't let me stop you. Storage location of
the keys can always be changed.
If you are interested in helping me dogfood Tickets while working on ticket-6, I'll
create an account for you on my server.