2013-06-19 14 views
6

Im siedzi z niewielkim problemem. Jestem zajęty tworzeniem witryny php/html (intranetu) dla naszego zespołu wsparcia, aby ułatwić życie, gdy obsługują maszyny linuxowe.Podpisywanie .Jar plik

Mam aplikację .jar o nazwie mindterm (darmowa wersja) i chcę uruchomić ją jako aplet na stronie.

Jednak zgodnie z ich witryną musisz mieć podpisany plik .jar przed załadowaniem go jako apletu, w przeciwnym razie nie będzie można otworzyć połączeń TCP.

Zrobiłem tak dużo badań, jak tylko mogłem, w czasie, gdy miałem i wymyśliłem pliki jarsigner.exe i keytool.exe dostarczone w instalacji JDK.

Jednak nie mam pojęcia, jak postąpić, podpisując tę ​​aplikację, aby móc z niej korzystać.

Każda pomoc?

Dzięki

+0

Twój problem nie jest proces podpisywania, to jest certyfikat i prywatny klucz trzeba.Ten "certyfikat podpisywania kodu Java" musi zostać zakupiony przez Trust-Center. – Robert

Odpowiedz

13

Najpierw utwórz klucz-pair korzystając keytool.

keytool -genkey -alias somekeyname 

Następnie użyj jarsigner podpisać ją z nowo utworzonego klucza.

jarsigner /path/to/jar somekeyname 

Uwaga, trzeba korzystać z tego samego pseudonimu (somekeyname tutaj) jako jeden utworzyć klucz z.

Teraz, ponieważ certyfikat jest samopodpisany, użytkownik apletu zostanie poproszony o zatwierdzenie certyfikatu. Gdy to zrobią, Twoje połączenia TCP powinny działać.

Ponieważ zakładam, że używasz apletu tylko wewnętrznie w organizacji, samopodpisane certyfikaty powinny być w porządku. W przeciwnym razie będziesz musiał zapłacić za certyfikat. W takim przypadku użytkownicy nie będą musieli akceptować certyfikatów po raz pierwszy (jeśli wybierze opcję Zawsze zezwalaj ").

+0

dzięki za informacje spróbuj to jak najszybciej. wszystko odbywa się wewnętrznie, więc nie jesteśmy zbyt podzieleni na temat posiadania certyfikowanego certyfikatu – Stroes

+0

YOU SIR zasługują na piwo! – Stroes

+0

* "W przeciwnym razie będziesz musiał zapłacić za certyfikat. W takim przypadku użytkownicy nie będą musieli ręcznie akceptować certyfikatów." * Zakup certyfikatu nie * blokuje * dialogów bezpieczeństwa, po prostu czyni je ładniejszymi i zapamiętuje 'zawsze pozwalać'. ;) –

0

To dość skomplikowana dziedzina i zasadniczo musisz wiedzieć, co robisz, a Ty może trzeba płacić prawdziwe pieniądze za pomocą certyfikatu podpisywania

The Sun Java Tutorial pokrycie temat Well:.. http://docs.oracle.com/javase/tutorial/deployment/jar/signing.html

Jeśli intencją jest, aby dać ludziom wsparcie klienta ssh, nie może być lepsze rozwiązania

1

Możesz podpisać słoiki za pomocą:

zainstalować ten plugin Eclipse

Eclipse Webstart Plugin.

będzie po prostu trzeba wyeksportować jako "webstart". Poprosi Cię o podpisanie słoików.

DEMO

0

połączeniu górna odpowiedź z someusefulhints dostać całkowicie unattanded skrypt:

keytool -genkey -noprompt -alias Alias -dname "CN=Hostname, OU=OrganizationalUnit, O=Organization, L=City, S=State, C=Country" -keystore path.to.keystore -storepass password -keypass password -validity 3650 
jarsigner -keystore path.to.keystore -storepass password -keypass password -signedjar signed.jar unsigned.jar Alias