有一种方法可以在应用程序的“受信任”部分内调用javax.crypto.Cipher
个调用吗?我想确保cipher.init
和cipher.doFinal
只发生在程序的“授权”部分,那么这些调用的指纹是否可以作为密钥的一部分?
答案 0 :(得分:1)
您可以使用策略文件对某些方法强制实施限制:有关策略文件详细信息,请参阅http://download.oracle.com/javase/1,5.0/docs/guide/security/PolicyFiles.html。我不确定安全经理是否可以覆盖这些方法,但值得尝试。
答案 1 :(得分:0)
您表示您希望在密钥中包含呼叫路径。通过在调用特权函数时包含唯一的私有参数,并将其合并到密钥中,您可以简单地限制有效密钥的创建。
这将删除对代码结构的依赖性,同时仍将调用位置链接到授权。当然,您现在还有另一个要保护的关键组件。
如果您可以信任应用程序部署不被破坏,那么本机策略实现可能就足够了。