CryptoStream读取将输入流位置设置为流的结尾

时间:2017-11-22 16:18:32

标签: c# cryptostream

所有!

我正在使用CryptoStream类,使用memoryStream进行测试。将来,我们将使用网络数据,因此流将是只读的,CanSeek = false。

测试数据大约为750字节。前250个字节是标题,读取正常。第二个250字节是真实的'数据。第三个250字节是包含验证值的预告片,例如流的hmac。

这是代码的剪辑。我在250位置并要求CryptoStream.Read获取250个字节。返回250个字节,但输入位置现在位于流的末尾。有什么想法吗?

byteCount = cs.Read(outputBuffer, 0, bytesToRead)



00005001 inStream.Position = 256
00005002 inStream.Length   = 768
00005003 bytesToRead       = 256
00005004 bytesLeft         = 256
00005010 Invoking cs.Read(outputBuffer, 0, bytesToRead)
00005011 inStream.Position = 768
00005012 inStream.Length   = 768
00005013 bytesToRead       = 256
00005014 bytesLeft         = 0
00005015 byteCount         = 256

提前感谢您的帮助!

0 个答案:

没有答案