PHPackages                             imedge/snmp-packet - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. imedge/snmp-packet

ActiveLibrary

imedge/snmp-packet
==================

SNMP packet parser and renderer

v0.12.1(1mo ago)04872MITPHPPHP &gt;=8.1.0CI passing

Since Jun 10Pushed 1mo agoCompare

[ Source](https://github.com/im-edge/snmp-packet)[ Packagist](https://packagist.org/packages/imedge/snmp-packet)[ RSS](/packages/imedge-snmp-packet/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (12)Versions (9)Used By (2)

IMEdge\\SnmpPacket
==================

[](#imedgesnmppacket)

SNMP packet parser and renderer (encoder/decoder).

[![Coding Standards](https://github.com/im-edge/snmp-packet/actions/workflows/CodingStandards.yml/badge.svg)](https://github.com/im-edge/snmp-packet/actions/workflows/CodingStandards.yml)[![Unit Tests](https://github.com/im-edge/snmp-packet/actions/workflows/UnitTests.yml/badge.svg)](https://github.com/im-edge/snmp-packet/actions/workflows/UnitTests.yml)[![Static Analysis](https://github.com/im-edge/snmp-packet/actions/workflows/StaticAnalysis.yml/badge.svg)](https://github.com/im-edge/snmp-packet/actions/workflows/StaticAnalysis.yml)[![PHPStan Level 9](https://camo.githubusercontent.com/83dd3d35cebed0eab9ee97ff1a5849c1344cda6a8ee9cac2cda20f5aa55b67bd/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048505374616e2d6c6576656c253230392d627269676874677265656e2e7376673f7374796c653d666c6174)](https://phpstan.org/)[![Minimum PHP Version: 8.1](https://camo.githubusercontent.com/183804d09fec16ca7b6209b007250b7d8db1b915042feb093a9f20e6e1f25359/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7068702d253345253344253230382e312d3838393242462e737667)](https://php.net/)[![License: MIT](https://camo.githubusercontent.com/3565d1f4b4a5a9b76834910e9c3b91e8e63cdc0dbb0c9d375063c5551914ac96/68747470733a2f2f706f7365722e707567782e6f72672f696d656467652f736e6d702d7061636b65742f6c6963656e7365)](https://choosealicense.com/licenses/mit/)[![Version](https://camo.githubusercontent.com/a1461706261966d129e42e7148e7869d0b6f9f2231cf7c6a78f7e87e34e5d3cd/68747470733a2f2f706f7365722e707567782e6f72672f696d656467652f736e6d702d7061636b65742f76657273696f6e)](https://packagist.org/packages/imedge/snmp-packet)

Implemented Standards and vendor-specific extensions
----------------------------------------------------

[](#implemented-standards-and-vendor-specific-extensions)

There are quite some RFCs and Drafts involved, I'm trying to give some overview.

SNMPv1
------

[](#snmpv1)

While being very old, SNMPv1 is still relevant, and therefore supported.

### A Simple Network Management Protocol (SNMP)

[](#a-simple-network-management-protocol-snmp)

SNMPv1, the initial implementation of the SNMP protocol, has been defined in the 1980s. However, it is still relevant, and therefore supported:

SNMPv2c
-------

[](#snmpv2c)

TODO

### SNMPv3

[](#snmpv3)

We implemented and tested all official and (well-known) vendor-specific authentication and privacy (encryption) methods.

#### Authentication Methods

[](#authentication-methods)

The User-based Security Model (USM) hast been implemented according to [RFC 3414](https://datatracker.ietf.org/doc/html/rfc3414) (User-based Security Model (USM) for version 3 of the Simple Network Management Protocol (SNMPv3)). All authentication mechanisms from that RFC and from [RFC7860](https://datatracker.ietf.org/doc/html/rfc7860) (HMAC-SHA-2 Authentication Protocols in User-Based Security Model (USM) for SNMPv3) have been implemented.

- MD5: required in [RFC 3414](https://datatracker.ietf.org/doc/html/rfc3414)
- SHA (SHA1): optional in [RFC 3414](https://datatracker.ietf.org/doc/html/rfc3414)
- SHA-224: optional in [RFC 7860](https://datatracker.ietf.org/doc/html/rfc7860) with 128bit HMAC
- SHA-256: required in [RFC 7860](https://datatracker.ietf.org/doc/html/rfc7860) with 192bit HMAC
- SHA-384: optional in [RFC 7860](https://datatracker.ietf.org/doc/html/rfc7860) with 256bit HMAC
- SHA-512: suggested in [RFC 7860](https://datatracker.ietf.org/doc/html/rfc7860) with 384bit HMAC

#### Privacy / Encryption Methods

[](#privacy--encryption-methods)

- DES: in CBC mode, defined in [RFC 3414](https://datatracker.ietf.org/doc/html/rfc3414)
- 3-DES: Triple-DES EDE in "Outside" CBC mode, mostly used by Cisco, defined in [draft-reeder-snmpv3-usm-3desede-00](https://datatracker.ietf.org/doc/html/draft-reeder-snmpv3-usm-3desede-00)
- AES-128: in CFB mode, required in [RFC 3826](https://datatracker.ietf.org/doc/html/rfc3826) with "Blumenthal" Key localization
- AES-192: in CFB mode, as of [draft-blumenthal-aes-usm-04](https://datatracker.ietf.org/doc/html/draft-blumenthal-aes-usm-04) with "Blumenthal" Key localization
- AES-192: in CFB mode, "Cisco variant", therefore named AES-192-C, as of [draft-reeder-snmpv3-usm-3desede-00](https://datatracker.ietf.org/doc/html/draft-reeder-snmpv3-usm-3desede-00) with "Reeder" Key localization
- AES-256: in CFB mode, as of [draft-blumenthal-aes-usm-04](https://datatracker.ietf.org/doc/html/draft-blumenthal-aes-usm-04) with "Blumenthal" Key localization
- AES-256: in CFB mode, "Cisco variant", therefore named AES-256-C, as of [draft-reeder-snmpv3-usm-3desede-00](https://datatracker.ietf.org/doc/html/draft-reeder-snmpv3-usm-3desede-00) with "Reeder" Key localization

#### Crypto implementation

[](#crypto-implementation)

We're using system-provided MD5/SHA hashing methods, and encryption as provided by OpenSSL. Everything related to (pre-IV), Key generation and Salt exchange have been implemented from scratch.

#### SNMPv3 standardization history

[](#snmpv3-standardization-history)

January 1998 two sets of related RFCs have been published in parallel:

- RFC 2261–2270 (SNMPv3 "Standard")
- RFC 2271–2275 (SNMPv3 "Experimental")

The reason for this have been two irreconcilable factions in the IETF by the end of 1997:

- **SNMPv3 Working Group** (RFC 2261–2270): official approach, based on SNMPv2u (User-based Security). Main goal: faster standardization with minimal changes to SNMPv2
- **Secure SNMPv3 Ad-Hoc Group** (RFC 2271–2275): alternative approach, USM (User-based Security Model), focussed on higher security. This "rebel" draft has been pushed by Cisco, IBM and others, who considered the official draft too weak.

The "experimental" party eventually won, the official "Standard" suffered a silent death, has never been widely adopted, and has only historic relevance es of today. In 1999 the experimental RFCs have been updated (RFC 2571–2575), became a Draft Standard, and replaced all the former RFCs from both parties. Finally, in Dezember 2002, **RFC 3410-3418** became an Internet Standard.

### Other related RFCs

[](#other-related-rfcs)

TODO

###  Health Score

42

—

FairBetter than 90% of packages

Maintenance90

Actively maintained with recent releases

Popularity18

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~41 days

Recently: every ~26 days

Total

8

Last Release

53d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/53bfc2bae55def767b89fdb1d012d7e41db3b75fc74300c45fd81d567637cca7?d=identicon)[imedge](/maintainers/imedge)

---

Top Contributors

[![Thomas-Gelf](https://avatars.githubusercontent.com/u/553008?v=4)](https://github.com/Thomas-Gelf "Thomas-Gelf (143 commits)")

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StylePHP\_CodeSniffer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/imedge-snmp-packet/health.svg)

```
[![Health](https://phpackages.com/badges/imedge-snmp-packet/health.svg)](https://phpackages.com/packages/imedge-snmp-packet)
```

###  Alternatives

[freedsx/ldap

A Pure PHP LDAP library

157142.4k2](/packages/freedsx-ldap)[freedsx/snmp

A Pure PHP SNMP Library

6547.0k2](/packages/freedsx-snmp)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
