This question gets asked more an more these days. So, here is a quick writeup. Let me first state, does Cacti support snmpV3. Yes. However, it's a qualified yes. Let me explain. I'll first start with Windows.
In Windows, as of this writing, if you are using PHP's snmp support, you will not get snmpV3 support. This is due to the fact that the PHP development team is using a rather dated implementation of the snmp protocol on Windows. I have created a bug report here Bug to PHP Devel Team
If you want to see it fixed, please add comments to the bug. It's a trivial fix.
The workaround for this is to simply use the net-snmp binaries instead of php-snmp. This is not a good solution since it slows things down though.
In this platform, PHP supports snmpV3, with the exception of SNMP Context's. Which are not supported. If you are using Contexts, if you upgrade to 0.8.7c++ of Cacti, we have incorporated a workaround to this problem so that you can continue to use php-snmp.
There have been some complaints of late relative to snmpV3 support in Spine, and I can say that it works fine for DES and should have worked for AES (again) as of 0.8.7e. This applies equally to Windows and Linux/UNIX. However, I found an issue working with a user today that requires some changes to snmp.c, which I will post elsewhere
. In addition, there is one exception which I explain below.
Net-SNMP Supports snmpV3, as you would expect it to, but not either AES192 or AES256. There is a nice post here Net-SNMP Article
that explains why this is. Bottom line, use AES128.
I hope that helps those of you who have been experiencing problems adopting snmpV3.