2016-11-16 94 views
6

假设我正在构建一个firebase原生应用程序,该应用程序假定在应用程序中拥有密钥。有人窃取钥匙可能吗?如果是这样,那我该如何保护它?如何在反应原生客户端安全地存储密钥?

+0

我有同样的问题。例如,在React Native应用程序中使用https://www.npmjs.com/package/react-native-oauth有多安全? –

+0

不确定,寻找答案也是如此。你可以开始赏金吗?在用户界面上,出于某种原因我无法启动赏金。 –

+1

不管你对它进行了多少混淆,在设备上存储秘密都是不安全的。如果您的密钥必须保密,请将其放在安全的服务器后面。 – jaws

回答

1

没有100%安全的方式来存储设备上的任何秘密,因为您无法控制对源的访问。确保您的密钥安全的唯一方法是永远不要让它们放在设备上。

任何解决方案,你会发现有一个漏洞,通过this article by Michael Ramirez

出相当不错你需要在你到底有多安全需要这些键是一个平衡。

例如,在Android上,我们将一些我们不太关心Google和其他API的密钥存储在res/values/secrets.xml字符串文件中,该文件未提交到版本控制。对于strings out_app.api的人来说很容易,但我们已经决定不太在乎保护这些密钥。

<resources> 
    <string name="google_api_key">OurApiKey</string> 
</resources> 

如果您与ReactNative在Android &工作取决于类型要存储密钥,您可以使用Keystore API 但我不认为这会为存储工作,利用Android Keystore System的Firebase密钥。

相关问题