2014-06-19 3 views
0

that project을 시작하려고합니다.JApplet을 실행할 수 없습니다 - 보안 문제로 라이브러리를로드 할 수 없습니다

파일의 디지털 서명을 만드는 자바 프로젝트입니다.

키 도구 -genkey -keyalg RSA -alias ALIAS -keystore sign_javafirma.keystore -storepass 패스워드 -validity를 사용하여 인증서를 생성

  1. : 내가 CentOS는 분포 (64 비트)에서 무슨 짓을했는지

    입니다 -keysize 2,048

  2. 365 편집 buildjar.xml 점에서 선택된 하나 ALIAS 및 비밀번호 변경 1.

  3. 설치 icedtea-web (yum install icedtea-web)

  4. make // 항아리 생성을 위해 ant를 실행합니다. 그 항아리가 제대로 생성 및 서명 후

, 난이 HTML로 애플릿을 시도 :

<applet code="it.treviso.provincia.freesigner.applet.FreeSignerSignApplet" type="application/x-java-applet" width="500" height="200"> 
     <param name="archive" value="freesignerapplet.jar" /> 
     <!-- file to sign. Result will be on the same directory --> 
     <param name="filename" value="test.pdf" /> 
     <!-- path of the library of the card reader --> 
     <param name="devlib" value="x64/libbit4ipki.so" /> 
     <!-- url called after the completion of the sign, passing the hash of the document as GET parameter --> 
     <param name="callback" value="http://pratiche.prov.tv.local/callback.php?key=blablabla" /> 
     <strong> 
    This browser does not have a Java Plug-in. 
     </strong> 
     <br /> 
     <a href="http://java.sun.com/products/plugin/downloads/index.html"> 
     Get the latest Java Plug-in here. 
     </a> 
</applet> 
</body> 
</html> 

경우 64/this website에서 다운로드 라이브러리입니다 libbit4ipki.so.

애플릿을로드해야하는 페이지로 이동하려고하면 insicure 애플릿을 실행하라는 요청을받은 후 "보안 문제를 해결하기 위해 라이브러리를로드 할 수 없습니다"라는 메시지가 표시되고 콘솔에는 아무 것도 없습니다.

어떻게 프로젝트를 시작할 수 있습니까?

감사합니다 !!!

+0

어떤 Java 버전을 사용하고 있습니까? 공식 인증서로 애플릿에 서명 했습니까? – Lonzak

+0

다른 버전을 사용해 보았습니다. 6에서 8까지 – JackTurky

+0

최근에 * racle이 많은 보안 관련 항목을 변경했습니다. 예를 들어, 그것을 실행할 수 있으려면 공식 인증서로 애플릿에 서명해야합니다. 이전 버전을 사용하는 경우 예 : 7.0.17 http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html#jdk-7u17-oth-JPR 및 그 작동 여부 확인 – Lonzak

답변

1

문제는 아마 여기에 있습니다 : 사용하여 인증서를 생성

키 도구 -genkey -keyalg RSA -alias ALIAS -keystore sign_javafirma.keystore -storepass PASSWORD -validity 365 -keysize 2048

이 인증서는 ant 빌드 buildjar.xml에서 jar에 서명하는 데 사용됩니다.

<signjar destDir="signed" alias="ALIAS" storepass="PASSWORD" keystore="sign_javafirma.keystore"> 
    <path> 
    <fileset dir="." includes="freesignerapplet.jar" /> 
    </path> 
    <flattenmapper /> 
</signjar> 

이것은 자체 서명 인증서이며 자체 서명 인증은 애플릿 서명에 더 이상 적합하지 않습니다. 신뢰할 수있는 소스 (예 : verisign, Thawte, Entrust 등)에서 코드 서명 인증서를 얻어야합니다.

관련 문제