Surreptitious Software

Size: px
Start display at page:

Download "Surreptitious Software"

Transcription

1 Surreptitious Software Obfuscation, Watermarking, and Tamperproofing for Software Protection Christian Collberg Jasvir Nagra rw T Addison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid Capetown Sydney Tokyo Singapore Mexico City

2 Contents Preface xv About the Authors Acknowledgments xxv xxvii 1 What Is Surreptitious Software? Setting the Scene Attack and Defense Program Analysis A Simple Reverse Engineering Example Code Obfuscation Applications of Code Obfuscation Obfuscating Transformations Black Hat Code Obfuscation Tamperprooflng Applications of Tamperprooflng An Example Software Watermarking An Example Attacks on Watermarking Systems Software Similarity Plagiarism Software Forensics Birthmarking A Birthmarking Example Hardware-Based Protection Techniques Distribution with Physical Token Tying the Program to the CPU Ensuring Safe Execution Environment Encrypted Execution Physical Barriers 54 VII

3 viii Contents 1.9 Discussion Reasons to Use Software Protection and Reasons Not To So Which Algorithms Should I Use? Notation 58 2 Methods of Attack and Defense Attack Strategies A Prototypical Cracking Target What's the Adversary's Motivation? What Does the Adversary Get to Crack? What's the Adversary's Attack Methodology? What Tools Does the Adversary Use? What Techniques Does the Adversary Use? Discussion Defense Strategies Notation The cover Primitive The duplicate Primitive Thesp/zVand merge Primitives The reorder Primitive The map Primitive The indirect Primitive The mimic Primitive The advertise Primitive The defect-respond Primitive The dynamic Primitive Discussion Discussion What Do We Need from Attack and Defense Models? How Do We Use the Models to Devise Algorithms? Program Analysis Static Analysis Control Flow Analysis Data Flow Analysis Data Dependence Analysis Alias Analysis Slicing Abstract Interpretation Dynamic Analysis Debugging Profiling 161

4 Contents ix Tracing Emulation Reconstituting Source Disassembly Decompilation Pragmatic Analysis Style Metrics Software Complexity Metrics Software Visualization Discussion Code Obfuscation Semantics-Preserving Obfuscating Transformations Algorithm OBFCF: Diversifying Transformations Algorithm OBFTP: Identifier Renaming Obfuscation Executives Definitions Potent Obfuscating Transformations Efficient Obfuscating Transformations Stealth Other Definitions Complicating Control Flow Opaque Expressions Algorithm OBFWHKD: Control-Flow Flattening Introducing Aliasing Algorithm OBFCTJt, ogus : Inserting Bogus Control Flow Algorithm OBFLDK: Jumps Through Branch Functions Attacks Opaque Predicates Algorithm OBFCT} pointer : Opaque Predicates from Pointer Aliasing OBFWHKD opaque : Opaque Values from Array Aliasing Algorithm OBFCT]'thread: Opaque Predicates from Concurrency Breaking Opaque Predicates Data Encodings Encoding Integers Encoding Booleans Encoding Literal Data Encoding Arrays Breaking Abstractions Algorithm OBFWC S j g : Merging Function Signatures Algorithm OBFCT]^: Splitting and Merging Classes 279

5 4.6.3 Algorithm OBFDMRVSL: Destroying High-Level Structures Algorithm OBFAJV: Modifying Instruction Encodings Discussion Obfuscation Theory Definitions Provably Secure Obfuscation: Possible or Impossible? Turing's Halting Problem Algorithm REÄA: De-obfuscating Programs Provably Secure Obfuscation: It's Possible (Sometimes)! Algorithm OBFLBS: Obfuscating with Point Functions Algorithm OBFNS: Obfuscating Databases Algorithm OBFPP: Homomorphic Encryption Algorithm OBFCEJO: Whitebox DES Provably Secure Obfuscation: It's Impossible (Sometimes)! A General Obfuscator Obfuscating Learnable Functions Proving that Obfuscation Is Impossible Discussion Provably Secure Obfuscation: Can It Be Saved? Overcoming Impossibility Definitions Revisited: Make Obfuscation Interactive Definition Revisited: Make Obfuscation Non-Semantics Preserving Discussion Dynamic Obfuscation Definitions Moving Code Around Algorithm OBFKMNM: Replacing Instructions OBFAG swap - Self-Modifying State Machine OBFMAMDSB: Dynamic Code Merging Encryption OBFCKSP: Code as Key Material OBFAGayp t : Combining Self-Modification and Encryption 6.4 Discussion Software Tamperproofing Definitions Checking for Tampering 406

6 7.1.2 Responding to Tampering System Design Introspection Algorithm TPCA: Checker Network Generating Hash Functions Algorithm TPHMST: Hiding Hash Values The Skype Obfuscated Protocol Algorithm REWOS: Attacking Self-Hashing Algorithms Discussion Algorithm TPTCJ: Response Mechanisms State Inspection Algorithm TPCVCPSJ: Oblivious Hash Functions Algorithm TPjJV: Overlapping Instructions Remote Tamperproofing Distributed Check and Respond Solution Strategies Algorithm TPZG: Slicing Functions Algorithm TPSLSPDK: Measuring Remote Hardware TPCNS: Continuous Replacement Discussion Software Watermarking History and Applications Applications Embedding a Mark in Audio Embedding a Mark in an Image Embedding a Mark in Natural-Language Text Watermarking Software Definitions Watermark Credibility Attacks Watermarking vs. Fingerprinting Watermarking by Permutation Algorithm WMDM: Reordering Basic Blocks Renumbering Algorithm WMQP: Improving Credibility Tamperproofing Watermarks Algorithm WMMC: Embedding Media Watermarks Improving Resilience Algorithm WMSHKQ: Statistical Watermarking Improving Stealth 505

7 xii Contents Algorithm WMMIMIT: Mapping Instructions Algorithm WMWS: Watermarks in CFGs Algorithm WMCC: Abstract Interpretation Steganographic Embeddings Algorithm WMASB: The Compiler as Embedder Splitting Watermark Integers Splitting a Large Mark into Small Pieces Redundant Watermark Pieces Sparse Codes for Increased Credibility Graph Codecs Oriented Parent-Pointer Tree Radix Graphs Permutation Graphs Planted Plane Cubic Trees Reducible Permutation Graphs Discussion Embedding Techniques Attack Models Dynamic Watermarking Algorithm WMCT: Exploiting Aliasing A Simple Example Recognition Problems Increasing Bitrate Increasing Resilience to Attack Increasing Stealth Discussion Algorithm WMNT: Exploiting Parallelism Embedding Watermarking Widgets Embedding Example Recognition Avoiding Pattern-Matching Attacks Tamperproofing Widgets Discussion Algorithm WUCCDKHLS pat h s : Expanding Execution Paths Encoding and Embedding Recognition Discussion Algorithm WMCCDKHLSb/: Tamperproofing Execution Paths Embedding Recognition 595

8 9.4.3 Tamperproonng the Branches Discussion Discussion Software Similarity Analysis Applications Clone Detection Software Forensics Plagiarism Detection Birthmark Detection Definitions Similarity Measures /k-gram-based Analysis SSSWAWINNOW-' Selecting k-gram Hashes SSSWAMOSS: Software Plagiarism Detection SSMCkgram^ k-gram Java Bytecode Birthmarks API-Based Analysis SSTNMM: Object-Oriented Birthmarks SSTONMM: Dynamic Function Call Birthmarks SSSDL: Dynamic -gram API Birthmarks Tree-Based Analysis SSEFM: AST-Based Clone Detection Graph-Based Analysis SSKH: PDG-Based Clone Detection SSLCHY: PDG-Based Plagiarism Detection SSMC wpp : Dynamic Whole Program Birthmarks Metrics-Based Analysis SSKK: Metrics-Based Clone Detection SSLM: Metrics-Based Authorship Analysis Discussion Hardware for Protecting Software Anti-Piracy by Physical Distribution Distribution Disk Protection Dongles and Tokens Authenticated Boot Using a Trusted Platform Module Trusted Boot Taking Measurements TheTPM The Challenge 677

9 xiv Contents Social Trust and Privacy Issues Applications and Controversies Encrypted Execution The XOM Architecture Preventing Replay Attacks Fixing a Leaky Address Bus Fixing a Leaky Data Bus Discussion Attacks on Tamperproof Devices Tapping the Bus The Microsoft XBOX Hack Injecting Ciphertext Dallas Semiconductor DS5002FP Hacking Smartcards Non-Invasive Attacks Board-Level Protection Discussion 711 Bibliography 713 Index 737

Winning the Hardware-Software Game

Winning the Hardware-Software Game Winning the Hardware-Software Game Using Game Theory to Optimize the Pace of New Technology Adoption Ruth D. Fisher PRENTICE Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal

More information

Software Protection through Code Obfuscation

Software Protection through Code Obfuscation Software Protection through Code Obfuscation Dissertation submitted in partial fulfillment of the requirements for the degree of Master of Technology, Computer Engineering by Aniket Kulkarni Roll No: 121022016

More information

The Data Access Handbook

The Data Access Handbook The Data Access Handbook Achieving Optimal Database Application Performance and Scalability John Goodson and Robert A. Steward PRENTICE HALL Upper Saddle River, NJ Boston Indianapolis San Francisco New

More information

Lecture 12: Software protection techniques. Software piracy protection Protection against reverse engineering of software

Lecture 12: Software protection techniques. Software piracy protection Protection against reverse engineering of software Lecture topics Software piracy protection Protection against reverse engineering of software Software piracy Report by Business Software Alliance for 2001: Global economic impact of software piracy was

More information

RFID Field Guide. Deploying Radio Frequency Identification Systems. Manish Bhuptani Shahram Moradpour. Sun Microsystems Press A Prentice Hall Title

RFID Field Guide. Deploying Radio Frequency Identification Systems. Manish Bhuptani Shahram Moradpour. Sun Microsystems Press A Prentice Hall Title RFID Field Guide Deploying Radio Frequency Identification Systems Manish Bhuptani Shahram Moradpour Sun Microsystems Press A Prentice Hall Title PRENTICE HALL PTR Prentice Hall Professional Technical Reference

More information

Second year review WP2 overview SW-based Method. Trento - October 17th, 2008

Second year review WP2 overview SW-based Method. Trento - October 17th, 2008 Second year review WP2 overview SW-based Method Trento - October 17th, 2008 1 Goal To investigate software-only methodologies for remote entrusting implementation 2 Tasks D2.3 D2.4 M0 M3 M6 M9 M12 M15

More information

Delivery. Enterprise Software. Bringing Agility and Efficiency. Global Software Supply Chain. AAddison-Wesley. Alan W. Brown.

Delivery. Enterprise Software. Bringing Agility and Efficiency. Global Software Supply Chain. AAddison-Wesley. Alan W. Brown. Enterprise Software Delivery Bringing Agility and Efficiency Global Software Supply Chain to the Alan W. Brown AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto

More information

Code Obfuscation Literature Survey

Code Obfuscation Literature Survey Code Obfuscation Literature Survey Arini Balakrishnan, Chloe Schulze CS701 Construction of Compilers, Instructor: Charles Fischer Computer Sciences Department University of Wisconsin, Madison December

More information

Introduction to Program Obfuscation

Introduction to Program Obfuscation Introduction to Program Obfuscation p. 1/26 Introduction to Program Obfuscation Yury Lifshits Saint-Petersburg State University http://logic.pdmi.ras.ru/ yura/ yura@logic.pdmi.ras.ru Introduction to Program

More information

Applications of obfuscation to software and hardware systems

Applications of obfuscation to software and hardware systems Applications of obfuscation to software and hardware systems Victor P. Ivannikov Institute for System Programming Russian Academy of Sciences (ISP RAS) www.ispras.ru Program obfuscation is an efficient

More information

Web Development with TIBCO General Interface

Web Development with TIBCO General Interface Web Development with TIBCO General Interface Building AJAX Clients for Enterprise SOA Anil Gurnani /TAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London

More information

Computer Organization

Computer Organization Computer Organization and Architecture Designing for Performance Ninth Edition William Stallings International Edition contributions by R. Mohan National Institute of Technology, Tiruchirappalli PEARSON

More information

Software Security. Building Security In. Gary McGraw. A Addison-Wesley

Software Security. Building Security In. Gary McGraw. A Addison-Wesley Software Security Building Security In Gary McGraw A Addison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid Capetown Sydney Tokyo Singapore

More information

Implementation of an Obfuscation Tool for C/C++ Source Code Protection on the XScale Architecture *

Implementation of an Obfuscation Tool for C/C++ Source Code Protection on the XScale Architecture * Implementation of an Obfuscation Tool for C/C++ Source Code Protection on the XScale Architecture * Seongje Cho, Hyeyoung Chang, and Yookun Cho 1 Dept. of Computer Science & Engineering, Dankook University,

More information

BIRT: A Field Guide to Reporting

BIRT: A Field Guide to Reporting BIRT: A Field Guide to Reporting x:.-. ^ 11 Diana Peh Alethea Hannemann Nola Hague AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Parts

More information

CHAINED EXPLOITS Advanced Hacking Attacks from Start to Finish

CHAINED EXPLOITS Advanced Hacking Attacks from Start to Finish CHAINED EXPLOITS Advanced Hacking Attacks from Start to Finish Andrew Whitaker Keatron Evans Jack B.Voth TT r\ Addison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal

More information

SharePoint 2010. Overview, Governance, and Planning. (^Rll^^fc^ i ip?"^biifiis:'iissiipi. Scott Jamison. Susan Hanley Mauro Cardarelli.

SharePoint 2010. Overview, Governance, and Planning. (^Rll^^fc^ i ip?^biifiis:'iissiipi. Scott Jamison. Susan Hanley Mauro Cardarelli. Ec,V$%fMM SharePoint 2010 i ip?"^biifiis:'iissiipi Overview, Governance, (^Rll^^fc^ and Planning Ipft^'" Scott Jamison Susan Hanley Mauro Cardarelli Upper Saddle River, NJ Boston Indianapolis San Francisco

More information

Network Security Essentials:

Network Security Essentials: Network Security Essentials: Applications and Standards Fifth Edition William Stallings International Editions contributions by B. R. Chandavarkar National Institute of Technology Karnataka, Surathkal

More information

k-gram Based Software Birthmarks

k-gram Based Software Birthmarks k-gram Based Software Birthmarks 2005 ACM Symposium on Applied Computing Ginger Myles Christian Collberg Department of Computer Science University of Arizona Tucson, AZ 85721 {mylesg,collberg}@cs.arizona.edu

More information

Cross-Platform. Mac OS X ЧЯУ

Cross-Platform. Mac OS X ЧЯУ Cross-Platform in C++ Mac OS X ЧЯУ Syd Logan Л А- зу Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Pans Madrid Cape Town Sydney Tokyo Singapore Mexico

More information

Code Obfuscation. Mayur Kamat Nishant Kumar

Code Obfuscation. Mayur Kamat Nishant Kumar Code Obfuscation Mayur Kamat Nishant Kumar Agenda Malicious Host Problem Code Obfuscation Watermarking and Tamper Proofing Market solutions Traditional Network Security Problem Hostile Network Malicious

More information

Building. Applications. in the Cloud. Concepts, Patterns, and Projects. AAddison-Wesley. Christopher M. Mo^ar. Cape Town Sydney.

Building. Applications. in the Cloud. Concepts, Patterns, and Projects. AAddison-Wesley. Christopher M. Mo^ar. Cape Town Sydney. Building Applications in the Cloud Concepts, Patterns, and Projects Christopher M. Mo^ar Upper Saddle River, NJ Boston AAddison-Wesley New York 'Toronto Montreal London Munich Indianapolis San Francisco

More information

Practical Intrusion Analysis

Practical Intrusion Analysis Practical Intrusion Analysis PREVENTION AND DETECTION FOR THE TWENTY-FIRST CENTURY Ryan Trost TT Ar Addison-Wesley Upper Saddle River, NJ Boston Indianapolis * San Francisco New York Toronto Montreal London

More information

Developer's Cookbook. Building Applications with. The Android. the Android SDK. A Addison-Wesley. James Steele Nelson To

Developer's Cookbook. Building Applications with. The Android. the Android SDK. A Addison-Wesley. James Steele Nelson To The Android Developer's Cookbook Building Applications with the Android SDK James Steele Nelson To A Addison-Wesley Upper Saddle River, NJ Boston «Indianapolis San Francisco New York Toronto Montreal London

More information

CRYPTOGRAPHY AND NETWORK SECURITY

CRYPTOGRAPHY AND NETWORK SECURITY CRYPTOGRAPHY AND NETWORK SECURITY PRINCIPLES AND PRACTICE SIXTH EDITION William Stallings International Edition contributions by Mohit P Tahiliani NITK Surathkal PEARSON Boston Columbus Indianapolis New

More information

Obfuscation: know your enemy

Obfuscation: know your enemy Obfuscation: know your enemy Ninon EYROLLES neyrolles@quarkslab.com Serge GUELTON sguelton@quarkslab.com Prelude Prelude Plan 1 Introduction What is obfuscation? 2 Control flow obfuscation 3 Data flow

More information

Enterprise. ESXi in the. VMware ESX and. Planning Deployment of. Virtualization Servers. Edward L. Haletky

Enterprise. ESXi in the. VMware ESX and. Planning Deployment of. Virtualization Servers. Edward L. Haletky VMware ESX and ESXi in the Enterprise Planning Deployment of Virtualization Servers Edward L. Haletky PRENTICE HALL Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London

More information

MIKE COHN. Software Development Using Scrum. VAddison-Wesley. Upper Saddle River, NJ Boston Indianapolis San Francisco

MIKE COHN. Software Development Using Scrum. VAddison-Wesley. Upper Saddle River, NJ Boston Indianapolis San Francisco Software Development Using Scrum MIKE COHN VAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid Cape Town Sydney Tokyo Singapore

More information

SOURCE CODE OBFUSCATION BY MEAN OF EVOLUTIONARY ALGORITHMS

SOURCE CODE OBFUSCATION BY MEAN OF EVOLUTIONARY ALGORITHMS SOURCE CODE OBFUSCATION BY MEAN OF EVOLUTIONARY ALGORITHMS Sébastien Martinez 2011 Tutor : Sébastien Varrette Advisor : Benoît Bertholon University of Luxembourg, Faculty of Sciences, Technologies and

More information

AGILE GAME DEVELOPMENT WITH SCRUM

AGILE GAME DEVELOPMENT WITH SCRUM AGILE GAME DEVELOPMENT WITH SCRUM CLINTON KEITH r A TT YAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid Capetown Sydney Tokyo

More information

BUSINESS AND PROFESSIONAL COMMUNICATION

BUSINESS AND PROFESSIONAL COMMUNICATION Fifth Edition BUSINESS AND PROFESSIONAL COMMUNICATION PLANS, PROCESSES, AND PERFORMANCE James R. DiSanza Idaho State University Nancy J. Legge Idaho State University Allyn & Bacon Boston Columbus Indianapolis

More information

Managing the Unmanageable

Managing the Unmanageable Managing the Unmanageable Rules, Tools, and Insights for Managing Software People and Teams MICKEY W. MANTLE RON LICHTY VVAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York

More information

Delivery. Continuous. Jez Humble and David Farley. AAddison-Wesley. Upper Saddle River, NJ Boston Indianapolis San Francisco

Delivery. Continuous. Jez Humble and David Farley. AAddison-Wesley. Upper Saddle River, NJ Boston Indianapolis San Francisco Continuous Delivery Jez Humble and David Farley AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid Cape Town Sydney Tokyo Singapore

More information

Learning HTML5 Game Programming

Learning HTML5 Game Programming Learning HTML5 Game Programming A Hands-on Guide to Building Online Games Using Canvas, SVG, and WebGL James L. Williams AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York

More information

What is Software Watermarking? Software Watermarking Through Register Allocation: Implementation, Analysis, and Attacks

What is Software Watermarking? Software Watermarking Through Register Allocation: Implementation, Analysis, and Attacks hat is Software atermarking? Software atermarking Through Register Allocation: Implementation, Analysis, and Attacks Ginger Myles Christian Collberg {mylesg,collberg}@cs.arizona.edu University of Arizona

More information

Domains and Competencies

Domains and Competencies Domains and Competencies DOMAIN I TECHNOLOGY APPLICATIONS CORE Standards Assessed: Computer Science 8 12 I VII Competency 001: The computer science teacher knows technology terminology and concepts; the

More information

Software Code Protection Through Software Obfuscation

Software Code Protection Through Software Obfuscation Software Code Protection Through Software Obfuscation Presented by: Sabu Emmanuel, PhD School of Computer Engineering Nanyang Technological University, Singapore E-mail: asemmanuel@ntu.edu.sg 20, Mar,

More information

JAVA r VOLUME II-ADVANCED FEATURES. e^i v it;

JAVA r VOLUME II-ADVANCED FEATURES. e^i v it; ..ui. : ' :>' JAVA r VOLUME II-ADVANCED FEATURES EIGHTH EDITION 'r.", -*U'.- I' -J L."'.!'.;._ ii-.ni CAY S. HORSTMANN GARY CORNELL It.. 1 rlli!>*-

More information

Social Media Marketing

Social Media Marketing Social Media Marketing Tracy L. Tuten East Carolina University Michael R. Solomon The University of Manchester (U.K.) Saint Josephs University Boston Columbus Indianapolis New York San Francisco Upper

More information

Building VPNs. Nam-Kee Tan. With IPSec and MPLS. McGraw-Hill CCIE #4307 S&

Building VPNs. Nam-Kee Tan. With IPSec and MPLS. McGraw-Hill CCIE #4307 S& Building VPNs With IPSec and MPLS Nam-Kee Tan CCIE #4307 S& -.jr."..- i McGraw-Hill New York Chicago San Francisco Lisbon London Madrid Mexico City Milan New Delhi San Juan Seoul Singapore Sydney Toronto

More information

Lecture 4 on Obfuscation by Partial Evaluation of Distorted Interpreters

Lecture 4 on Obfuscation by Partial Evaluation of Distorted Interpreters Lecture 4 on Obfuscation by Partial Evaluation of Distorted Interpreters Neil D. Jones DIKU, University of Copenhagen (prof. emeritus) Joint work with Roberto Giacobazzi and Isabella Mastroeni University

More information

Static Analysis of Virtualization- Obfuscated Binaries

Static Analysis of Virtualization- Obfuscated Binaries Static Analysis of Virtualization- Obfuscated Binaries Johannes Kinder School of Computer and Communication Sciences École Polytechnique Fédérale de Lausanne (EPFL), Switzerland Virtualization Obfuscation

More information

Cyber Attacks. Protecting National Infrastructure Student Edition. Edward G. Amoroso

Cyber Attacks. Protecting National Infrastructure Student Edition. Edward G. Amoroso Cyber Attacks Protecting National Infrastructure Student Edition Edward G. Amoroso ELSEVIER. AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY TOKYO Butterworth-Heinemann

More information

CONTEMPORARY DIRECT & INTERACTIVE MARKETING

CONTEMPORARY DIRECT & INTERACTIVE MARKETING SECOND EDITION CONTEMPORARY DIRECT & INTERACTIVE MARKETING Lisa D. Spiller Christopher Newport University Martin Baier Boston Columbus Indianapolis New York San Francisco Upper Saddle River Amsterdam Cape

More information

Security Metrics. A Beginner's Guide. Caroline Wong. Mc Graw Hill. Singapore Sydney Toronto. Lisbon London Madrid Mexico City Milan New Delhi San Juan

Security Metrics. A Beginner's Guide. Caroline Wong. Mc Graw Hill. Singapore Sydney Toronto. Lisbon London Madrid Mexico City Milan New Delhi San Juan Security Metrics A Beginner's Guide Caroline Wong Mc Graw Hill New York Chicago San Francisco Lisbon London Madrid Mexico City Milan New Delhi San Juan Seoul Singapore Sydney Toronto Contents FOREWORD

More information

DIGITAL RIGHTS MANAGEMENT SYSTEM FOR MULTIMEDIA FILES

DIGITAL RIGHTS MANAGEMENT SYSTEM FOR MULTIMEDIA FILES DIGITAL RIGHTS MANAGEMENT SYSTEM FOR MULTIMEDIA FILES Saiprasad Dhumal * Prof. K.K. Joshi Prof Sowmiya Raksha VJTI, Mumbai. VJTI, Mumbai VJTI, Mumbai. Abstract piracy of digital content is a one of the

More information

THE PSYCHOLOGY OF INVESTING

THE PSYCHOLOGY OF INVESTING Fourth Edition THE PSYCHOLOGY OF INVESTING John R. Nofsinger Washington State University Prentice Hall Boston Columbus Indianapolis New York San Francisco Upper Saddle River Amsterdam Cape Town Dubai London

More information

The Crossroads of Accounting & IT

The Crossroads of Accounting & IT The Crossroads of Accounting & IT Donna Kay, MBA, PhD, CPA, CITP Maryville University of Saint Louis Ali Ovlia, MS, DM Webster University Pearson Boston Columbus- Indianapolis New York San Francisco Upper

More information

Public Relations in Schools

Public Relations in Schools Public Relations in Schools Fifth Edition Theodore J. Kowalski University of Dayton Boston Columbus Indianapolis New York San Francisco Upper Saddle River Amsterdam Cape Town Dubai London Madrid Milan

More information

IMPROVEMENT THE PRACTITIONER'S GUIDE TO DATA QUALITY DAVID LOSHIN

IMPROVEMENT THE PRACTITIONER'S GUIDE TO DATA QUALITY DAVID LOSHIN i I I I THE PRACTITIONER'S GUIDE TO DATA QUALITY IMPROVEMENT DAVID LOSHIN ELSEVIER AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY TOKYO Morgan Kaufmann

More information

MULTIFACTOR AUTHENTICATION FOR SOFTWARE PROTECTION

MULTIFACTOR AUTHENTICATION FOR SOFTWARE PROTECTION Diyala Journal of Engineering Sciences Second Engineering Scientific Conference College of Engineering University of Diyala 16-17 December. 2015, pp. 479-492 ISSN 1999-8716 Printed in Iraq MULTIFACTOR

More information

Concurrent Programming

Concurrent Programming Concurrent Programming Principles and Practice Gregory R. Andrews The University of Arizona Technische Hochschule Darmstadt FACHBEREICH INFCRMATIK BIBLIOTHEK Inventar-Nr.:..ZP.vAh... Sachgebiete:..?r.:..\).

More information

Computer Security. Introduction to. Michael T. Goodrich Department of Computer Science University of California, Irvine. Roberto Tamassia PEARSON

Computer Security. Introduction to. Michael T. Goodrich Department of Computer Science University of California, Irvine. Roberto Tamassia PEARSON Introduction to Computer Security International Edition Michael T. Goodrich Department of Computer Science University of California, Irvine Roberto Tamassia Department of Computer Science Brown University

More information

Operating Systems Principles

Operating Systems Principles bicfm page i Operating Systems Principles Lubomir F. Bic University of California, Irvine Alan C. Shaw University of Washington, Seattle PEARSON EDUCATION INC. Upper Saddle River, New Jersey 07458 bicfm

More information

Audio and Video for the Internet

Audio and Video for the Internet RTP Audio and Video for the Internet Colin Perkins TT rvaddison-wesley Boston San Francisco New York Toronto Montreal London Munich Paris Madrid Capetown Sydney 'lokyo Singapore Mexico City CONTENTS PREFACE

More information

Software Configuration Management Patterns

Software Configuration Management Patterns Software Configuration Management Patterns Effective Teamwork, Practical Integration.Nded mftmeretnetz g, STEPHEN P. BERCZUK with BRAD APPLETON v%addison-wesley Boston San Fransisco New York Toronto Montreal

More information

Digital Rights Management

Digital Rights Management 2009 Levente Buttyán - piracy and DRM - basic model and architecture of DRM systems -MS Windows DRM -why DRM is bad? - content fingerprinting and watermarking - software protection techniques Introduction

More information

Building OpenSocial Apps

Building OpenSocial Apps Building OpenSocial Apps A Field Guide to Working with the MySpace Platform Chris Cole Chad Russell Jessica Whyte AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto

More information

Rapid System Prototyping with FPGAs

Rapid System Prototyping with FPGAs Rapid System Prototyping with FPGAs By R.C. Coferand Benjamin F. Harding AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY TOKYO Newnes is an imprint of

More information

How To Write A Web Framework In Java

How To Write A Web Framework In Java Seam Framework Experience the Evolution of Java ЕЕ Second Edition Michael Juntao Yuan Jacob Orshalick Thomas Heute PRENTICE HALL Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto

More information

JAVA 2 Network Security

JAVA 2 Network Security JAVA 2 Network Security M A R C O PISTOIA DUANE F. RELLER DEEPAK GUPTA MILIND NAGNUR ASHOK K. RAMANI PTR, UPPER http://www.phptr.com PRENTICE HALL SADDLE RIVER, NEW JERSEY 07458 Contents Foreword Preface

More information

Single Sign-On Secure Authentication Password Mechanism

Single Sign-On Secure Authentication Password Mechanism Single Sign-On Secure Authentication Password Mechanism Deepali M. Devkate, N.D.Kale ME Student, Department of CE, PVPIT, Bavdhan, SavitribaiPhule University Pune, Maharashtra,India. Assistant Professor,

More information

About the Authors Preface Acknowledgements List of Acronyms

About the Authors Preface Acknowledgements List of Acronyms Contents About the Authors Preface Acknowledgements List of Acronyms xiii xv xvii xix Part One Wireless Ad Hoc, Sensor and Mesh Networking 1 1 Introduction 3 1.1 Information Security 4 1.1.1 Computer Security

More information

Side Channel Analysis and Embedded Systems Impact and Countermeasures

Side Channel Analysis and Embedded Systems Impact and Countermeasures Side Channel Analysis and Embedded Systems Impact and Countermeasures Job de Haas Agenda Advances in Embedded Systems Security From USB stick to game console Current attacks Cryptographic devices Side

More information

Enterprise Java. Where, How, When (and When Not) to Apply Java in Client/Server Business Environments. Jeffrey Savit Sean Wilcox Bhuvana Jayaraman

Enterprise Java. Where, How, When (and When Not) to Apply Java in Client/Server Business Environments. Jeffrey Savit Sean Wilcox Bhuvana Jayaraman Enterprise Java Where, How, When (and When Not) to Apply Java in Client/Server Business Environments Jeffrey Savit Sean Wilcox Bhuvana Jayaraman McGraw-Hill j New York San Francisco Washington, D.C. Auckland

More information

Enterprise Integration Patterns

Enterprise Integration Patterns Enterprise Integration Patterns Designing, Building, and Deploying Messaging Solutions Gregor Hohpe Bobby Woolf With Contributions by Kyle Brown Conrad F. D'Cruz Martin Fowler Sean Neville Michael J. Rettig

More information

QUANTITATIVE METHODS. for Decision Makers. Mik Wisniewski. Fifth Edition. FT Prentice Hall

QUANTITATIVE METHODS. for Decision Makers. Mik Wisniewski. Fifth Edition. FT Prentice Hall Fifth Edition QUANTITATIVE METHODS for Decision Makers Mik Wisniewski Senior Research Fellow, Department of Management Science, University of Strathclyde Business School FT Prentice Hall FINANCIAL TIMES

More information

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53 Preface xvi Part I Introduction and System Engineering 1 Chapter 1 Introduction 2 1.1 What Is Software Engineering? 2 1.2 Why Software Engineering? 3 1.3 Software Life-Cycle Activities 4 1.3.1 Software

More information

Virtualization and Forensics

Virtualization and Forensics Virtualization and Forensics A Digital Forensic Investigator's Guide to Virtual Environments Diane Barrett Gregory Kipper Technical Editor Samuel Liles ELSEVIER AMSTERDAM BOSTON HEIDELBERG LONDON NEWYORK

More information

Copy protection through software watermarking and obfuscation

Copy protection through software watermarking and obfuscation Copy protection through software watermarking and obfuscation GERGELY EBERHARDT, ZOLTÁN NAGY SEARCH-LAB Ltd., {gergely.eberhardt, zoltan.nagy}@search-lab.hu ERNÔ JEGES, ZOLTÁN HORNÁK BME, Department of

More information

An Introduction to Object-Oriented Programming with

An Introduction to Object-Oriented Programming with An Introduction to Object-Oriented Programming with TM Java C. Thomas Wu Naval Postgraduate School Ml McGraw-Hill Boston Burr Ridge, IL Dubuque, IA Madison, WI New York San Francisco St. Louis Bangkok

More information

The D Programming Language

The D Programming Language The D Programming Language Andrei Alexandrescu v:addison-wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid Capetown Sydney Tokyo Singapore

More information

Agile Methods. Introduction to. AAddison-Wesley. Sondra Ashmore, Ph.D. Kristin Runyan. Capetown Sydney Tokyo Singapore Mexico City

Agile Methods. Introduction to. AAddison-Wesley. Sondra Ashmore, Ph.D. Kristin Runyan. Capetown Sydney Tokyo Singapore Mexico City Introduction to Agile Methods Sondra Ashmore, Ph.D. Kristin Runyan AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Mad Capetown Sydney

More information

Database. Administration. The Complete. and Procedures. Guide to DBA Practices. AAddison-Wesley. Second Edition. Mullins

Database. Administration. The Complete. and Procedures. Guide to DBA Practices. AAddison-Wesley. Second Edition. Mullins Database Administration The Complete Guide to DBA Practices and Procedures Second Edition Craig S. Mullins AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal

More information

CONTENTS AT A GMi#p. Chapter I Ethical Hacking Basics I Chapter 2 Cryptography. Chapter 3 Reconnaissance: Information Gathering for the Ethical Hacker

CONTENTS AT A GMi#p. Chapter I Ethical Hacking Basics I Chapter 2 Cryptography. Chapter 3 Reconnaissance: Information Gathering for the Ethical Hacker ALL ElNis ONE CEH Certified Ethical Hacker EXAM GUIDE Matt Walker Mc Grain/ New York Chicago San Francisco Lisbon London Madrid Mexico City Milan New Delhi San Juan Seoul Singapore Sydney Toronto McGraw-Hill

More information

Secure Data transfer in Cloud Storage Systems using Dynamic Tokens.

Secure Data transfer in Cloud Storage Systems using Dynamic Tokens. Secure Data transfer in Cloud Storage Systems using Dynamic Tokens. P.Srinivas *,K. Rajesh Kumar # M.Tech Student (CSE), Assoc. Professor *Department of Computer Science (CSE), Swarnandhra College of Engineering

More information

Network Security Using Job Oriented Architecture (SUJOA)

Network Security Using Job Oriented Architecture (SUJOA) www.ijcsi.org 222 Network Security Using Job Oriented Architecture (SUJOA) Tariq Ahamad 1, Abdullah Aljumah 2 College Of Computer Engineering & Sciences Salman Bin Abdulaziz University, KSA ABSTRACT In

More information

The Designer's Guide to VHDL

The Designer's Guide to VHDL The Designer's Guide to VHDL Third Edition Peter J. Ashenden EDA CONSULTANT, ASHENDEN DESIGNS PTY. LTD. ADJUNCT ASSOCIATE PROFESSOR, ADELAIDE UNIVERSITY AMSTERDAM BOSTON HEIDELBERG LONDON m^^ yj 1 ' NEW

More information

Security for Computer Networks

Security for Computer Networks Security for Computer Networks An Introduction to Data Security in Teleprocessing and Electronic Funds Transfer D. W. Davies Consultant for Data Security and W. L. Price National Physical Laboratory, Teddington,

More information

Man at the end (MATE) attacks are an understudied

Man at the end (MATE) attacks are an understudied E X P E R T O P I N I O N Editor: Fei-Yue Wang, Chinese Academy of Sciences, feiyue@ieee.org Toward Digital Asset Protection Christian Collberg, University of Arizona Jack Davidson, University of Virginia

More information

Securing the Cloud. Cloud Computer Security Techniques and Tactics. Vic (J.R.) Winkler. Technical Editor Bill Meine ELSEVIER

Securing the Cloud. Cloud Computer Security Techniques and Tactics. Vic (J.R.) Winkler. Technical Editor Bill Meine ELSEVIER Securing the Cloud Cloud Computer Security Techniques and Tactics Vic (J.R.) Winkler Technical Editor Bill Meine ELSEVIER AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO

More information

Contents. vii. Preface. P ART I THE HONEYNET 1 Chapter 1 The Beginning 3. Chapter 2 Honeypots 17. xix

Contents. vii. Preface. P ART I THE HONEYNET 1 Chapter 1 The Beginning 3. Chapter 2 Honeypots 17. xix Honeynet2_bookTOC.fm Page vii Monday, May 3, 2004 12:00 PM Contents Preface Foreword xix xxvii P ART I THE HONEYNET 1 Chapter 1 The Beginning 3 The Honeynet Project 3 The Information Security Environment

More information

Poisoning Network Visibility in Software-Defined Networks: New Attacks and Countermeasures Sungmin Hong, Lei Xu, Haopei Wang, Guofei Gu

Poisoning Network Visibility in Software-Defined Networks: New Attacks and Countermeasures Sungmin Hong, Lei Xu, Haopei Wang, Guofei Gu Poisoning Network Visibility in Software-Defined Networks: New Attacks and Countermeasures Sungmin Hong, Lei Xu, Haopei Wang, Guofei Gu Presented by Alaa Shublaq SDN Overview Software-Defined Networking

More information

Maximum vsphere. Tips, How-Tos,and Best Practices for. Working with VMware vsphere 4. Eric Siebert. Simon Seagrave. Tokyo.

Maximum vsphere. Tips, How-Tos,and Best Practices for. Working with VMware vsphere 4. Eric Siebert. Simon Seagrave. Tokyo. Maximum vsphere Tips, How-Tos,and Best Practices for Working with VMware vsphere 4 Eric Siebert Simon Seagrave PRENTICE HALL Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal

More information

The Case for Dynamic Digital Asset Protection Techniques

The Case for Dynamic Digital Asset Protection Techniques The Case for Dynamic Digital Protection Techniques Christian Collberg Department of Computer Science University of Arizona collberg@cs.arizona.edu June 1, 2011 Abstract Static defenses of digital assets,

More information

BUSINESS INTELLIGENCE

BUSINESS INTELLIGENCE SECOND EDITION BUSINESS INTELLIGENCE A MANAGERIAL APPROACH INTERNATIONAL EDITION Efraim Turban University of Hawaii Ramesh Sharda Oklahoma State University Dursun Deleii Oklahoma State University David

More information

Designing Interactive Systems

Designing Interactive Systems THIRD EDITION Designing Interactive Systems A comprehensive guide to HCl, UX and interaction design David Benyon PEARSON Harlow, England London * New York Boston San Francisco Toronto Sydney * Auckland

More information

e-code Academy Information Security Diploma Training Discerption

e-code Academy Information Security Diploma Training Discerption e-code Academy Information Security Diploma Training 2015 I. CONTENTS II. INTRODUCTION... 2 OVERVIEW... 2 COPYRIGHTS AND TRADEMARKS... 2 III. OBJECTIVE... 3 LIST OF POSTGRADUATE COURSES... 3 FIRST SEMESTER

More information

Hacking Web Apps. Detecting and Preventing Web Application Security Problems. Jorge Blanco Alcover. Mike Shema. Technical Editor SYNGRESS

Hacking Web Apps. Detecting and Preventing Web Application Security Problems. Jorge Blanco Alcover. Mike Shema. Technical Editor SYNGRESS Hacking Web Apps Detecting and Preventing Web Application Security Problems Mike Shema Technical Editor Jorge Blanco Alcover AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO

More information

Performance Management

Performance Management Third Edition A "2.T4 %4if. Oo$ Performance Management Herman Aguinis Kelley School of Business Indiana University PEARSON Boston Columbus Indianapolis New York San Francisco Upper Saddle River Amsterdam

More information

Software Reverse Engineering

Software Reverse Engineering Software Reverse Engineering Jacco Krijnen June 19, 2013 Abstract While reverse engineering probably started with the analysis of hardware, today it plays a significant role in the software world. We discuss

More information

ENTERPRISE SYSTEMS FOR MANAGEMENT

ENTERPRISE SYSTEMS FOR MANAGEMENT I I Second Edition ENTERPRISE SYSTEMS FOR MANAGEMENT Luvai F. Motiwalla University of Massachusetts Lowell and Jeff Thompson Oracle Consulting PEARSON Boston Columbus Indianapolis New York San Francisco

More information

Advanced compiler construction. General course information. Teacher & assistant. Course goals. Evaluation. Grading scheme. Michel Schinz 2007 03 16

Advanced compiler construction. General course information. Teacher & assistant. Course goals. Evaluation. Grading scheme. Michel Schinz 2007 03 16 Advanced compiler construction Michel Schinz 2007 03 16 General course information Teacher & assistant Course goals Teacher: Michel Schinz Michel.Schinz@epfl.ch Assistant: Iulian Dragos INR 321, 368 64

More information

E-commerce. Security. Learning objectives. Internet Security Issues: Overview. Managing Risk-1. Managing Risk-2. Computer Security Classifications

E-commerce. Security. Learning objectives. Internet Security Issues: Overview. Managing Risk-1. Managing Risk-2. Computer Security Classifications Learning objectives E-commerce Security Threats and Protection Mechanisms. This lecture covers internet security issues and discusses their impact on an e-commerce. Nov 19, 2004 www.dcs.bbk.ac.uk/~gmagoulas/teaching.html

More information

Watermarking, Tamper-Proofing, and ObfuscationÐTools for Software Protection

Watermarking, Tamper-Proofing, and ObfuscationÐTools for Software Protection 2002 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or

More information