<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://debianws.lexgopc.com/wiki143/index.php?action=history&amp;feed=atom&amp;title=Code_morphing</id>
	<title>Code morphing - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://debianws.lexgopc.com/wiki143/index.php?action=history&amp;feed=atom&amp;title=Code_morphing"/>
	<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Code_morphing&amp;action=history"/>
	<updated>2026-05-04T20:50:54Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>http://debianws.lexgopc.com/wiki143/index.php?title=Code_morphing&amp;diff=2461077&amp;oldid=prev</id>
		<title>imported&gt;Citation bot: Add: isbn, pages, date. | Use this bot. Report bugs. | Suggested by Dominic3203 | Category:Source code | #UCB_Category 51/70</title>
		<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Code_morphing&amp;diff=2461077&amp;oldid=prev"/>
		<updated>2024-11-05T01:03:38Z</updated>

		<summary type="html">&lt;p&gt;Add: isbn, pages, date. | &lt;a href=&quot;/wiki143/index.php?title=En:WP:UCB&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;En:WP:UCB (page does not exist)&quot;&gt;Use this bot&lt;/a&gt;. &lt;a href=&quot;/wiki143/index.php?title=En:WP:DBUG&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;En:WP:DBUG (page does not exist)&quot;&gt;Report bugs&lt;/a&gt;. | Suggested by Dominic3203 | &lt;a href=&quot;/wiki143/index.php?title=Category:Source_code&quot; title=&quot;Category:Source code&quot;&gt;Category:Source code&lt;/a&gt; | #UCB_Category 51/70&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Short description|Approach used in obfuscating software}}&lt;br /&gt;
{{more citations needed|date=January 2021}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Code morphing&amp;#039;&amp;#039;&amp;#039; is an approach used in [[obfuscating software]] to protect [[software]] applications from [[reverse engineering]], [[analysis]], modifications, and cracking. This technology protects intermediate level code such as compiled from Java and .NET languages ([[Oxygene (programming language)|Oxygene]], [[C Sharp (programming language)|C#]], [[Visual Basic]], etc.) rather than binary [[object file|object code]]. Code morphing breaks up the protected code into several processor commands or small command snippets and replaces them by others, while maintaining the same end result. Thus the protector obfuscates the code at the intermediate level.&amp;lt;ref&amp;gt;{{Cite journal|title=The Transmeta Code Morphing™ Software: using speculation, recovery, and adaptive retranslation to address real-life challenges|url=https://dl.acm.org/doi/10.5555/776261.776263|journal=CGO &amp;#039;03: Proceedings of the International Symposium on Code Generation and Optimization: Feedback-directed and Runtime Optimization|date=23 March 2003 |pages=15–24 |isbn=978-0-7695-1913-5 |via=ACM}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Code morphing is a multilevel technology containing hundreds of unique code transformation patterns. In addition this technology transforms some intermediate layer commands into [[virtual machine]] commands (like [[P-code_machine|p-code]]). Code morphing does not protect against runtime tracing, which can reveal the execution logic of any protected code.&lt;br /&gt;
&lt;br /&gt;
Unlike other code protectors, there is no concept of code [[Cryptography|decryption]] with this method.  Protected code blocks are always in the executable state, and they are executed (interpreted) as transformed code. The original intermediate code is absent to a certain degree, but deobfuscation can still give a clear view of the original code flow.&lt;br /&gt;
&lt;br /&gt;
Code morphing is also used to refer to the [[just-in-time compilation]] technology used in [[Transmeta]] processors such as the [[Transmeta Crusoe|Crusoe]] and [[Transmeta Efficeon|Efficeon]] to implement the [[x86]] instruction set architecture.&lt;br /&gt;
&lt;br /&gt;
Code morphing is often used in obfuscating the [[copy protection]] or other checks that a program makes to determine whether it is a valid, authentic installation, or an [[Copyright infringement of software|unauthorized copy]], in order to make the removal of the copy-protection code more difficult than would otherwise be the case.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
* [[Intermediate language]]&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
{{Reflist}}&lt;br /&gt;
&lt;br /&gt;
{{DEFAULTSORT:Code Morphing}}&lt;br /&gt;
[[Category:Software obfuscation]]&lt;br /&gt;
[[Category:Source code]]&lt;br /&gt;
[[Category:Warez]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Citation bot</name></author>
	</entry>
</feed>