netkeyって一種の公開鍵暗号での通信と考えてよいの?
つまりtelnetしたときにサーバがchallenge:と出力したとき、これは公開鍵で、サーバは内部で秘密鍵を生成しているの?

まとめ
client: telnet plan9-server.example.net.
server: 秘密鍵&対応する公開鍵生成
server: ユーザー名をとりあえずきいておく
server: 公開鍵をchallengeとして出力
client: 公開鍵でパスワードを暗号化
server: 暗号化されたパスワードを、serverが隠しもつ(clientはもちろんだれにも見えない)秘密鍵で復号化し、パスワードを取得
server: あとはUNIXとかと同じ(パスワードを暗号化し,/etc/shadowと照合)