# Update 10 # 1. Noise Protocol Improvements Last week, my mentor proposed some changes for [this PR](https://github.com/NethermindEth/dotnet-libp2p/pull/90). In response, I made the necessary updates and also added extra tests for the Noise Protocol. - [**TestConnection_AfterHandshake**](https://github.com/rose2221/dotnet-libp2p_test/blob/930d46d687abe85236c83938e3b9edacf05a96f9/src/libp2p/Libp2p.Protocols.Noise.Tests/NoiseProtocolTests.cs#L11): This test confirms that a successful handshake has occurred by writing a specific line through the `downchannel `and verifying that the message has been successfully received by the responder through `downchannelFromProtocolPov`. - [**Test_ConnectionClosed_ForBrokenHandshake**](https://github.com/rose2221/dotnet-libp2p_test/blob/930d46d687abe85236c83938e3b9edacf05a96f9/src/libp2p/Libp2p.Protocols.Noise.Tests/NoiseProtocolTests.cs#L128): This test serves as a counterpart to the previous one, demonstrating what happens when a handshake fails. It effectively proves that the protocol correctly handles and terminates connections when a broken handshake is initiated.. # 2. Multistream Protocol Update In addition to the work on the Noise Protocol, I also raised another [PR](https://github.com/NethermindEth/dotnet-libp2p/pull/94) for updates to the Multistream Protocol. **Changes Made:** When a pre-selected muxer is chosen, it is selected based on the priorities of muxers from both the responder and the initiator. This pre-selection eliminates the need for negotiation if a muxer has already been selected, streamlining the protocol. Consequently, the Multistream Protocol required updates to reflect this optimization. # 3. Next Steps: TLS Handshake **With both of my PRs successfully merged,** I am now focusing on developing the TLS handshake. The TLS handshake will ensure encrypted communication channels between peers, further strengthening the overall protocol.