2011-06-29 34 views
1

有没有一种方法可以将范围javax.crypto.Cipher调用到应用程序的“可信”部分?我想确保cipher.initcipher.doFinal只发生在程序的“授权”部分,因此这些调用的指纹可能是密钥的一部分吗?java中的细粒度认证

+1

确保保护Cipher和Key *实例可能会更好(例如,确保它们不能通过反射访问)。为什么你不允许部分程序使用加密? –

回答

0

您表示您希望在密钥中包含呼叫路径。在调用特权函数时,通过包含一个唯一的私有参数,可以简单地限制创建有效密钥,并将其合并到密钥中。

这将删除对代码结构的依赖性,同时仍然将调用位置链接到授权。当然,你现在有另一个关键组件来保证。

如果您可以相信应用程序部署不会被破坏,那么本地策略实现可能就足够了。