Javascript 是否可以将敏感数据共享到浏览器中的js脚本?
所以我的意思是。假设您正在构建一个需要使用外部服务的web应用程序。而该外部服务要求您使用Javascript 是否可以将敏感数据共享到浏览器中的js脚本?,javascript,security,Javascript,Security,所以我的意思是。假设您正在构建一个需要使用外部服务的web应用程序。而该外部服务要求您使用客户id和客户机密向他们进行身份验证。因此,我希望javascript能够找出client\u id和client\u secret是什么,而无需任何随机开发人员打开开发人员工具就能找到它们 这可能吗?是否有可能对这些东西进行加密,或者至少将其隐藏得如此之深,以至于对于一个普通的开发人员来说,找到如何获取这些密钥是非常不切实际的 我有时读到的一些东西是,您可以将数据/代码放在png中,然后将该png作为ja
客户id
和客户机密
向他们进行身份验证。因此,我希望javascript能够找出client\u id
和client\u secret
是什么,而无需任何随机开发人员打开开发人员工具就能找到它们
这可能吗?是否有可能对这些东西进行加密,或者至少将其隐藏得如此之深,以至于对于一个普通的开发人员来说,找到如何获取这些密钥是非常不切实际的
我有时读到的一些东西是,您可以将数据/代码放在png中,然后将该png作为javascript中的代码读取。这似乎是一种可以接受的方法,因为我认为大多数人不会考虑查看加载的图像,对吗?我猜我需要尽可能地丑化javascript本身,对吗?还有其他类似的方法吗?试试模糊和缩小。这符合你的描述。然而,不可能在Javascript中真正隐藏某些内容,无论您如何扭曲它,它总是可以被其他开发人员/黑客检索到 是否有可能对这些东西进行加密,或者至少将其隐藏得如此之深,以至于对于一个普通的开发人员来说,找到如何获取这些密钥是非常不切实际的 没有 这似乎是一种可以接受的方法,因为我认为大多数人不会考虑查看加载的图像,对吗
然后,用户只需查看浏览器中的网络选项卡,查看对Web服务的HTTP请求,并从中提取秘密。他们不需要解码您的源代码。不,这是不可能的。您应该从服务器而不是客户端调用API。即使您忽略了Javascript,他们也可以转到DevTools的“网络”选项卡,查看发送到外部服务的内容。将您的服务器用作代理。在网络请求中,值仍将像day一样清晰。这就是我所说的。。它总是可以找回的?