Tu che hai gia' masticato l'argomento, sapresti dirmi come si 'costruisce' l'autenticazione PLAIN (che leggendo in giro su internet si da in pasto al server lo user e password nella medesima stringa con BASE64 encoding) e sopratutto il flamigerato CRAM-MD5 ?
Fai conto che pur avendo avuto qualche esperienza, e' vecchia di parecchi anni: ai tempi scrissi un olr/newsreader (uno dei 3-4 programmi che non mi sono vergognato a fare vedere agli altri, circa 40000 righe di codice), ma era nel periodo tra vb3 e vb6! Comunque, a occhio dovresti guardare - ma le avrai gia' viste - rfc 2104, 2554 e 2195, e (magari non ti e' gia' venuto in mente), prova a fare una googlata con
cram md5 vb: ad esempio, qui
http://forums.codeguru.com/showthread.php?189137-Cram-md5 mi sembra di vedere qualcosa di interessante, ma esempi con Visual Basic ne trovi diversi.
Per la PLAIN, sembra illuminante questo, invece
http://www.fehcom.de/qmail/smtpauth.html