Puncte:1

Tipuri de chei incompatibile

drapel ke

Luați în considerare următoarele. Am o rețea descentralizată de noduri care pot vorbi între ele și aș dori să le criptez comunicațiile. Mă îndrept către criptarea asimetrică, modul în care funcționează majoritatea internetului și de când am folosit Google Tink și am deja scris un cod la îndemână pentru el, eu optez pentru criptare hibridă în Tink.

Pagina despre criptare hibridă spune: „Criptarea hibridă oferă doar confidențialitate, nu autenticitate.Este sigur doar dacă destinatarul poate accepta mesaje anonime sau se poate baza pe alte mecanisme pentru a autentifica expeditorul." Așa că îmi dau seama, bine, bine; voi da fiecărui nod o pereche de chei private/publice, folosesc criptarea hibridă pentru a cripta un mesaj. cu cheia publică a destinatarului și utilizați Semnatura digitala pentru a semna mesajul cu cheia privată a expeditorului.

Cu excepția, odată ce am configurat un cod și am început să-l testez, mi-am dat seama rapid că diferitele mecanisme suportă seturi complet disjunse de tipuri de chei.

Întrebări:

  1. Este aceasta o proprietate fundamentală a mecanismelor criptografice implicate?
  2. Nu există într-adevăr nicio modalitate de a folosi aceeași pereche de chei pentru semnare, precum și pentru criptare, sau poate chiar între oricare două dintre mecanismele simetrice date Aici, fie?
  3. Trebuie doar să urmăresc mai multe chei pe nod? Mi-am întreținut speranța de a identifica nodurile după cheia lor publică; mi s-a parut o solutie deosebit de eleganta....
Puncte:2
drapel in

Deci îmi dau seama, bine, bine; Voi acorda fiecărui nod o pereche de chei private/publice, voi folosi criptarea hibridă pentru a cripta un mesaj cu cheia publică a destinatarului și voi folosi Semnătura digitală pentru a semna mesajul cu cheia privată a expeditorului.

Ai grijă că asta este criptare-apoi-semnare. Este OK numai dacă aveți încredere doar într-un anumit set de participanți și aveți încredere că participanții nu vor înlocui semnătura niciunui alt participant.

1. Este aceasta o proprietate fundamentală a mecanismelor criptografice implicate?

Nu, nu este. Și au uitat să arate criptare hibridă folosind RSA.

2. Nu există într-adevăr nicio modalitate de a folosi aceeași pereche de chei pentru semnare, precum și pentru criptare, sau poate chiar între oricare dintre mecanismele simetrice prezentate aici?

Da, puteți utiliza RSA pentru ambele, iar perechile de chei ECDH sunt în general compatibile și cu ECDSA. Cu toate acestea, acest API este pentru utilizarea în siguranță a criptografiei și pentru utilizarea aceleiași chei atât pentru generarea de semnături și decriptare nu este văzută ca cea mai bună practică.

3. Trebuie doar să urmăresc mai multe chei pe nod? Mi-am întreținut speranța de a identifica nodurile după cheia lor publică; mi s-a parut o solutie deosebit de eleganta....

Nu este. De obicei, trebuie să aveți managementul cheilor. Cheile au de obicei un interval de timp specificat în care sunt valabile. De exemplu, certificatele au nu inainte și nuDupă câmpuri care nu indică doar când este valabil certificatul, ci și cât timp poate fi utilizată cheia privată (și de obicei publică).

Se pare că această bibliotecă este o bibliotecă de ajutor pentru dezvoltatori. Nu prea specifică niciun protocol.Sincer să fiu, cred că acest tip de „biblioteci wrapper” care nu implementează și/sau nu sunt specifice aplicației au o utilizare limitată.

Vă recomand cu tărie să utilizați două perechi de chei, una pentru criptare și semnare. Pentru a crea un cadru de încredere, puteți utiliza PKI. În cele din urmă, se pare că aveți nevoie de securitatea transportului; în acest caz, aș recomanda TLS.

drapel ke
O serie de puncte bune, mulțumesc. S-ar întâmpla să aveți un punct de plecare pentru cum să utilizați PKI și/sau TLS în Java, în scenariul pe care l-am descris mai sus?

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.