Security implemented + Partial publish
diff --git a/js/test-decode-FaceInstance.html b/js/test-decode-FaceInstance.html
new file mode 100644
index 0000000..5ec30dd
--- /dev/null
+++ b/js/test-decode-FaceInstance.html
@@ -0,0 +1,167 @@
+<?xml version = "1.0" encoding="utf-8" ?>

+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"

+"DTD/xhtml1-strict.dtd">

+<html xmlns = "http://www.w3.org/1999/xhtml">

+

+<head>

+	<title>NDN Decode Face Instance</title>

+	

+	<script type="text/javascript" src="java_socket_bridge.js"></script>

+	

+	<script type="text/javascript" src="CCNProtocolDTags.js"></script>

+	

+	<script type="text/javascript" src="CCNTime.js"></script>

+	

+	<script type="text/javascript" src="ContentName.js"></script>

+	

+	<script type="text/javascript" src="ContentObject.js"></script>

+	

+	<script type="text/javascript" src="DateFormat.js"></script>

+	

+	<script type="text/javascript" src="Exclude.js"></script>

+

+	<script type="text/javascript" src="ExcludeAny.js"></script>

+

+	<script type="text/javascript" src="ExcludeComponent.js"></script>

+

+	<script type="text/javascript" src="Interest.js"></script>

+	

+	<script type="text/javascript" src="KeyLocator.js"></script>

+	

+	<script type="text/javascript" src="KeyName.js"></script>

+

+	<script type="text/javascript" src="PublisherID.js"></script>

+	

+	<script type="text/javascript" src="Signature.js"></script>

+	

+	<script type="text/javascript" src="SignedInfo.js"></script>

+	

+	<script type="text/javascript" src="PublisherPublicKeyDigest.js"></script>

+	

+	<script type="text/javascript" src="FaceInstance.js"></script>

+

+	<script type="text/javascript" src="ForwardingEntry.js"></script>

+	

+	<script type="text/javascript" src="encoding/BinaryXMLEncoder.js"></script>

+	

+	<script type="text/javascript" src="encoding/BinaryXMLCodec.js"></script>

+	

+	<script type="text/javascript" src="encoding/BinaryXMLDecoder.js"></script>

+	

+	<script type="text/javascript" src="encoding/DataUtils.js"></script>

+	

+	<script language="JavaScript" type="text/javascript" src="security/KeyManager.js"></script>

+	

+	<script language="JavaScript" type="text/javascript" src="securityLib/jsbn.js"></script>

+	<script language="JavaScript" type="text/javascript" src="securityLib/jsbn2.js"></script>

+	<script language="JavaScript" type="text/javascript" src="securityLib/rsa.js"></script>

+	<script language="JavaScript" type="text/javascript" src="securityLib/rsa2.js"></script>

+	

+	<script language="JavaScript" type="text/javascript" src="securityLib/sha1.js"></script>

+	<script language="JavaScript" type="text/javascript" src="securityLib/sha256.js"></script>

+	<script language="JavaScript" type="text/javascript" src="securityLib/sha512.js"></script>

+	<script language="JavaScript" type="text/javascript" src="securityLib/md5.js"></script>

+	<script language="JavaScript" type="text/javascript" src="securityLib/ripemd160.js"></script>

+	<script language="JavaScript" type="text/javascript" src="securityLib/base64.js"></script>

+	

+	<script language="JavaScript" type="text/javascript" src="securityLib/rsapem-1.1.js"></script>

+	<script language="JavaScript" type="text/javascript" src="securityLib/rsasign-1.2.js"></script>

+	<script language="JavaScript" type="text/javascript" src="securityLib/asn1hex-1.1.js"></script>

+	<script language="JavaScript" type="text/javascript" src="securityLib/x509-1.1.js"></script>

+

+	<script type="text/javascript">

+

+		function decode(){

+

+			var input = document.getElementById('result').innerHTML;

+

+			

+			var faceInstance = decodeHexFaceInstance(input);

+			

+			if(LOG>3)console.log('FACE INSTANCE DECODED');

+			if(LOG>3)console.log(faceInstance);

+

+			///////////////////////////////////////

+			

+			var output ="";

+			

+			if(faceInstance.PublisherPublicKeyDigest!=null ){

+				output+= "PublisherPublicKeyDigest: ";

+				

+					output+=  DataUtils.toHex(faceInstance.PublisherPublicKeyDigest.PublisherPublicKeyDigest);

+					

+					//output+= "PUBLISHER ID TYPE: ";

+					//output+=  faceInstance.PublisherPublicKeyDigest.PublisherPublicKeyDigest;

+					

+				output+= "<br />";

+				output+= "<br />";

+

+			}

+			

+			if(faceInstance.FaceID!=null){

+				output+= "FaceID: ";

+				

+				output+= faceInstance.FaceID;

+				output+= "<br />";

+			}

+			

+			if(faceInstance.IPProto!=null){

+				output+= "IPProto: ";

+				

+				output+= faceInstance.IPProto;

+				output+= "<br />";

+			}

+			

+			if(faceInstance.Host!=null){

+				output+= "Host: ";

+				

+				output+= faceInstance.Host;

+				output+= "<br />";

+			}

+			

+			if(faceInstance.Port!=null){

+				output+= "Port: ";

+				

+				output+= faceInstance.Port;

+				output+= "<br />";

+			}

+			if(faceInstance.FreshnessSeconds!=null){

+				output+= "FreshnessSeconds: ";

+				

+				output+= faceInstance.FreshnessSeconds;

+				output+= "<br />";

+			}

+			

+			/*if(interest.Name!=null && interest.Name.Components!=null){

+				output+= "NAME: ";

+				

+				for(var i=0;i<interest.Name.Components.length;i++){

+					output+= "/"+ DataUtils.toString(interest.Name.Components[i]);

+				}

+				output+= "<br />";

+				output+= "<br />";

+			}*/

+	

+			document.getElementById('result').innerHTML = output;

+			

+		}

+

+	</script>

+

+</head>

+<body >

+	<form>

+		

+		Please Enter a Interest:<br />

+		

+		<!--  input id="faceInstance" type="text" name="FACEINSTANCE" value="/PARC/abc" /--> 

+		

+	</form>

+	<button onclick="decode()">Decode</button>

+	

+	

+

+		<p id="result">058203e20285e0a01e093968f9740ce7f4361babf5bb05a4e55aaca5e58f73eddeb8e013aa8f0004d29632310004da9631370004e2c631302e312e312e310004eaa6393639350003d2d6323134373438333634370000</p>

+

+</body>

+</html>
\ No newline at end of file