Thanks to the authors of #ndk again. nostr:npub1l2vyh47mk2p0qlsku7hg0vn29faehy9hy34ygaclpn66ukqp3afqutajft
Implementing login using private key was a breeze.
Thanks to nostr:npub1v0lxxxxutpvrelsksy8cdhgfux9l6a42hsj2qzquu2zk7vc9qnkszrqj49 too whose work heavily inspired this. (I even copied some of his util method implementations)