小编Yan*_*ang的帖子

ASP.NET Core 2.1无效的请求行问题

由于我们已将.NET Core 2.0更新为.NET Core 2.1(SDK 2.1.302),因此我们的Linux Docker ASP.NET Core容器服务器日志将由以下“信息”日志条目填充:

INFO|Microsoft.AspNetCore.Server.Kestrel|Connection id "0HLFG42JUAORG" bad request 
data: "Invalid request line: 
'CNXN\x00\x00\x00\x01\x00\x00\x04\x00\x1B\x00\x00\x00M\x0A'" 
Microsoft.AspNetCore.Server.Kestrel.Core.BadHttpRequestException: Invalid 
request line: 'CNXN\x00\x00\x00\x01\x00\x00\x04\x00\x1B\x00\x00\x00M\x0A'

INFO|Microsoft.AspNetCore.Server.Kestrel|Connection id "0HLFG42JUAORH" bad request 
data: "Invalid request line: 
'CNXN\x00\x00\x00\x01\x00\x00\x04\x00\x1B\x00\x00\x00M\x0A'" 
Microsoft.AspNetCore.Server.Kestrel.Core.BadHttpRequestException: Invalid 
request line: 'CNXN\x00\x00\x00\x01\x00\x00\x04\x00\x1B\x00\x00\x00M\x0A'
Run Code Online (Sandbox Code Playgroud)

连接ID每秒钟大约增加1个alpha /数字。十六进制似乎没有转换为任何有意义的(NUL NUL NUL SOH NUL NUL EOT NUL ESC NUL NUL LF)。

我们排除的事情:

  • 它不是源自WAN / LAN(禁用了对容器的网络访问,并且仍在生成条目)。
  • 在我们的开发环境中不会发生这种情况(带有Visual Studio的Windows)
  • 重新部署docker容器不能解决问题。
  • 我们认为这不是SSL问题,因为kestrel仅配置为http。我们可以通过https和wss访问该应用及其websockets(SignalR)

c# kestrel-http-server asp.net-core

10
推荐指数
2
解决办法
6770
查看次数

以下是加密算法吗?如果是这样,它是可逆的吗?

我在编程示例中遇到了以下方法.这真的是加密算法吗?或者它更像是十六进制散列/不可逆编码算法?我看到使用按位移位和按位和使得我相信该方法具有数据丢失并且是不可逆的十六进制编码算法.

 private string  Encrypt(string key, string message)
    {
        string result = "";
        var hexValues = "0123456789abcdef";
        for (int i = 0, j = 0; i < message.Length; i++)
        {
            var a = (Int32)message[i];
            var b = (Int32)key[j] & 10;
            var encChar = a ^ b;
            if (++j == key.Length)
            {
                j = 0;
            }
            result += hexValues[(encChar >> 4) & 15];
            result += hexValues[encChar & 15];

        }
        return result;
    }
Run Code Online (Sandbox Code Playgroud)

c# encryption algorithm hash encoding

0
推荐指数
1
解决办法
107
查看次数