如何加密可在固定时间内解密的数据
哈喽!大家好,很高兴又见面了,我是编程网的一名作者,今天由我给大家带来一篇《如何加密可在固定时间内解密的数据》,本文主要会讲到等等知识点,希望大家一起学习进步,也欢迎大家关注、点赞、收藏、转发! 下面就一起来看看吧!
问题内容我的用例如下所示:
- 使用用户提供的密钥加密一些超级机密数据
- 根据要求,向用户询问该密钥并解密数据
- 使用密钥重新加密数据,使我的程序能够在用户定义的时间段内访问数据
- 如果令牌过期,请再次要求用户提供原始密钥
这感觉应该是我的 googlefu 今天很弱的一个已解决的问题。
我可以解密数据并使用已知密钥将其存储在我的程序中,但破解我的代码会暴露这些秘密。
我可以而且也许应该使用一些本地安全存储来存储这些数据,例如 Macos 钥匙串等,但我希望将本机变化的数量保持在最低限度。
解决方案
这个具体问题的答案似乎是,不,不可能在本地完成。
解决此类问题(即使用用户密钥解密的数据的临时缓存)的最佳解决方案是使用用户计算机上存在的安全工具(即 macos 钥匙串)或简单地使用已知密钥重新加密缓存程序,但可以对该程序进行逆向工程以找到解密密钥。
我的计划是在程序首次运行时生成一个加密密钥,使用它+一个已知的盐来加密我的缓存。这个想法是,程序、生成的密钥和缓存都需要一起妥协才能解密我的缓存。
今天带大家了解了的相关知识,希望对你有所帮助;关于Golang的技术知识我们会一点点深入介绍,欢迎大家关注编程网公众号,一起学习编程~
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341