Jag har precis börjat använda GPG och skapat en offentlig nyckel. Det är lite meningslöst om ingen vet om det. Hur ska jag distribuera det? Ska jag lägga upp det på min profil på Facebook och LinkedIn? Vad sägs om min blogg? Vilka är riskerna?
Jag har precis börjat använda GPG och skapat en offentlig nyckel. Det är lite meningslöst om ingen vet om det. Hur ska jag distribuera det? Ska jag lägga upp det på min profil på Facebook och LinkedIn? Vad sägs om min blogg? Vilka är riskerna?
Bästa sättet att distribuera din nyckel är att använda en av de nyckelservrar som är tillgängliga, till exempel keyserver.ubuntu.com, pgp.mit.edu eller keyserver.pgp.com.
Om du använder Seahorse (standardnyckelhanteraren under Ubuntu) synkroniserar den automatiskt dina nycklar till en av dessa servrar. Användare kan sedan slå upp din nyckel med din e-postadress eller keyid.
Om du ville lägga upp din offentliga nyckel på LinkedIn eller din blogg kan du antingen ladda upp nyckeln till din server eller bara länka till sidan för din nyckel på en av nyckelservrarna ovan. Personligen skulle jag ladda upp den till en av nyckelservrarna och länka till den, eftersom det är lättare att hålla den uppdaterad på ett ställe, istället för att ha filen på många olika platser. Du kan också dela din keyid med människor, och de kan sedan ta emot din nyckel med gpg --recv-keys
.
Om du vill lägga upp din offentliga nyckel på Facebook finns det är ett fält för att placera det under avsnittet Kontaktinfo i din profil. Du kan också ändra dina Facebook-säkerhetsinställningar för att använda samma offentliga nyckel för att kryptera sina e-postmeddelanden till dig.
Till exempel, här är min offentliga nyckel.
Så vitt jag vet finns det inga risker förknippade med att publicera din offentliga nyckel.
Det finns ingen risk att avslöja din privata nyckel eller ogiltigförklara din offentliga nyckel genom att publicera din offentliga nyckel på det sätt som du och @Mark beskrev. Som @pboin uppgav är det utformat för att vara tillgängligt för världen.
Det finns dock en annan fråga till hands ... Ett av de viktigaste syftena med att ha och publicera din offentliga nyckel (detta är förmodligen DET MAIN syftet) är att autentisera dig för andra användare, aktivera dem för att verifiera äktheten hos eventuella meddelanden eller data du signerar och skydda / kryptera data endast för dina ögon.
Men hur skulle de användare veta att det verkligen är din offentliga nyckel? Om jag till exempel vill skicka ett privat meddelande till @Mark Davidson med hans publicerade nyckel på http://pgp.mit.edu:11371/pks/lookup?op=get&search=0xE493B06DD070AFC8, hur vet jag att det var REAL Mark Davidson som publicerade den nyckeln eller som pekade mig där?
Det skulle vara trivialt för mig att publicera min EGNA offentliga nyckel, antingen på mit.edu, på LinkedIn, Facebook, etc, och bara kalla mig Bill Clinton (eller Bill Gates). Hur kunde du veta något annat?
Dessutom, om på något sätt Jag vet att detta verkligen är rätt person (t.ex. vill jag kontakta en anonym bloggare, via den pk som publiceras på hans blogg - I don ' t bryr sig vem han egentligen är, ägaren av webbplatsen - och därmed pk-utgivaren - är ändå rätt person) - vad är det som kan garantera att den offentliga nyckeln inte manipulerades på väg? Alla länkar och sajter som hittills har nämnts (ok, med undantag för PGP-tangentservern) är HTTP - dvs inget kanalskydd, dvs kan enkelt ändras mellan server och webbläsare.
När du använder X.509 / PKI-modellen finns det alltid någon pålitlig som garanterar dig. T.ex. en välkänd certifikatutfärdare (betrodda eftersom webbläsarleverantörerna kontrollerade dem och lade till sitt rotcertifikat i Trusted Roots Store i webbläsaren) verifierade din identitet och signerade din offentliga nyckel / certifikat. Således kan alla som vill verifiera dig vara den du säger att du är, kan helt enkelt kontrollera signaturen och sedan kolla in identiteten på den som står för dig (och sedan upprepa tills de hittar den välkända betrodda roten CA).
I PGP-modellen finns dock vanligtvis ingen central, betrodda myndighet (även om nuvarande versioner tillåter detta). Istället är PGP baserad på web-of-trust-modellen, där om du litar på någon kan de garantera i sin tur för någon annans identitet.
Oavsett att det bara hjälper dig att verifiera din identitet är att bara placera din offentliga nyckel och inte säkerställa att krypterade meddelanden endast kan visas av rätt person.
Vad du KAN göra:
Aaaaall det borta, det beror verkligen på vad denna pk är till för - om det bara är att wow din mamma, så bry dig inte om allt det :)
Å andra sidan, om du har riktigt känslig kommunikation, eller med säkerhetsmedvetna klienter, då är alla ovanstående viktiga ...
En allmän lösning är att ladda upp den till en keyerver. En annan bra idé kan vara att göra ett inlägg på Biglumber. Detta hjälper till att komma i kontakt med andra människor och kanske att signera varandras nycklar.
Dessutom bör du titta in i din inkorg och leta efter kontakter som redan signerar sina e-postmeddelanden. Du kan skicka ett informellt mail till dem om att du nu har en nyckel och peka dem på en resurs.
Ett blogginlägg om din nyckel är också bra. Du bör tillhandahålla en länk för att ladda ner din nyckel.
Om du använder signaturer i din e-post kan du peka på din nya nyckel och naturligtvis underteckna varje e-post.
Påminn om att du inte kan ta bort din nyckel efter att den har laddats upp till en nyckelserver (och distribuerats bland dem). Naturligtvis kan du återkalla det. Dessutom antas att spammare letar efter dessa e-postadresser och skickar dig några "fina erbjudanden". När du gör knappsigneringar och laddar upp de nya signaturerna avslöjar signaturen var du har varit vid ett visst datum.
Tänk på att alla e-postadresser på din nyckel visas på offentliga webbgränssnitt. Jag får mycket skräppost på e-postmeddelandet på min nyckel, så det satte inte min nuvarande e-postadress på nyckeln.
Det enkla svaret på din "distribution" -fråga är att du ska använda vilken metod som helst som passar dig och dina avsedda mottagare och uppfyller dina behov när det gäller sekretess. T.ex. en nyckelserver kan bekvämt användas för att distribuera till många mottagare, men som ubi noterar exponerar en typisk nyckelserver uid (som vanligtvis har din e-postadress) för spammare hela tiden.
mycket hårdare fråga är hur verifierar din mottagare att de har rätt nyckel för dig, snarare än något smidd som underlättar en attack? Du kanske vill byta ut ett fingeravtryck av nyckeln med den andra personen "utanför bandet", t.ex. via telefon. Eller så kan du lita på "webben av förtroende": en kedja av signaturer för personer du litar på för ändamålet. Se dessa frågor för fler tips:
För distribution beror det verkligen på din publik. Optimisten i mig hoppas att folk är angelägna om att använda min nyckel för att kryptera meddelanden och kontrollera mina signaturer. Verkligheten är att hantera det har varit ett icke-problem. Jag har gjort det mycket bra genom att erbjuda det på min blogg och på begäran.
När det gäller riskerna är det utformat för att vara lättillgängligt för världen. Fokusera dessa bekymmer på att skydda den privata nyckeln. Lägg ett lösenord runt det och skydda det noggrant.
Fördelningen av den offentliga nyckeln är fortfarande ett öppet problem med PGP / GPG.
Ladda upp till en offentlig nyckelserver
Ladda upp till egen webbplats
Personligt möte stark >
en möjlig attack är att plantera en falsk nyckel. Paranoida människor möts personligen och byter nycklar tryckta på papper.
det kan finnas i en QR-kod på ditt kort (ganska känt); se Finns det en standard för utskrift av en offentlig nyckel som streckkod?
För vidare läsning se
I Linux kan du använda kommandot:
$ gpg --keyserver hkp: //keyserver.ubuntu.com --send-key "din key_index eller e-post" $ gpg - -keyserver hkp: //pgp.mit.edu --send-key "din key_index eller e-post" $ gpg --keyserver hkp: //pool.sks-keyservers.net - send-key "your key_index or email"
Och skickade den till olika servrar. De sprider din nyckel.