Mohit20057 opened a new pull request, #9167:
URL: https://github.com/apache/storm/pull/9167

   ## What is the purpose of the change
   
   This PR addresses the **`storm-client — BlowfishTupleSerializer`** sub-task 
of umbrella issue #8994 (*"inventory deprecated API and remove what is marked 
for removal"*). 
   
   Following the guidelines outlined in #8994 (*"One sub-task per module or 
coherent group, each independently reviewable and revertable"*), this change is 
scoped strictly to the removal and decoupling of `BlowfishTupleSerializer`. 
Remaining deprecation cleanups and inventory tasks from #8994 will follow in 
separate, modular PRs.
   
   ### Summary of Changes:
   1. **Core Removal (`storm-client`)**:
      - Removed 
`org.apache.storm.security.serialization.BlowfishTupleSerializer` (marked 
`@Deprecated(since = "2.8.6", forRemoval = true)` due to 64-bit block Sweet32 
vulnerability).
      - Removed its dedicated test suite `BlowfishTupleSerializerTest`.
   
   2. **Test Decoupling (`storm-client`)**:
      - In `SerializationFactoryTest`: Decoupled the custom tuple serializer 
registration test by introducing a lightweight `MockTupleSerializer` stub, 
maintaining full test coverage for custom serializer loading without depending 
on the deleted class.
   
   3. **Credential Redaction Decoupling (`storm-server`)**:
      - In `Nimbus.java`: Preserved redaction for legacy topology configs that 
might still carry `topology.tuple.serializer.blowfish.key` via a private 
constant `LEGACY_BLOWFISH_SECRET_KEY`, avoiding reference to the removed class 
while preventing credential leaks.
      - Updated `NimbusGetTopologyConfTest` and `NimbusGetTopologyPageInfoTest` 
to use the decoupled constant.
   
   4. **Documentation**:
      - Updated `docs/SECURITY.md` to note that `BlowfishTupleSerializer` has 
been removed and that Netty TLS (`storm.messaging.netty.tls.enable`) is the 
standard for transport encryption.
   
   ---
   
   ## How was this tested
   
   - Built and compiled `storm-client` and `storm-server`
   - Checkstyle passed with **0 violations**
   - Unit tests executed and passing:
     - `SerializationFactoryTest`: 5/5 passed
     - `NimbusGetTopologyConfTest`: 2/2 passed
     - `NimbusGetTopologyPageInfoTest`: 1/1 passed
   
   ---
   
   ## Related Issue
   
   Part of umbrella issue: #8994


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to