Semnarea java-applets, compania de dezvoltare de software jazzteam

utilizator Vykladyvanii applet-uri problemă: JVM refuză să curgă, deoarece el crede applet nesekyurnym, browser-ul prezinta utilizatorului o mulțime de agresiv varningov un mesaje infricosatoare si confuze. Pentru a scăpa de ele, trebuie să semneze certificatul de applet de încredere și configurați parametrii necesari în fișierul manifest.







Semnarea java-applets, compania de dezvoltare de software jazzteam

Rularea unui applet este redusă la rularea fișierului jar-browser. Mecanismul de securitate al JVM începe să încarce porecla de jar și să-l verifice pentru securitate înainte ca clasele să fie încărcate. Aceasta verifică setările nivelului de securitate pentru aplicația Apple în clientul JVM, parametrii din manifestul de jar și verificarea semnăturii digitale.

Semnarea unui applet presupune semnarea unui fișier de jar. Acest lucru este făcut de utilitatea jarsigner. Utilitatea introduce în jar-ku o cheie criptată care conține informații despre resurse. Dacă încercați să modificați clasele jarului semnat, acesta nu va trece verificarea de securitate și nu va fi executat.

Aplicația nu poate fi semnată, semnată cu un certificat auto-creat sau de încredere. Apleturile JVM neimprimate încearcă să nu se încarce deloc (comportamentul depinde de versiune și setări). Dacă semnați un applet cu un certificat auto-fabricat, browserul va afișa mesajele - cablajul care îi sperie pe utilizator. Acest răspuns este doar pentru dezvoltare, dar nu pentru producție.

Cum este semnată aplicația

Mai întâi, trebuie să creați un fișier de stocare cheie. Aceasta se face prin utilitarul tastaturii. În acest exemplu, vom face un certificat auto-fabricat și vom semna apletul.

keytool -genkeypair -ciclul de stocare mystore -storepass storePassword -alias mykey -keypass keyPassword

Această comandă creează o cheie de stocare care conține cheia pentru semnătură. Apoi, această cheie trebuie să semneze un applet:

jarsigner applet.jar -keystore mystore -storepass storePassword -keypasskeyPassword mykey







De când am semnat apletul cu un certificat auto-fabricat, consola va afișa mesajul:

Atenție:
Certificatul de semnătură va expira în termen de șase luni.

Apoi, aplicația va fi lansată în browsere cu ieșirea avertizării despre securitizare. Pentru a le evita, trebuie să obțineți un certificat de încredere și să le semnați un applet.

Obținerea unui certificat de încredere și semnarea acestuia

Un certificat de încredere trebuie să fie achiziționat de la organizația relevantă. Costul poate varia de la 200 la 500 de dolari pe an. Am comandat de la Dumnezeu. Pentru operațiunile cu certificate, se folosește utilitarul pentru tastatură. Procesul de obținere a certificatului este următorul:

1) Creați un magazin de chei.

keytool -genkeypair -alias KeyName -keypass keyPassword -keystore keystore -storepass storePassword -keyalg RSA -keysize 2048

keytool -certreq -alias KeyName -file request.csr -keypass keyPassword -keystore keystore -storepass storePassword

3) După plată, organizația va furniza un link pentru a descărca fișierul de confirmare, care trebuie importat înapoi în magazinul de chei. Fișierul de confirmare poate fi în mai multe formate, dar mai multe despre acesta mai târziu. Fișierul este importat utilizând același utilitar cheie.

keytool -importcert -alias KeyName -file resounce.pem -keypass keyPassword -trustcacerts -keystore keystore -storepass storePassword

Apletul trebuie să fie semnat de către magazinul de chei primite:

jarsigner applet.jar keyName-chei storestore -storepass storePassword -keypasskeyPassword

După lansarea aplicației semnate, browserul va emite o fereastră prietenoasă cu mesajul despre apartenența aparatului la sursa de încredere. În plus, dacă este bifată, mesajul nu va apărea niciodată din nou.

Semnarea java-applets, compania de dezvoltare de software jazzteam

Care sunt tipurile de certificate

Certificatele vin în două caractere de bază:

  • DER - format binar;
  • Formatul PEM - ASCII codificat în BASE 64.

Fișierele de certificate pot avea astfel de extensii:

  • .CRT - este mai tipic pentru sistemele Unitate;
  • .CER este un standard de la Microsoft;
  • .KEY - conține atât cheia privată, cât și cheia publică.

Utilitarul pentru instrumentul cheie poate importa numai formatul PEM. Tipurile de certificate pot fi convertite între ele folosind openssl.

openssl x509 - în cert.crt -outform der -out cert.der

openssl x509 - în cert.crt -inform der -outform pem -out cert.pem

Mai multe detalii pot fi citite aici:

Importarea unui certificat existent în depozit de chei

Aplicația jarsigner semnează fișierele de jar doar cu cheia de stocare, care este creată de utilitarul pentru tastatură. Din păcate, dacă aveți deja un certificat existent, atunci importul în chestionar poate fi o problemă, deoarece nu există mecanisme standard pentru acest lucru. Dacă se produce această situație, puteți citi această soluție.

Link-uri utile

Utilități în JDK:

Articole despre semnarea Java-applets:

Obținerea unui certificat comercial:

Formate diferite de certificate și conversia acestora:

Importarea unui certificat existent în depozit de chei:







Trimiteți-le prietenilor: