Methods and apparatus for correlation protected processing of data operations
    31.
    发明授权
    Methods and apparatus for correlation protected processing of data operations 有权
    用于相关保护处理数据操作的方法和装置

    公开(公告)号:US08918768B2

    公开(公告)日:2014-12-23

    申请号:US13707437

    申请日:2012-12-06

    Applicant: Apple Inc.

    CPC classification number: G06F21/14

    Abstract: A method and an apparatus for receiving a first source code having a code block to update the first source code with multiple copies of the code block to protect against correlation attacks are described. The code block can perform one or more operations for execution based on the first source code. The operations can be performed via a random one of the copies of the code block. A second source code based on the updated first source code can be generated to be executed by a processor to produce an identical result as the first source code.

    Abstract translation: 描述了一种用于接收具有代码块的第一源代码的方法和装置,用于更新具有代码块的多个副本的第一源代码以防止相关攻击。 代码块可以执行一个或多个基于第一源代码执行的操作。 可以通过代码块的副本中的随机的一个执行操作。 可以生成基于更新的第一源代码的第二源代码以由处理器执行以产生与第一源代码相同的结果。

    PROTECTING AGAINST WHITE BOX ATTACKS USING COLUMN ROTATION
    32.
    发明申请
    PROTECTING AGAINST WHITE BOX ATTACKS USING COLUMN ROTATION 有权
    使用柱旋转防止白盒子攻击

    公开(公告)号:US20140348323A1

    公开(公告)日:2014-11-27

    申请号:US13902723

    申请日:2013-05-24

    Applicant: Apple Inc.

    CPC classification number: H04L9/0631 H04L9/002 H04L2209/16

    Abstract: Various embodiments of a computer-implemented method of information security using block cipher column rotations are described. The cipher state column rotations provide resistance to white box side channel memory correlation attacks designed to reverse-engineer a symmetric cipher key associated with the information security system. The column rotation operations can be performed on the cipher state of a block cipher, and then removed from the result, to provide obfuscation of the data when in memory, while not impacting the resulting output of the cipher or decipher operation. The method additionally includes performing a first rotation of an iteration specific cipher subkey according to the first rotation index, performing an iteration of the block cipher operations on the cipher state matrix, and rotating the columns of the cipher state matrix according to an inverse of the first rotation index.

    Abstract translation: 描述使用块密码器列旋转的计算机实现的信息安全方法的各种实施例。 密码状态列旋转提供对白箱侧通道存储器相关性攻击的抵抗,其设计用于逆向设计与信息安全系统相关联的对称密码密钥。 可以对块密码的密码状态执行列旋转操作,然后从结果中移除,以在存储器中提供数据的混淆,同时不影响所得到的密码或解密操作的输出。 该方法另外包括根据第一旋转指标执行迭代特定密码子密钥的第一次旋转,对密码状态矩阵执行块密码操作的迭代,并且根据密码状态矩阵的倒数旋转密码状态矩阵的列 第一次旋转指数。

    PRECOMPUTING INTERNAL AES STATES IN COUNTER MODE TO PROTECT KEYS USED IN AES COMPUTATIONS
    33.
    发明申请
    PRECOMPUTING INTERNAL AES STATES IN COUNTER MODE TO PROTECT KEYS USED IN AES COMPUTATIONS 有权
    在计算机模式下预处理内部AES状态以保护AES计算中使用的密钥

    公开(公告)号:US20140301546A1

    公开(公告)日:2014-10-09

    申请号:US14015523

    申请日:2013-08-30

    Applicant: Apple Inc.

    CPC classification number: H04L9/0637 H04L9/0631 H04L9/30 H04L2209/24

    Abstract: Methods, media, and systems for, in one embodiment, protecting one or more keys in an encryption and/or decryption process can use precomputed values in the process such that at least a portion of the one or more keys is not used or exposed in the process. In one example of a method, internal states of an AES encryption process are saved for use in a counter mode stream cipher operation in which the key used in the AES encryption process is not exposed or used.

    Abstract translation: 在一个实施例中,在加密和/或解密过程中保护一个或多个密钥的方法,介质和系统可以使用该过程中的预计算值,使得一个或多个密钥的至少一部分不被使用或暴露在 的过程。 在一种方法的一个示例中,AES加密处理的内部状态被保存以用于其中AES加密处理中使用的密钥未被暴露或使用的计数器模式流密码操作。

    Zero-knowledge based authentication method, system, and apparatus
    34.
    发明授权
    Zero-knowledge based authentication method, system, and apparatus 有权
    零知识认证方法,系统和设备

    公开(公告)号:US08645693B2

    公开(公告)日:2014-02-04

    申请号:US13802508

    申请日:2013-03-13

    Applicant: Apple Inc.

    Abstract: In the fields of data security and system reliability and qualification, this disclosure is of a method, system and apparatus for verifying or authenticating a device to a host using a zero-knowledge based authentication technique which includes a keyed message authentication code such as an HMAC or keyed cipher function and which operates on secret information shared between the host and the device. This is useful both for security purposes and also to make sure that a device such as a computer peripheral or accessory or component is qualified to be interoperable with the host.

    Abstract translation: 在数据安全性和系统可靠性和资格认证领域中,本公开是一种用于使用基于零知识的认证技术来验证或认证到主机的设备的方法,系统和装置,其包括诸如HMAC之类的密钥化消息认证码 或密钥密码函数,并且操作在主机和设备之间共享的秘密信息。 这对于安全目的也是有用的,并且还确保诸如计算机外围设备或附件或组件的设备有资格与主机互操作。

    SYSTEMS, METHODS, AND COMPUTER-READABLE MEDIA FOR FERTILIZING MACHINE-EXECUTABLE CODE
    35.
    发明申请
    SYSTEMS, METHODS, AND COMPUTER-READABLE MEDIA FOR FERTILIZING MACHINE-EXECUTABLE CODE 审中-公开
    用于加工机器可执行代码的系统,方法和计算机可读介质

    公开(公告)号:US20130232468A1

    公开(公告)日:2013-09-05

    申请号:US13851581

    申请日:2013-03-27

    Applicant: APPLE INC.

    CPC classification number: G06F8/33 G06F8/423 G06F21/14

    Abstract: Disclosed herein are systems, computer-implemented methods, and non-transitory computer-readable storage media for obfuscating code, such as instructions and data structures. Also disclosed are non-transitory computer-readable media containing obfuscated code. In one aspect, a preprocessing tool (i.e. before compilation) identifies in a source program code a routine for replacement. The tool can be a software program running on a computer or an embedded device. The tool then selects a function equivalent to the identified routine from a pool of functions to replace the identified routine. A compiler can then compile computer instructions based on the source program code utilizing the selected function in place of the identified routine. In another aspect, the tool replaces data structures with fertilized data structures. These approaches can be applied to various portions of source program code based on various factors. A software developer can flexibly configure how and where to fertilize the source code.

    Abstract translation: 这里公开的是系统,计算机实现的方法和用于模糊代码的非暂时计算机可读存储介质,诸如指令和数据结构。 还公开了包含混淆代码的非暂时性计算机可读介质。 在一个方面,预处理工具(即,在编译之前)在源程序代码中标识用于替换的例程。 该工具可以是在计算机或嵌入式设备上运行的软件程序。 然后,该工具从一个函数库中选择一个等同于识别的例程的功能来替换识别的例程。 然后,编译器可以使用所选择的功能代替所识别的例程来编译基于源程序代码的计算机指令。 另一方面,该工具用受精数据结构取代数据结构。 这些方法可以基于各种因素应用于源程序代码的各个部分。 软件开发人员可以灵活地配置如何以及在何处施肥源代码。

    SYSTEM AND METHOD FOR DATA OBFUSCATION BASED ON DISCRETE LOGARITHM PROPERTIES
    36.
    发明申请
    SYSTEM AND METHOD FOR DATA OBFUSCATION BASED ON DISCRETE LOGARITHM PROPERTIES 有权
    基于离散对数特性的数据吞吐系统与方法

    公开(公告)号:US20130138973A1

    公开(公告)日:2013-05-30

    申请号:US13748184

    申请日:2013-01-23

    Applicant: Apple Inc.

    Abstract: Disclosed herein are systems, computer-implemented methods, and computer-readable storage media for obfuscating data based on a discrete logarithm. A system practicing the method identifies a clear value in source code, replaces the clear value in the source code with a transformed value based on the clear value and a discrete logarithm, and updates portions of the source code that refer to the clear value such that interactions with the transformed value provide a same result as interactions with the clear value. This discrete logarithm approach can be implemented in three variations. The first variation obfuscates some or all of the clear values in loops. The second variation obfuscates data in a process. The third variation obfuscates data pointers, including tables and arrays. The third variation also preserves the ability to use pointer arithmetic.

    Abstract translation: 本文公开的是基于离散对数来混淆数据的系统,计算机实现的方法和计算机可读存储介质。 实施该方法的系统识别源代码中的明确值,基于清除值和离散对数,用源代码替换变换值,并更新引用清除值的源代码部分,使得 与变换值的交互提供与清除值的交互相同的结果。 这种离散对数方法可以在三个变体中实现。 第一个变体模糊了循环中的一些或全部清除值。 第二个变体在一个过程中模糊数据。 第三个变体模糊数据指针,包括表和数组。 第三个变体也保留了使用指针算术的能力。

Patent Agency Ranking