Book section Open Access

Can a Program Reverse-Engineer Itself?

Amarilli, Antoine; Naccache, David; Rauzy, Pablo; Simion, Emil


DataCite XML Export

<?xml version='1.0' encoding='utf-8'?>
<resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://datacite.org/schema/kernel-4" xsi:schemaLocation="http://datacite.org/schema/kernel-4 http://schema.datacite.org/meta/kernel-4.1/metadata.xsd">
  <identifier identifierType="URL">https://zenodo.org/record/32155</identifier>
  <creators>
    <creator>
      <creatorName>Amarilli, Antoine</creatorName>
      <givenName>Antoine</givenName>
      <familyName>Amarilli</familyName>
      <nameIdentifier nameIdentifierScheme="ORCID" schemeURI="http://orcid.org/">0000-0002-7977-4441</nameIdentifier>
    </creator>
    <creator>
      <creatorName>Naccache, David</creatorName>
      <givenName>David</givenName>
      <familyName>Naccache</familyName>
      <nameIdentifier nameIdentifierScheme="ORCID" schemeURI="http://orcid.org/">0000-0002-8651-6555</nameIdentifier>
    </creator>
    <creator>
      <creatorName>Rauzy, Pablo</creatorName>
      <givenName>Pablo</givenName>
      <familyName>Rauzy</familyName>
      <nameIdentifier nameIdentifierScheme="ORCID" schemeURI="http://orcid.org/">0000-0002-6293-3231</nameIdentifier>
    </creator>
    <creator>
      <creatorName>Simion, Emil</creatorName>
      <givenName>Emil</givenName>
      <familyName>Simion</familyName>
    </creator>
  </creators>
  <titles>
    <title>Can a Program Reverse-Engineer Itself?</title>
  </titles>
  <publisher>Zenodo</publisher>
  <publicationYear>2011</publicationYear>
  <dates>
    <date dateType="Issued">2011-01-01</date>
  </dates>
  <resourceType resourceTypeGeneral="Text">Book section</resourceType>
  <alternateIdentifiers>
    <alternateIdentifier alternateIdentifierType="url">https://zenodo.org/record/32155</alternateIdentifier>
  </alternateIdentifiers>
  <relatedIdentifiers>
    <relatedIdentifier relatedIdentifierType="DOI" relationType="IsIdenticalTo">10.1007/978-3-642-25516-8_1</relatedIdentifier>
  </relatedIdentifiers>
  <rightsList>
    <rights rightsURI="https://creativecommons.org/licenses/by/4.0/legalcode">Creative Commons Attribution 4.0 International</rights>
    <rights rightsURI="info:eu-repo/semantics/openAccess">Open Access</rights>
  </rightsList>
  <descriptions>
    <description descriptionType="Abstract">Shape-memory alloys are metal pieces that &amp;quot;remember&amp;quot; their original cold-forged shapes and return to the pre-deformed shape after heating. In this work we construct a software analogous of shape-memory alloys: programs whose code resists obfuscation. We show how to pour arbitrary functions into protective envelops that allow recovering the functions' exact initial code after obfuscation. We explicit the theoretical foundations of our method and provide a concrete implementation in Scheme.</description>
  </descriptions>
</resource>
115
49
views
downloads
Views 115
Downloads 49
Data volume 15.4 MB
Unique views 107
Unique downloads 49

Share

Cite as