Jöhet a feltörhetetlen titkosítás

 ( tonnmx | 2014. február 6., csütörtök - 11:55 )

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

Azért nem érted, mert kicsit össze van zavarva... :)

Olvastam ezt a cikket, és valahogy az az eset jutott róla eszembe, amikor nyolc éves koromban kidolgoztam egy rendkívül erős titkosírást. Nem vicc, tényleg erős kriptográfia volt mögötte, viszont a végén jöttem rá, hogy baj van vele: csak egy irányba működik, és semmilyen lehetőség nincs a visszafejtésre (mai eszemmel persze tudnám hogy hash céljára akár jó is lehetne, de ez most mindegy). Az index cikk olvasása közben pont ugyanazt a kuszaságot véltem felfedezni, mint amilyen akkoriban az én fejemben volt. Persze ez nem magát a kutatót vagy a módszert minősíti, hanem a cikk íróját/fordítóját :)

az ötlet annyi, hogyha van más zavaró, ami a legjobb összezavart kódot készíti, lehetne arra használni, hogy összekeverje a programot, ezután az eredeti programot és az összekevert verziót bele lehetne rakni egy megkülönböztethetetlen zavaróba, hogy még egy réteggel zavarosabb legyen a kód. Mint ez a mondat. De a koncepció tényleg erről szól.
Ezek szerint a cikk írója érti. Én nem :)

Zavar, hogy a zavarót és az összezavarót összekeverjük. Ez összezavar. Vagy összekever. Nem tudom. Akkor sikerült?

(de komolyan, szamomra a ketto mast jelent - ertem, hogy egyebkent tul sok lenne a szoismetles, de akkor is...)

/sza2

Ha jól értem nagyjából arról van szó, hogy a program valid bemenetre valid kimenetet állít elő, invalid bemenetre invalid kimenetet, miközben más kódpath-t jár be. Mindezt úgy, hogy a valid bemenet ismerete nélkül nem lehet megállapítani, hogy melyik kódpath állítja elő a valid kimenetet, és a program kódpathjainak száma megfelelően nagy.

énis ugyanerre gondolok, de érdekelne hogy ez hogyan fog megvédeni egy filmet, ahol tudni kell egy valid bemenetet, hogy azt le lehessen játszani... meg ezzel programokat is hogy védenének le másolás ellen? ahhoz hogy valakinek odaadd és tudja használni, kell egy valid bemenet, ergo valid bemeneten keresztül már egy debuggerrel végig járhatod az egész programot és unpackelheted kis tököléssel

két mondatban igen. hosszabban lásd lent.

Sok a pszeudoakadémikus duma az MIT/IBM/MS propagandaosztályától meg a ködösítés az indexen. Az alapötlet rémesen egyszerű. Ez jó, mert ezért könnyebb meggyőződni benne.

Egy számítógép logikai kapukból áll, ezek logikai műveleteire van leképezve minden, amit csinálsz a gépen.

Kezdetnek fogod _minden_ logikai kapu igazságtábláját (értsd: adott bemenetre milyen kimenetet ad) és ezeket az értékeket kódolod ("összezavarod", nyilván a legjobb kódolókulcsok véletlenszerűek és egyszer használatosak, lásd OTP). Erre akár használhatnál új logikai kapukat. De csinálhatod egy VM-en a meglevő CPU-don. Lassú lesz (kb. 1 órajel helyett vagy 9 nagyságrenddel több kell egy utasításra, bár a modern CPU-k nem ilyen egyszerűek, és egy csomó gyorsítási trükköt be lehet vetni, de ez most mindegy). A másik problémád az állapottér-robbanás: egy "eredeti" kapu sok másikat csinál. Ez utóbbi ellen azt tudod csinálni, hogy hibajavítókodolás-szerűen "összébb-húzod" az állapotteret, periodikusan amikor túl nagyra kezd nőni -- rengeteg trükk van ezen a téren, lásd JIT, GC fejlődése. Ezzel meg is értetted C. Gentry propagandája mögött a lényeget (ő és az indexen zagyvált eredeti cikknek a szerzője labortársak voltak, ugyanazon az alapkoncepción dolgoznak).

Amennyiben rekurzívan elkezded alkalmazni a fenti eljárást, akkor tor-hagymaszerűen egyre jobban, "mélyebben" tudsz rejtjelezni - ez gyakori trükk a szimmetrikus kódoláskor. Végül minden rejtjelzés szent-Grálja a valódi véletlenszerű "zaj", ami olyan véletlenszerű, hogy nincsen benne hasznos információ. Összenyomhatatlan, kitalálhatatlan, visszafejthetetlen -- de végső soron üres. A fentiek ismétlése során minél többet kódolsz, annál közelebb kerülsz ehhez az állapothoz. De mindenkinek jobb, ha előbb-utóbb abbahagyod. Jussanak az eszedbe Kolmogorov és Shannon alaptételei.

Homomorfikus, mint "azonos" és "alakú": a rejtjelzett adat/alkalmazás ugyanolyan alakú mint az eredeti, azaz matematikailag ugyanúgy viselkedik a rajta végzett műveletekre mint az eredeti (összeadás, kiadás, meg amit a logikai kapuk csinálni szoktak egyébként). Csak annyi a trükk, hogy lassabb mint a "nyers", közvetlenül elvégzett művelet. Ezalatt a címszó alatt fogsz ilyesmit találni. Több implementáció is van. Sőt, az RSA részlegesen homomorfikus: csak a szorzás műveletre viselkedik így -- ezt talán most a böngésződben is használod. Elvégzel egy műveletet a nyilvános kulcson úgy, hogy rejtve marad előtted a titkos kulcs, és mégis kaptál egy logikai műveleti eredményt: a tanúsítvány hiteles-e vagy sem (tekintsünk el a PKI alapvető hiányosságaitól). Ha ezt kiterjeszted, akkor az összeadásra (és inverzére) is tud menni a dolog, azaz teljesen homomorfikus rejtjelzésről lehet beszélni. Egyébként az RSA-t sem Rivesték az MIT-n találták meg, de az egy másik történet.

Az okostelefonod veri a 80-as évek Cray-2-it, azokat, amiken az Amerikai Egyesült Államok teljes nukleáris arzenálját szimulálták. Az előtted világító PC simán megbirkózik a fent vázoltakkal -- hogy lásd: a 70-es években már leközöltek a fentiekről mindent, de csak mára vált tömegesen praktikussá.

na igen de ez pont nem jó arra, hogy filmeket védj le, max ha úgy akarod levédeni hogy azt soha senki nem nézheti meg, ami meg kissé counter-productive

persze, hogy nem alkalmas Digital Restrictions Management-re -- ahogyan igazából semmi sem, mert alapjaiban önellentmondásos a cél (értsd filmlevédés és lejátszás feltételeinek egyidejű teljesítése -- de nem is ez a valódi célja az ilyen eszközöknek)

http://www.hwsw.hu/hirek/40796/a-digitalis-jogkezelo-rendszerek-kritikaja.html?print=1

az oké csak gondoltam index flame topicról van szó :P

a JIT/GC mukodeset es a homomorfikus titkositast (aminek az alap paperjet/phdjet Gentry(ek)nek) egy kalap ala venni azert legalabb akkor zagyvasag, mint amit az index csinal..

Szerinted mibe halt bele a lispm a TI klónjaival együtt?

1. Nem Gentry áldott meg bennünket a homomorfikus titkositassal (tudom, az IBM pénzelte őt, de ettől még ez nem változik, PR ide vagy oda). Ünnepeljük a lovak évét is a tucatszerverosztályon!

2. Jelenleg a HE rendszerek sokkal rugalmasabbak és költséghatékonyabbak egy VM-en mint egy ASIC-on. És mitől lettek jó VM-ek?