- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我发现了很多 AES、Twofish 和 Serpent 的 C 实现。但是我不是很理解这些例子。我只知道有些地方提供了反转矩阵的例子。
谁能给我一个示例或 .c 文件来加密/解密由 char*
和密码表示的数据?
最佳答案
维基百科文章实际上链接到一个优秀的 tutorial (由 X-N20 编写)用 C 语言编写,引导您完成数学运算并随时提供 C 实现,这对于理解过程非常有用。我还建议阅读 finite field arithmetic .
Serpent和 Twofish , 错过了 AES 的称号,在互联网上没有很好的记录。请记住,尽管每个都提供了引用实现。
实际自己实现它们需要研究它们各自的论文,可能还需要引用源代码。
请注意,您的 200 亿条评论都与这样一个事实有关,即 NIST 为 AES 指定的接口(interface)是每个密码提供一个 128 位(16 字节)输入 block 以及 128 位、192 位和 256 位之一关键 block 。
为了以正确抵抗密码分析的方式安全地加密,您需要做一些仔细的工作。例如,如果您的最后一个 block 缺少所需的几个字节怎么办?你如何安全地垫?同样,根据预期用途,还有其他方案,特别是针对大量重复数据,旨在抵抗密码分析,您知道加密数据可能包含 c:\windows
的内容。评论员试图说明的是,对于任何现实世界的使用,为了保持安全,这些事情都需要考虑。
编辑 由于另一个问题出现在这个主题上,这里有几个链接:
crypto
下查看他们的其余代码。gpg
提供了一整套加密函数。具体来说,如果您使用 AES,您可能不会在这里找到它,但您会找到 camellia 和 serpent。关于c - C 示例中的 AES、Serpent 或 Twofish?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4688512/
wikipedia page on TwoFish指向这个 reference implementation in C (和 code )这很好,但是它缺少 main 并且我在实现一个时的前几遍没有正
我正在尝试按照 1998 paper of Bruce Schneider 中的描述逐步实现 Twofish 密码。尽管如此,我已经在 key 扩展上失败了。 我尝试将论文的细节1对1复制到pytho
我正在通过网络接收数据包。但是其中一些数据包具有动态长度,因此第二个字节有一个包含长度的 2 字节长的 WORD。所以我先接收包号,然后按照长度全部接收。当没有加密时,这里一切都很好。如果我使用 tw
我正在实现用于教育软件的 Twofish 算法。我将 QT 用于 UI,并使用维基百科的研究和 Bruce Schneier 的 Twofish 论文,但我坚持生成美白子键。我已经成功地理解了如何生成
我正在尝试使用 Twofish 和 ECB 模式进行加密和加密。我尝试使用库“gnu.crypto.cipher.Twofish”,但它不允许将模式设置为 ECB。我们可以使用任何库或代码。请帮忙。谢
我需要用 Serpent 和 Twofish 加密一组无符号字符(16 字节长)。我使用官方网站上的两个库 -write in c-。我尝试使用它们,但我将获得的密文不正确。为了检查我使用这个 sit
我在 C 中找到了很多 AES、Twofish 和 Serpent 的实现。但我不太了解这些示例。我只知道有些地方提供了反转矩阵的示例。 有人能指出一个示例或 .c 文件来加密/解密由 char* 表
我发现了很多 AES、Twofish 和 Serpent 的 C 实现。但是我不是很理解这些例子。我只知道有些地方提供了反转矩阵的例子。 谁能给我一个示例或 .c 文件来加密/解密由 char* 和密
您知道 ActionScript 3 中可以使用 TwoFish 算法加密和解密的库吗? 我一直在使用as3crypto对于其他密码算法,但不幸的是,它似乎无法处理 Twofish... 谢谢! 最佳
我是一名优秀的程序员,十分优秀!