You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
fix(hip): CERT group decodes through the DH Group registry, but RFC 8002 has no registry #2283
Describe the bug CertParameter.cert_group in the HIP schema is an EnumField(namespace=Enum_Group), which is the DH group registry. _make_param_cert defaults it to Enum_Group.NIST_P_256. RFC 8002 section 2 defines CERT group as the "Group ID grouping multiple related CERT parameters", which is an arbitrary number with no registry behind it.
Reproduction
Parsing a CERT (768) parameter whose group octet is 7 yields cert_group=<Group.NIST_P_256: 7>.
Expected behavior cert_group=7 (int). The maker should default to a neutral value such as 0, not a curve name.
System information
Linux, CPython 3.14, main at 9d504ead5.
Additional context
Fix: use a UInt8Field in the schema and int in the data class, and drop the cert_group_default/_namespace/_reversed maker arguments that exist only for enum lookup. This changes a released attribute and signature, so it needs a versionchanged note.
Blocked until the #2309 fix PR merges. That fix edits the HIP REG_* parameters in hip.py, and this one edits the same file, so it starts from the merged tree.
Activity
JarryShaw commentedon Oct 26, 2026
Blocked until the #2309 fix PR merges. That fix edits the HIP REG_* parameters in
hip.py, and this one edits the same file, so it starts from the merged tree.JarryShaw commentedon Oct 27, 2026
Unblocking — #2309 merged. Open to pick up now.
fix(hip): correct 7 HIP parameter wire defects (#2271, #2275, #2276, #…
fix(hip): correct 7 HIP parameter wire defects (#2400)