The Experts below are selected from a list of 18 Experts worldwide ranked by ideXlab platform
Nasir Memon - One of the best experts on this subject based on the ideXlab platform.
-
Abstract Obfuscation of Design Intent in Object-Oriented Applications ∗
2009Co-Authors: Mikhail Sosonkin, Gleb Naumovich, Nasir MemonAbstract:Protection of digital data from unauthorized access is of paramount importance. In the past several years, much research has concentrated on protecting data from the standpoint of confidentiality, integrity and availability. Software is a form of data with unique properties and its protection poses unique challenges. First, software can be reverse engineered, which may result in Stolen Intellectual Property. Second, software can be altered with the intent of performing operations this software must not be allowed to perform. With commercial software increasingly distributed in forms from which source code can be easily extracted, such as Java bytecodes, reverse engineering has become easier than ever. Obfuscation techniques have been proposed to impede illegal reverse engineers. Obfuscations are program transformations that preserve the program functionality while obscuring the code, thereby protecting the program against reverse engineering. Unfortunately, the existing obfuscation techniques are limited to obscuring variable names, transformations of local control flow, and obscuring expressions using variables of primitive types. In this paper, we propose obfuscations of design of object-oriented programs. We describe three techniques for obfuscation of program design. The class coalescing obfuscation replaces several classes with a single class. The class splitting obfuscation replaces a single class with multiple classes, each responsible for a part of the functionality of the original class. The type hiding obfuscation uses the mechanism of interfaces in Java to obscure the types of objects manipulated by the program. We show the results of our initial experiments with a prototype implementation of these techniques
-
Obfuscation of design intent in object-oriented applications
ACM Press, 2003Co-Authors: Mikhail Sosonkin, Gleb Naumovich, Nasir MemonAbstract:Protection of digital data from unauthorized access is of paramount importance. In the past several years, much research has concentrated on protecting data from the standpoint of confidentiality, integrity and availability. Software is a form of data with unique properties and its protection poses unique challenges. First, software can be reverse engineered, which may result in Stolen Intellectual Property. Second, software can be altered with the intent of performing operations this software must not be allowed to perform. With commercial software increasingly distributed in forms from which source code can be easily extracted, such as Java bytecodes, reverse engineering has become easier than ever. Obfuscation techniques have been proposed to impede illegal reverse engineers. Obfuscations are program transformations that preserve the program functionality while obscuring the code, thereby protecting the program against reverse engineering. Unfortunately, the existing obfuscation techniques are limited to obscuring variable names, transformations of local control flow, and obscuring expressions using variables of primitive types. In this paper, we propose obfuscations of design of object-oriented programs. We describe three techniques for obfuscation of program design. The class coalescing obfuscation replaces several classes with a single class. The class splitting obfuscation replaces a single class with multiple classes, each responsible for a part of the functionality of the original class. The type hiding obfuscation uses the mechanism of interfaces in Java to obscure the types of objects manipulated by the program. We show the results of our initial experiments with a prototype implementation of these techniques
-
Obfuscation of design intent in object-oriented applications
ACM Press, 2003Co-Authors: Mikhail Sosonkin, Gleb Naumovich, Nasir MemonAbstract:Protection of digital data from unauthorized access is of paramount importance. In the past several years, much research has concentrated on protecting data from the standpoint of confidentiality, integrity and availability. Software is a form of data with unique properties and its protection poses unique challenges. First, software can be reverse engineered, which may result in Stolen Intellectual Property. Second, software can be altered with the intent of performing operations this software must not be allowed to perform. With commercial software increasingly distributed in forms from which source code can be easily extracted, such as Java bytecodes, reverse engineering is becoming easier than ever. Obfuscation techniques have been proposed to impede illegal reverse engineers. Obfuscations are program transformations that preserve the program functionality while obscuring the code, thereby protecting the program against reverse engineering. Unfortunately, the existing obfuscation techniques are limited to obscuring variable names, transformations of local control flow, and obscuring expressions using variables of primitive types. In this paper, we propose obfuscations of design of object-oriented programs. We describe three techniques for obfuscation of program design. The class coalescing obfuscation replaces several classes with a single class. The class splitting obfuscation replaces a single class with multiple classes, each responsible for a part of the functionality of the original class. The type hiding obfuscation uses the mechanism of interfaces in Java to obscure the types of objects manipulated by the program. We show the results of our initial experiments with a prototype implementation of these techniques. In particular, we show that the runtime overheads of these obfuscations tend to be small.
Mikhail Sosonkin - One of the best experts on this subject based on the ideXlab platform.
-
Abstract Obfuscation of Design Intent in Object-Oriented Applications ∗
2009Co-Authors: Mikhail Sosonkin, Gleb Naumovich, Nasir MemonAbstract:Protection of digital data from unauthorized access is of paramount importance. In the past several years, much research has concentrated on protecting data from the standpoint of confidentiality, integrity and availability. Software is a form of data with unique properties and its protection poses unique challenges. First, software can be reverse engineered, which may result in Stolen Intellectual Property. Second, software can be altered with the intent of performing operations this software must not be allowed to perform. With commercial software increasingly distributed in forms from which source code can be easily extracted, such as Java bytecodes, reverse engineering has become easier than ever. Obfuscation techniques have been proposed to impede illegal reverse engineers. Obfuscations are program transformations that preserve the program functionality while obscuring the code, thereby protecting the program against reverse engineering. Unfortunately, the existing obfuscation techniques are limited to obscuring variable names, transformations of local control flow, and obscuring expressions using variables of primitive types. In this paper, we propose obfuscations of design of object-oriented programs. We describe three techniques for obfuscation of program design. The class coalescing obfuscation replaces several classes with a single class. The class splitting obfuscation replaces a single class with multiple classes, each responsible for a part of the functionality of the original class. The type hiding obfuscation uses the mechanism of interfaces in Java to obscure the types of objects manipulated by the program. We show the results of our initial experiments with a prototype implementation of these techniques
-
Obfuscation of design intent in object-oriented applications
ACM Press, 2003Co-Authors: Mikhail Sosonkin, Gleb Naumovich, Nasir MemonAbstract:Protection of digital data from unauthorized access is of paramount importance. In the past several years, much research has concentrated on protecting data from the standpoint of confidentiality, integrity and availability. Software is a form of data with unique properties and its protection poses unique challenges. First, software can be reverse engineered, which may result in Stolen Intellectual Property. Second, software can be altered with the intent of performing operations this software must not be allowed to perform. With commercial software increasingly distributed in forms from which source code can be easily extracted, such as Java bytecodes, reverse engineering has become easier than ever. Obfuscation techniques have been proposed to impede illegal reverse engineers. Obfuscations are program transformations that preserve the program functionality while obscuring the code, thereby protecting the program against reverse engineering. Unfortunately, the existing obfuscation techniques are limited to obscuring variable names, transformations of local control flow, and obscuring expressions using variables of primitive types. In this paper, we propose obfuscations of design of object-oriented programs. We describe three techniques for obfuscation of program design. The class coalescing obfuscation replaces several classes with a single class. The class splitting obfuscation replaces a single class with multiple classes, each responsible for a part of the functionality of the original class. The type hiding obfuscation uses the mechanism of interfaces in Java to obscure the types of objects manipulated by the program. We show the results of our initial experiments with a prototype implementation of these techniques
-
Obfuscation of design intent in object-oriented applications
ACM Press, 2003Co-Authors: Mikhail Sosonkin, Gleb Naumovich, Nasir MemonAbstract:Protection of digital data from unauthorized access is of paramount importance. In the past several years, much research has concentrated on protecting data from the standpoint of confidentiality, integrity and availability. Software is a form of data with unique properties and its protection poses unique challenges. First, software can be reverse engineered, which may result in Stolen Intellectual Property. Second, software can be altered with the intent of performing operations this software must not be allowed to perform. With commercial software increasingly distributed in forms from which source code can be easily extracted, such as Java bytecodes, reverse engineering is becoming easier than ever. Obfuscation techniques have been proposed to impede illegal reverse engineers. Obfuscations are program transformations that preserve the program functionality while obscuring the code, thereby protecting the program against reverse engineering. Unfortunately, the existing obfuscation techniques are limited to obscuring variable names, transformations of local control flow, and obscuring expressions using variables of primitive types. In this paper, we propose obfuscations of design of object-oriented programs. We describe three techniques for obfuscation of program design. The class coalescing obfuscation replaces several classes with a single class. The class splitting obfuscation replaces a single class with multiple classes, each responsible for a part of the functionality of the original class. The type hiding obfuscation uses the mechanism of interfaces in Java to obscure the types of objects manipulated by the program. We show the results of our initial experiments with a prototype implementation of these techniques. In particular, we show that the runtime overheads of these obfuscations tend to be small.
Erez Shaham - One of the best experts on this subject based on the ideXlab platform.
-
a purchaser of a product v an owner of a Stolen Intellectual Property the revival of the accession rule
2007Co-Authors: Noam Sher, Erez ShahamAbstract:The present article deals with the question: Which is the appropriate rule for deciding a dispute between the buyer of a product and an owner of Intellectual Property whose right has been integrated in the product by a producer, without her agreement. A legal suit against the producer is impractical since he is insolvent or impossible to locate without excessive cost while the question of product ownership and the other rights of both parties has to be decided. The present article examines three possible solution rules: A rule based on Intellectual Property law, which favors, in principle, the Intellectual Property owner, a rule based on good-faith purchase laws or the market overt rule, which allows for Property transfer to the buyer assuming he meets, among others, the good-faith requirement, and, finally, a rule based on accession law, wherein the newly created asset will be transferred to the ownership of the owner of the majority share of the new product (based on the value of chattel, rights and work invested in creating the new asset). Accordingly, the majority owner compensates the minority owner with the equivalent of the chattel, rights and work invested by the latter in the product. The present analysis comprises two main elements: An analysis of the effect of alternative legal rules on welfare in the relevant Intellectual Property and product markets, and an analysis within the framework of economic analysis of torts, viewing the situation described herein as a "legal accident." Our main thesis is that an accession rule is preferable, both for directing behavior and for achieving legal objectives in the area of insurance and risk distribution, both out of efficiency considerations and out of welfare distribution considerations. We argue that among other things, the suggested rule: (1) Effectively distinguishes between situations where performing title examination by the consumer is efficient and situations where it is not; (2) involves relatively low costs in terms of reduced product demand; (3) is easily applicable; (4) ensures a higher degree of market certainty; and (5) does not involve high legal costs. Furthermore, the suggested rule compensates the Intellectual Property owner for all her losses, but not beyond, and compensates the consumer almost for all his losses, while creating an efficient and just mechanism of insurance and risk distribution compared to the alternative rules.
Gleb Naumovich - One of the best experts on this subject based on the ideXlab platform.
-
Abstract Obfuscation of Design Intent in Object-Oriented Applications ∗
2009Co-Authors: Mikhail Sosonkin, Gleb Naumovich, Nasir MemonAbstract:Protection of digital data from unauthorized access is of paramount importance. In the past several years, much research has concentrated on protecting data from the standpoint of confidentiality, integrity and availability. Software is a form of data with unique properties and its protection poses unique challenges. First, software can be reverse engineered, which may result in Stolen Intellectual Property. Second, software can be altered with the intent of performing operations this software must not be allowed to perform. With commercial software increasingly distributed in forms from which source code can be easily extracted, such as Java bytecodes, reverse engineering has become easier than ever. Obfuscation techniques have been proposed to impede illegal reverse engineers. Obfuscations are program transformations that preserve the program functionality while obscuring the code, thereby protecting the program against reverse engineering. Unfortunately, the existing obfuscation techniques are limited to obscuring variable names, transformations of local control flow, and obscuring expressions using variables of primitive types. In this paper, we propose obfuscations of design of object-oriented programs. We describe three techniques for obfuscation of program design. The class coalescing obfuscation replaces several classes with a single class. The class splitting obfuscation replaces a single class with multiple classes, each responsible for a part of the functionality of the original class. The type hiding obfuscation uses the mechanism of interfaces in Java to obscure the types of objects manipulated by the program. We show the results of our initial experiments with a prototype implementation of these techniques
-
Obfuscation of design intent in object-oriented applications
ACM Press, 2003Co-Authors: Mikhail Sosonkin, Gleb Naumovich, Nasir MemonAbstract:Protection of digital data from unauthorized access is of paramount importance. In the past several years, much research has concentrated on protecting data from the standpoint of confidentiality, integrity and availability. Software is a form of data with unique properties and its protection poses unique challenges. First, software can be reverse engineered, which may result in Stolen Intellectual Property. Second, software can be altered with the intent of performing operations this software must not be allowed to perform. With commercial software increasingly distributed in forms from which source code can be easily extracted, such as Java bytecodes, reverse engineering has become easier than ever. Obfuscation techniques have been proposed to impede illegal reverse engineers. Obfuscations are program transformations that preserve the program functionality while obscuring the code, thereby protecting the program against reverse engineering. Unfortunately, the existing obfuscation techniques are limited to obscuring variable names, transformations of local control flow, and obscuring expressions using variables of primitive types. In this paper, we propose obfuscations of design of object-oriented programs. We describe three techniques for obfuscation of program design. The class coalescing obfuscation replaces several classes with a single class. The class splitting obfuscation replaces a single class with multiple classes, each responsible for a part of the functionality of the original class. The type hiding obfuscation uses the mechanism of interfaces in Java to obscure the types of objects manipulated by the program. We show the results of our initial experiments with a prototype implementation of these techniques
-
Obfuscation of design intent in object-oriented applications
ACM Press, 2003Co-Authors: Mikhail Sosonkin, Gleb Naumovich, Nasir MemonAbstract:Protection of digital data from unauthorized access is of paramount importance. In the past several years, much research has concentrated on protecting data from the standpoint of confidentiality, integrity and availability. Software is a form of data with unique properties and its protection poses unique challenges. First, software can be reverse engineered, which may result in Stolen Intellectual Property. Second, software can be altered with the intent of performing operations this software must not be allowed to perform. With commercial software increasingly distributed in forms from which source code can be easily extracted, such as Java bytecodes, reverse engineering is becoming easier than ever. Obfuscation techniques have been proposed to impede illegal reverse engineers. Obfuscations are program transformations that preserve the program functionality while obscuring the code, thereby protecting the program against reverse engineering. Unfortunately, the existing obfuscation techniques are limited to obscuring variable names, transformations of local control flow, and obscuring expressions using variables of primitive types. In this paper, we propose obfuscations of design of object-oriented programs. We describe three techniques for obfuscation of program design. The class coalescing obfuscation replaces several classes with a single class. The class splitting obfuscation replaces a single class with multiple classes, each responsible for a part of the functionality of the original class. The type hiding obfuscation uses the mechanism of interfaces in Java to obscure the types of objects manipulated by the program. We show the results of our initial experiments with a prototype implementation of these techniques. In particular, we show that the runtime overheads of these obfuscations tend to be small.
Noam Sher - One of the best experts on this subject based on the ideXlab platform.
-
a purchaser of a product v an owner of a Stolen Intellectual Property the revival of the accession rule
2007Co-Authors: Noam Sher, Erez ShahamAbstract:The present article deals with the question: Which is the appropriate rule for deciding a dispute between the buyer of a product and an owner of Intellectual Property whose right has been integrated in the product by a producer, without her agreement. A legal suit against the producer is impractical since he is insolvent or impossible to locate without excessive cost while the question of product ownership and the other rights of both parties has to be decided. The present article examines three possible solution rules: A rule based on Intellectual Property law, which favors, in principle, the Intellectual Property owner, a rule based on good-faith purchase laws or the market overt rule, which allows for Property transfer to the buyer assuming he meets, among others, the good-faith requirement, and, finally, a rule based on accession law, wherein the newly created asset will be transferred to the ownership of the owner of the majority share of the new product (based on the value of chattel, rights and work invested in creating the new asset). Accordingly, the majority owner compensates the minority owner with the equivalent of the chattel, rights and work invested by the latter in the product. The present analysis comprises two main elements: An analysis of the effect of alternative legal rules on welfare in the relevant Intellectual Property and product markets, and an analysis within the framework of economic analysis of torts, viewing the situation described herein as a "legal accident." Our main thesis is that an accession rule is preferable, both for directing behavior and for achieving legal objectives in the area of insurance and risk distribution, both out of efficiency considerations and out of welfare distribution considerations. We argue that among other things, the suggested rule: (1) Effectively distinguishes between situations where performing title examination by the consumer is efficient and situations where it is not; (2) involves relatively low costs in terms of reduced product demand; (3) is easily applicable; (4) ensures a higher degree of market certainty; and (5) does not involve high legal costs. Furthermore, the suggested rule compensates the Intellectual Property owner for all her losses, but not beyond, and compensates the consumer almost for all his losses, while creating an efficient and just mechanism of insurance and risk distribution compared to the alternative rules.