Authenticatie in SNMPv3 wordt afgehandeld via de Message Authentication Code (MAC) en de User-based Security Model (USM).
De MAC zorgt voor de integriteit van de berichten door middel van een hash-functie. De hash-waarde wordt berekend over de payload van het SNMP-bericht in combinatie met een sleutel die wordt gedeeld tussen de SNMP-agent en de SNMP-manager. De SNMP-manager berekent ook dezelfde hash-waarde en vergelijkt deze met de hash-waarde van de ontvangen payload. Als de twee waardes overeenkomen, is de integriteit van het bericht gewaarborgd.
De USM zorgt voor de vertrouwelijkheid en authenticatie van de SNMP-berichten. De SNMP-agent en SNMP-manager delen een gezamenlijke beveiligingssleutel, die wordt gebruikt om encryptie en decryptie van de payloads mogelijk te maken. Er wordt ook gebruikgemaakt van authenticatie- en versleutelingsalgoritmes, zoals HMAC-MD5 en HMAC-SHA, om de berichtintegriteit en privacy te waarborgen.
De gebruiker moet zich eerst identificeren om de beveiligingssleutel en de gewenste versleutelings- en authenticatie-algoritmes te kunnen kiezen. De identificatie kan worden uitgevoerd via verschillende methoden, zoals een wachtwoord of een certificaat. Eenmaal geïdentificeerd, worden de beveiligingssleutel, de encryptie- en authenticatie-instellingen en de gebruikersnaam vermeld in elk SNMP-bericht.
Door het gebruik van MAC en USM in SNMPv3 is het mogelijk om vertrouwelijke en veilige SNMP-verbindingen tot stand te brengen tussen SNMP-agents en -managers.