【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及,并且特别地关于向敏感数据提供保护。
技术介绍
敏感程序(即遭受攻击/篡改的程序)具有在其操作期间使用的被认为敏感的某 些数据。例如,在完成软件内的一组计算后,需要激活程序中的一大组子例程中的子例程。 然而,揭示哪个子例程将被激活可有助于攻击者破坏软件的操作。在这种情况下,子例程的 地址是需要保护的宝贵资产。在另一个例子中,视频流可能需要用钥匙来解密。因此,密钥 构成了需要保护的宝贵资产。 现有的软件实现适合于不同程度的静态分析。也就是说,一旦攻击者能够提取整 个软件负载,他们能够基于他们希望利用的功能优先化和反向工程化目标的组件。因为所 有的重要数据变量是静态的,所以攻击者可以简单地从反向工程化的代码读取它们。直接 嵌入在程序中的秘密易于被攻击者检索,例如函数地址和/或解密密钥。 这个问题的基本解决方案在于隐藏敏感数据。这样做的一种众所周知的方法是通 过分割秘密模型,从而该数据被分解成两部分,每一部分单独是无用的,但在组合时恢复 原始数据。 本文公开的系统和方法提供散列(hashing)数据的方法和系统,用于对敏感数据 提供保护以消除或减轻上述缺点中的至少一些。
技术实现思路
本专利技术的一个目的是提供保护敏感数据的改进方法。 因此,在本公开中,通过已知的映像(image)(例如程序中的地址范围)计算散列 函数。已知散列函数的结果在两个不同的时间点处相同,即在运行程序之前(即在建立时 间签名),和在程序运行期间(即运行时间)。程序员希望隐藏的值(即秘密值)在建立时 间也是已知的。仍然在 ...
【技术保护点】
一种保护敏感数据的方法,包括步骤:在建立时间期间,对映像进行散列以产生第一散列;将敏感数据与第一散列组合以形成salt;以及存储salt;在运行时间,对映像进行散列以产生第二散列;检索salt;将第二散列与salt组合以恢复敏感数据。
【技术特征摘要】
【国外来华专利技术】1. 一种保护敏感数据的方法,包括步骤: 在建立时间期间,对映像进行散列以产生第一散列; 将敏感数据与第一散列组合以形成salt ;以及 存储salt ; 在运行时间,对映像进行散列以产生第二散列; 检索salt ; 将第二散列与salt组合以恢复敏感数据。2. 如权利要求1的方法,还包括将第一值与映像组合的步骤。3. 如权利要求1的方法,还包括步骤:将敏感数据分割成至少两部分,将第一值与映像 组合,将敏感数据的第一部分与第一散列组合以形成第一 salt,以及将第二值与映像组合, 将敏感数据的第二部分与第一散列组合以形成第二salt。4. 如权利要求3的方法,其中检索salt的步骤检索第一和第二salt,并且组合第二散 列的步骤将第二散列与第一及第二salt组合以分别恢复敏感数据的第一和第二部分。5. 如权利要求4的任一项权利要求的方法,还包括步骤:对第一和第二散列进行散列 以产生第三和第四散列,以及比较第三和第四散列以确定它们是否相同,并且如果它们相 同则验证该敏感数据。6. 如权利要求5的方法,其中将敏感数据与第三散列值组合的步骤包括将敏感数据与 随机数据组合。7. 如权利要求6的方法,其中将敏感数据与第三散列值组合的步骤包括:将敏感数据 与随机数据组合,并且将输出与随机数据及第三散列值组合。8. 如权利要求7的方法,其中敏感数据是指令地址。9. 如权利要求8的方法,其中指令地址包括转移地址和回调函数地址中的至少一个。10. 如权利要求8或9的方法,其中指令地址具有32位和64位之一。11. 如权利要求1的方法,其中映像是任何文件的一部分。12. 如权利要求11的方法,其中映像是可执行文件的一部分。13. -种保护敏感数据的方...
【专利技术属性】
技术研发人员:R·克尔滕,H·董,C·利姆,
申请(专利权)人:爱迪德加拿大公司,
类型:发明
国别省市:加拿大;CA
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。