登录
首页 >  Golang >  Go问答

如何在 Go 中读取文件属性

来源:stackoverflow

时间:2024-04-17 09:45:28 458浏览 收藏

学习Golang要努力,但是不要急!今天的这篇文章《如何在 Go 中读取文件属性》将会介绍到等等知识点,如果你想深入学习Golang,可以关注我!我会持续更新相关文章的,希望对大家都能有所帮助!

问题内容

我正在寻找一种读取文件属性的方法,以便我可以以编程方式验证文件来自特定公司。我只想执行基本检查,例如“是否已签名”和“谁签名” - 右键单击​​文件并选择“数字签名”时可以获得这些信息。我无法调用任何操作系统特定的工具(例如,signtool --verify),并且理想情况下希望避免使用任何第三方库,因为我们在使用它们方面有非常严格的政策。

这最初将在使用 GoLang 的 Windows 上进行,并将用于验证一些签名的 msi 文件。我想我可以加载一个操作系统 dll 来提供帮助,但不确定哪一个能够提供该信息。如果有人能指出我应该采取的正确方向来解决这个问题,或者提供一个类似的简短示例,那就太好了。


解决方案


听起来您想拨打 WinVerifyTrustWinVerifyTrustEx 或某些类似的功能。搜索 golang WinVerifyTrust,似乎存在一些示例 go 代码,您可以参考它来调用系统的 wintrust.dll。假设您愿意编写仅适用于 Windows 的代码,这可能是我推荐的方向。

从更跨平台的角度来看,您可以寻找 OpenSSL 包装器或实现。据报道,Windows PE 数字签名为 based on PKCS#7,OpenSSL 应该能够通过足够的胶水代码来支持。

到这里,我们也就讲完了《如何在 Go 中读取文件属性》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>