C++ 在开源项目中存储OAuth机密

C++ 在开源项目中存储OAuth机密,c++,oauth,dropbox,C++,Oauth,Dropbox,我正在桌面应用程序中使用DropboxOAuth上传文件。但是,我的应用程序是开源的,所以我不知道如何存储应用程序的秘密。如果我不隐藏它,任何其他程序都可以使用我的应用程序标识 我可以包含带有密钥的单独头文件(C++),并且不在我的源代码中分发此头文件,但是,在我看来,这样的存储库看起来有点不够(如果我错了,请纠正我) 有什么建议吗?我认为你一针见血——作为自由和开放源码软件共享你的软件的本质意味着任何人都可以复制你程序的任何部分功能;这也意味着任何人都可以设计软件来模拟程序的任何方面。这绝非坏

我正在桌面应用程序中使用DropboxOAuth上传文件。但是,我的应用程序是开源的,所以我不知道如何存储应用程序的秘密。如果我不隐藏它,任何其他程序都可以使用我的应用程序标识

我可以包含带有密钥的单独头文件(C++),并且不在我的源代码中分发此头文件,但是,在我看来,这样的存储库看起来有点不够(如果我错了,请纠正我)


有什么建议吗?

我认为你一针见血——作为自由和开放源码软件共享你的软件的本质意味着任何人都可以复制你程序的任何部分功能;这也意味着任何人都可以设计软件来模拟程序的任何方面。这绝非坏事,;这就是开源的本质

如果你有选择地隐藏你的应用程序秘密,你所做的一切就是阻止其他人构建你的源代码,并获得与你构建源代码时相同的结果。这与IMO的开源原则大相径庭


如果问题是由于机密被泄露而导致某些市场上的应用程序删除的风险,那么一个解决方案是在构建时生成一个新的应用程序机密,对于每一个单独的构建-虽然这远不是理想的。

我认为你一针见血-作为自由和开放源码软件共享软件的本质意味着任何人都可以复制程序功能的任何部分;这也意味着任何人都可以设计软件来模拟程序的任何方面。这绝非坏事,;这就是开源的本质

如果你有选择地隐藏你的应用程序秘密,你所做的一切就是阻止其他人构建你的源代码,并获得与你构建源代码时相同的结果。这与IMO的开源原则大相径庭


如果问题是由于机密被泄露而导致某些市场上的应用程序删除的风险,那么一个解决方案是在构建时生成一个新的应用程序机密,对于每一个单独的构建-虽然这还远远不够理想。

我认为典型的做法是从源代码中省略应用程序密钥和机密,并指导人们如何通过Dropbox网站创建自己的应用程序密钥和机密。

我认为典型的做法是从源代码中省略应用程序密钥和机密通过Dropbox网站获取并指导人们如何创建自己的应用程序密钥和密码