Patents by Inventor Willem Charles Mallon
Willem Charles Mallon has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11502846Abstract: Some embodiments are directed to a keyed message authentication code (MAC) device (100) for computing a keyed MAC for an input message using encoded representations. The keyed MAC device may be configured to apply a sequence of compressions functions, at least one of which takes a state as input in an encoded representation.Type: GrantFiled: December 24, 2018Date of Patent: November 15, 2022Assignee: Koninklijke Philips N.V.Inventors: Willem Charles Mallon, Sebastiaan Jacobus Antonius De Hoogh, Alan Pestrin
-
Patent number: 11475166Abstract: Some embodiments are directed to a compiling device (100) configured for selecting of protective transformations to improve security of a computer program. The compiling device is configured to assign protective transformations to parts of the data flow graph, and obtain a compilation of the computer program representation from at least the data flow graph and the assigned protective transformations which satisfy the security and/or the performance target.Type: GrantFiled: February 20, 2019Date of Patent: October 18, 2022Assignee: Koninklijke Philips N.V.Inventors: Oscar Garcia Morchon, Alan Pestrin, Willem Charles Mallon
-
Patent number: 11409848Abstract: Some embodiments are directed to a compiler device (400) arranged for obfuscation of a computer program. The compiler device performs a live variable analysis on the computer program representation, and modifies the computer program representation to encode a first variable using at least a second variable as an encoding parameter.Type: GrantFiled: July 5, 2019Date of Patent: August 9, 2022Assignee: Koninklijke Philips N.V.Inventors: Willem Charles Mallon, Alan Pestrin, Oscar Garcia-Morchon
-
Publication number: 20210326413Abstract: Some embodiments are directed to a compiler device (400) arranged for obfuscation of a computer program. The compiler device performs a live variable analysis on the computer program representation, and modifies the computer program representation to encode a first variable using at least a second variable as an encoding parameter.Type: ApplicationFiled: July 5, 2019Publication date: October 21, 2021Inventors: WILLEM CHARLES MALLON, ALAN PESTRIN, OSCAR GARCIA-MORCHON
-
Patent number: 11126413Abstract: A compiling device (100) configured to convert a source code computer program (102) into an object code computer program (106), the compiling device comprising—a processor circuit arranged to—parse (120) the source code computer program and generate a static single assignment (SSA) graph (122) for at least a portion of the source code computer program, and—search for a second subgraph (P) of the SSA graph, wherein a first subgraph (N) is a subgraph of the second subgraph (N?P), a sum of the bit sizes associated to incoming edges of the second subgraph being smaller than a sum of the bit sizes associated to incoming edges of the first graph, —implementing the second subgraph of the SSA graph in the object code computer program as a single operation thus omitting the assignments corresponding to edges of the first subgraph.Type: GrantFiled: January 5, 2018Date of Patent: September 21, 2021Assignee: Koninklijke Philips N.V.Inventor: Willem Charles Mallon
-
Publication number: 20210132920Abstract: A compiling device (100) configured to convert a source code computer program (102) into an object code computer program (106), the compiling device comprising —a processor circuit arranged to —parse (120) the source code computer program and generate a static single assignment (SSA) graph (122) for at least a portion of the source code computer program, and —search for a second subgraph (P) of the SSA graph, wherein a first subgraph (N) is a subgraph of the second subgraph (N?P), a sum of the bit sizes associated to incoming edges of the second subgraph being smaller than a sum of the bit sizes associated to incoming edges of the first graph, —implementing the second subgraph of the SSA graph in the object code computer program as a single operation thus omitting the assignments corresponding to edges of the first subgraph.Type: ApplicationFiled: January 5, 2018Publication date: May 6, 2021Inventor: WILLEM CHARLES MALLON
-
Publication number: 20210049289Abstract: Some embodiments are directed to a compiling device (100) configured for selecting of protective transformations to improve security of a computer program. The compiling device is configured to assign protective transformations to parts of the data flow graph, and obtain a compilation of the computer program representation from at least the data flow graph and the assigned protective transformations which satisfy the security and/or the performance target.Type: ApplicationFiled: February 20, 2019Publication date: February 18, 2021Inventors: OSCAR GARCIA MORCHON, ALAN PESTRIN, WILLEM CHARLES MALLON
-
Publication number: 20200366496Abstract: Some embodiments are directed to a keyed message authentication code (MAC) device (100) for computing a keyed MAC for an input message using encoded representations. The keyed MAC device may be configured to apply a sequence of compressions functions, at least one of which takes a state as input in an encoded representation.Type: ApplicationFiled: December 24, 2018Publication date: November 19, 2020Inventors: Willem Charles Mallon, Sebastiaan Jacobus Antonius De Hoogh, Alan Pestrin
-
Patent number: 10567158Abstract: A cryptographic device (200) is provided to compute a key dependent cryptographic function for an input message. The cryptographic device has a data store arranged to store multiple variables (w) on which the cryptographic device acts to compute the cryptographic function, a variable (w) being distributed over multiple shares (wj) and represented in the data store as multiple encoded shares (xj), an encoded share being an encoding (xj=Encj (wj, sj)) of a share (wj) together with a state (sj), the multiple states (sj) corresponding to the same variable (w) having a relationship with the input message (M) so that there exists an injective mapping (?) from the input message (M) to the multiple states (?(M)=(s0, . . . , sn?1)).Type: GrantFiled: October 10, 2016Date of Patent: February 18, 2020Assignee: KONINKLIJKE PHILIPS N.V.Inventors: Ronald Rietman, Sebastiaan Jacobus Antonius De Hoogh, Paulus Mathias Hubertus Mechtildis Antonius Gorissen, Willem Charles Mallon, Ludovicus Marinus Gerardus Maria Tolhuizen, Hendrik Dirk Lodewijk Hollmann
-
Publication number: 20190074959Abstract: A cryptographic device (200) is provided to compute a key dependent cryptographic function for an input message. The cryptographic device has a data store arranged to store multiple variables (w) on which the cryptographic device acts to compute the cryptographic function, a variable (w) being distributed over multiple shares (wj) and represented in the data store as multiple encoded shares (xj), an encoded share being an encoding (xj=Encj (wj, sj)) of a share (wj) together with a state (sj), the multiple states (sj) corresponding to the same variable (w) having a relationship with the input message (M) so that there exists an injective mapping (?) from the input message (M) to the multiple states (?(M)=(s0, . . . , sn?1)).Type: ApplicationFiled: October 10, 2016Publication date: March 7, 2019Inventors: RONALD RIETMAN, SEBASTIAAN JACOBUS ANTONIUS DE HOOGH, PAULUS MATHIAS HUBERTUS MECHTILDIS ANTONIUS GORISSEN, WILLEM CHARLES MALLON, LUDOVICUS MARINUS GERARDUS MARIA TOLHUIZEN, HENDRIK DIRK LODEWIJK HOLLMANN
-
Patent number: 10095847Abstract: Unauthorized use of computer programs is made difficult by compiling a processor rather than just compiling a program into machine code. The way in which the processor should respond to machine instructions, i.e. its translation data, is computed from an arbitrary bit string B and a program P as inputs. The translation data of a processor are computed that will execute operations defined by the program P when the processor uses the given bit string B as a source of machine instructions. A processor is configured so that it will execute machine instructions according to said translation data. Other programs P? may then be compiled into machine instructions B? for that processor and executed by the processor. Without knowledge of the bit string B and the original program P it is difficult to modify the machine instructions B? so that a different processor will execute the other program P?.Type: GrantFiled: May 17, 2013Date of Patent: October 9, 2018Assignee: KONINKLIJKE PHILIPS N.V.Inventor: Willem Charles Mallon
-
Publication number: 20150161363Abstract: Unauthorized use of computer programs is made difficult by compiling a processor rather than just compiling a program into machine code. The way in which the processor should respond to machine instructions, i.e. its translation data, is computed from an arbitrary bit string B and a program P as inputs. The translation data of a processor are computed that will execute operations defined by the program P when the processor uses the given bit string B as a source of machine instructions. A processor is configured so that it will execute machine instructions according to said translation data. Other programs P? may then be compiled into machine instructions B? for that processor and executed by the processor. Without knowledge of the bit string B and the original program P it is difficult to modify the machine instructions B? so that a different processor will execute the other program P?.Type: ApplicationFiled: May 17, 2013Publication date: June 11, 2015Applicant: KONINKLIJKE PHILIPS N.V.Inventor: Willem Charles Mallon
-
Patent number: 8023651Abstract: In a system, a server provides a digital signal processing function ƒ to an executing device in an obfuscated form. The function ƒ includes a function cascade of signal processing functions ƒi, 1?i?N (e.g., FC1(x)?ƒN? . . . ?ƒ1(x)). The server includes a processor for selecting a set of 2N invertible permutations pi, 1?i?2N; calculating a set of N functions gi, where gi is functionally equivalent to p2i?1?ƒi?p2i?1, for 1?i?N; and calculating a set of N?1 functions hi, where hi is functionally equivalent to p2i?1?1?p2i?2, for 2?i?N. The server equips the executing device with an execution device function cascade that includes yN?hN?yN?1?hN?1? . . . ?y1, where y1, . . . , yN are function parameters (e.g., ED1(y1, . . . , yN)?yN?hN?yN?1?hN?1? . . . ?y1), and provides the functions g1, . . . gN to the executing device. The executing device obtains the functions g1, . . .Type: GrantFiled: November 30, 2004Date of Patent: September 20, 2011Assignee: Irdeto B.V.Inventors: Paulus Mathias Hubertus Mechtildus Antonius Gorissen, Joachim Artur Trescher, Antonius Adriaan Maria Staring, Willem Charles Mallon, Menno Anne Treffers
-
Patent number: 7876898Abstract: In a system, a server provides a digital signal processing function ƒ to an executing device in an obfuscated form. The function ƒ includes a function cascade of signal processing functions ƒi, 1?i?N (e.g., FC1(x)?ƒN? . . . ?ƒ1(x)). The server includes a processor for selecting a set of 2N invertible permutations pi, 1?i?2N; calculating a set of N functions gi, where gi is functionally equivalent to p2i?1?ƒi?p2i?1, for 1?i?N; and calculating a set of N?1 functions hi, where hi is functionally equivalent to p2i?1?1?p2i?2, for 2?i?N. The server equips the executing device with an execution device function cascade that includes yN?hN?yN?1?hN?1? . . . ?y1, where y1, . . . , yN are function parameters (e.g., ED1(y1, . . . , yN)?yN?hN?yN?1?hN?1? . . . ?y1), and provides the functions g1, . . . gN to the executing device. The executing device obtains the functions g1, . . .Type: GrantFiled: November 30, 2004Date of Patent: January 25, 2011Assignee: Irdeto BVInventors: Paulus Mathias Hubertus Mechtildus Antonius Gorissen, Joachim Artur Trescher, Antonius Adriaan Maria Staring, Willem Charles Mallon, Menno Anne Treffers
-
Patent number: 7788465Abstract: A processing system according to the invention comprises a plurality of processing elements (PE1, . . . , PE7). The processing elements comprise a controller and computation means. The plurality of processing elements is dynamically reconfigurable as mutually independently operating task units (TU1, TU2, TU3), which task units comprise one processing element (PE7) or a cluster of two or more processing elements (PE3, PE4, PE5, PE6). The processing elements within a cluster are arranged to execute instructions under a common thread of program control. In this way the processing system is capable of using the same sub-set of data-path elements to exploit instruction level parallelism or task level parallelism or a combination thereof, dependent on the application.Type: GrantFiled: December 4, 2003Date of Patent: August 31, 2010Assignee: Silicon Hive B.V.Inventors: Orlando Miguel Pires Dos Reis Moreira, Alexander Augusteijn, Bernardo De Oliveira Kastrup Pereira, Wim Feike Dominicus Yedema, Paul Ferenc Hoogendijk, Willem Charles Mallon
-
Patent number: 7574583Abstract: Differences in encoding efficiency of instructions may arise if certain operations require very large immediate values as operands, as opposed to others requiring no immediate values or small immediate values. The present invention describes a processing apparatus, a compiler as well as a method for processing data, allowing the use of instructions that require large immediate data, while simultaneously maintaining an efficient encoding and decoding of instructions. The processing apparatus comprises a plurality of issue slots (UC0, UC1, UC2, UC3), wherein each issue slot comprises a plurality of functional units (FU20, FU21, FU22). The processing apparatus is arranged for processing data, based on control signals generated from a set of instructions being executed in parallel. The processing apparatus further comprises a dedicated issue slot (UC4) arranged for loading an immediate value (IMV1) in dependence upon a dedicated instruction (IMM).Type: GrantFiled: August 8, 2003Date of Patent: August 11, 2009Assignee: Silicon Hive B.V.Inventors: Jeroen Anton Johan Leijten, Willem Charles Mallon
-
Publication number: 20080285744Abstract: In a system (600), a server (610) provides a digital signal processing function ƒ to an executing device (620) in an obfuscated form. The function ƒ includes a function cascade of signal processing functions ƒ1, 1?i?N to formula (I). The server includes a processor (612) for selecting a set of 2N invertible permutations pi, 1?i?2N; calculating a set of N functions g, where g, is functionally equivalent to formula (II) for 1?i?; and calculating a set of N?1 functions h, where h, is functionally equivalent to formula (III) for 2?i?N. The server includes means (614) for equipping the executing device with an execution device function cascade that includes formula (IV), where y1, . . . , yN are function parameters to formula (V), and means (616) for providing the functions g1, . . . gN to the executing device. The executing device includes means (626) for obtaining the functions g1, . . .Type: ApplicationFiled: November 30, 2004Publication date: November 20, 2008Applicant: KONINKLIJKE PHILIPS ELECTRONIC, N.V.Inventors: Paulus Mathias Hubertus Mechtildus Antonius Gorissen, Joachim Artur Trescher, Antonius Adriaan Maria Staring, Willem Charles Mallon, Menno Anne Treffers
-
Publication number: 20030083942Abstract: A method of enhancing the security of a protection mechanism used in a product. When information (115) regarding a vulnerability in the protection mechanism is received from a person (100), the person (100) is given a reward (145) for supplying the information (115). The reward (145) comprises a portion of profits made on the product in a time period ranging from the moment of receiving the information (115) until a moment at which the information (115) becomes public knowledge.Type: ApplicationFiled: October 18, 2002Publication date: May 1, 2003Inventors: Willem Charles Mallon, Joachim Artur Trescher, Paulus Mathias Hubertus Mechtildus Antonius Gorissen