( Szenti | 2014. 03. 17., h – 11:42 )

Előre szólok, hogy kicsit offtopic leszek, mert a Mega titkosítását nem ismerem, de a linkeket elnézve hasonló elven működhet, mint amit mindjárt leírok.

Az RSA (aszimmetrikus) titkosítás számításigényes, és a titkosítás kimenete kb. 30 %-kal nagyobb, mint a bemenet (néhány nem reprezentatív, saját mérés eredménye). Az adatokat ezért egy szimmetrikus (pl.: AES) kódolással szokták titkosítani, ami kevésbé számításigényes, és az output mérete kb. megegyezik az input méretével (maximum padding miatt hosszabb lehet ~60 byte-tal (fixme)). Az AES által használt szimmetrikus kulcsot elő lehet állítani egy jelszóból, valamiféle hash-eléssel, ennek részleteit nem ismerem. Tehát van egy jelszó, amiből AES kulcs lesz, és evvel titkosítják az adatokat. Majd ezt az AES kulcsot mellékelik egy vagy több példányban, a címzettek RSA publikus kulcsával titkosítva. Kb. így:

Kódolt file a lemezen = [aes-titkosított adat] + [Felhasználó1 RSA publikus kulcsával kódolt AES kulcs] + [Felhasználó2 RSA publikus kulcsával kódolt AES kulcs]

Így lehet megoldani, hogy többen is ki tudják kódolni ugyanazt a fájlt.