Skip to content

Instantly share code, notes, and snippets.

@webdev23
Last active December 18, 2015 04:58
Show Gist options
  • Save webdev23/5728800 to your computer and use it in GitHub Desktop.
Save webdev23/5728800 to your computer and use it in GitHub Desktop.
This sources are simplified version of http://cryptop.at website. This tools allow to generate and read specials (smalls) messages encrypted with SERPENT 256bits (or another mcrypt supported algorythm like AES, TWOFISH..) and a private key. Specially made for be simple but with a very high privacy level.
This sources are simplified version of http://cryptop.at website.
This tools allow to generate and read specials (smalls) messages encrypted with SERPENT 256bits
(or another mcrypt supported algorythm like AES, TWOFISH..) and a private key.
Specially made for be simple but with a very high privacy level.
The reader and the writer don't needs any additionnal software or plugin for use it, just a
html5 compatible browser.
Encryption and decryption are made on client-side with javascript, so it can also be used
offline, clear datas are never sent or backed-up, by this way an ssl certificat is not need
for use it peacefuly.
Messages can be created with a rich editor (tinymce) It allow drag and drop pasting for images
only with firefox. Images are coded into base64, so they are NOT called somewhere in internet,
they are really hidden and included into the message.
[Working Beta] A special drag & drop zone allow any decent browser to include any kind of smalls
files within the message, they will be converted into base64 dataURI formatting.
This tool is stable at this time with a total message size lower than 1,4MB wich is enough
for explicits threads.
[Working Beta] Encrypted messages can be loaded or downloaded into a .txt file, for avoid lagging
with big raw data copying/pasting.. (like more than 1mb) This can increase the message size
up to 10MB. In this case the crypting/decrypting process could be longer than 1 minute.
Sharing multiples files is faster and recommended using a .zip archive.
Crypted messages can be sent by email using writer email (mailto..), for better privacy..
There is a natural limitation of the mailto url size, depending of the mail client used.
This limit is always less than 64000 caracters, so it can include only text on this case.
This script is made using html5, javascript, css3, php5.
And of course some open-sources ressources :) :
-Cryptoxi
-Mcrypt
-Tinymce
-Base64 drag &drop
-jquery
-(..)
<html>
<head>
<style>
body {
background-color:#000;
color:#12C931;
background-image:url(data:image/jpeg;base64,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oC4xRk4p3l8cHNI/3uKfnYoFACeWMHB5FMCk9BUmcAn1oJAxzigBAMR/dyabtI5Ip5PAx60Dvk5oEJIucYFJtUoSOop2fmH0po6PQMbsb0qTGI+lA6jNI5+X8aA3Gou7rTio2DA5oXjFKTx+NAiLHOKcybQOacRls0HkDNA7jfLPHvQUIGafngUhOQcUAR0u04zinYUYGKM/K1ADdpxmkqQ8qKbt9DQA3pShiOhpzfMBTMHNAC729aXe2RzSAZNBXFADiynqKFZVOaZjNFAWHlwTyOKeSMg1DjFFAWJRkOT2NBO1T3qMMR3pd5oAkznBFISC2COtM34GAKXIJBoAOVbApxG5eetMY5PFKCe9ACnaoHFNKjGVpW5FIh60AIFJGaQgjrTx0xQfu80AMop+eKQgYyKBiBiO9AYikooAeHGc4pd4LVHRQKxLnmkfsR1qOl3GgLDt24cindFqMNigkmgBVI5zS/KT0pqnBpSaAEZcUuR6UHkU2gYuAelJjFKKDQAlFBooAKUUlFAC5ANKWFNooAdvNNyfWiigApQpNCjmnMfQ0AMIxSqu6kAzUgNAhMYbinPzxTAfmJo6tQAjLt70qjHJpSRRkGgGOb7uKQDkAdKazelIGNAWJepz6UwZ3ZJpu40maAJPMGTTcr6U2igLChivSjcfWgDNJQMKKMUoHNACYPpRjmnbjSCgQEYpycGk70A9aBjvcDmlzzTM9AKM80CFOGBpF9zRnjFIMCgB7H5TSLwv1pu6jNAD9x3Y7UhJxxTdxpMmgCTOaQ8rimUUAOLYGBQGGBTaKBjtwzmjdTaKAFJzS76bRQAu6l3mm0UALuNJng+9FFAC7jQWyKSigBQxFLuptFACljml3cU2igB26jIGabRQA480g4zSUUAO7UDg02jNADieKXNMzRmgB2aTtxSUUAKDijqaSigB2cik4pKKAFOMUlFFABRRRQAUZNFFAADilzSUUALmgcUlFAC5ozxSUUALmkoooAUGikooAKKKKACiiigAooooAM0UUUAGaKKKACiiigAooooAUChutFFAgFLRRQMBTT1oooAXtS9qKKBAOlFFFADaKKKBhRRRQAUCiigBTSUUUAKKKKKACiiigAooooAKSiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA//2Q==);
background-size:1174px 723px;
background-position:50% 38%;
background-repeat:no-repeat;
background-attachment:fixed;
margin-left:20px !important;
}
A:link {color: red;}
A:visited {color: red;}
A:active {color: red;}
A:hover {color: red;}
textarea, .keytext, .idtext, #log, #mysql, .mysqlform, .view {
border:dashed #12C931 1px;
background-color:#000;
color:#12C931;
}
.h5 { color:#FFFF00;
text-shadow:
#000 1px 1px,
#000 -1px 1px,
#000 -1px -1px,
#000 1px -1px;
font-size:1.6em;
top:10px;
display:inline;
font-style:italic;
font-weight:bold;
position:relative;
bottom:8px;
}
.keybox {
font-size:23px;
float:left;
padding-left:120px;
}
.idbox {
margin-left:50%;
}
.top {
margin-bottom:50px;
margin-left:50px;
}
#crypt, #decrypt {
width:100%;
}
.retrievebutton {
margin-left:15px;
}
#crypttext {
float:left;
width:49%;
padding-right:10px;
}
#decrypttext {
padding-left:20%;
width:380px;
}
.view {
word-wrap: break-word;
margin-top:30px;
width:47%;
min-height:300px;
margin-left:150px;
padding-left:150px;
filter : alpha(opacity=99);
opacity : 0.90;
}
.crypted {
float:left;
padding-right:10px;
}
#decrypted {
padding: 50px 120px 50px 126px;
width:55%;
font-size:22px;
}
.button {
width:100%;
float:left;
margin-top:20px;
}
.buttons {
width:49%;
float:right;
margin-bottom:10px;
}
.stats {
width:49%;
float:left;
}
#log {
overflow:auto;
margin-top:40px;
height:10.2em;
font-size:11px;
padding:5px;
float:left;
}
#mysql {
overflow:auto;
float:right;
margin-top:25px;
height:10.2em;
font-size:11px;
}
.mysqlform {
font-size:10px;
}
table td{
font-size:11px;
}
.custommysql {
display:none;
}
@media only screen and (min-width: 480px) {
body {
padding-left: 50px;
}
}
</style>
<script src="jquery.js"></script>
<link href="favicon.ico" rel="icon" type="image/x-icon" />
<link type="text/css" rel="stylesheet" href="0bin-green.css" />
<script src="js/chili.js"></script>
<script src="js/jq_blockUi.js"></script>
<title>CRYPTOPAT</title>
</head>
<body onload="document.getElementById('key').focus()">
<div style="margin-left:190px;">
<div id="aboutbox">
Lire et g&eacute;n&eacute;rer un message chiffr&eacute;. Le chiffrement est SERPENT_256-bits.
<br />
<span style="text-decoration:blink;font-size:10pt;color:#FFFF00;">&#9654;</span>Vous pouvez <a href="info-generation.php">g&eacute;n&eacute;rer votre message crypt&eacute; ici.</a><ul>
<span style="ont-size:10pt;color:#FF0000;">&#9654;</span>Il est impossible de d&eacute;crypter un tel message &agrave; ce jour sans sa cl&eacute; priv&eacute;e.<ul>
<span style="font-size:10pt;color:#a4b3c4;">&#9654;</span>Aucunes informations ne sont stock&eacute;es par ce site.<ul>
<span style="font-size:10pt;color:#12C931;">&#9654;</span>Vous pouvez stocker des notes et cr&eacute;er des discussions sur <a href="http://www.crypt-info.tk">crypt-info.tk</a>.
</div>
<h1 title="" onclick="window.location.href=scriptLocation();return false;">CRYPTOP.AT</h1><br>
<h4 style="max-width:360px;">Crypter et d&eacute;crypter un message.</h4><br>
<h3>Serpent_256-bits for paranoids and free people.</h3><br>
</div>
<div>&nbsp;</div>
<p>&nbsp;</p>
<div class="top">
<div class="keybox" style="margin-left:190px;">
<span class="key" style="margin-left:-140px;color:#000; background-color:#12C931;border-radius:2px;font-size:28px;text-shadow: -3px 0 yellow, 0 3px yellow, 3px 0 yellow, 0 -3px yellow;">&nbsp;&hearts;&nbsp;Cl&eacute; priv&eacute;e:&nbsp;</span>
<input onFocus="clearText(this);" autocomplete="off" type="text" class="keytext" id="key" name="key" value="" style="filter : alpha(opacity=70);opacity : 0.70;"/>
</div><p>&nbsp;</p>
</div>
<div>
<div id="decrypttext" style="padding-left:25%; font-size:22px;color:yellow;font-style:italic;>">Entrer votre message &agrave; d&eacute;crypter:<br><textarea autocomplete="off" style="filter : alpha(opacity=80);opacity : 0.80; margin-top:10px;height: 320px; margin-left: 100px; margin-top: 20px; max-height: 380px; max-width: 142%; min-width: 138%; min-height: 350px; width: 140%;" type="text" id="decrypt" name="encrypt" rows="10" cols="30"></textarea><table><tr><td style="padding:12 0 0 212;font-size:18px;color:yellow;font-style:italic; ">&nbsp;&nbsp;&nbsp;..ou charger depuis un fichier <strong style="font-size:20px;">.txt:<input style="color:green;float:right" type="file" id="fileToLoad"><td><button style="margin-top:33px;float:right;color:#000; background-color:#12C931;border-radius:5px;font-size:20px;text-shadow: -3px 0 yellow, 0 3px yellow, 3px 0 yellow, 0 -3px yellow;" onclick="loadFileAsText()">Charger</a></table></div>
<div style="padding:20px 0 0 700;font-size:22px;">
<div >
<input style="color:#000; background-color:#12C931;border-radius:5px;font-size:28px;text-shadow: -3px 0 yellow, 0 3px yellow, 3px 0 yellow, 0 -3px yellow;" id="button" type="button" text="Decrypter" value="D&eacute;crypter!"/>
</div>
</p>
</div>
</div>
<div class="view" id="decrypted" style="margin-left:190px;">Le texte en clair sera ici.</div>
<script language="javascript">
$('#readme').load('README.txt');
//$('#mysql').prepend('Click this box to enter custom MySql db information.<br/>');
function Log(msg) {
$('#log').prepend('@' + time() + ': ' + msg+'<br/>');
}
function testhex1(test) {
var alNumRegex = /^([a-fA-F0-9]+)$/; //only letters and numbers
if (alNumRegex.test(test) || test == '') {
return true; }
else {
$('#decrypt').val(test.replace(/[^a-fA-F 0-9]+/g,'').replace(/ /g,''));
return false;
}
}
function testhex(test) {
var alNumRegex = /^([a-fA-F0-9]+)$/; //only letters and numbers
if (alNumRegex.test(test)) {
return true; }
else {
return false;
}
}
function clearText(field) {
if (field.defaultValue == field.value) field.value = '';
//else if (field.value == '') field.value = field.defaultValue;
}
function time() {
var foo = new Date; // Generic JS date object
var unixtime_ms = foo.getTime(); // Returns milliseconds since the epoch
var unixtime = parseInt(unixtime_ms / 1000);
return unixtime;
}
function transform () {
var tocrypt = $('#crypt').val();
var todecrypt = $('#decrypt').val();
//check if decrypted is hex
if(testhex1(todecrypt)==true){
var key = $('#key').val().replace(/ /g,'');
$.post('crypt.php', {
tocrypt: tocrypt,
todecrypt: todecrypt,
key: key
}, function(data) {
console.log(data);
var result = data.split("x-.-x");
if(tocrypt !== ''){
$('#crypted').html(result[0]);
}
if(todecrypt !== ''){
$('#decrypted').html(result[1]);
}
});
if (tocrypt == '' && todecrypt == ''){
Log('Type something first... >.<\'');
$('#crypted').html('Le texte en clair sera ici.');
$('#decrypted').html('Le texte en clair sera ici.');
}
else if (todecrypt == ''){
Log('Text Crypted with key: "<i>'+key+'</i>"');
$('#decrypted').html('Le texte en clair sera ici.');
}
else if (tocrypt == ''){
$('#crypted').html('Le texte en clair sera ici.');
Log('Text Decrypted with key: "<i>'+key+'</i>"');
}
else {
Log('Text Crypted / Decrypted with key: "<i>'+key+'</i>"');
}
}
else { Log('Enter hex to decrypt field.'); }
}
$('#button').click( function(){ transform(); } );
$('#crypt').keyup(function() {
$('.char').html($('#crypt').val().length);
$('.words').html($('#crypt').val().split(' ').length);
});
$('#log').append('@' + time() + ': <i></i>');
$('#save').click(function(){
var crypted = $('#crypted').html();
if (crypted=='Le texte en clair sera ici.') { Log('Type something first -_-\''); }
else if (testhex(crypted) == true){
$.post('bottle.php', {
crypted: crypted,
}, function(data) {
Log(data);
var result = data.split("x-.-x");
});
}
else {Log('Cannot save this non-hex nonsense :/ '+ testhex(crypted));}
});
</script>
<div id="domMessage" style=" display:none; background-color:#000; color:#12C931">
<img src="img/crypt.gif" width="94%" height="20px" alt="Loading" />
</div>
<script>
// unblock when ajax activity stops
$(document).ajaxStop($.unblockUI);
function test() {
$.ajax({ url: 'crypt.php', cache: false });
}
$(document).ready(function() {
$('#button').click(function() {
$.blockUI({ message: $('#domMessage') });
test();
});
});
<!-- Input txt file! -->
function destroyClickedElement(event)
{
document.body.removeChild(event.target);
}
function loadFileAsText()
{
var fileToLoad = document.getElementById('fileToLoad').files[0];
var fileReader = new FileReader();
fileReader.onload = function(fileLoadedEvent)
{
var textFromFileLoaded = fileLoadedEvent.target.result;
document.getElementById('decrypt').value = textFromFileLoaded;
};
fileReader.readAsText(fileToLoad, 'UTF-8');
}
</script>
<div align="left"><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p></div>
</body></html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment