diff --git a/differences.md b/differences.md index 33a6453..ffa6cb6 100644 --- a/differences.md +++ b/differences.md @@ -68,7 +68,7 @@ | JETSTREAM (internal) | Y | N | | | ACCOUNT (internal) | Y | N | | | WebSocket clients | Y | Y | Custom frame parser, permessage-deflate compression, origin checking, cookie auth | -| MQTT clients | Y | N | | +| MQTT clients | Y | Partial | JWT connection-type constants + config parsing; no MQTT transport yet | ### Client Features | Feature | Go | .NET | Notes | @@ -204,7 +204,7 @@ Go implements a sophisticated slow consumer detection system: | Username/password | Y | Y | | | Token | Y | Y | | | NKeys (Ed25519) | Y | Y | .NET has framework but integration is basic | -| JWT validation | Y | Y | `NatsJwt` decode/verify, `JwtAuthenticator` with account resolution + revocation | +| JWT validation | Y | Y | `NatsJwt` decode/verify, `JwtAuthenticator` with account resolution + revocation + `allowed_connection_types` enforcement | | Bcrypt password hashing | Y | Y | .NET supports bcrypt (`$2*` prefix) with constant-time fallback | | TLS certificate mapping | Y | Y | X500DistinguishedName with full DN match and CN fallback | | Custom auth interface | Y | N | | @@ -268,7 +268,7 @@ Go implements a sophisticated slow consumer detection system: - ~~Tags/metadata~~ — `Tags` dictionary implemented in `NatsOptions` - ~~OCSP configuration~~ — `OcspConfig` with 4 modes (Auto/Always/Must/Never), peer verification, and stapling - ~~WebSocket options~~ — `WebSocketOptions` with port, compression, origin checking, cookie auth, custom headers -- MQTT options +- ~~MQTT options~~ — `mqtt {}` config block parsed with all Go `MQTTOpts` fields; no listener yet - ~~Operator mode / account resolver~~ — `JwtAuthenticator` + `IAccountResolver` + `MemAccountResolver` with trusted keys --- @@ -317,7 +317,7 @@ Go implements a sophisticated slow consumer detection system: | Subscription detail mode | Y | N | | | TLS peer certificate info | Y | N | | | JWT/IssuerKey/Tags fields | Y | N | | -| MQTT client ID filtering | Y | N | | +| MQTT client ID filtering | Y | Y | `mqtt_client` query param filters open and closed connections | | Proxy info | Y | N | | ---