会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 3. 发明申请
    • IMPLEMENTATIONS OF PROGRAM RUNTIME CHECKS
    • 方案运行检查的执行情况
    • US20100192026A1
    • 2010-07-29
    • US12360259
    • 2009-01-27
    • Martin AbadiUlfar ErlingssonDaniel LuchaupMarcus Peinado
    • Martin AbadiUlfar ErlingssonDaniel LuchaupMarcus Peinado
    • G06F11/08
    • G06F11/08
    • Runtime checks on a program may be used to determine whether a pointer points to a legitimate target before the pointer is dereferenced. Legitimate addresses, such as address-taken local variables (ATLVs), global variables, heap locations, functions, etc., are tracked, so that the legitimate targets of pointers are known. The program may be transformed so that, prior to dereferencing a pointer, the pointer is checked to ensure that it points to a legitimate address. If the pointer points to a legitimate address, then the dereferencing may proceed. Otherwise, an error routine may be invoked. One example way to keep track of legitimate addresses is to group address-taken variables together within a specific range or ranges of memory addresses, and to check that a pointer has a value within that range prior to dereferencing the pointer. However, addresses may be tracked in other ways.
    • 在指针取消引用之前,可以使用对程序的运行时检查来确定指针是否指向合法目标。 跟踪合法的地址,例如地址采取的局部变量(ATLV),全局变量,堆位置,函数等,以便指针的合法目标是已知的。 程序可以被转换,使得在取消引用指针之前,检查指针以确保它指向合法的地址。 如果指针指向合法的地址,则可以进行取消引用。 否则,可以调用错误例程。 跟踪合法地址的一个示例方法是将地址采集的变量组合在一个特定的存储器地址范围或范围内,并在取消引用指针之前检查指针是否具有该范围内的值。 但是,地址可以以其他方式跟踪。
    • 7. 发明授权
    • Verifiable integrity guarantees for machine code programs
    • 可验证的机器代码程序完整性保证
    • US08104021B2
    • 2012-01-24
    • US11450493
    • 2006-06-09
    • Ulfar ErlingssonMartin AbadiMichael Vrable
    • Ulfar ErlingssonMartin AbadiMichael Vrable
    • G06F9/45
    • G06F21/52G06F12/1441
    • A verifier performs static checks of machine code to ensure that the code will execute safely. After verification is performed, the code is executed. The code modules generated by the rewriter and verified by the verifier prevent runtime code modifications so that properties established by the verifier cannot be invalidated during execution. Guards ensure that control flows only as expected. Stack data that must be shared within a code module, and which may therefore be corrupted during execution, is placed on a separate data stack. Other stack data remains on the regular execution stack, called the control stack. Multiple memory accesses can be checked by a single memory-range guard, optimized for fast access to the most-frequently used memory.
    • 验证者执行机器代码的静态检查,以确保代码将安全执行。 执行验证后,执行代码。 由重写器生成并由验证者验证的代码模块防止运行时代码修改,以便验证者建立的属性在执行过程中不能被无效。 护卫员确保控制只能按预期方式流动。 必须在代码模块中共享的堆栈数据,并且可能在执行期间被破坏的堆栈数据被放置在单独的数据堆栈上。 其他堆栈数据保留在常规执行堆栈中,称为控制堆栈。 多个存储器访问可以由单个存储器范围保护来检查,优化用于快速访问最常用的存储器。