According to the manual, there are two configuration options (i.e. things you put in your torrc):
HidServAuth
is what can be used on the client. It allows you to provide authentication cookies for hidden services as inHidServAuth <onion-address> <auth-cookie>
.HiddenServiceAuthorizeClient
is the server side companion.
Protocol-related information can be found in the rendezvous-specification at section 2.