介绍开源的.net通信框架NetworkComms框架之七 数据加密通信

时间:2022-08-03 22:46:26

原文网址: http://www.cnblogs.com/csdev

Networkcomms 是一款C# 语言编写的TCP/UDP通信框架  作者是英国人  以前是收费的 目前作者已经开源  许可是:Apache License v2

开源地址是:https://github.com/MarcFletcher/NetworkComms.Net

在networkcomms通信框架中,对数据处理有2类处理器。

一类是序列化器,包括protobufSerializer,  JsonSerializer等

一类是数据加密处理器,SharpZipLibCompressor, QuickLZCompressor等

通过networkcomms通信框架的内在机制,可以很方便的切换序列化器和数据加密处理器。

数据加密处理器,会影响性能,需要根据具体情况是否使用。

本文以SharpZipLibCompressor 加密处理器为例,看一下使用方法

本文代码包含了上一篇  使用证书的代码,当然这2个可以独立使用

服务器端:

  customOptions.DataProcessors.Add(DPSManager.GetDataProcessor<SharpZipLibCompressor.SharpZipLibGzipCompressor>()); 

            CreateCert();
            IPEndPoint thePoint = new IPEndPoint(IPAddress.Parse(txtIP.Text), int.Parse(txtPort.Text));
            ConnectionListenerBase listener = new TCPConnectionListener(customOptions, ApplicationLayerProtocolStatus.Enabled,sslOptions);
            Connection.StartListening(listener, thePoint, true);

            //开始监听某T端口 

            button1.Text = "监听中";
            button1.Enabled = false;

            //此方法中包含服务器具体的处理方法。
            StartListening();
 

客户端:

  customOptions.DataProcessors.Add(DPSManager.GetDataProcessor<SharpZipLibCompressor.SharpZipLibGzipCompressor>());
   newTcpConnection = TCPConnection.GetConnection(connInfo, customOptions, sslOptions);

操作都很简单

SharpZipLibGzipCompressor 是networkcomms通信框架已经内置好的加密处理器。您也可以自己扩展编写自己的数据加密处理器。

源码:http://pan.baidu.com/s/1dEJEdNz