【问题标题】:sha-1 implementation in windows c [closed]windows c中的sha-1实现[关闭]
【发布时间】:2013-03-19 03:22:14
【问题描述】:

我正在寻找一种在 WINDOWS c 中调用 sha-1 函数的快速方法。
我尝试了 openssl,但我发现没有当前的 windows 静态库文件可供下载(libcrypto.lib),从源代码编译对我来说不是快速的选择。

http://www.packetizer.com/security/sha1/ 网站上,我找到了 sha-1 (Paul E. Jones) 的 c 实现。

它只有一个c文件(sha1.c),有370行代码和一个头文件,所以它似乎很容易包含到我的源代码中。

关于这个实现,我有以下问题:

1) 源代码受 FPL(免费软件公共许可证)的版权保护。 我查看了http://opensource.org/licenses/alphabetical 的免费软件公共许可证,但没有找到。

源中的许可证文件说:

This software is licensed as "freeware."  Permission to distribute
this software in source and binary forms, including incorporation 
into other products, is hereby granted without a fee.  THIS SOFTWARE 
IS PROVIDED 'AS IS' AND WITHOUT ANY EXPRESSED OR IMPLIED WARRANTIES, 
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY 
AND FITNESS FOR A PARTICULAR PURPOSE.  THE AUTHOR SHALL NOT BE HELD 
LIABLE FOR ANY DAMAGES RESULTING FROM THE USE OF THIS SOFTWARE, EITHER 
DIRECTLY OR INDIRECTLY, INCLUDING, BUT NOT LIMITED TO, LOSS OF DATA 
OR DATA BEING RENDERED INACCURATE.

所以看起来这个许可证像 BSD、MIT 或 Apache 许可证一样是宽松的。 这是正确的吗?还是许可类似于 GPL 或 LGPL?

2) 有人知道这是否是一个可靠的实现吗?

提前感谢

【问题讨论】:

  • 对我来说就像是 BSD 许可证。如果你真的很担心,唯一正确的答案是咨询律师
  • 如果你只想做 Windows,内置 sha-1 哈希,见msdn.microsoft.com/en-us/library/windows/desktop/…
  • 请注意,SHA-1(理论上)已损坏,如果您要进行新的实施,建议您使用 SHA-2。
  • 我怀疑这甚至是一个开源许可证,因为它没有说明修改代码的权利。在加密方面,我个人倾向于相信 OpenBSD 的人。查看their version of SHA-1(公共领域——不知道它是否会在 Windows 中构建)。
  • 我投票结束这个问题,因为它是关于许可/版权/法律问题,而不是编程或软件开发。请参阅 [help center] 了解更多信息。

标签: c licensing sha1


【解决方案1】:

1) 看起来您可以将它包含在您的程序中,是的。许可证没有说明任何关于修改代码的内容,因此您应该避免这样做(但鉴于这是一个密码学问题,无论如何这是个好建议)。

2) 不知道

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-07-22
    • 2012-02-21
    • 2015-06-01
    • 2012-06-14
    • 2012-04-10
    • 2014-12-26
    • 1970-01-01
    • 2013-12-23
    相关资源
    最近更新 更多