Vinnaren i pepparkakshustävlingen!
2018-04-25, 16:58
  #1
Medlem
Hej,

ny på kryptering och PGP. Tänkte jag skulle kryptera lite filer i backup-syfte. Har en RSA nyckel på 4096 bits och krypterade en 100MB zip-fil på en dator med SSD disk. Trodde det skulle ta i storleksordningen 10-30 min... men till min förvåning tog PGP (Gpg4win) bara 3 sekunder. Är filen verkligen krypterad??

Tar väl mer än 3 sekunder att läsa filen. Sedan ska den ju bearbeta och göra alla matematiska operationer...

Kanske kan nämna att den krypterade filen fick en *.gpg extension, om det säger något.
Citera
2018-04-25, 17:48
  #2
Medlem
4yoonlys avatar
Kan inte säga så mycket om krypteringen iofs (beror väl på om programmet som krypterade den kan använda sig av din hårdvara på det mest effektivaste sättet, dvs du har säkerligen en CPU med instruktioner för denna typ av kryptering och kanske en GPU som till och med kan vara effektivare osv). Men 100/3 MB/s blir ju bara 33 MB läshastighet och det var riktigt bra 20 år sedan (typ)? Din SSD har säkert en läshastighet på +400 MB/s.

Och just att det är en ZIP fil spelar ingen som helst roll.

Så ja, det är inte omöjligt att det gick snabbt...


----edit
BTW Jag är ingen krypterings expert alls...
Jag har dock installerat och testat för länge sedan något program (jag inte minns namnet på, Truecrypt!?!) där man kunde göra images som visade sig som vanliga diskar och utförde kryptering "on the fly" och visst blev det något sämre läs/skriv men var inte någon enorm skillnad.
CPU'er idag har instruktioner för att underlätta, och även GPU'er kan hjälpa till (eller kanske till och med göra det snabbare?)..
__________________
Senast redigerad av 4yoonly 2018-04-25 kl. 17:51.
Citera
2018-04-25, 18:14
  #3
Medlem
nutkjells avatar
Gjorde ett litet test på min (minst 10 år gamla) x200:

Kod:
> dd if=/dev/urandom of=testFile bs=10M count=10
> du -h testFile
100M    testFile
> time gpg -e -r [min 4096 nyckel] testFile

real    0m6.035s
user    0m5.588s
sys     0m0.284s

Skapar alltså 100mb fil med random innehåll och kikar hur lång tid det tar att kryptera filen. Så ditt fina resultat verkar inte alls omöjligt.
Citera
2018-04-25, 18:21
  #4
Medlem
Bleppe_Bfs avatar
Citat:
Ursprungligen postat av MrGogo
Hej,

ny på kryptering och PGP. Tänkte jag skulle kryptera lite filer i backup-syfte. Har en RSA nyckel på 4096 bits och krypterade en 100MB zip-fil på en dator med SSD disk. Trodde det skulle ta i storleksordningen 10-30 min... men till min förvåning tog PGP (Gpg4win) bara 3 sekunder. Är filen verkligen krypterad??

Tar väl mer än 3 sekunder att läsa filen. Sedan ska den ju bearbeta och göra alla matematiska operationer...

Kanske kan nämna att den krypterade filen fick en *.gpg extension, om det säger något.

Till skillnad från AES så är det inte någon iterativ funktion som bygger upp RSA/DSA.
Alltså AES 256 måste hashas om 256 ggr. Du kan ju testa att jämföra med någonting som är AES-krypterat.

RSA-4096 hashas en gång vid kryptering, salt + publik nyckel, och en gång till vid avkryptering, privat nyckel + salt, men den slutgiltiga nyckeln är skitlång. Säkerheten på PGP i dagsläget är dock omstridd.

https://www.zdnet.com/article/pgp-se...kness-exposed/

https://secushare.org/PGP

https://www.schneier.com/blog/archiv..._up_on_pg.html
__________________
Senast redigerad av Bleppe_Bf 2018-04-25 kl. 18:28.
Citera
2018-04-25, 21:27
  #5
Medlem
Einsturzendes avatar
Citat:
Ursprungligen postat av Bleppe_Bf
Till skillnad från AES så är det inte någon iterativ funktion som bygger upp RSA/DSA.
Alltså AES 256 måste hashas om 256 ggr. Du kan ju testa att jämföra med någonting som är AES-krypterat.

RSA-4096 hashas en gång vid kryptering, salt + publik nyckel, och en gång till vid avkryptering, privat nyckel + salt, men den slutgiltiga nyckeln är skitlång. Säkerheten på PGP i dagsläget är dock omstridd.

https://www.zdnet.com/article/pgp-se...kness-exposed/

https://secushare.org/PGP

https://www.schneier.com/blog/archiv..._up_on_pg.html

Det som folk i huvudsak riktat kritik mot är att man förlitar sig på för korta
fingerprints av de publika nycklarna, precis som din första länk antyder. Det
är enkelt att hitta kollisioner i en sökrymd av storlek 2^32 -- faktum är att
det går att göra på relativt svag hårdvara. Men det har inte så mycket med PGP
att göra, utan snarare hur man hanterar nycklar. Det rimliga vore att
publicera en icke-trunkerad SHA-256-digest.

Det största problemet med PGP idag är att det inte har stöd för forward
secrecy, men det är en inneboende problematik hos all form av e-post-liknande
kommunikation eftersom det är opraktiskt att implementera tillfälliga
sessionsnycklar (det går att realisera men då har man ett chatprotokoll och då
kan man lika gärna använda double ratchet eller OTR).

Såsom många olika källor också påpekat skalar RSA inte jättebra. För en rimlig
säkerhet bör man ha en nyckelstorlek på minst 4096 bitar (beroende på hur man
beräknar faktoriseringskomplexiteten, eftersom resultaten är asymptotiska, och
vilken algoritm som avses: ECM [1], GNFS [2], etc.), vilket är väldigt stort i
jämförelse med t ex Ed25519 eller andra elliptiska-kurv-konstruktioner och kan
därför te sig opraktiskt i många fall. Dessa publika EC-nycklar har en längd
som är i paritet med digesten av SHA-256, vilket då skulle eliminera motiven
att använda fingerprints överhuvudtaget.

Angående hash så används det inte i det symmetriska kryptot. En kryptografisk
hash används för att skapa ett fingerprint av innehållet. För att försäkra att
hashen inte bara räknas om med modifierat innehåll säkerställs dess integritet
med en digital signatur.

AES-256 hashas inte 256 gånger. AES-256 använder en nyckel bestående av 256
bitar. Såsom nämnts tidigare så kan detta accelereras avsevärt om hårdvaran
används på rätt sätt, dvs. om AES-NI-instruktionen i processorn (som är AES
realiserad i kisel) används. AES-GCM är dessutom trivialt parallelliserbar och
går att beräknas obereoende på flera kärnor eller på en GPU (givetvis har man
som mottagare inte friheten att välja block-chaining-mode godtyckligt).

[1] https://en.wikipedia.org/wiki/Lenstr..._factorization
[2] https://en.wikipedia.org/wiki/Genera...er_field_sieve
Citera
2018-04-26, 06:13
  #6
Medlem
Skattebrotts avatar
Citat:
Ursprungligen postat av Bleppe_Bf
Till skillnad från AES så är det inte någon iterativ funktion som bygger upp RSA/DSA.
Alltså AES 256 måste hashas om 256 ggr. Du kan ju testa att jämföra med någonting som är AES-krypterat.

RSA-4096 hashas en gång vid kryptering, salt + publik nyckel, och en gång till vid avkryptering, privat nyckel + salt, men den slutgiltiga nyckeln är skitlång. Säkerheten på PGP i dagsläget är dock omstridd.

https://www.zdnet.com/article/pgp-se...kness-exposed/

https://secushare.org/PGP

https://www.schneier.com/blog/archiv..._up_on_pg.html

Ändå är AES-256 betydligt snabbare än RSA-4096.
Citera
2018-04-26, 09:02
  #7
Medlem
Tack för svaren. Uppskattas! =)
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback