Hola, yo finalmente seguí las indicaciones de Ricardo y utilicé XADES con firma 
a través de DNI electrónico y me funcionó perfectamente firmando todo tipo de 
ficheros. (adjunto mi fichero de configuración al final por si le puede ser 
útil a alguien).

Lo único que me pasa ahora es que cuando firmo la primera vez no lo hace 
correctamente, si desde el propio applet firmo una segunda vez entonces a 
partir de ahí firmo sin problema cualquier fichero. Simplemente es la primera 
vez y con firma XADES, con firma PDF me funciona perfectamente incluso la 
primera vez. El error que tengo es:

ASK FOR: DIGIDOC_OCSP4_CNreturn valueOCSP Responder
ASK FOR: DIGIDOC_OCSP4_CERTreturn valuejar://VA-ocspSign.pem
ASK FOR: DIGIDOC_OCSP4_CA_CERTreturn valuejar://VA-root.pem
ASK FOR: DIGIDOC_OCSP4_CA_CNreturn valueChambers of Commerce Root
DEBUG thread-sig-0 
es.uji.security.crypto.openxades.digidoc.factory.BouncyCastleNotaryFactory 
[16:53:08,952] - Responder: OCSP Responder cert: jar://VA-ocspSign.pem ca-cert: 
jar://VA-root.pem
INFO thread-sig-0 es.uji.security.crypto.openxades.digidoc.SignedDoc 
[16:53:08,999] - ERROR: Ca Certificate jar://VA-ocspSign.pem Not Found
ERROR thread-sig-0 es.uji.security.crypto.openxades.digidoc.DigiDocException 
[16:53:09,001] - java.security.cert.CertificateException: Missing input stream
java.security.cert.CertificateException: Missing input stream
        at sun.security.provider.X509Factory.engineGenerateCertificate(Unknown 
Source)
        at java.security.cert.CertificateFactory.generateCertificate(Unknown 
Source)
        at 
es.uji.security.crypto.openxades.digidoc.SignedDoc.readCertificate(SignedDoc.java:1009)
        at 
es.uji.security.crypto.openxades.digidoc.factory.BouncyCastleNotaryFactory.init(BouncyCastleNotaryFactory.java:1327)
        at 
es.uji.security.crypto.openxades.ConfigHandler.getNotaryFactory(ConfigHandler.java:76)
        at 
es.uji.security.crypto.openxades.digidoc.Signature.getConfirmation(Signature.java:693)
        at 
es.uji.security.crypto.openxades.OpenXAdESSignatureFactory.formatSignature(OpenXAdESSignatureFactory.java:274)
        at 
es.uji.security.ui.applet.SignatureThread.run(SignatureThread.java:298)
DEBUG thread-sig-0 es.uji.security.crypto.openxades.OpenXAdESSignatureFactory 
[16:53:09,002] - 

es.uji.security.crypto.openxades.OpenXAdESSignatureFactory: No se pudo realizar 
la confirmacion OCSPERROR: 128Reading OCSP config; nested exception is: 
        ERROR: 10 - ERROR: 10java.security.cert.CertificateException; nested 
exception is: 
        java.security.cert.CertificateException: Missing input stream
DEBUG thread-sig-0 es.uji.security.ui.applet.SignatureThread [16:53:09,003] - 
The signature is not valid

¿Alguna idea? Muchas gracias.

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

##
## Author: Pa�l Santapau Nebot 
## Date:   15-02-08
##
## Description: That is a sample conguration file for the uji 
##              crypto modules, that should be taken as an example 
##              and must be modified to fit the specific requierements 
##              of each case. 
##
##

##For Certificates a new protocol has been added, this is keystore://Alias 

#
##
## (XAdES-X-L) Digidoc related stuff
##
#

DEFAULT_KEYSTORE=uji.keystore

DIGIDOC_OCSP_RESPONDER_COUNT=3
DIGIDOC_OCSP_RESPONDER_URL1=http://ocsp.accv.es
DIGIDOC_OCSP_RESPONDER_URL2=http://ocsp.dnie.es
DIGIDOC_OCSP_RESPONDER_URL3=http://ocsp.camerfirma.com

SIGN_OCSP_REQUESTS=false
DIGIDOC_USE_NONCE=false

DIGIDOC_CA_CERTS=10
DIGIDOC_CA_CERT1=jar://cagva.pem
DIGIDOC_CA_CERT2=jar://rootca.pem
DIGIDOC_CA_CERT3=jar://accv-ca2.pem
DIGIDOC_CA_CERT4=jar://ACDNIE001.pem
DIGIDOC_CA_CERT5=jar://ACDNIE002-SHA1.pem
DIGIDOC_CA_CERT6=jar://ACDNIE003-SHA1.pem
DIGIDOC_CA_CERT7=jar://NisuCa.pem
DIGIDOC_CA_CERT8=jar://ujica.pem
DIGIDOC_CA_CERT9=jar://fnmt.pem
DIGIDOC_CA_CERT10=jar://CACamerfirma.pem


DIGIDOC_OCSP_COUNT=4
DIGIDOC_OCSP1_CN=ocsp-gva
DIGIDOC_OCSP1_CERT=jar://ocsp-gva.crt
DIGIDOC_OCSP1_CA_CERT=jar://cagva.pem
DIGIDOC_OCSP1_CA_CN=CAGVA

DIGIDOC_OCSP2_CN=AV DNIE FNMT
DIGIDOC_OCSP2_CERT=jar://DNIEOCSP.pem
DIGIDOC_OCSP2_CA_CERT=jar://ACDNIE001.pem
DIGIDOC_OCSP2_CA_CN=AC DNIE 001

DIGIDOC_OCSP3_CN=ocsp-gva
DIGIDOC_OCSP3_CERT=jar://ocsp-gva-old.crt
DIGIDOC_OCSP3_CA_CERT=jar://cagva.pem
DIGIDOC_OCSP3_CA_CN=CAGVA

DIGIDOC_OCSP4_CN=OCSP Responder
DIGIDOC_OCSP4_CERT=jar://VA-ocspSign.pem
DIGIDOC_OCSP4_CA_CERT=jar://VA-root.pem
DIGIDOC_OCSP4_CA_CN=Chambers of Commerce Root

# OCSP, CRL or none selectors
DIGIDOC_CERT_VERIFIER=OCSP
DIGIDOC_SIGNATURE_VERIFIER=OCSP
#DIGIDOC_CERT_VERIFIER=NONE
#DIGIDOC_SIGNATURE_VERIFIER=NONE

# Set this value to false if you are not adding an ocsp 
# confirmation to your signatures, otherwise, an exception 
# will be thrown if the confirmation does not exists.
DIGIDOC_DEMAND_OCSP_CONFIRMATION_ON_VERIFY=true


# Set this value to 0 if you do not want 
# compute the tsp.
#DIGIDOC_TSA_COUNT=0

DIGIDOC_TSA_COUNT=2


DIGIDOC_TSA1_CERT=jar://tsa1_accv.der
DIGIDOC_TSA1_CA_CERT=jar://tsa1_accv.der
DIGIDOC_TSA1_USE_NONCE=true
DIGIDOC_TSA1_ASK_CERT=false
DIGIDOC_TSA1_URL=http://tss.accv.es:8318/tsa
DIGIDOC_TSA1_CN=CAGVA
DIGIDOC_TSA1_CA_CN=CAGVA
DIGIDOC_TSA1_SN=12
DIGIDOC_MAX_TSA_TIME_ERR_SECS=60

DIGIDOC_TSA2_CERT=jar://Cert-TSU.cer
DIGIDOC_TSA2_CA_CERT=jar://Cert-TSU.cer
DIGIDOC_TSA2_USE_NONCE=true
DIGIDOC_TSA2_ASK_CERT=false
DIGIDOC_TSA2_URL=http://tsa.camerfirma.com:15004/TSUSoftware.
DIGIDOC_TSA2_CN=TSA Camerfirma SW anonimo
DIGIDOC_TSA2_CA_CN=TSA Camerfirma SW anonimo
DIGIDOC_TSA2_SN=12
DIGIDOC_MAX_TSA_TIME_ERR_SECS=60


#
##
## Pdf related stuff
##
#

PDFSIG_REASON=CryptoApplet digital signatures 
PDFSIG_LOCATION=Spain
PDFSIG_CONTACT=Jaume I University

PDFSIG_CA_CERTS=10
PDFSIG_CA_CERT1=cagva.pem
PDFSIG_CA_CERT2=rootca.pem
PDFSIG_CA_CERT3=accv-ca2.pem
PDFSIG_CA_CERT4=ACDNIE001.pem
PDFSIG_CA_CERT5=ACDNIE002-SHA1.pem
PDFSIG_CA_CERT6=ACDNIE003-SHA1.pem
PDFSIG_CA_CERT7=NisuCa.pem
PDFSIG_CA_CERT8=test.pem
PDFSIG_CA_CERT9=fnmt.pem
PDFSIG_CA_CERT10=CACamerfirma.pem


#
#If false, next line will be ignored
#
PDFSIG_TIMESTAMPING=false
PDFSIG_TSA_URL=http://tss.accv.es:8318/tsa


#
#If false, next line will be ignored
#
CMS_TIMESTAMPING=true
CMS_TSA_URL=http://tss.accv.es:8318/tsa

PDFSIG_VISIBLE_SIGNATURE=true
PDFSIG_VISIBLE_AREA_X=0
PDFSIG_VISIBLE_AREA_Y=830
PDFSIG_VISIBLE_AREA_X2=110
PDFSIG_VISIBLE_AREA_Y2=785
PDFSIG_VISIBLE_AREA_PAGE=1
PDFSIG_VISIBLE_AREA_IMGFILE=uji.jpg

Iván Franco Rabuñal
Director de ProyectosProject Manager



[email protected]

Polígono Industrial A Granxa
Paralela 1 (calle D)Edificio de Piedra
36400 O Porriño (Pontevedra)

Tel: +34 986342774
Fax:+34 986342298

Este mensaje, y en su caso, cualquier fichero anexo al mismo, puede contener 
información confidencial, siendo para uso exclusivo del destinatario. Queda 
prohibida su divulgación copia o distribución a terceros sin la autorización 
expresa del remitente. Si usted ha recibido este mensaje erróneamente, se ruega 
lo notifique al remitente y proceda a su borrado. Gracias por su colaboración.
This message, and in the case of any file annexed to it, can have confidential 
information, and it is exclusively for the use of the addressee of the message. 
It is strictly forbidden to spread a copy or distribute to third parties, 
without the express order of the sender. If you have received this message 
mistakenly, we request you to notify to the sender, and please be sure to erase 
it. Thank you for your collaboration.




-----Mensaje original-----
De: [email protected] 
[mailto:[email protected]] En nombre de Ricardo Borillo
Enviado el: sábado, 14 de agosto de 2010 11:30
Para: Llista de correu per al CryptoApplet
Asunto: Re: [CryptoApplet] Null pointer al intentar firmar con formato XADES

Hola de nuevo,

El valor del setSignatureOutputFormat es "JXADES".

---
Salut,
====================================
Ricardo Borillo Domenech
http://xml-utils.com / http://twitter.com/borillo



2010/8/13 José Luís Vaquero <[email protected]>:
> Pues tienes toda la razon.
>
> En un futuro dispondré de servicio OCSP a si que para el desarrollo de los
> prototipos lo mejor es probar con el DNIE y su correspondiente responder.
>
> BTW: Cual es el parametro que le tengo que pasar a setSignatureOutputFormat
> para XAdES-EPES?? Por que en la pagina de Test de cryptoapplet no encuentro
> esa opcion.
>
> http://projectestic.uji.es/pr/cryptoapplet/samples/v2.1.0/test.html
>
>
> Voy a probar a ponerles el valor OCSP y ver si no me da NPE.
>
> Muchisimas gracias.
>
>
> El 13 de agosto de 2010 13:22, Ricardo Borillo <[email protected]>
> escribió:
>>
>> Hola Jose Luis,
>>
>> Te responderé explicándote los formatos de firma que soporta CryptoApplet
>> :)
>>
>> *. XAdES-X-L con OpenXAdES. Firma completa que incluye sellado de
>> tiempo y verificación del certificado mediante OCSP/CRL. No se pueden
>> generar otros perfiles de XAdES.
>> *. XAdES-EPES con jXAdES. Este tipo de firma sólo añade a la firma
>> básica la política de seguridad. Es la mínima exigida por la
>> administración para facturación electrónica. No incluye ningún sello
>> de tiempo, ni verificación de certificados.
>>
>> Analizando tus requisitos, supongo que el tipo ideal de firma para tu
>> caso es XAdES-T, ya que incluye un timestamp, pero no incluye las
>> respuestas OCSP. El problema es que este tipo de formato no está
>> disponible directamente en CryptoApplet :(
>>
>> Con esto, supongo que la única opción en tu caso es usar el segundo
>> tipo de firma.
>>
>> Si lo que estás haciendo ahora son solo pruebas, lo mejor es utlizar
>> tu DNIe y generar firmas completas X-L ...
>>
>> ---
>> Salut,
>> ====================================
>> Ricardo Borillo Domenech
>> http://xml-utils.com / http://twitter.com/borillo
>>
>>
>>
>> 2010/8/13 José Luís Vaquero <[email protected]>:
>> > Muchas gracias por responder.
>> >
>> > Desgraciadamente no dispongo de un servicio OCSP ni CLR para validar los
>> > certificados todavia. Si les asigno el valor OCSP (o CLR) a esas dos
>> > entradas de configuracion me va a intentar validar el certificado y me
>> > daria
>> > error de "certificate status unknown".
>> >
>> > Segun creia yo, la cosa era asi:
>> >  XADES-BES - firma basica
>> > XADES-T - firma basica mas sello de tiempo (activar el sello de tiempo
>> > en el
>> > fichero de configuracion de cryptoapplet)
>> > XADES-X-L - firma basica, sello de tiempo y verificacion de certificado
>> > (activar la verificacion de certificado en el fichero de configuracion
>> > de
>> > cryptoapplet y la de sello de tiempo)
>> >
>> > Por lo que parece necesito aclararme, ¿se me podria responder a estas
>> > dudas?
>> >
>> > ¿Puedo firmar sin sello de tiempo y sin verificacion de certificado? en
>> > caso
>> > afirmativo ¿Como seria la configuracion en cryptoapplet para que no de
>> > NPE?
>> >
>> > ¿Puedo firmar con sello de tiempo pero sin verificacion de certificado?
>> > en
>> > caso afirmativo ¿Como seria la configuracion en cryptoapplet para que no
>> > de
>> > NPE?
>> >
>> > Gracias de nuevo. Un saludo.
>> >
>> > 2010/8/13 Ricardo Borillo <[email protected]>
>> >>
>> >> Hola Jose Luis,
>> >>
>> >> Parece que el NPE se produce por culpa de estos valores de
>> >> configuración:
>> >>
>> >> DIGIDOC_CERT_VERIFIER=
>> >> DIGIDOC_SIGNATURE_VERIFIER=
>> >>
>> >> Estás intentando utilizar la firma XAdES-X-L, y necesitas que el valor
>> >> establecido no sea nulo.
>> >> Lo mejor es que dejes la config por defecto:
>> >>
>> >> DIGIDOC_CERT_VERIFIER=OCSP
>> >> DIGIDOC_SIGNATURE_VERIFIER=OCSP
>> >>
>> >> ---
>> >> Salut,
>> >> ====================================
>> >> Ricardo Borillo Domenech
>> >> http://xml-utils.com / http://twitter.com/borillo
>> >>
>> >>
>> >>
>> >> 2010/8/12 José Luís Vaquero <[email protected]>:
>> >> > En el correo anterior puse un fichero de configuracion erroneo, el
>> >> > que
>> >> > utilizo es el siguiente:
>> >> >
>> >> > ##
>> >> > ## Author: Pa�l Santapau Nebot
>> >> > ## Date:   15-02-08
>> >> > ##
>> >> > ## Description: That is a sample conguration file for the uji
>> >> > ##              crypto modules, that should be taken as an example
>> >> > ##              and must be modified to fit the specific
>> >> > requierements
>> >> > ##              of each case.
>> >> > ##
>> >> > ##
>> >> >
>> >> > ##For Certificates a new protocol has been added, this is
>> >> > keystore://Alias
>> >> >
>> >> > #
>> >> > ##
>> >> > ## (XAdES-X-L) Digidoc related stuff
>> >> > ##
>> >> > #
>> >> >
>> >> > DEFAULT_KEYSTORE=uji.keystore
>> >> >
>> >> > DIGIDOC_OCSP_RESPONDER_COUNT=0
>> >> >
>> >> >
>> >> > #DIGIDOC_OCSP_RESPONDER_URL1=http://des-afirma.redinteradministrativa.es/servidorOcsp/servidorOCSP
>> >> > #DIGIDOC_OCSP_RESPONDER_URL1=http://ocsp.accv.es
>> >> > #DIGIDOC_OCSP_RESPONDER_URL2=http://ocsp.dnie.es
>> >> >
>> >> > SIGN_OCSP_REQUESTS=false
>> >> > DIGIDOC_USE_NONCE=false
>> >> >
>> >> > DIGIDOC_CA_CERTS=10
>> >> > DIGIDOC_CA_CERT1=jar://cagva.pem
>> >> > DIGIDOC_CA_CERT2=jar://rootca.pem
>> >> > DIGIDOC_CA_CERT3=jar://accv-ca2.pem
>> >> > DIGIDOC_CA_CERT4=jar://ACDNIE001.pem
>> >> > DIGIDOC_CA_CERT5=jar://ACDNIE002-SHA1.pem
>> >> > DIGIDOC_CA_CERT6=jar://ACDNIE003-SHA1.pem
>> >> > DIGIDOC_CA_CERT7=jar://ACRAIZDNIE.pem
>> >> > DIGIDOC_CA_CERT8=jar://NisuCa.pem
>> >> > DIGIDOC_CA_CERT9=jar://ujica.pem
>> >> > DIGIDOC_CA_CERT10=jar://fnmt.pem
>> >> >
>> >> > DIGIDOC_OCSP_COUNT=0
>> >> >
>> >> > #DIGIDOC_OCSP1_CN=AV DNIE MPR
>> >> > #DIGIDOC_OCSP1_CERT=jar://AVDNIEMPR.pem
>> >> > #DIGIDOC_OCSP1_CA_CERT=jar://ACDNIE001.pem
>> >> > #DIGIDOC_OCSP1_CA_CN=AC DNIE 001
>> >> >
>> >> > #DIGIDOC_OCSP2_CN=ocsp-gva
>> >> > #DIGIDOC_OCSP2_CERT=jar://ocsp-gva.crt
>> >> > #DIGIDOC_OCSP2_CA_CERT=jar://cagva.pem
>> >> > #DIGIDOC_OCSP2_CA_CN=CAGVA
>> >> >
>> >> > #DIGIDOC_OCSP3_CN=AV DNIE FNMT
>> >> > #DIGIDOC_OCSP3_CERT=jar://DNIEOCSP.pem
>> >> > #DIGIDOC_OCSP3_CA_CERT=jar://ACDNIE001.pem
>> >> > #DIGIDOC_OCSP3_CA_CN=AC DNIE 001
>> >> >
>> >> > #DIGIDOC_OCSP4_CN=ocsp-gva
>> >> > #DIGIDOC_OCSP4_CERT=jar://ocsp-gva-old.crt
>> >> > #DIGIDOC_OCSP4_CA_CERT=jar://cagva.pem
>> >> > #DIGIDOC_OCSP4_CA_CN=CAGVA
>> >> >
>> >> > # OCSP, CRL or none selectors
>> >> > DIGIDOC_CERT_VERIFIER=
>> >> > DIGIDOC_SIGNATURE_VERIFIER=
>> >> >
>> >> > # Set this value to false if you are not adding an ocsp
>> >> > # confirmation to your signatures, otherwise, an exception
>> >> > # will be thrown if the confirmation does not exists.
>> >> > DIGIDOC_DEMAND_OCSP_CONFIRMATION_ON_VERIFY=false
>> >> >
>> >> >
>> >> > # Set this value to 0 if you do not want
>> >> > # compute the tsp.
>> >> >
>> >> > DIGIDOC_TSA_COUNT=1
>> >> >
>> >> > #DIGIDOC_TSA1_CERT=jar://des-tsafirma.pem
>> >> > #DIGIDOC_TSA1_CA_CERT=jar://accv-ca2.pem
>> >> > #DIGIDOC_TSA1_USE_NONCE=false
>> >> > #DIGIDOC_TSA1_ASK_CERT=false
>> >> > #DIGIDOC_TSA1_URL=https://10.252.144.129:8443/tsamap/TspHttpServer
>> >> > #DIGIDOC_TSA1_CN=des-tsafirma.redinteradministrativa.es
>> >> > #DIGIDOC_TSA1_CA_CN=ACCV-CA2
>> >> > #DIGIDOC_TSA1_SN=6e6f33858ec20f91
>> >> > #DIGIDOC_MAX_TSA_TIME_ERR_SECS=60
>> >> >
>> >> > DIGIDOC_TSA1_CERT=jar://tsa1_accv.der
>> >> > DIGIDOC_TSA1_CA_CERT=jar://tsa1_accv.der
>> >> > DIGIDOC_TSA1_USE_NONCE=false
>> >> > DIGIDOC_TSA1_ASK_CERT=false
>> >> > DIGIDOC_TSA1_URL=http://tss.accv.es:8318/tsa
>> >> > DIGIDOC_TSA1_CN=TSA1 ACCV
>> >> > DIGIDOC_TSA1_CA_TSA1 ACCV
>> >> > DIGIDOC_TSA1_SN=45633cf6
>> >> > DIGIDOC_MAX_TSA_TIME_ERR_SECS=60
>> >> >
>> >> >
>> >> >
>> >> >
>> >> > #
>> >> > ##
>> >> > ## Pdf related stuff
>> >> > ##
>> >> > #
>> >> >
>> >> > PDFSIG_REASON=CryptoApplet digital signatures
>> >> > PDFSIG_LOCATION=Spain
>> >> > PDFSIG_CONTACT=Jaume I University
>> >> >
>> >> > PDFSIG_CA_CERTS=9
>> >> > PDFSIG_CA_CERT1=cagva.pem
>> >> > PDFSIG_CA_CERT2=rootca.pem
>> >> > PDFSIG_CA_CERT3=accv-ca2.pem
>> >> > PDFSIG_CA_CERT4=ACDNIE001.pem
>> >> > PDFSIG_CA_CERT5=ACDNIE002-SHA1.pem
>> >> > PDFSIG_CA_CERT6=ACDNIE003-SHA1.pem
>> >> > PDFSIG_CA_CERT7=NisuCa.pem
>> >> > PDFSIG_CA_CERT8=test.pem
>> >> > PDFSIG_CA_CERT9=fnmt.pem
>> >> >
>> >> >
>> >> > #
>> >> > #If false, next line will be ignored
>> >> > #
>> >> > PDFSIG_TIMESTAMPING=false
>> >> > PDFSIG_TSA_URL=http://tss.accv.es:8318/tsa
>> >> >
>> >> >
>> >> > #
>> >> > #If false, next line will be ignored
>> >> > #
>> >> > CMS_TIMESTAMPING=false
>> >> > CMS_TSA_URL=http://tss.accv.es:8318/tsa
>> >> >
>> >> > PDFSIG_VISIBLE_SIGNATURE=false
>> >> > PDFSIG_VISIBLE_AREA_X=0
>> >> > PDFSIG_VISIBLE_AREA_Y=830
>> >> > PDFSIG_VISIBLE_AREA_X2=110
>> >> > PDFSIG_VISIBLE_AREA_Y2=785
>> >> > PDFSIG_VISIBLE_AREA_PAGE=1
>> >> > PDFSIG_VISIBLE_AREA_IMGFILE=uji.jpg
>> >> >
>> >> >
>> >> > _______________________________________________
>> >> > CryptoApplet mailing list
>> >> > [email protected]
>> >> > http://llistes.uji.es/mailman/listinfo/cryptoapplet
>> >> >
>> >> >
>> >> _______________________________________________
>> >> CryptoApplet mailing list
>> >> [email protected]
>> >> http://llistes.uji.es/mailman/listinfo/cryptoapplet
>> >
>> >
>> > _______________________________________________
>> > CryptoApplet mailing list
>> > [email protected]
>> > http://llistes.uji.es/mailman/listinfo/cryptoapplet
>> >
>> >
>> _______________________________________________
>> CryptoApplet mailing list
>> [email protected]
>> http://llistes.uji.es/mailman/listinfo/cryptoapplet
>
>
> _______________________________________________
> CryptoApplet mailing list
> [email protected]
> http://llistes.uji.es/mailman/listinfo/cryptoapplet
>
>
_______________________________________________
CryptoApplet mailing list
[email protected]
http://llistes.uji.es/mailman/listinfo/cryptoapplet

_______________________________________________
CryptoApplet mailing list
[email protected]
http://llistes.uji.es/mailman/listinfo/cryptoapplet

Responder a