La función mail() de PHP por sí sóla no permite realizar autentificacación.
Podrías "empaparte" todo el protocolo SMTP e implementar para mail() todas las cabeceras HTTP necesarias para la autentificación .. Pero, para esto .. mejor te alivia el asunto usar la classe:
PHP Mailer
http://phpmailer.sourceforge.net
Permite conexión por SMTP directo .. adjuntar archivos .. enviar archivos en HTML y texto plano silmutáneamente .. etc. Y por supuesto realiza autentificación.
Un saludo,