Encryption 戈朗:保护源代码

Encryption 戈朗:保护源代码,encryption,go,Encryption,Go,一般来说,Go/Golang目前很难找到,我也没有找到我在这里要找的东西。我知道在用几种语言编译应用程序的过程中可以进行某种程度的加密。在编译成exe后,有人能给我一个关于Go源代码安全性的简要说明吗?如果可以读取(至少是部分读取),是否有任何东西可以提高源代码的安全性?仅分发二进制文件(每个平台/体系结构)。这是你用任何语言都能得到的最好结果。在反向工程安全的情况下,无法分发程序。任何人告诉你一些不同的东西可能只是想向你推销一个“保护”计划。没有这样的东西真的存在 另一方面:99.9%的潜在用

一般来说,Go/Golang目前很难找到,我也没有找到我在这里要找的东西。我知道在用几种语言编译应用程序的过程中可以进行某种程度的加密。在编译成exe后,有人能给我一个关于Go源代码安全性的简要说明吗?如果可以读取(至少是部分读取),是否有任何东西可以提高源代码的安全性?

仅分发二进制文件(每个平台/体系结构)。这是你用任何语言都能得到的最好结果。在反向工程安全的情况下,无法分发程序。任何人告诉你一些不同的东西可能只是想向你推销一个“保护”计划。没有这样的东西真的存在

另一方面:99.9%的潜在用户可能不知道如何对程序进行反向工程

另一方面:如果你的潜在用户中有0.01人有能力对你的程序进行反向工程,那就足够了,你就完蛋了


看,试着找出一种商业模式,这种商业模式依赖于任何其他东西,而不是隐晦的安全性。事实上,即使是开源代码也能带来利润——如果它的价值不仅仅在于能够访问源代码本身。

你想做什么?你害怕别人偷你的源代码吗?是的。我还不具备Go to do的技能水平,但我确实有一些想法,希望在可分发应用程序中推广。此外,我想知道硬编码db凭据的安全性。不要硬编码凭据,如果您的安全模型依赖于假设您的用户无法发现您的应用程序在做什么,那么您做得不对。无论您使用哪种语言,总有一种方法可以从您的软件中提取这些凭据。kwolfe:设计一个不依赖任何硬编码的安全模型。在配置文件中存储凭据。为每个用户提供不同的凭据。@kwolfe然后为客户生成API密钥,并在购买时通过电子邮件/将其交给他们,或者也可以实现类似OAuth的功能,在第一次运行时授权您的客户机,并为客户机提供一个唯一的密钥,应用程序将该密钥保存在配置文件中,或者保存在该操作系统的适当位置。老实说,听起来你已经超越了自己。是否也建议剥离调试信息?使用调试标志自动执行生成。显然,安全性增益可能是最小的,但对于商业发布的可执行文件来说,它可能无论如何都是值得的(特别是因为,据我所知,调试信息可能会导致非常轻微的性能问题)。在golang nuts邮件列表上有一些关于这方面的讨论。即使使用go build-ldflags“-s”?