//
// yessignCrypto Javascript
//
// ÃÖÁ¾ ¼öÁ¤ÀÏ : 2009.07.10 ¹ÚÅÂ¿ø.
// - escape_url()¿¡¼­ nullÀÌ ÆÄ¶ó¹ÌÅÍ·Î ¿À¸é "null"À» ¸®ÅÏÇÏ´Â ¹®Á¦¸¦ ""À» ¸®ÅÏÇÏµµ·Ï ¼öÁ¤.
// - MakeInput()¿¡¼­ CKKeyPro.GetEncData()ÀÇ "undefined" Ã³¸®°¡ ºÒÇÊ¿äÇÏ¹Ç·Î »èÁ¦.
// - sign(), signAndEnvelop(), signAndEncrypt()¿¡¼­ ssn ÆÄ¶ó¹ÌÅÍ°¡ "" ÀÏ¶§, ÁÖ¹Î¹øÈ£ ÀÔ·ÂÃ¢À» ¶ç¿ì´Â ¹æ½Ä¿¡¼­, ÀÌ¸¦
// Çã¿ëÇÏÁö ¾Ê´Â ¹æ½ÄÀ¸·Î Á¤Ã¥ÀÌ º¯°æµÊ¿¡ µû¶ó¼­ ¿¡·¯Ã³¸®.
//
// ¼ÒÇÁÆ®Æ÷·³ CKKeyPro ¼³Ä¡.
// njg 12.03 ÀÓ½Ã ÁÖ¼® Ã³¸® ÇÔ.
//document.write("<script src='/common/js/CKKeyPro.js'></script>");
// ´ÙÀ½Àº Å×½ºÆ® ÀÔ´Ï´Ù. ¼³Ä¡°¡ ÀßµÇ¸é ÀÌ´ë·Î °©´Ï´Ù. njg.
//document.write("<script src='http://ck.softforum.co.kr/CKKeyPro/yessign/CKKeyPro.js'></script>");

var CKKeyPro_check = ((document.CKKeyPro == null) || (typeof(document.CKKeyPro) == undefined) || (document.CKKeyPro.object == null));

if (CKKeyPro_check) {
	document.write("<script src='/common/js/CKKeyPro.js'></script>");
}


// XMLHttpRequest »ç¿ëÀ» À§ÇÑ javascript import.
document.write("<script src='/common/js/httpRequest.js'></script>");
// ¼­¸í½ÃÁ¡ÀÇ ½Ã°£À» ÀúÀå.
var dateStr="";

// Å° °ü¸®¿ë ÀÎÁõ¼­.
//var trus_ServerCert = "-----BEGIN CERTIFICATE-----MIIEgzCCA2ugAwIBAgIDAw1cMA0GCSqGSIb3DQEBBQUAME8xCzAJBgNVBAYTAmtyMRAwDgYDVQQKDAd5ZXNzaWduMRUwEwYDVQQLDAxBY2NyZWRpdGVkQ0ExFzAVBgNVBAMMDnllc3NpZ25DQS1URVNUMB4XDTA5MDIwODE1MDAwMFoXDTEwMDIwOTE0NTk1OVowbTELMAkGA1UEBhMCa3IxEDAOBgNVBAoMB3llc3NpZ24xDzANBgNVBAsMBnNlcnZlcjEQMA4GA1UECwwHeWVzc2lnbjENMAsGA1UECwwES0ZUQzEaMBgGA1UEAwwRd3d3LmtmdGN3ZWIub3Iua3IwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALDMBMHP8Nskc1fiEi0tP6mShBN56svszdzPAMOzY/oVa0cWe1vfLgBMEOESEEpE0MLtB9CHv9agK4p5/6eAjB+pqvjrFpqIDKSPAOyT6AlkjtCTvAWl2kfTpNg9HJzde3QekJlAqOQaGcVckqy32CKIeRbTgra51ibko4BWXialAgMBAAGjggHMMIIByDCBlAYDVR0jBIGMMIGJgBRGKf4vtdM8Uykx+VIJHKTBOUPhZqFtpGswaTELMAkGA1UEBhMCS1IxDTALBgNVBAoMBEtJU0ExLjAsBgNVBAsMJUtvcmVhIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IENlbnRyYWwxGzAZBgNVBAMMEktJU0EgVGVzdCBSb290Q0EgNIICJ7UwHQYDVR0OBBYEFL+Y9cg+Hs9ofADvlAN+SfIXgJQfMA4GA1UdDwEB/wQEAwIEMDAZBgNVHSABAf8EDzANMAsGCSqDGoyaRQEBAzAtBgNVHREEJjAkoCIGCSqDGoyaRAoBAaAVMBMMEXd3dy5rZnRjd2ViLm9yLmtyMHgGA1UdHwRxMG8wbaBroGmGZ2xkYXA6Ly93b29kc3RvY2sueWVzc2lnbi5vci5rcjo2MDIwL291PWRwMTJwNjQsb3U9QWNjcmVkaXRlZENBLG89eWVzc2lnbixjPWtyP2NlcnRpZmljYXRlUmV2b2NhdGlvbkxpc3QwPAYIKwYBBQUHAQEEMDAuMCwGCCsGAQUFBzABhiBodHRwOi8vb2NzcHRlc3QueWVzc2lnbi5vcmc6NDYxMjANBgkqhkiG9w0BAQUFAAOCAQEAmhELqQGlMH9Jg+R8zP8S4NuJhHfGV6FNwlMUYuGWeNz83eDUgwZYV72WY/4PMdFPSKjCTRu7ekHVCc5WMpwxDJ49rDy97mU0CSFebo7Tftb1P0x0Y25P7ed1Mji1jBJROVqudlRBY6fBdow5UaLbrOopM+lImbMcdgRwnlyW0IqPFQwYJJIDCbcLLIlmsdXovG6TVp1R44kkznp/R/fHg1MU1cAcd0CKIv3lSyU0jricAyEmIuxQDci0Uh5fvWwudsKRbGk+uNR4N3Zx6c0Lp7AdSeGR8yCZYOzFGmwnNQOtvGTvxhLM+kCw+WA5d0DjtS1bg3zImpRMv4Q26G5jaw==-----END CERTIFICATE-----";
//trusbill
//var trus_ServerCert = "-----BEGIN CERTIFICATE-----MIIEcjCCA1qgAwIBAgIECaBe/DANBgkqhkiG9w0BAQUFADBKMQswCQYDVQQGEwJrcjEQMA4GA1UECgwHeWVzc2lnbjEVMBMGA1UECwwMQWNjcmVkaXRlZENBMRIwEAYDVQQDDAl5ZXNzaWduQ0EwHhcNMDkwNzE1MTUwMDAwWhcNMTAwNzE5MTQ1OTU5WjBuMQswCQYDVQQGEwJrcjEQMA4GA1UECgwHeWVzc2lnbjEPMA0GA1UECwwGc2VydmVyMRAwDgYDVQQLDAd5ZXNzaWduMQ0wCwYDVQQLDARLRlRDMRswGQYDVQQDDBJ3d3cudHJ1c2JpbGwub3Iua3IwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAM7wOoHAD+ga5/QgCOo7wp5GBjLqUXzLuPeSbiyaMg1Br8fI53oRmOF3JauHsXjdPfQk6Zo+Z4K1sKGCXFPc94AHOEX0Q2pzn5aOGJ7eswb2H8FHBLUJjCinhKnUQOzQQ/sgA5N5gPSHEd7tdup9dVoUN9zFcM/BIxT7V78HgWXNAgMBAAGjggG+MIIBujCBjwYDVR0jBIGHMIGEgBRK+70zLYux0YyUa//gQjZfHJHLCKFopGYwZDELMAkGA1UEBhMCS1IxDTALBgNVBAoMBEtJU0ExLjAsBgNVBAsMJUtvcmVhIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IENlbnRyYWwxFjAUBgNVBAMMDUtJU0EgUm9vdENBIDGCAidgMB0GA1UdDgQWBBQloutJMa86d00nDLdFrUdI13f4/jAOBgNVHQ8BAf8EBAMCBSAwGQYDVR0gAQH/BA8wDTALBgkqgxqMmkUBAQMwLgYDVR0RBCcwJaAjBgkqgxqMmkQKAQGgFjAUDBJ3d3cudHJ1c2JpbGwub3Iua3IwcgYDVR0fBGswaTBnoGWgY4ZhbGRhcDovL2RzLnllc3NpZ24ub3Iua3I6Mzg5L291PWRwM3AzNDQ3OCxvdT1BY2NyZWRpdGVkQ0Esbz15ZXNzaWduLGM9a3I/Y2VydGlmaWNhdGVSZXZvY2F0aW9uTGlzdDA4BggrBgEFBQcBAQQsMCowKAYIKwYBBQUHMAGGHGh0dHA6Ly9vY3NwLnllc3NpZ24ub3JnOjQ2MTIwDQYJKoZIhvcNAQEFBQADggEBAB9VbTQxdva8vTGwtg6hKgVy3Jk4OX4w3UnwRz7gy9enacpV8wNsQPM6E51AOJDRJc0zXmUhNuN7UwhQtb9t4HqLNMCHNY04ylgJI8xXakc7AI3cpmJg5rnxgcwuGbslgh0R9dYsBllAAa1gLDu+MJMZfeJHFYXzssw24RbyndmrGLHvLlYIueZeH/sHX5a2lvwE6j2ytwzGJyJUeRgmR9EgKQPT9cYDE6gWZSRHiFRWbO8ly52/v1U7u9wAG0NQmR0rCiP4CNHEJPSK/dF21kihrPOhQFB7gTkHJzZv8wzqsTm6bplT/97J5/rQtIbP1i4glb+3GRY7Os3iHEMbhDU=-----END CERTIFICATE-----";
//20100718
 //var trus_ServerCert = "-----BEGIN CERTIFICATE-----MIIEcjCCA1qgAwIBAgIEC+uyVTANBgkqhkiG9w0BAQUFADBKMQswCQYDVQQGEwJrcjEQMA4GA1UECgwHeWVzc2lnbjEVMBMGA1UECwwMQWNjcmVkaXRlZENBMRIwEAYDVQQDDAl5ZXNzaWduQ0EwHhcNMTAwNzE3MTUwMDAwWhcNMTEwNzIwMTQ1OTU5WjBuMQswCQYDVQQGEwJrcjEQMA4GA1UECgwHeWVzc2lnbjEPMA0GA1UECwwGc2VydmVyMRAwDgYDVQQLDAd5ZXNzaWduMQ0wCwYDVQQLDARLRlRDMRswGQYDVQQDDBJ3d3cudHJ1c2JpbGwub3Iua3IwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALYZvA82N+VBVW1ERqveVaQfJ3bESYDwddQlgo2dFEk3vkDCSWOcSUD4vNl+4B4tzoyBZ9Iu32x54UusjaLjO+39g4dp61LHUz75yGMckkoa1aTsdK0AUxM0wg/XtcL+YqBF+hgblEQB8yKzi4QRzkXfh3aT2PlksNyrRMbfJnEvAgMBAAGjggG+MIIBujCBjwYDVR0jBIGHMIGEgBRK+70zLYux0YyUa//gQjZfHJHLCKFopGYwZDELMAkGA1UEBhMCS1IxDTALBgNVBAoMBEtJU0ExLjAsBgNVBAsMJUtvcmVhIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IENlbnRyYWwxFjAUBgNVBAMMDUtJU0EgUm9vdENBIDGCAidgMB0GA1UdDgQWBBS7ZkbPZRHg3Z/CzV/5cTdNVrRo1zAOBgNVHQ8BAf8EBAMCBSAwGQYDVR0gAQH/BA8wDTALBgkqgxqMmkUBAQMwLgYDVR0RBCcwJaAjBgkqgxqMmkQKAQGgFjAUDBJ3d3cudHJ1c2JpbGwub3Iua3IwcgYDVR0fBGswaTBnoGWgY4ZhbGRhcDovL2RzLnllc3NpZ24ub3Iua3I6Mzg5L291PWRwM3A0NzMwOCxvdT1BY2NyZWRpdGVkQ0Esbz15ZXNzaWduLGM9a3I/Y2VydGlmaWNhdGVSZXZvY2F0aW9uTGlzdDA4BggrBgEFBQcBAQQsMCowKAYIKwYBBQUHMAGGHGh0dHA6Ly9vY3NwLnllc3NpZ24ub3JnOjQ2MTIwDQYJKoZIhvcNAQEFBQADggEBAJXUkrE2qejNXJ44SG90wGdhm7xHfkQEbmmkYKZMQBUzARWUgPWyPFA5UFDa/eWdEoNL2pVFbCtk8vQ556duyQkx6V/6bQb9seCI4G4UyWtnmolPoBh5Mr2SiGpFL0UOoS3QD7ZNA5f9/pRMHF1KzBWG5MEh1ySTLhC8Zn2ZBxjn76U0c3hi36doaszD2yqypRzPDj3b/l+Bvi6223MhFGZogiqQKl5f5Js985QLaGLSk2QCfxKGKJHLgCVXoFhaT6lUHqgBQeIuYtunhs+8xtp5TVPJL29YKPhVKoR1kozgnRp2AQhGy/WyUvXEaDVzYT0YurOIX9WEmmZf0rBMdL8=-----END CERTIFICATE-----";
 
//20110718
 var trus_ServerCert = "-----BEGIN CERTIFICATE-----MIIEcjCCA1qgAwIBAgIEDmhtgTANBgkqhkiG9w0BAQUFADBKMQswCQYDVQQGEwJrcjEQMA4GA1UECgwHeWVzc2lnbjEVMBMGA1UECwwMQWNjcmVkaXRlZENBMRIwEAYDVQQDDAl5ZXNzaWduQ0EwHhcNMTEwNzE3MTUwMDAwWhcNMTIwNzIxMTQ1OTU5WjBuMQswCQYDVQQGEwJrcjEQMA4GA1UECgwHeWVzc2lnbjEPMA0GA1UECwwGc2VydmVyMRAwDgYDVQQLDAd5ZXNzaWduMQ0wCwYDVQQLDARLRlRDMRswGQYDVQQDDBJ3d3cudHJ1c2JpbGwub3Iua3IwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAPex6UUrcw28WN7lF+CKk81aC4+zAge8LcPB4adywHF54or71ttfRxi3lk53ddHD6bUUWL17RCHQ8AMsbnB2MvlPVsF/5jYRECCtOKccL7H9KzJ32xtFKCMqnRdDoSJJdW41y5HlxybeVFW0M/rldjxUdQwkuQab93KF45lUDskbAgMBAAGjggG+MIIBujCBjwYDVR0jBIGHMIGEgBRK+70zLYux0YyUa//gQjZfHJHLCKFopGYwZDELMAkGA1UEBhMCS1IxDTALBgNVBAoMBEtJU0ExLjAsBgNVBAsMJUtvcmVhIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IENlbnRyYWwxFjAUBgNVBAMMDUtJU0EgUm9vdENBIDGCAidgMB0GA1UdDgQWBBTOSLCIb9G0LeXJaqcZiFGrciIPZDAOBgNVHQ8BAf8EBAMCBSAwGQYDVR0gAQH/BA8wDTALBgkqgxqMmkUBAQMwLgYDVR0RBCcwJaAjBgkqgxqMmkQKAQGgFjAUDBJ3d3cudHJ1c2JpbGwub3Iua3IwcgYDVR0fBGswaTBnoGWgY4ZhbGRhcDovL2RzLnllc3NpZ24ub3Iua3I6Mzg5L291PWRwM3A2MTIxOCxvdT1BY2NyZWRpdGVkQ0Esbz15ZXNzaWduLGM9a3I/Y2VydGlmaWNhdGVSZXZvY2F0aW9uTGlzdDA4BggrBgEFBQcBAQQsMCowKAYIKwYBBQUHMAGGHGh0dHA6Ly9vY3NwLnllc3NpZ24ub3JnOjQ2MTIwDQYJKoZIhvcNAQEFBQADggEBAJvIBNogsP3tZz7zcioZ8AWFnSz15hQ2hlHkRbz27kSLhTkIkAxvZSRqnTJwatuIL7RQUc9T/ar8jyk7SD6MfCGTqw5TueXSH6P+kmhDq5Mum/UBj81QveThq4VpvLP9THZyQUujMSeeElFvZURrbmDZa6OOAPA0G3iXR0WUWwn1ZjtIDqRQghm9jZSSZ/Kvt1bmhx4+eXsQoFBmT8S2532VXTA0pGnE5ydPrF9Bovwmlb9iZyMJzMeTEGc/DVU6s1OSRy9Rvkm0KGQTw3B++3LR8hg7BPqBC72tQUJ5AlF9j3c1h/PDogAlWeUboM98pTraZhHPiEXTWjB+aVIep2U=-----END CERTIFICATE-----";
 
 
//°íµµÈ­ Àü Å×½ºÆ®
// var trus_ServerCert = "-----BEGIN CERTIFICATE-----MIIEljCCA36gAwIBAgIDBMs8MA0GCSqGSIb3DQEBBQUAMFcxCzAJBgNVBAYTAmtyMRAwDgYDVQQKDAd5ZXNzaWduMRUwEwYDVQQLDAxBY2NyZWRpdGVkQ0ExHzAdBgNVBAMMFnllc3NpZ25DQS1UZXN0IENsYXNzIDAwHhcNMTAwOTI2MTUwMDAwWhcNMTEwOTI5MTQ1OTU5WjB2MQswCQYDVQQGEwJrcjEQMA4GA1UECgwHeWVzc2lnbjEPMA0GA1UECwwGc2VydmVyMRAwDgYDVQQLDAd5ZXNzaWduMRMwEQYDVQQLDAp5ZXNzaWduZGV2MR0wGwYDVQQDDBR3d3cueWVzc2lnbmRldi5vci5rcjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAqfIUy2Z+dIhre2WTQMgeMeznLb7dWo9JdlFdPMKwr2v5/WF/cnPEskfT1Xq9aiB9eQz3A2OLz32fj6x2qG6ZymQfi+3K48v0thD+KHEDyAd3/Zwr0K7MU+/Idh1GS03R1iSjz0iQ1kOnd9mCny8xr17oNeiqDG5CQeGVZRns9bsCAwEAAaOCAc4wggHKMIGUBgNVHSMEgYwwgYmAFFwLxlKK5Htcgg2N/oMhdJYQxVZ3oW2kazBpMQswCQYDVQQGEwJLUjENMAsGA1UECgwES0lTQTEuMCwGA1UECwwlS29yZWEgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgQ2VudHJhbDEbMBkGA1UEAwwSS0lTQSBUZXN0IFJvb3RDQSA0ggInyzAdBgNVHQ4EFgQUrDTFMXAKOa+IGEyh9TeckSvMCw4wDgYDVR0PAQH/BAQDAgUgMBkGA1UdIAEB/wQPMA0wCwYJKoMajJpFAQEDMDAGA1UdEQQpMCegJQYJKoMajJpECgEBoBgwFgwUd3d3Lnllc3NpZ25kZXYub3Iua3IwdwYDVR0fBHAwbjBsoGqgaIZmbGRhcDovL3dvb2RzdG9jay55ZXNzaWduLm9yLmtyOjYwMjAvb3U9ZHAxNnA4LG91PUFjY3JlZGl0ZWRDQSxvPXllc3NpZ24sYz1rcj9jZXJ0aWZpY2F0ZVJldm9jYXRpb25MaXN0MDwGCCsGAQUFBwEBBDAwLjAsBggrBgEFBQcwAYYgaHR0cDovL29jc3B0ZXN0Lnllc3NpZ24ub3JnOjQ2MTIwDQYJKoZIhvcNAQEFBQADggEBAKTvtYjAIjalpzNS5ZXz2+rUVafYlruYLb0HsSzpcC7LOud8F7IwxmNulhmJpx4xDpmBV5oNKJhuFbZP2OwJv4MaUobezLpZ/MM5eTlAJHeIHiuDRLqeoaGS3V31U7G1ucsQgw7sGDsAy4gobUKuWzD4EG1j8hqVNsi+oxDGDZBLSr/TuToJy3vWVW+bzYxMD3/e/vHknURS0L+Ke54+cgpDdMki6yX7EgU1SVFqesJ3xt/8iw6+WrTHpd9VXWZFivAVvQ5XNF87j7HShKHBDRat7c2e7rZLPLQMpYhknvit7WcLw+s52tpNyqsDXxsPak7wAkAxIXkw53s7EZibSrQ=-----END CERTIFICATE-----";
//°íµµÈ­ Å×½ºÆ®
// var trus_ServerCert =   "-----BEGIN CERTIFICATE-----MIIFLDCCBBSgAwIBAgIDA5VsMA0GCSqGSIb3DQEBCwUAMFcxCzAJBgNVBAYTAmtyMRAwDgYDVQQKDAd5ZXNzaWduMRUwEwYDVQQLDAxBY2NyZWRpdGVkQ0ExHzAdBgNVBAMMFnllc3NpZ25DQS1UZXN0IENsYXNzIDEwHhcNMTAxMDA1MTUwMDAwWhcNMTExMDA2MTQ1OTU5WjCBhDELMAkGA1UEBhMCa3IxEDAOBgNVBAoMB3llc3NpZ24xDzANBgNVBAsMBnNlcnZlcjEQMA4GA1UECwwHeWVzc2lnbjEaMBgGA1UECwwReWVzc2lnbmRldl9zaGEyNTYxJDAiBgNVBAMMG3d3dy55ZXNzaWduZGV2X3NoYTI1Ni5vci5rcjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAN/pM3Mv3yjgtoqzzpLgsCkkyhdl936LeUMjZt2GxlWbHmbT1yPNSxnCrPnJJrQ/pIvhT7lLgg8LvgLNOghu729NQUnsBWVyIGgb1OXmsQRaP0y/ar0JxfCZ/en7D8CtgEaEmSzBHtJaXJJ+OhDEWpS6pZTA9upd+c7wiSHfzlehFnGuWoM5vyFjc5mP7omGb9jB1q0wqSYAIJOo5p30rNOI0vEk17oqPsyyt9VR4WE9eNdtdsOfhg4JhPL+5PTRqr2yOhH0MlveRI45OVkl/OQhFALHBqEIyOMWnCY1o3usp9MOZTKCU4j/YlEHqvGnF6Op6ybs/mnEAIpaWltJSSsCAwEAAaOCAdEwggHNMIGTBgNVHSMEgYswgYiAFCBi7dUIEF990pQJyh63UVQmRqwhoW2kazBpMQswCQYDVQQGEwJLUjENMAsGA1UECgwES0lTQTEuMCwGA1UECwwlS29yZWEgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgQ2VudHJhbDEbMBkGA1UEAwwSS2lzYSBUZXN0IFJvb3RDQSA1ggEGMB0GA1UdDgQWBBTKOjMIgtWEutNhPZAEbaXceXeLNTAOBgNVHQ8BAf8EBAMCBDAwGQYDVR0gAQH/BA8wDTALBgkqgxqMmkUBAQMwNwYDVR0RBDAwLqAsBgkqgxqMmkQKAQGgHzAdDBt3d3cueWVzc2lnbmRldl9zaGEyNTYub3Iua3IwdAYDVR0fBG0wazBpoGegZYZjbGRhcDovL3Nub29weS55ZXNzaWduLm9yLmtyOjYwMjAvb3U9ZHAxM3AxLG91PUFjY3JlZGl0ZWRDQSxvPXllc3NpZ24sYz1rcj9jZXJ0aWZpY2F0ZVJldm9jYXRpb25MaXN0MDwGCCsGAQUFBwEBBDAwLjAsBggrBgEFBQcwAYYgaHR0cDovL3Nub29weS55ZXNzaWduLm9yLmtyOjQ2MTIwDQYJKoZIhvcNAQELBQADggEBALeKtBfEA2V+io1jdlMVZa8tR6FOMXU4/lKQ8qKrSG1E7m5DIm1QONjsOI3pI/sfrpbwft8I+sLJP/QAguT73CPvyPWnXa8+WtnWM7pqdjW6Bp1p9PW/Z1SbW5/QuQ3+/u50/TT0iHf15uCEzsJVInDDaUVVr9Afs/jYqY4bBnqIwfxsFt05szDb0ovenwR54JtHzb1UElsa9BZn+VgYUnD4Y/PXCGoTJ3w67WTEgmEMCN/FboTrWoiqTPAqIZUDRJwLeWhzMGlBoZiRB59oIUs2iicEQ5asl7OLXKZv2LWLLyM+AyEodKxbajoZqMYdJw5Gp1oAWrrDMIOy6wsmHqY=-----END CERTIFICATE-----";

 
///////////////////////////////////////////////////////////
// ÀÎÁõ¼­ ¼±ÅÃ Ã¢ ¿É¼Ç 
var HDD_ENABLED            =    0x00000001;
var REMOVABLE_ENABLED      =    0x00000002;
var HSM_ENABLED            =    0x00000004;
var SMARTCARD_ENABLED      =    0x00000008;

var LASTACCESS_CERT        =    0x01000000;
var ENABLE_SIGN_TEXT_VIEW  =    0x04000000;


// µðÆúÆ® ÀÎÁõ¼­ ¼±ÅÃÃ¢ ¿É¼Ç 
// ÇÏµåµð½ºÅ© | ÀÌµ¿½Äµð½ºÅ© | ÀúÀåÅäÅ« | º¸¾ÈÅäÅ« 
var DISABLE_MOBILEPHONE = 0x02000000;

var defaultSelect          =  DISABLE_MOBILEPHONE;//  HDD_ENABLED | REMOVABLE_ENABLED | SMARTCARD_ENABLED | HSM_ENABLED;
//////////////////////////////////////////////////

// ÀÎÁõ¼­ Á¤·Ä ¿É¼Ç.
var SORT_BY_POLICY         = 0x00000001;  // ÀÎÁõ¼­ Á¤Ã¥(Á¾·ù)·Î ¸®½ºÆ®Ã¢ Á¤·Ä È°¼ºÈ­.


// -- Æ®·¯½ººô »ç¿ë°¡´É Á¤Ã¥ (¹ýÀÎ ¹ü¿ë_2009³â 12¿ù 31ÀÏ)
var CP_CERT_CC   = "1.2.410.200005.1.1.5;1.2.410.200004.5.1.1.7;1.2.410.200004.5.4.1.2;1.2.410.200012.1.1.3;1.2.410.200004.5.3.1.1;1.2.410.200004.5.3.1.2;1.2.410.200004.2.1;";
// -- Æ®·¯½ººô »ç¿ë°¡´É Á¤Ã¥ (ÀüÀÚ¼¼±Ý¿ë_2009³â 12¿ù 31ÀÏ)
var CP_CERT_TAX  = "1.2.410.200004.5.2.1.1;1.2.410.200005.1.1.6.8;1.2.410.200004.5.1.1.12.903;1.2.410.200004.5.4.2.80;1.2.410.200004.5.2.1.6.248;1.2.410.200012.5.19.1.1;"
// -- Æ®·¯½ººô »ç¿ë°¡´É Á¤Ã¥ (yessign ¼­¹ö¿ë_2009³â 12¿ù 31ÀÏ): 
var CP_CERT_SERVER = "1.2.410.200005.1.1.3;";
var TRUSBILL_POLICY = CP_CERT_CC + CP_CERT_TAX + CP_CERT_SERVER;
//////////////////////////////////////////////////
// ÀÎÁõ¼­ ¼±ÅÃÃ¢¿¡ Ç¥½ÃµÉ ¹è³Ê ÀÌ¹ÌÁö À§Ä¡.


// ÀüÀÚÀÎÁõ¼¾ÅÍ¿¡¼­ ´ÙÀ½À» ¼öÁ¤ÇÔ  KFTC_b03.gif -> KFTC_b02.gif 
// ÀÌ¹ÌÁö ¼öÁ¤ 2010.0104. njg
//var bannerURL = "http://www.trusbill.or.kr/images/etc/cert_2010.gif";
var bannerURL = "http://www.yessign.or.kr/yessignCert5/KFTC_b02.gif";
//////////////////////////////////////////////////
// °¢ »çÀÌÆ®¿¡¼­ »ç¿ëÇÒ yessign ActiveX °ü·Ã È¯°æ ¼³Á¤(¼³¸í¼­ ÂüÁ¶).
//var trus_FileName = "yessignTest";
// trusbill ¼³Á¤.
var trus_FileName = "Trusbill";

// ÀüÀÚÀÎÁõ¼¾ÅÍ¿¡¼­ ´ÙÀ½À» ¼öÁ¤ÇÔ : ÇÊ¿ä¾ø´Â ¿É¼Ç »èÁ¦ÇÔ
var trus_ConfigInfo = "GeneralSyntax=TRUE$vdRecipient=FALSE$selectTitle=yessign °øÀÎÀÎÁõ È®ÀÎ$infovineURL=http://www.yessign.or.kr/infovine/download.html$infovineSecurity=YESSIGN|INCA$infovineDllVersion=1,0,3,7$mobisignURL=http://www.yessign.or.kr/move/mobisigndll.htm$mobisignDllVersion=3,0,1,60$mobisignSiteInfo=1010006$keyCryptDriver=SOFO_V1";
//var trus_ConfigInfo = "GeneralSyntax=TRUE$vdRecipient=FALSE;";



// yessign ActiveX °´Ã¼ º¯¼ö.
var yessignCrypto;
try {
  yessignCrypto = top.yessign.document.getElementById("crypto");
}
catch( err ) {
//  alert(err);
}

// ¼ÒÇÁÆ®Æ÷·³ÀÇ Å°º¸µå º¸¾È ¸ðµâ ¼³Ä¡¸¦ °Ë»çÇÑ´Ù.
// ¼ÒÇÁÆ®Æ÷·³ÀÇ CKKeyPro´Â ÇöÀçÀÇ Document¿¡ °´Ã¼°¡ Á¸ÀçÇØ¾ß¸¸ µ¿ÀÛÇÔ.
function CheckInstallCKKeyPro() {

  try {
    if( (CKKeyPro == null)
      || (typeof(CKKeyPro) == "undefined")
      || (CKKeyPro.object == null)  ) {
      return false;
    }
    else {
      return true;
    }
  }
  catch( err ) {
//    alert(err);
    return false;
  }
}

// yessign º¸¾È ¸ðµâ°ú CKKeyProÀÇ ¼³Ä¡¸¦ °Ë»çÇÑ´Ù.
function CheckInstallCrypto() {
  try {
    // Å°º¸µå º¸¾È ¼³Ä¡ Ã¼Å©.
    /*  njg 12.03 ÀÓ½Ã ÁÖ¼® Ã³¸® ÇÔ. */
    /*  njg 12.07 µð½Ã Àû¿ë Ã³¸® ÇÔ. */
    if( CheckInstallCKKeyPro() == false ) {
 //     alert("yessignCrypto_Å°º¸µå º¸¾È ÇÁ·Î±×·¥À» ¼³Ä¡ÇØ ÁÖ½Ê½Ã¿À!");
      // ¼³Ä¡ ¾È³»ÆäÀÌÁö·Î ÀÌµ¿.
      top.location.replace("/index.jsp");
      return false;
    }
  
    // yessign ActiveX ¼³Ä¡ Ã¼Å©.
    yessignCrypto = top.yessign.document.getElementById("crypto");
    if( (yessignCrypto == null)
      || (typeof(yessignCrypto) == "undefined")
      || (yessignCrypto.object == null) ) {
//       alert("yessign ÇÁ·Î±×·¥À» ¼³Ä¡ÇØ ÁÖ½Ê½Ã¿À!");
        // ¼³Ä¡ ¾È³»ÆäÀÌÁö·Î ÀÌµ¿.
        top.location.replace("/index.jsp");
        return false;
    }

    return true;
  }
  catch( err ) {
    return false;
  }
}

// URL escape ÀÎÄÚµùÀ» ¼öÇàÇÑ´Ù.
// 2009.07.09 : ÀÔ·Â ÆÄ¶ó¹ÌÅÍ °³Ã¼°¡ null ÀÏ¶§ "null" ¹®ÀÚ¿­ÀÌ ¹ÝÈ¯µÇ´ø ¹®Á¦¸¦ ºó ¹®ÀÚ¿­ÀÌ ¹ÝÈ¯µÇµµ·Ï ¼öÁ¤.
function escape_url(url)
{
  if( url == null ) {
    return "";
  }

  var i;
  var ch;
  var out = '';
  var url_string = '';

  url_string = String(url);

  for( i = 0; i < url_string.length; i++ )  {
    ch = url_string.charAt(i);
    if( ch == ' ' )
      out += '%20';
    else if( ch == '%' )
      out += '%25';
    else if( ch == '&' )
      out += '%26';
    else if( ch == '+' )
      out += '%2B';
    else if( ch == '=' )
      out += '%3D';
    else if( ch == '?' )
      out += '%3F';
    else
      out += ch;
  }
  return out;
}

// Request ÆÄ¶ó¹ÌÅÍ¸¦ ÀüÀÚ¼­¸í ¹× ¾ÏÈ£È­¸¦ À§ÇØ¼­ Àç»ý¼ºÇÑ´Ù(E2E °ü·Ã Ãß°¡ - 2009.06.12).
// 2009.07.09 : CKKeyPro.GetEncData()ÀÇ "undefined"°¡ ºÒÇÊ¿äÇÏ¹Ç·Î »èÁ¦.
function MakeInput(form)
{
  // ÀÏ¹Ý elementÀÇ °ªÀ» ÀúÀåÇÏ´Â ¹è¿­ º¯¼ö(Á¸ÀçÇÏ´Â elementÀÇ °³¼ö¸¦ µðÆúÆ® Å©±â·Î »ý¼º).
  var name = new Array(form.elements.length);
  var value    = new Array(form.elements.length);

  // E2E Àû¿ë elementÀÇ ¾ÏÈ£È­µÈ °ªÀ» ÀúÀåÇÏ´Â ¹è¿­ º¯¼ö.
  var E2E_name = new Array();
  var E2E_value = new Array();
  // E2E Àû¿ë elementÀÇ index.
  var E2E_idx = 0;


  // ½ÇÁ¦ »ý¼ºµÇ´Â ÆÄ¶ó¹ÌÅÍ °³¼ö¸¦ ÀúÀåÇÏ´Â º¯¼ö.
  var j = 0;
  var len = form.elements.length;
  // Á¸ÀçÇÏ´Â element¸¸Å­ Ã³¸®.
  for( i = 0; i < len; i++ ) {
    // button, reset, submit ¿¤¸®¸ÕÆ®°¡ ¾Æ´Ï°í disabled°¡ ¼³Á¤µÇÁö ¾ÊÀº °æ¿ì¿¡¸¸ Ã³¸®.
    if( (form.elements[i].type != "button") && (form.elements[i].type != "reset") &&
        (form.elements[i].type != "submit") && (form.elements[i].disabled != true) ) {
      // radio, checkbox Ã³¸®.
      if( (form.elements[i].type == "radio") || (form.elements[i].type == "checkbox") ) {
        // radio, checkbox°¡ ¼±ÅÃµÈ °æ¿ì Ã³¸®.
        if( form.elements[i].checked == true ) {
          name[j] = form.elements[i].name;
          value[j] = form.elements[i].value;
          j++;
        }
      }
      // text, password Ã³¸®.
      else if( (form.elements[i].type == "text") || (form.elements[i].type == "password") ) {
        name[j] = form.elements[i].name;
        value[j] = form.elements[i].value;
        j++;

        // enc="on"ÀÎ °æ¿ì E2E¸¦ À§ÇÑ ¹è¿­º¯¼ö·Î ÀúÀå Ã³¸®.
        if( form.elements[i].getAttribute("enc") == "on" ) {
          E2E_name[E2E_idx] = "_E2E_" + form.elements[i].name;
          E2E_value[E2E_idx] = CKKeyPro.GetEncData("", form.name, form.elements[i].name);;
          E2E_idx++;
        }
      }
      // ³ª¸ÓÁö type Ã³¸®(select-one, select-multiple, hidden).
      else {
        // ÇÑ item¸¸ ¼±ÅÃÇÏ´Â À¯Çü.
        if( form.elements[i].type == "select-one" ) {
          var ind = form.elements[i].selectedIndex;
          var singleLen = form.elements[i].length;
          // itemÀº 1°³ ÀÌ»óÀÌ Á¸ÀçÇØ¾ß ÇÔ.
          if( singleLen > 0 ) {
            // ¼±ÅÃÇÑ °æ¿ì.
            if( ind >= 0 ) {
              name[j] = form.elements[i].name;
              value[j] = form.elements[i].options[ind].value;
              j++;
            }
            // ÇÏ³ªµµ ¼±ÅÃÇÏÁö ¾ÊÀº °æ¿ì.
            else {
            }
          }
          // itemÀÌ ÇÏ³ªµµ ¾ø´Â °æ¿ì.
          else {
          }
        }
        // ¿©·¯ itemÀ» ¼±ÅÃÇÏ´Â À¯Çü.
        else if( form.elements[i].type == "select-multiple" ) {
          var multiLen = form.elements[i].length;
          for( k = 0; k < multiLen; k++) {
            // ¼±ÅÃÇÑ item¸¸ Ãß°¡.
            if( form.elements[i].options[k].selected ) {
              name[j] = form.elements[i].name;
              value[j] = form.elements[i].options[k].value;
              j++;
            }
          }
        }
        // ±âÅ¸ element´Â ´Ü¼øÈ÷ °ª¸¸ ¼³Á¤.
        else {
          name[j] = form.elements[i].name;
          value[j] = form.elements[i].value;
          j++;
        }
      }
    }
  }

  // signed¿Í unsigned¿¡ ´ëÇÑ ÃÖÃÊ ÀÔ·Â ¿©ºÎ flag.
  var flag1 = false;
  var flag2 = false;
  // signed¿Í unsigned¿¡ ´ëÇØ »ý¼ºÇÑ ÃÖÁ¾ query string.
  var signed_text = "";
  var unsigned_text = "";

  // ÀÏ¹Ý element°ª¿¡ ´ëÇØ¼­ query stringÀ¸·Î »ý¼º.
  for( i = 0; i < j; i++ ) {
    if( name[i].charAt(0) != "_" ) {
      if( flag1 ) {
        signed_text += "&";
      }
      else {
        flag1 = true;
      }
      signed_text += name[i] ;
      signed_text += "=";
      signed_text += escape_url(value[i]);
    }
    else {
      if( flag2 ) {
        unsigned_text += "&";
      }
      else {
        flag2 = true;
      }
      unsigned_text += name[i] ;
      unsigned_text += "=";
      unsigned_text += escape_url(value[i]);
    }
  }

  // E2E element°¡ Á¸ÀçÇÏ¸é nameÀÌ _·Î ½ÃÀÛÇÏ¹Ç·Î ¸ðµÎ unsigned_text¿¡ Ãß°¡.
  for( i = 0; i < E2E_idx; i++ ) {
    if( flag2 ) {
      unsigned_text += "&";
    }
    else {
      flag2 = true;
    }
    unsigned_text += E2E_name[i] ;
    unsigned_text += "=";
    unsigned_text += E2E_value[i];
  }
  // E2E element°¡ Á¸ÀçÇÏ¸é ÃÖÁ¾ÀûÀ¸·Î CKKeyPro°¡ »ç¿ëÇÑ seed¸¦ È¹µæÇÏ¿© "_ENCSEED" º¯¼ö·Î ÀúÀå.
  if( E2E_idx > 0 ) {
    if( flag2 ) {
      unsigned_text += "&";
    }
    else {
      flag2 = true;
    }

    unsigned_text += "_ENCSEED";
    unsigned_text += "=";
    unsigned_text += CKKeyPro.GetEncData(trus_ServerCert, "", "");
  }

  var result = new Array(2);
  result[0] = signed_text;
  result[1] = unsigned_text;

  return result;
}

// ¼­¸íÃ¢¿¡ Ç¥½ÃµÉ ÀÎÁõ¼­ Á¾·ù¸¦ °áÁ¤ÇÑ´Ù.
/*
function GetSelectOption(select)
{
  var option = 0;

  if( select == null || select == "" )
    return defaultCertOption;
  if( select == "LASTACCESS_CERT" )
    option = defaultCertOption | LASTACCESS_CERT;

  if( select.indexOf("1.2.410.200005.1.1.1") != -1 )
    option |= YESSIGN_GENERAL_PE ;
  if( select.indexOf("1.2.410.200005.1.1.2") != -1 )
    option |= YESSIGN_FINANCIAL_CO;
  if( select.indexOf("1.2.410.200005.1.1.4") != -1 )
    option |= YESSIGN_FINANCIAL_PE;
  if( select.indexOf("1.2.410.200005.1.1.5") != -1 )
    option |= YESSIGN_GENERAL_CO;
  if( select.indexOf("1.2.410.200005.1.1.6.9") != -1 )
    option |= YESSIGN_USE4MAIL;
  if( select.indexOf("1.2.410.200005.1.1.6.2") != -1 )
    option |= YESSIGN_USE4CARD;
  if( select.indexOf("1.2.410.200005.1.1.6.3") != -1 )
    option |= YESSIGN_USE4PPS;
  if( select.indexOf("1.2.410.200005.1.1.6.4") != -1 )
    option |= YESSIGN_USE4RK;
  if( select.indexOf("1.2.410.200005.1.1.6.5") != -1 )
    option |= YESSIGN_USE4CTR;
  if( select.indexOf("1.2.410.200005.1.1.6.6") != -1 )
    option |= YESSIGN_USE4TRUS_PE;
  if( select.indexOf("1.2.410.200005.1.1.6.7") != -1 )
    option |= YESSIGN_USE4TRUS_CO;
  if( select.indexOf("1.2.410.200005.1.1.6.8") != -1 )  //2009.12.30 Ãß°¡
    option |= YESSIGN_USE4ESERO;
    
  if( select.indexOf("OTHERCA_CERT_PE") != -1 )
    option |= OTHERCA_CERT_PE;
  if( select.indexOf("OTHERCA_CERT_CO") != -1 )
    option |= OTHERCA_CERT_CO;
  if( select.indexOf("OTHERCA_CERT_USE4") != -1 )
    option |= OTHERCA_CERT_USE4;
  if( select.indexOf("OTHERCA_CERT_FI_PE") != -1 )
    option |= OTHERCA_CERT_FI_PE;
  if( select.indexOf("OTHERCA_CERT_INV_PE") != -1 )
    option |= OTHERCA_CERT_INV_PE;
  if( select.indexOf("OTHERCA_CERT_INV_CO") != -1 )
    option |= OTHERCA_CERT_INV_CO;
  if( select.indexOf("OTHERCA_CERT_ESERO") != -1 )  //2009.12.30 Ãß°¡
    option |= OTHERCA_CERT_ESERO;
    
  return option;
}
*/

// ¼­¸íÃ¢¿¡ Ç¥½ÃµÉ ·Î±× ÀÌ¹ÌÁöÀÇ URLÀ» ¼³Á¤ÇÑ´Ù.
function PutBannerInfo()
{
  yessignCrypto.PutBannerInfo(bannerURL);
}

// yessign API °ü·Ã È¯°æº¯¼ö¸¦ ¼³Á¤ÇÑ´Ù.
function PutConfigFileInfo()
{
  yessignCrypto.PutConfigFileInfo(trus_FileName, trus_ConfigInfo);
}

// °ø°³Å° ¾ÏÈ£È­ ¸Þ½ÃÁö¸¦ »ý¼ºÇÑ´Ù.
function encryptData(form){
  try {
    // ÇÃ·¯±×ÀÎ ÇÁ·Î±×·¥ ¼³Ä¡ °Ë»ç(yessign, Å°º¸µåº¸¾È).
    if( CheckInstallCrypto() == false ) {
      return;
    }
    var option = defaultSelect;
    
    // È¯°æ ¹× ¿É¼Ç ¼³Á¤.
    PutConfigFileInfo();
    PutBannerInfo();
    
    // ¼­¹ö °ø°³Å° ¼³Á¤.
    if( yessignCrypto.PutOtherCert(trus_ServerCert) == false ) {
      return;
    }

	// ÀÎÁõ¼­ ¼±ÅÃÃ¢¿¡ displayµÉ ÀÎÁõ¼­ Á¤Ã¥ ¼³Á¤
	top.yessign.crypto.CertSelect(TRUSBILL_POLICY); 
	
    // formÀÇ ÀÔ·ÂÇÊµå¸¦ ¹®ÀÚ¿­·Î º¯È¯.
    var resultVal = MakeInput(form);

    var inputStr = "";
    if( resultVal[0] != "" && resultVal[1] != "" ) {
      inputStr = resultVal[0] + "&" + resultVal[1];
    }
    else if( resultVal[0] == "" ) {
      inputStr = resultVal[1];
    }
    else if( resultVal[1] == "" ) {
      inputStr = resultVal[0];
    }
    else {
      inputStr = "";
    }



    form.encryptedData.value = yessignCrypto.Envelop(inputStr);
    if( form.encryptedData.value == null
      || form.encryptedData.value == "undefined"
      || form.encryptedData.value.length == 0 ) {

      return;
    }
    else {
      form.submit();
    }
  }
  catch( err ) {
//    alert(err);
  }
}


function encrypt(form)
{
  try {
    // ÇÃ·¯±×ÀÎ ÇÁ·Î±×·¥ ¼³Ä¡ °Ë»ç(yessign, Å°º¸µåº¸¾È).
    if( CheckInstallCrypto() == false ) {
      return;
    }

    // formÀÇ ÀÔ·ÂÇÊµå¸¦ ¹®ÀÚ¿­·Î º¯È¯.
    form.encryptedData.value = ""; // ÀÎÁõ¼­¾ÏÈ£µÈ ºÎºÐÀ» Clear : 2010-01-19 By JSH
    var resultVal = MakeInput(form);

    var inputStr = resultVal; //


    if( resultVal[0] != "" && resultVal[1] != "" ) {
      inputStr = resultVal[0] + "&" + resultVal[1];
    }
    else if( resultVal[0] == "" ) {
      inputStr = resultVal[1];
    }
    else if( resultVal[1] == "" ) {
      inputStr = resultVal[0];
    }
    else {
      inputStr = "";
    }


    // yessign ActiveX ÇÁ·Î±×·¥À» ÀÌ¿ëÇÑ ´ëÄªÅ° ¾ÏÈ£È­ ¼öÇà ÈÄ Àü¼Û.
    //var yessignForm = document.getElementById("yessignForm");
    //yessignForm.action = form.action;
    //yessignForm.target = form.target;
    form.encryptedData.value = yessignCrypto.Encrypt(inputStr);
    if( form.encryptedData.value == null
      || form.encryptedData.value == "undefined"
      || form.encryptedData.value.length == 0 ) {

      return;
    }
    else {
//      yessignForm.submit();
      form.submit();
    }
  }
  catch( err ) {
    alert(err);
  }
}



// ¼­¸í ¸Þ½ÃÁö¸¦ »ý¼ºÇÑ´Ù.
// ssn : null-ÁÖ¹Î¹øÈ£Ã¢ »ý¼º ¾ÈÇÔ, other-ÀÔ·ÂµÈ ÁÖ¹Î¹øÈ£·Î º»ÀÎÈ®ÀÎ.
// 2009.07.09 : ssn ÆÄ¶ó¹ÌÅÍ°¡ "" ÀÏ¶§, ÁÖ¹Î¹øÈ£ ÀÔ·ÂÃ¢À» »ç¿ëÇÏÁö ¾Ê´Â Á¤Ã¥º¯È¯À¸·Î ¿¡·¯Ã³¸®.
//////////////////////////////////////////////////
// ¼­¸í ¸Þ½ÃÁö »ý¼º
function sign(form, policy, signOption)
{
    var inputString = MakeInput(form);
    if(inputString == ""){
        alert("¾ÏÈ£È­ ½ÇÆÐ");
        return;
    }
    var option = defaultSelect;

    PutConfigFileInfo();
    PutBannerInfo();

	// ÀÎÁõ¼­ ¼±ÅÃÃ¢¿¡ displayµÉ ÀÎÁõ¼­ Á¤Ã¥ ¼³Á¤
	top.yessign.crypto.CertSelect(TRUSBILL_POLICY); 


    document.forms[0].action = form.action;
    document.forms[0].elements[0].value = top.yessign.crypto.SignData(inputString, "", option );

    if ( document.forms[0].elements[0].value )
        document.forms[0].submit();

    return;
}

//////////////////////////////////////////////////
// ¼­¸í ¸Þ½ÃÁö »ý¼º (ÁÖ¹Îµî·Ï¹øÈ£ »ç¿ë)

function signEx(form, ssn, policy, signOption)
{
    var inputString = MakeInput(form);
    if(inputString == ""){
        alert("¾ÏÈ£È­ ½ÇÆÐ");
        return;
    }
    var option = defaultSelect;
    var inputSSN = ssn;

    if ( ssn == null )
        inputSSN = "";

    PutConfigFileInfo();
    PutBannerInfo();

	// ÀÎÁõ¼­ ¼±ÅÃÃ¢¿¡ displayµÉ ÀÎÁõ¼­ Á¤Ã¥ ¼³Á¤
	top.yessign.crypto.CertSelect(TRUSBILL_POLICY); 


    top.yessign.crypto.SetIdentifySSNFlag(true);

    document.forms[0].action = form.action;
    document.forms[0].elements[0].value = top.yessign.crypto.SignData(inputString, inputSSN, option);

    if ( document.forms[0].elements[0].value )
        document.forms[0].submit();

    return;
}



// ¼­¸í ¹× °ø°³Å° ¾ÏÈ£È­ ¸Þ½ÃÁö¸¦ »ý¼ºÇÑ´Ù.
// ssn : null-ÁÖ¹Î¹øÈ£Ã¢ »ý¼º ¾ÈÇÔ, other-ÀÔ·ÂµÈ ÁÖ¹Î¹øÈ£·Î º»ÀÎÈ®ÀÎ.
// 2009.07.09 : ssn ÆÄ¶ó¹ÌÅÍ°¡ "" ÀÏ¶§, ÁÖ¹Î¹øÈ£ ÀÔ·ÂÃ¢À» »ç¿ëÇÏÁö ¾Ê´Â Á¤Ã¥º¯È¯À¸·Î ¿¡·¯Ã³¸®.
//////////////////////////////////////////////////
// ´ëÄªÅ° ¾ÏÈ£È­ ¸Þ½ÃÁö »ý¼º
function encrypt2(form)
{
  try {
   // ÇÃ·¯±×ÀÎ ÇÁ·Î±×·¥ ¼³Ä¡ °Ë»ç(yessign, Å°º¸µåº¸¾È).
    if( CheckInstallCrypto() == false ) {
      return;
    }

    // formÀÇ ÀÔ·ÂÇÊµå¸¦ ¹®ÀÚ¿­·Î º¯È¯.
    var resultVal = MakeInput(form);
    var inputStr = "";
    if( resultVal[0] != "" && resultVal[1] != "" ) {
      inputStr = resultVal[0] + "&" + resultVal[1];
    }
    else if( resultVal[0] == "" ) {
      inputStr = resultVal[1];
    }
    else if( resultVal[1] == "" ) {
      inputStr = resultVal[0];
    }
    else {
      inputStr = "";
    }

    // yessign ActiveX ÇÁ·Î±×·¥À» ÀÌ¿ëÇÑ ´ëÄªÅ° ¾ÏÈ£È­ ¼öÇà ÈÄ Àü¼Û.
    //var yessignForm = document.getElementById("yessignForm");
    //yessignForm.action = form.action;
    //yessignForm.target = form.target;
    form.encryptedData.value = top.yessign.crypto.Encrypt(inputStr);
    if( form.encryptedData.value == null
      || form.encryptedData.value == "undefined"
      || form.encryptedData.value.length == 0 ) {
      return;
    }
    else {
//      yessignForm.submit();
      form.submit();
     }
  }
  catch( err ) {
    alert(err);
  }
}
//////////////////////////////////////////////////
// ¼­¸í ¹× °ø°³Å° ¾ÏÈ£È­ ¸Þ½ÃÁö »ý¼º : yessign È¨ÆäÀÌÁö¿¡¼­¸¸ »ç¿ë
//                                   : ÃßÈÄ ¾ø¾îÁú ¼ö ÀÖÀ¸´Ï, »ç¿ëÀ» ÀÚÁ¦¹Ù¶÷

function signAndEncryptData(form, policy, signOption)
{
    var inputStr = MakeInput(form);
    if(inputStr == ""){
        alert("¾ÏÈ£È­ ½ÇÆÐ");
        return;
    }
    var option = defaultSelect;

    PutConfigFileInfo();
    PutBannerInfo();

    form.action = form.action;
    if ( top.yessign.crypto.PutOtherCert(trus_ServerCert) == false )
        return;

	// ÀÎÁõ¼­ ¼±ÅÃÃ¢¿¡ displayµÉ ÀÎÁõ¼­ Á¤Ã¥ ¼³Á¤
	top.yessign.crypto.CertSelect(TRUSBILL_POLICY); 


    //form.elements[0].value = top.yessign.crypto.SignAndEncryptData(inputStr, option);
    form.encryptedData.value = top.yessign.crypto.SignAndEncryptData(inputStr, option);
    //if ( form.elements[0].value )
    if ( form.encryptedData.value)
        form.submit();

    return;
}


//////////////////////////////////////////////////
// ¼­¸í ¹× °ø°³Å° ¾ÏÈ£È­ ¸Þ½ÃÁö »ý¼º (ÁÖ¹Îµî·Ï¹øÈ£ »ç¿ë)
// main.jsp¿¡¼­ ÀÎÁõ¼­·Î±×ÀÎ½Ã »ç¿ë ------ÇÑ±¹ÀüÀÚÀÎÁõ
function signAndEnvelop(form, policy, signOption)
{
    var inputStr = MakeInput(form);
    if(inputStr == ""){
        alert("¾ÏÈ£È­ ½ÇÆÐ");
        return;
    }
    var option = defaultSelect;

    PutConfigFileInfo();
    PutBannerInfo();

    document.forms[0].action = form.action;
    if ( top.yessign.crypto.PutOtherCert(trus_ServerCert) == false )
        return;

	// ÀÎÁõ¼­ ¼±ÅÃÃ¢¿¡ displayµÉ ÀÎÁõ¼­ Á¤Ã¥ ¼³Á¤
	top.yessign.crypto.CertSelect(TRUSBILL_POLICY); 


    //document.forms[0].elements[0].value = top.yessign.crypto.SignAndEnvelop(inputStr, "", option);
    document.forms[0].encryptedData.value = top.yessign.crypto.SignAndEnvelop(inputStr, "", option);
    if ( document.forms[0].encryptedData.value )
    //if ( document.forms[0].elements[0].value )
        document.forms[0].submit();

    return;
}

//////////////////////////////////////////////////
// ÀÎÁõ¼­µî·Ï½Ã¿¡ »ç¿ëÇÔ ------ÇÑ±¹ÀüÀÚÀÎÁõ
function signAndEnvelopEx(form, ssn, policy, signOption)
{
    var inputStr = MakeInput(form);
    if(inputStr == ""){
        alert("¾ÏÈ£È­ ½ÇÆÐ");
        return;
    }
    var option = defaultSelect;
    var inputSSN = ssn;
    //alert(ssn);

    if ( ssn == null )
        inputSSN = "";

    PutConfigFileInfo();
    PutBannerInfo();

    document.forms[0].action = form.action;
    //alert(form.action);
    if ( top.yessign.crypto.PutOtherCert(trus_ServerCert) == false )
        return;

	// ÀÎÁõ¼­ ¼±ÅÃÃ¢¿¡ displayµÉ ÀÎÁõ¼­ Á¤Ã¥ ¼³Á¤
	top.yessign.crypto.CertSelect(TRUSBILL_POLICY); 


    top.yessign.crypto.SetIdentifySSNFlag(true);

    document.forms[0].encryptedData.value = top.yessign.crypto.SignAndEnvelop(inputStr, inputSSN, option);
//    document.forms[0].elements[0].value = top.yessign.crypto.SignAndEnvelop(inputStr, inputSSN, option);
    //document.forms[0].elements[0].value = top.yessign.crypto.SignAndEnvelop(inputStr, "", option);

    //alert(document.forms[0].elements[0].value);

    //if ( document.forms[0].elements[0].value )
    if ( document.forms[0].encryptedData.value )
        document.forms[0].submit();

    return;
}


//////////////////////////////////////////////////
// ¼­¸í ¹× ´ëÄªÅ° ¾ÏÈ£È­ ¸Þ½ÃÁö »ý¼º

function signAndEncrypt(form, policy, signOption)
{
    var inputStr = MakeInput(form);
    if(inputStr == ""){
        alert("¾ÏÈ£È­ ½ÇÆÐ");
        return;
    }
    var option = defaultSelect;

    PutConfigFileInfo();
    PutBannerInfo();

/*
    if ( top.yessign.crypto.IsExistSession() == false ) {
        alert("¼¼¼ÇÀÌ ¸Î¾îÁöÁö ¾Ê¾Ò´Ù");
    }
*/


    document.forms[0].action = form.action;
    if ( policy != null && policy != '' )
        option = GetSelectOption(policy);

    if ( signOption )
        option = option | signOption;

    top.yessign.crypto.SetIdentifySSNFlag(false);

//    document.forms[0].elements[0].value = top.yessign.crypto.SignAndEncrypt(inputStr, "", option);
    document.forms[0].encryptedData.value = top.yessign.crypto.SignAndEncrypt(inputStr, "", option);

//    if ( document.forms[0].elements[0].value )
if ( document.forms[0].encryptedData.value )
        document.forms[0].submit();

    return;
}


//////////////////////////////////////////////////
// ¼­¸í ¹× ´ëÄªÅ° ¾ÏÈ£È­ ¸Þ½ÃÁö »ý¼º (ÁÖ¹Îµî·Ï¹øÈ£ »ç¿ë)

function signAndEncryptEx(form, ssn, policy, signOption)
{
    var inputStr = MakeInput(form);
    if(inputStr == ""){
        alert("¾ÏÈ£È­ ½ÇÆÐ");
        return;
    }
    var option = defaultSelect;
    var inputSSN = ssn;

    if ( ssn == null )
        inputSSN = "";

    PutConfigFileInfo();
    PutBannerInfo();

    document.forms[0].action = form.action;
    if ( policy != null && policy != '' )
        option = GetSelectOption(policy);

    if ( signOption )
        option = option | signOption;

    top.yessign.crypto.SetIdentifySSNFlag(true);

    //document.forms[0].elements[0].value = top.yessign.crypto.SignAndEncrypt(inputStr, inputSSN, option);
    document.forms[0].encryptedData.value = top.yessign.crypto.SignAndEncrypt(inputStr, inputSSN, option);

    //if ( document.forms[0].elements[0].value )
    if ( document.forms[0].encryptedData.value )
        document.forms[0].submit();

    return;
}

function decrypt(encryptedString) {

    if( (top.yessign == null)
     || (typeof(top.yessign.crypto) == "undefined")
     || (top.yessign.crypto.object == null) ) {
     location.href="/index.jsp";
     }
    var result;
//alert( encryptedString );
    result = top.yessign.crypto.Decrypt(encryptedString);

    //alert( result );
    if (result == null || result == '') {
        var cnt = top.yessign.document.count.cnt.value;
        //alert(cnt);
        if (cnt == "" || cnt == "0")
        {
            top.yessign.document.count.cnt.value = "1";
            document.location.reload();
        }else{
            alert('¾ÏÈ£È­µÈ µ¥ÀÌÅÍ¸¦ º¹È£È­ÇÏ´Âµ¥ ½ÇÆÐÇß½À´Ï´Ù. Ã³À½ºÎÅÍ ´Ù½Ã ½ÃÀÛÇØ ÁÖ½Ê½Ã¿À');
            top.yessign.document.count.cnt.value = "0";
            parent.location = "/index.jsp";
        }
        //location.reload();
    }else{
        top.yessign.document.count.cnt.value = "0";
    }
    //var tempStr = result.substr(result.length-20, result.length);
    //alert( tempStr );
    return result;
}

function decryptPopup(encryptedString) {
    var result;

    result = opener.top.yessign.crypto.Decrypt(encryptedString);
    if (result == null || result == '') {
        //alert('¾ÏÈ£È­µÈ µ¥ÀÌÅÍ¸¦ º¹È£È­ÇÏ´Âµ¥ ½ÇÆÐÇß½À´Ï´Ù. Ã³À½ºÎÅÍ ´Ù½Ã ½ÃÀÛÇØ ÁÖ½Ê½Ã¿À');
        //alert("Å¸ »çÀÌÆ® ÀÌµ¿ ÈÄ Àç Á¢¼ÓÇÏ¼Ì½À´Ï´Ù.\n¾ÏÈ£È­ ¼¼¼ÇÀÌ ¸¸·áµÇ¾î ´Ù½Ã ·Î±×ÀÎ ÇÏ¼Å¾ß ÇÕ´Ï´Ù");
        document.location.reload();
    }
    return result;
}


/**
ÀÎÁõ¼­ ¼±ÅÃÃ¢¿¡¼­ ÀÎÁõ¼­¸¦ Á¤·ÄÇÏ¿© º¸¿©ÁØ´Ù.

»ç¿ë¿¹ :

// Á¤Ã¥ Á¤·Ä »ç¿ë½Ã
// ¹ü¿ë°ú ÀºÇà/º¸Çè/½Å¿ëÄ«µå¿ë ¼øÀ¸·Î Á¤·ÄÇÏ°í ½ÍÀ» ¶§,
var financialPolicyPriorityList     = CP_ALL_GENERAL_PE + CP_ALL_FINANCIAL_PE;
// ¹ü¿ë°ú ±ÝÀ¶ÅõÀÚ(±¸ Áõ±Ç¿ë) ¼øÀ¸·Î Á¤·ÄÇÏ°í ½ÍÀ» ¶§,
var investmentPolicyPriorityList = CP_ALL_GENERAL_PE + CP_OTHERCA_INV_PE;

sortCertList(SORT_BY_POLICY, policyPriority);    // ¿ì¼± ¼øÀ§ ¼³Á¤
sign(form, ssn, policy, option);                 // ÀüÀÚ¼­¸í
sortCertList(SORT_BY_POLICY, "");                // ¿ì¼± ¼øÀ§ ÇØÁ¦

NOTICE : ·¹Áö½ºÆ®¸®¿¡ ¼³Á¤ Á¤º¸¸¦ ¾²±â ¶§¹®¿¡ ÇÑ ¹ø ¼³Á¤µÇ¸é °è¼Ó Á¤·ÄÀÌ µÇ¾î º¸¿©Áö°Ô µÈ´Ù.
ÇÑ ¹ø¸¸ ¼³Á¤ÇÏ°í ½ÍÀ¸¸é sortCertList(SORT_BY_POLICY, "");·Î ¿ì¼± ¼øÀ§¸¦ ÇØÁ¦ÇÏ¸é µÈ´Ù.
*/
function sortCertList(sortOption, priorityList)
{
  try {
    // ÇÃ·¯±×ÀÎ ÇÁ·Î±×·¥ ¼³Ä¡ ¹× ·Îµù °Ë»ç(yessign, Å°º¸µåº¸¾È).
    if( CheckInstallCrypto() == false ) {
      return;
    }

    // Á¤Ã¥À¸·Î ¸®½ºÆ®¸¦ ¼³Á¤ÇÏµµ·Ï È°¼ºÈ­ µÇ¾î ÀÖÀ¸¸é Ã³¸®.
    if( sortOption == SORT_BY_POLICY ) {
      var policyPriorityList = "sortByPolicy=" + priorityList;
      yessignCrypto.setExtraConfig(trus_FileName, policyPriorityList);
    }
  }
  catch( err ) {
    alert(err);
  }
}


// ¼­¸í ¹× °ø°³Å° ¾ÏÈ£È­ ¸Þ½ÃÁö¸¦ »ý¼ºÇÑ´Ù.
// ssn : null-ÁÖ¹Î¹øÈ£Ã¢ »ý¼º ¾ÈÇÔ, ""-ÁÖ¹Î¹øÈ£ ÀÔ·ÂÃ¢ »ý¼º, other-ÀÔ·ÂµÈ ÁÖ¹Î¹øÈ£·Î º»ÀÎÈ®ÀÎ
function signAndEnv(ssn)
{

    // ÇÃ·¯±×ÀÎ ÇÁ·Î±×·¥ ¼³Ä¡ °Ë»ç(yessign, Å°º¸µåº¸¾È)
    if( CheckInstallCrypto() == false ) {
      return;
    }

    // È¯°æ ¹× ¿É¼Ç ¼³Á¤
    PutConfigFileInfo();
    PutBannerInfo();

    //var signOption = ENABLE_SIGN_TEXT_VIEW;

    var option = defaultSelect;

    // ¼­¹ö °ø°³Å° ¼³Á¤
    if( top.yessign.crypto.PutOtherCert(trus_ServerCert) == false ){
         return;
     }

    // AJAX¸¦ ÀÌ¿ëÇÑ Ã³¸®(¿äÃ»ÆäÀÌÁö, µ¿±â(false)/ºñµ¿±â(true))
    sendRequest('/', false);
    if( dateStr == null || dateStr == "" ) {
        dateStr = dateFormat(new Date(), "XXXX.XX.XX XX:XX:XX");
    }

    // formÀÇ ÀÔ·ÂÇÊµå¸¦ ¹®ÀÚ¿­·Î º¯È¯
    var resultVal = MakeInput(frmMain);

    if(resultVal == ""){
        alert("¾ÏÈ£È­ ½ÇÆÐ");
        return;
    }

    var inputStr = "";
    var signedStr = "";

	// ÀÎÁõ¼­ ¼±ÅÃÃ¢¿¡ displayµÉ ÀÎÁõ¼­ Á¤Ã¥ ¼³Á¤
	top.yessign.crypto.CertSelect(TRUSBILL_POLICY); 

    // ¼­¸íµ¥ÀÌÅÍ¸¦ »ý¼º
    // Ç¥ÁØÀüÀÚ¼¼±Ý°è»ê¼­ver3.0ÀÏ°æ¿ì¿¡¸¸ ¼­¸í Å×±×¸¦ ´Ù¸£°Ô Åº´Ù.
    if( document.frmMain.docKind.value == "S01" && document.frmMain.xmlDocVer.value == "5.0" ){
        // xml¹®ÀÚ¿­ÀÇ ÇÑ±ÛÀº UTF-8ÀÇ Çü½ÄÀ¸·Î ³Ñ¾î°¡Áö ¾Ê´Â´Ù. ¿î¿µÃ¼Á¦ÀÇ ·ÎÄÉÀÏÀ» µû¶ó °¡¹Ç·Î utf-8·Î ¼±¾ðÀ» ÇØµµ °á±¹ ½ºÅ©¸³Æ®ÀÇ ¹®ÀÚ¿­Àº ½Ã½ºÅÛ ·ÎÄÉÀÏÀÇ euc-krÀÇ °è¿­À» µû¶ó°£´Ù.
        // hex·Î ÀüÃ¼ ¹®ÀÚ¿­À» ÀÎÄÚµùÇÏ¿© yessign ocx¿¡¼­ ¹Þ¾Æ¼­ Ã³¸® ÇÑ´Ù.
        // javascript¿¡¼­ hexÀÎÄÚµù À¯Æ¿À» Ã£Áö ¸øÇØ¼­ java¿¡¼­ ÀÎÄÚµùÇÏ¿© µû·Î input¿¡ ´ã¾Æ¼­ È°¿ë ÇÏ´Â°ÍÀ¸·Î ´ëÃ³ Çß´Ù.
        inputStr = document.frmMain.stringToHex.value;  // ÀÌ°ªÀÌ  signAndEnv¿Í signAndEnv2°¡ ´Ù¸£´Ù.
        top.yessign.crypto.SetXMLSigLocation("TaxInvoiceDocument");
        top.yessign.crypto.SetXMLXPath("not(self::*[name() = 'TaxInvoice'] | ancestor-or-self::*[name()='ExchangedDocument'] | ancestor-or-self::ds:Signature)");

        // alert( inputStr );
        signedStr = top.yessign.crypto.SignXML(inputStr, ssn, option);
        if( signedStr == null || signedStr == "" ) {
            return;
        }
        // ¼­¸íµ¥ÀÌÅÍ¸¦ ¾ÏÈ£È­µ¥ÀÌÅÍ¿¡ Ã·ºÎ
        inputStr = "XMLSignedval=" + signedStr;
    }else{

        inputStr = document.frmMain.hash_data.value;
        signedStr = top.yessign.crypto.Sign(inputStr, ssn, option);
        if( signedStr == null || signedStr == "" ) {
            return;
        }
        // ¼­¸íµ¥ÀÌÅÍ¸¦ ¾ÏÈ£È­µ¥ÀÌÅÍ¿¡ Ã·ºÎ
        inputStr = "signedval=" + signedStr;
    }
    if( signedStr == null || signedStr == "" )
    {
        return;
    }
    //¼­¸íµ¥ÀÌÅÍ¸¦ ¾ÏÈ£È­µ¥ÀÌÅÍ¿¡ Ã·ºÎ
    if( resultVal != "" ) {
        inputStr = inputStr + "&" + resultVal;
    }

    document.frmMain._param.value="TMO_DOC_SIGN_HANDLER";

    document.frmMain.encryptedData.value = top.yessign.crypto.Encrypt(inputStr);
    if( document.frmMain.encryptedData.value ) {
        document.frmMain.submit();
    }

}



//¼­¸í ¹× °ø°³Å° ¾ÏÈ£È­ ¸Þ½ÃÁö¸¦ »ý¼ºÇÑ´Ù.
//ssn : null-ÁÖ¹Î¹øÈ£Ã¢ »ý¼º ¾ÈÇÔ, ""-ÁÖ¹Î¹øÈ£ ÀÔ·ÂÃ¢ »ý¼º, other-ÀÔ·ÂµÈ ÁÖ¹Î¹øÈ£·Î º»ÀÎÈ®ÀÎ
function signAndEnv2(ssn, inputStr)
{


    //ÇÃ·¯±×ÀÎ ÇÁ·Î±×·¥ ¼³Ä¡ °Ë»ç(yessign, Å°º¸µåº¸¾È)
    if( CheckInstallCrypto() == false ) {
    return;
    }

    //È¯°æ ¹× ¿É¼Ç ¼³Á¤
    PutConfigFileInfo();
    PutBannerInfo();

    //var signOption = ENABLE_SIGN_TEXT_VIEW;

    var option = defaultSelect;



    //¼­¹ö °ø°³Å° ¼³Á¤
    if( top.yessign.crypto.PutOtherCert(trus_ServerCert) == false )
    {
        return;
    }
    //AJAX¸¦ ÀÌ¿ëÇÑ Ã³¸®(¿äÃ»ÆäÀÌÁö, µ¿±â(false)/ºñµ¿±â(true))
    sendRequest('/', false);
    if( dateStr == null || dateStr == "" ) {
    dateStr = dateFormat(new Date(), "XXXX.XX.XX XX:XX:XX");
    }


    // formÀÇ ÀÔ·ÂÇÊµå¸¦ ¹®ÀÚ¿­·Î º¯È¯
    var resultVal = '';

    if (opener == undefined) resultVal = MakeInput(frmMain);
    else resultVal = MakeInput(frmPopMain);

    if(resultVal == ""){
        alert("¾ÏÈ£È­ ½ÇÆÐ");
        return;
    }

	// ÀÎÁõ¼­ ¼±ÅÃÃ¢¿¡ displayµÉ ÀÎÁõ¼­ Á¤Ã¥ ¼³Á¤
	top.yessign.crypto.CertSelect(TRUSBILL_POLICY); 

    //¼­¸íµ¥ÀÌÅÍ¸¦ »ý¼º
    // Ç¥ÁØÀüÀÚ¼¼±Ý°è»ê¼­ver3.0ÀÏ°æ¿ì¿¡¸¸ ¼­¸í Å×±×¸¦ ´Ù¸£°Ô Åº´Ù.
    if( document.frmPopMain.docKind.value == "S01" && document.frmPopMain.xmlDocVer.value == "5.0" ){

        var inputStrTemp = inputStr;  // ÀÌ°ªÀÌ  signAndEnv¿Í signAndEnv2°¡ ´Ù¸£´Ù.
        top.yessign.crypto.SetXMLSigLocation("TaxInvoiceDocument");
        top.yessign.crypto.SetXMLXPath("not(self::*[name() = 'TaxInvoice'] | ancestor-or-self::*[name()='ExchangedDocument'] | ancestor-or-self::ds:Signature)");

        signedStr = top.yessign.crypto.SignXML( inputStrTemp , ssn, option);
        if( signedStr == null || signedStr == "" ) {
            return;
        }
        // ¼­¸íµ¥ÀÌÅÍ¸¦ ¾ÏÈ£È­µ¥ÀÌÅÍ¿¡ Ã·ºÎ
        inputStr = "XMLSignedval=" + signedStr;

     }else{
        //inputStr = document.frmPopMain.hash_data.value;
        signedStr = top.yessign.crypto.Sign(inputStr, ssn, option);
        if( signedStr == null || signedStr == "" ) {
            return;
        }
        // ¼­¸íµ¥ÀÌÅÍ¸¦ ¾ÏÈ£È­µ¥ÀÌÅÍ¿¡ Ã·ºÎ
        inputStr = "signedval=" + signedStr;
    }

    if( signedStr == null || signedStr == "" )
    {
        return;
    }

    //¼­¸íµ¥ÀÌÅÍ¸¦ ¾ÏÈ£È­µ¥ÀÌÅÍ¿¡ Ã·ºÎ
    if( resultVal != "" ) {
        inputStr = inputStr + "&" + resultVal;
    }

    document.frmPopMain._param.value="TMO_DOC_SIGN_HANDLER";

    //ÀÚÃ¼ÀûÀ¸·Î encrypt¾ÏÈ£È­ ½ÃµµÇßÀ¸¹Ç·Î encrypt()¸¦ ¾È½áµµ µÊ

    document.frmPopMain.encryptedData.value = top.yessign.crypto.Encrypt(inputStr);

    if ( document.frmPopMain.encryptedData.value ){
        document.frmPopMain.submit();
    }


}

// ÀçÃ³¸®ÇÔ ¿ë. Ãß°¡. 12.28.njg.
// ¼­¸í ¹× °ø°³Å° ¾ÏÈ£È­ ¸Þ½ÃÁö¸¦ »ý¼ºÇÑ´Ù.
// ssn : null-ÁÖ¹Î¹øÈ£Ã¢ »ý¼º ¾ÈÇÔ, ""-ÁÖ¹Î¹øÈ£ ÀÔ·ÂÃ¢ »ý¼º, other-ÀÔ·ÂµÈ ÁÖ¹Î¹øÈ£·Î º»ÀÎÈ®ÀÎ
function signAndEnv_Reissue(ssn)
{

    // ÇÃ·¯±×ÀÎ ÇÁ·Î±×·¥ ¼³Ä¡ °Ë»ç(yessign, Å°º¸µåº¸¾È)
    if( CheckInstallCrypto() == false ) {
      return;
    }

    // È¯°æ ¹× ¿É¼Ç ¼³Á¤
    PutConfigFileInfo();
    PutBannerInfo();

    //var signOption = ENABLE_SIGN_TEXT_VIEW;

    var option = defaultSelect;


    // ¼­¹ö °ø°³Å° ¼³Á¤
    if( top.yessign.crypto.PutOtherCert(trus_ServerCert) == false ){
         return;
     }

    // AJAX¸¦ ÀÌ¿ëÇÑ Ã³¸®(¿äÃ»ÆäÀÌÁö, µ¿±â(false)/ºñµ¿±â(true))
    sendRequest('/', false);
    if( dateStr == null || dateStr == "" ) {
        dateStr = dateFormat(new Date(), "XXXX.XX.XX XX:XX:XX");
    }

    // formÀÇ ÀÔ·ÂÇÊµå¸¦ ¹®ÀÚ¿­·Î º¯È¯
    var resultVal = MakeInput(frmMain);

    if(resultVal == ""){
        alert("¾ÏÈ£È­ ½ÇÆÐ");
        return;
    }

    var inputStr = "";
    var signedStr = "";


	// ÀÎÁõ¼­ ¼±ÅÃÃ¢¿¡ displayµÉ ÀÎÁõ¼­ Á¤Ã¥ ¼³Á¤
	top.yessign.crypto.CertSelect(TRUSBILL_POLICY); 

    // ¼­¸íµ¥ÀÌÅÍ¸¦ »ý¼º
    // Ç¥ÁØÀüÀÚ¼¼±Ý°è»ê¼­ver3.0ÀÏ°æ¿ì¿¡¸¸ ¼­¸í Å×±×¸¦ ´Ù¸£°Ô Åº´Ù.
    if( document.frmMain.docKind.value == "S01" && document.frmMain.xmlDocVer.value == "5.0" ){
        // xml¹®ÀÚ¿­ÀÇ ÇÑ±ÛÀº UTF-8ÀÇ Çü½ÄÀ¸·Î ³Ñ¾î°¡Áö ¾Ê´Â´Ù. ¿î¿µÃ¼Á¦ÀÇ ·ÎÄÉÀÏÀ» µû¶ó °¡¹Ç·Î utf-8·Î ¼±¾ðÀ» ÇØµµ °á±¹ ½ºÅ©¸³Æ®ÀÇ ¹®ÀÚ¿­Àº ½Ã½ºÅÛ ·ÎÄÉÀÏÀÇ euc-krÀÇ °è¿­À» µû¶ó°£´Ù.
        // hex·Î ÀüÃ¼ ¹®ÀÚ¿­À» ÀÎÄÚµùÇÏ¿© yessign ocx¿¡¼­ ¹Þ¾Æ¼­ Ã³¸® ÇÑ´Ù.
        // javascript¿¡¼­ hexÀÎÄÚµù À¯Æ¿À» Ã£Áö ¸øÇØ¼­ java¿¡¼­ ÀÎÄÚµùÇÏ¿© µû·Î input¿¡ ´ã¾Æ¼­ È°¿ë ÇÏ´Â°ÍÀ¸·Î ´ëÃ³ Çß´Ù.
        inputStr = document.frmMain.stringToHex.value; // ÀÌ°ªÀÌ  signAndEnv¿Í signAndEnv2°¡ ´Ù¸£´Ù.
        top.yessign.crypto.SetXMLSigLocation("TaxInvoiceDocument");
        top.yessign.crypto.SetXMLXPath("not(self::*[name() = 'TaxInvoice'] | ancestor-or-self::*[name()='ExchangedDocument'] | ancestor-or-self::ds:Signature)");
        // alert( inputStr );
        signedStr = top.yessign.crypto.SignXML(inputStr, ssn, option);
        if( signedStr == null || signedStr == "" ) {
            return;
        }
        // ¼­¸íµ¥ÀÌÅÍ¸¦ ¾ÏÈ£È­µ¥ÀÌÅÍ¿¡ Ã·ºÎ
        inputStr = "XMLSignedval=" + signedStr;
    }else{

        inputStr = document.frmMain.hash_data.value;
        signedStr = top.yessign.crypto.Sign(inputStr, ssn, option);
        if( signedStr == null || signedStr == "" ) {
            return;
        }
        // ¼­¸íµ¥ÀÌÅÍ¸¦ ¾ÏÈ£È­µ¥ÀÌÅÍ¿¡ Ã·ºÎ
        inputStr = "signedval=" + signedStr;
    }
    if( signedStr == null || signedStr == "" )
    {
        return;
    }
    //¼­¸íµ¥ÀÌÅÍ¸¦ ¾ÏÈ£È­µ¥ÀÌÅÍ¿¡ Ã·ºÎ
    if( resultVal != "" ) {
        inputStr = inputStr + "&" + resultVal;
    }

    document.frmMain._param.value="TDO_DOCVAL_REISSUE_INSERT_HANDLER";

    document.frmMain.encryptedData.value = top.yessign.crypto.Encrypt(inputStr);
    if( document.frmMain.encryptedData.value ) {
        document.frmMain.submit();
    }

}


