c# - 带网络流的充气城堡

标签 c# cryptography bouncycastle

我正在尝试创建一个流式加密包装器。我有一个网络连接,可以加密传输数据,我想即时解码它。这是使用 native 加密类的相同功能的链接,但我需要使用 Bouncy CaSTLe 来完成此操作。

https://github.com/pdelvo/Pdelvo.Minecraft/blob/master/Pdelvo.Minecraft.Network/AesStream.cs

我尝试使用 BufferedStreamCipher 但无法弄清楚如何让它工作,也找不到任何示例。任何帮助将不胜感激。

谢谢, 雷

最佳答案

所以它似乎是 CFB8 模式下的 AES,并且您需要一个 Stream。

您可以使用以下方式获取 enc/dec 密码对象

CipherUtilities.GetCipher("AES/CFB8/NoPadding");

您必须对每个调用 Init,

new ParametersWithIV(new KeyParameter(keyBytes), ivBytes)

然后你可以用它们包装一个(双向)流:

new CipherStream(innerStream, readCipher, writeCipher)

这可能会让您开始,但我不能百分百确定它会按照您需要的方式进行流式传输。不过,试一试吧。如果我们可以采取一些措施来改进它,请回复我或发布到 BC C# 邮件列表。

关于c# - 带网络流的充气城堡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14350455/

相关文章:

C# Mysql 创建表名带空格

c# - 如何使用 HttpRequestMessage 发送证书?

java - 算术异常 : using Cipher Algorithm "AES/CFB1/PKCS5Padding" from BouncyCaSTLeProvider

c# - 我如何在 bouncyCaSTLe 中执行此操作(获取已安装的证书)?

c# - System.Text.StringBuilder 限制

c# - 类型化和非类型化委托(delegate)

Java PBE 加密字符串长度与输入相同

ssl - 如何在 OpenSSL 中使用 AES-128-ECB Alg 通过 PEM 编码生成 PKCS8 key

java - 如何使用 Bouncy CaSTLe 从 CMS 中删除签名?

c# - “Mock” 数据库和 “Real” 数据库行为之间的差异