Foros del Web » Programando para Internet » Javascript »

signText para Firefox

Estas en el tema de signText para Firefox en el foro de Javascript en Foros del Web. Hola a todo el mundo. He estado buscando la solución a mi problema por el foro pero no la he encontrado. La cuestión en si, ...
  #1 (permalink)  
Antiguo 22/09/2008, 04:03
 
Fecha de Ingreso: marzo-2007
Mensajes: 3
Antigüedad: 17 años, 1 mes
Puntos: 0
signText para Firefox

Hola a todo el mundo.

He estado buscando la solución a mi problema por el foro pero no la he encontrado.

La cuestión en si, es:
Se tiene en una pagina JSP que obtener los Certificados que el cliente tiene en esa maquina, para ello en IE funciona perfectamente pero en FireFox 2 no(de la version 3.0 ya ni hablo ...),
el codigo para ello es sencillo y publicado en montón de sitios de Internet:

Código:
function listaCertificados(selector){
    try{
        var mystore = new ActiveXObject("CAPICOM.Store");
        var SubjectNameCn = "MY";
        mystore.Open(CAPICOM_CURRENT_USER_STORE, SubjectNameCn, CAPICOM_STORE_OPEN_READ_ONLY);
        var listCerts = mystore.Certificates;
        selector.options.length=0;
        if(listCerts.Count >0  ){
            for(j=1;j<=listCerts.Count;j++){
                var linea = "CN= "+listCerts(j).GetInfo(CAPICOM_CERT_FIND_CN) ;
                selector.options[j-1] = new Option(linea,j);
            } 
        }
    }catch(e){
        alert("error al cargar los certificados");
        return false;
    }
    return true;
}
Eso por una parte y luego también llevo buscando la solución varios dias al problema que cuando se le da al boton de aceptar firme un dato seleccionado con el certificado que el usuario ha elegido en la JSP, que con IE funciona perfectamente con la CAPICOM, pero para FireFox 2, según el codigo JavaScript que he visto por la red debiera funcionar (más que nada porque todas las Webs lo ponen igual) pero no se que es lo que hay mal:

Código:
function AuthenticateFirefox(){
    var hash = "1";//document.getElementById("certs").value;
    document.getElementById("data").value = document.getElementById("certs").value;
 var firmado = window.crypto.signText(hash, "ask");

        if (firmado.substring(0,5) =="error") {
            alert("Your navigator has not generate a valid sign");
            return;
        }
        else if (firmado =="no generada") {
            alert("Your navigator has not generate a sign.");
            return;
        }
        else 
        {
            return firmado;
         }
}
Un saludo y gracias por adelantado
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:24.