Cryptor - protegez vos codes sources !

Description

un big up à Kazma qui m'a donné cette idée,

le but de ce programme est de pouvoir crypter ses sources HTML & javascript, sans que l'on puisse à un moment pouvoir visualiser le code source !

le principe est le suivant :
on crypte la page HTML grâce au programme "page_Cryptor.html", on suit les instructions pour la création d'un fichier js.
la page index.html permet de décrypter et d'afficher la page de ce fichier js.

Ce n'est qu'un début ! juste un -proof of concept-, il y'a pas mal d'amélioration que l'on peut apporter, à la base je voulais juste savoir si ce genre de programme était possible, et la réponse est OUI !

le fichier "CppZficGKng0ssnixuRTcPeF.js" correspond au fichier "source.html" qui a été crypté (le fichier original est dans le dossier "source").

Sans le mot de passe, impossible de continuer, même en regardant le code source :)
on peut toujours faire du reverse engineering mais ça risque de prendre un certain temps, j'utilise un algorithme RC4 à 128 bits !

le mot de passe est :
master-killer

Source / Exemple :


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<script src="src/md5.js" language="javascript"></script>
<script src="src/decryptor.js" language="javascript"></script>
<script>
var slc_crypte="",pass="";

function chargementJs(page)
{
	var js_elmt=document.createElement("script");
	js_elmt.setAttribute("type", "text/javascript");
	js_elmt.setAttribute("src", page);
	document.getElementsByTagName("head")[0].appendChild(js_elmt);
	return 1;
}

function charger(page)
{
pass=document.getElementById("slcPass").value;
fichier = decrypt_text(page,pass);
if (fichier.search('\.html') >=0)
	{
	chargementJs(page+'.js');
	}
	else
	{
	alert("ce n'est pas le bon mot de passe !");	
	}
}

function getInfo(src)
{

htm="";
for (e in src)
htm+=e+":"+src[e]+"<br/>";
document.getElementById("debug_").innerHTML=htm;
}

function loadCrypte()
{
	newBody = document.createElement("body");
	newBody.innerHTML = decrypt_text(slc_crypte,pass);
	//getInfo(document.body);
	if (document.all)
	{
		document.body.replaceNode(newBody);
	} else
	{
		document.body = newBody;
	}
	//
}

</script>
</head>
<body>
<center><br/>
nom du fichier js: <input type="text" id="fichierNom" value="CppZficGKng0ssnixuRTcPeF" style="width:250px"><br/><br/>
<b>entrer le mot de passe :</b><br/><br/>
password : <input type="password" id="slcPass"><button onclick="charger(document.getElementById('fichierNom').value);">valider</button><br/><br/>
<br/><br/>
<div id="debug_"></div>
</center>
</body>
</html>

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.