我们正在使用React-Native构建移动应用程序,并且需要将一些敏感数据(如客户端密钥/密码)嵌入到移动应用程序本身中。
在安全性方面(最难逆向工程),标准做法是什么?数据应该是本机代码级别的常量,资源文件还是反应原生javascript文件?
答案 0 :(得分:3)
您可以使用像react-native-keychain这样的库,它使用iOS和Android上的本机钥匙串库。
答案 1 :(得分:2)
老问题,但实际上,答案很明显,我对你得到的其他答案感到非常惊讶。
...需要嵌入一些敏感数据,如客户端密码 密钥/密码进入移动应用程序本身。
NO。你不需要这样做。这在很多层面都是糟糕的设计,不仅仅是安全明智,因为你泄露了你的秘密。当您的客户机密泄露并且您需要快速更换它时会发生什么。您想给所有用户打电话并要求他们升级吗?
如果您需要调用第三方服务,那么您真的需要创建一个代理服务,根据其凭据对用户进行身份验证,然后使用您拥有的任何客户端身份验证来获取信息。
这与任何其他客户没有什么不同 - >服务器架构。您可以假设客户端上的任何内容都将进行逆向工程。这甚至都不是很难。