Creating Transformations for Matrix Obfuscation

  • Stephen Drape
  • Irina Voiculescu
Conference paper

DOI: 10.1007/978-3-642-03237-0_19

Part of the Lecture Notes in Computer Science book series (LNCS, volume 5673)
Cite this paper as:
Drape S., Voiculescu I. (2009) Creating Transformations for Matrix Obfuscation. In: Palsberg J., Su Z. (eds) Static Analysis. SAS 2009. Lecture Notes in Computer Science, vol 5673. Springer, Berlin, Heidelberg

Abstract

There are many programming situations where it would be convenient to conceal the meaning of code, or the meaning of certain variables. This can be achieved through program transformations which are grouped under the term obfuscation. Obfuscation is one of a number of techniques that can be employed to protect sensitive areas of code. This paper presents obfuscation methods for the purpose of concealing the meaning of matrices by changing the pattern of the elements.

We give two separate methods: one which, through splitting a matrix, changes its size and shape, and one which, through a change of basis in a ring of polynomials, changes the values of the matrix and any patterns formed by these. Furthermore, the paper illustrates how matrices can be used in order to obfuscate a scalar value. This is an improvement on previous methods for matrix obfuscation because we will provide a range of techniques which can be used in concert.

This paper considers obfuscations as data refinements. Thus we consider obfuscations at a more abstract level without worrying about implementation issues. For our obfuscations, we can construct proofs of correctness easily. We show how the refinement approach enables us to generalise and combine existing obfuscations. We then evaluate our methods by considering how our obfuscations perform under certain relevant program analysis-based attacks.

Keywords

Obfuscation Matrix Operations Information Hiding Program Transformations 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Stephen Drape
    • 1
  • Irina Voiculescu
    • 1
  1. 1.Computing LaboratoryOxford UniversityOxfordUK

Personalised recommendations