{"id":95846,"date":"2020-10-04T01:42:23","date_gmt":"2020-10-03T23:42:23","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/mozhno-li-generirovat-sluchajnye-chisla-esli-my-ne-doveryaem-drug-drugu-chast-2"},"modified":"2020-10-04T01:42:23","modified_gmt":"2020-10-03T23:42:23","slug":"mozhno-li-generirovat-sluchajnye-chisla-esli-my-ne-doveryaem-drug-drugu-chast-2","status":"publish","type":"post","link":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/mozhno-li-generirovat-sluchajnye-chisla-esli-my-ne-doveryaem-drug-drugu-chast-2","title":{"rendered":"Lehet-e v\u00e9letlensz\u00e1mokat gener\u00e1lni, ha nem b\u00edzunk egym\u00e1sban? 2. r\u00e9sz","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Lehet-e v\u00e9letlensz\u00e1mokat gener\u00e1lni, ha nem b\u00edzunk egym\u00e1sban? 2. r\u00e9sz\" src=\"\/wp-content\/uploads\/2020\/10\/fc42fe5e99ce4412a0ce99eb63629a42.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Hell\u00f3, Habr!<\/p>\n<p>A <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/near\/blog\/521090\/\">els\u0151 r\u00e9szben<\/a><\/noindex> A cikkben megvitatjuk, hogy mi\u00e9rt lehet sz\u00fcks\u00e9ges v\u00e9letlensz\u00e1mokat gener\u00e1lni olyan r\u00e9sztvev\u0151k sz\u00e1m\u00e1ra, akik nem b\u00edznak meg egym\u00e1sban, milyen k\u00f6vetelm\u00e9nyeket t\u00e1masztanak az ilyen v\u00e9letlensz\u00e1m-gener\u00e1torokkal szemben, \u00e9s k\u00e9t megk\u00f6zel\u00edt\u00e9st vizsg\u00e1lunk a megval\u00f3s\u00edt\u00e1sukhoz.<\/p>\n<p>A cikk ezen r\u00e9sz\u00e9ben r\u00e9szletesen megvizsg\u00e1lunk egy m\u00e1sik megk\u00f6zel\u00edt\u00e9st, amely k\u00fcsz\u00f6b-al\u00e1\u00edr\u00e1sokat haszn\u00e1l.<\/p>\n<h3>N\u00e9h\u00e1ny alapvet\u0151 kriptogr\u00e1fia<\/h3>\n<p>Ahhoz, hogy meg\u00e9rts\u00fck, hogyan m\u0171k\u00f6dnek a k\u00fcsz\u00f6b-al\u00e1\u00edr\u00e1sok, kicsit \u00e9rten\u00fcnk kell az alapvet\u0151 kriptogr\u00e1fi\u00e1hoz. K\u00e9t fogalmat fogunk haszn\u00e1lni: skal\u00e1rokat, vagyis egyszer\u0171en sz\u00e1mokat, amelyeket kisbet\u0171kkel (<em>x, y<\/em>) \u00e9s pontokat az elliptikus g\u00f6rb\u00e9n, amelyeket nagybet\u0171kkel fogunk megjel\u00f6lni.<\/p>\n<p>A k\u00fcsz\u00f6b-al\u00e1\u00edr\u00e1sok alapjainak meg\u00e9rt\u00e9s\u00e9hez nem sz\u00fcks\u00e9ges tudni, hogyan m\u0171k\u00f6dnek az elliptikus g\u00f6rb\u00e9k, csak n\u00e9h\u00e1ny alapvet\u0151 dolgot kell tudni:<\/p>\n<ol>\n<li>\n<p>Az elliptikus g\u00f6rb\u00e9n l\u00e9v\u0151 pontokat \u00f6ssze lehet adni \u00e9s skal\u00e1rral szorozni (a skal\u00e1rral val\u00f3 szorz\u00e1st \u00edgy fogjuk jel\u00f6lni: <em>xG<\/em>, b\u00e1r a <em>Gx<\/em> ez gyakran haszn\u00e1lj\u00e1k az irodalomban). Az \u00f6sszegz\u00e9s \u00e9s a skal\u00e1rral val\u00f3 szorz\u00e1s eredm\u00e9nye egy pont az elliptikus g\u00f6rb\u00e9n.<\/p>\n<\/li>\n<li>\n<p>Csak a pont ismerete, <em>G<\/em> \u00e9s annak skal\u00e1rral val\u00f3 szorzata <em>xG<\/em> nem teszi lehet\u0151v\u00e9 a kisz\u00e1m\u00edt\u00e1st. <em>x<\/em>.<\/p>\n<\/li>\n<\/ol>\n<p>Haszn\u00e1lni fogjuk a polinom fogalm\u00e1t is <em>p(x)<\/em> fok\u00fa <em>k<\/em>-1. K\u00fcl\u00f6n\u00f6sen a polinomok al\u00e1bbi tulajdons\u00e1g\u00e1t fogjuk haszn\u00e1lni: ha tudjuk a <em>p(x) <\/em>\u00e9rt\u00e9k\u00e9t b\u00e1rmilyen <em>k <\/em>k\u00fcl\u00f6nb\u00f6z\u0151 <em>x <\/em>(\u00e9s nincs m\u00e1s inform\u00e1ci\u00f3nk a <em>p(x)<\/em>), k\u00e9pesek vagyunk kisz\u00e1m\u00edtani a <em>p(x) <\/em>b\u00e1rmely m\u00e1s <em>x<\/em>.<\/p>\n<p>\u00e9rtek\u00e9t. <em>p(x)<\/em> \u00c9rdekes, hogy b\u00e1rmely polinomra <em>G<\/em>\u00e9s egy adott pontra a g\u00f6rb\u00e9n, ha tudjuk a <em>p(x)G<\/em> \u00e9rt\u00e9k\u00e9t b\u00e1rmilyen <em>k<\/em> k\u00fcl\u00f6nb\u00f6z\u0151 \u00e9rt\u00e9keit, azt is ki lehet sz\u00e1m\u00edtani, hogy <em>x<\/em>milyen \u00e9rt\u00e9ke lesz <em>p(x)G<\/em> b\u00e1rmelyik <em>x<\/em>.<\/p>\n<p>. Ezen inform\u00e1ci\u00f3 elegend\u0151 ahhoz, hogy belemer\u00fclj\u00fcnk a k\u00fcsz\u00f6b-al\u00e1\u00edr\u00e1sok m\u0171k\u00f6d\u00e9s\u00e9nek r\u00e9szleteibe, \u00e9s hogy hogyan lehet \u0151ket felhaszn\u00e1lni v\u00e9letlensz\u00e1mok gener\u00e1l\u00e1s\u00e1ra.<\/p>\n<h3>K\u00fcsz\u00f6b-al\u00e1\u00edr\u00e1s alap\u00fa v\u00e9letlensz\u00e1m-gener\u00e1tor<\/h3>\n<p>Tegy\u00fck fel, hogy a r\u00e9sztvev\u0151k v\u00e9letlensz\u00e1mot akarnak gener\u00e1lni, \u00e9s azt szeretn\u00e9nk, hogy b\u00e1rmelyik\u00fck r\u00e9szv\u00e9tele elegend\u0151 legyen a sz\u00e1m gener\u00e1l\u00e1s\u00e1hoz, de a t\u00e1mad\u00f3k, akik -1 vagy kevesebb r\u00e9sztvev\u0151t ir\u00e1ny\u00edtanak, ne tudj\u00e1k megj\u00f3solni vagy befoly\u00e1solni a gener\u00e1lt sz\u00e1mot. <em>n<\/em> Tegy\u00fck fel, hogy l\u00e9tezik egy polinom <em>k<\/em> -1, amit az els\u0151 r\u00e9sztvev\u0151 ismer <em>k<\/em>p(1),<\/p>\n<p><img decoding=\"async\" alt=\"Lehet-e v\u00e9letlensz\u00e1mokat gener\u00e1lni, ha nem b\u00edzunk egym\u00e1sban? 2. r\u00e9sz\" src=\"\/wp-content\/uploads\/2020\/10\/00d54b3b0ca237a1551cdbdc35688099.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>a m\u00e1sodik ismeri <em>p(x)<\/em> fok\u00fa <em>k<\/em>p(2), <em>\u00e9s \u00edgy tov\u00e1bb (<\/em>-ik tudja <em>p(n)). Azt is felt\u00e9telezz\u00fck, hogy egy meghat\u00e1rozott pontban <\/em>mindenki tudja<em>n<\/em>minden \u00e9rt\u00e9k\u00e9t. <em>Ezt h\u00edvjuk<\/em>mindenki ismeri <em>G<\/em> az \u00f6sszes \u00e9rt\u00e9k\u00e9t <em>p(x)G <\/em>. Ezt nevezz\u00fck <em>x<\/em>Azt fogjuk mondani <em>p(i)<\/em> \u201epriv\u00e1t komponens\u201c <em>i<\/em>-dik r\u00e9sztvev\u0151 (mivel csak <em>i<\/em>-ik r\u00e9sztvev\u0151 ismeri azt), \u00e9s <em>p(i)G<\/em> \u201enyilv\u00e1nos komponens\u201c <em>i<\/em>-dik r\u00e9sztvev\u0151 (mivel minden r\u00e9sztvev\u0151 ismeri azt). Ahogy eml\u00e9kezhet, a tud\u00e1s <em>p(i)G <\/em>nem elegend\u0151 a helyre\u00e1ll\u00edt\u00e1shoz <em>p(i).<\/em><\/p>\n<p>Olyan polinom l\u00e9trehoz\u00e1sa, hogy csak <em>i-<\/em>-ik r\u00e9sztvev\u0151 \u00e9s senki m\u00e1s tudja a saj\u00e1t priv\u00e1t komponens\u00e9t \u2013 ez a protokoll legnehezebb \u00e9s leg\u00e9rdekesebb r\u00e9sze, \u00e9s ezt al\u00e1bb t\u00e1rgyaljuk. Jelenleg felt\u00e9telezz\u00fck, hogy ilyen polinomunk van, \u00e9s minden r\u00e9sztvev\u0151 ismeri a saj\u00e1t priv\u00e1t komponenseit.<\/p>\n<p>Hogyan haszn\u00e1lhatjuk ezt a polinomot v\u00e9letlen sz\u00e1m gener\u00e1l\u00e1s\u00e1ra? El\u0151sz\u00f6r is sz\u00fcks\u00e9g\u00fcnk van egy olyan sztringre, amely kor\u00e1bban m\u00e9g nem szolg\u00e1lt bel\u00e9p\u0151k\u00e9nt a gener\u00e1tor sz\u00e1m\u00e1ra. A blokkl\u00e1nc eset\u00e9ben az utols\u00f3 blokk hash-e <em>h<\/em> \u2014 j\u00f3 jel\u00f6lt egy ilyen sorra. Tegy\u00fck fel, hogy a r\u00e9sztvev\u0151k v\u00e9letlen sz\u00e1mot akarnak l\u00e9trehozni, haszn\u00e1lva <em>h <\/em>seed-k\u00e9nt. El\u0151sz\u00f6r a r\u00e9sztvev\u0151k <em>h<\/em> bepontozz\u00e1k<\/p>\n<p><em>H = scalarToPoint(h)<\/em><\/p>\n<p>Ezut\u00e1n minden r\u00e9sztvev\u0151 <em>i<\/em> kisz\u00e1m\u00edtja \u00e9s k\u00f6zz\u00e9teszi <em>Hi = p(i)H, <\/em>amit megtehetnek, mert ismerik<em> p(i) \u00e9s H. <\/em>A felfed\u00e9s<em> H<\/em>i nem engedi meg a t\u00f6bbi r\u00e9sztvev\u0151nek, hogy helyre\u00e1ll\u00edtsa a priv\u00e1t komponenst <em>i<\/em>-dik r\u00e9sztvev\u0151, \u00edgy egy k\u00e9szlet priv\u00e1t komponens felhaszn\u00e1lhat\u00f3 blokkr\u00f3l blokkra. \u00cdgy a lent le\u00edrt polinom l\u00e9trehoz\u00e1si algoritmust csak egyszer kell v\u00e9grehajtani.<\/p>\n<p>Amikor <em>k<\/em> a r\u00e9sztvev\u0151k felfedt\u00e9k <em>Hi = p(i)H, <\/em>mindenki kisz\u00e1m\u00edthatja<em> H<\/em>x = <em>p(x)H<\/em> mindenki sz\u00e1m\u00e1ra <em>x<\/em> a polinomok tulajdons\u00e1gai miatt, amelyeket a m\u00faltbeli fejezetben t\u00e1rgyaltunk. Ebben a pillanatban minden r\u00e9sztvev\u0151 kisz\u00e1m\u00edtja <em>H0 = p(0)H, <\/em>\u00e9s ez az eredm\u00e9ny\u00fcl kapott v\u00e9letlen sz\u00e1m. Vegye figyelembe, hogy senki sem tudja<em> p(0), <\/em>ez\u00e9rt az egyetlen m\u00f3dja annak, hogy kisz\u00e1m\u00edtsuk<em> p(0)H \u2013 <\/em>az interpol\u00e1ci\u00f3<em> p(x)H, <\/em>ami csak akkor lehets\u00e9ges, ha<em> k <\/em>az \u00e9rt\u00e9kek<em> p(i)H <\/em>ismertek. B\u00e1rminem\u0171 kisebb mennyis\u00e9g felfed\u00e9se<em> p(i)H <\/em>nem ad inform\u00e1ci\u00f3t<em> p(0)H-hoz.<\/em><\/p>\n<p><img decoding=\"async\" alt=\"Lehet-e v\u00e9letlensz\u00e1mokat gener\u00e1lni, ha nem b\u00edzunk egym\u00e1sban? 2. r\u00e9sz\" src=\"\/wp-content\/uploads\/2020\/10\/a91219381018f90f73b0a92976c92c79.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>A fenti gener\u00e1tor rendelkezik minden olyan tulajdons\u00e1ggal, amelyet szeretn\u00e9nk: a t\u00e1mad\u00f3k, akik csak <em>k-<\/em>1 r\u00e9sztvev\u0151t, vagy kevesebb mint \u0151k, semmilyen inform\u00e1ci\u00f3val \u00e9s hat\u00e1ssal nincsenek a kimenetre, m\u00edg b\u00e1rmelyik <em>k<\/em> r\u00e9sztvev\u0151 kisz\u00e1m\u00edthatja az eredm\u00e9ny\u00fcl kapott sz\u00e1mot, \u00e9s b\u00e1rmilyen alk\u00e9szlet a <em>k<\/em> r\u00e9sztvev\u0151kb\u0151l mindig ugyanahhoz az eredm\u00e9nyhez jut a megfelel\u0151 seed eset\u00e9n.<\/p>\n<p>Van egy probl\u00e9ma, amit \u00f3vatosan kiker\u00fclt\u00fcnk az el\u0151bbiekben. Az interpol\u00e1ci\u00f3nak m\u0171k\u00f6dnie kell, fontos, hogy az \u00e9rt\u00e9k<em> H<\/em>i, amelyet minden r\u00e9sztvev\u0151 k\u00f6zz\u00e9tett <em>i<\/em> val\u00f3j\u00e1ban egyenl\u0151 legyen <em>p(i)H.<\/em> Mivel senki m\u00e1s <em>i<\/em>-t\u00f3l r\u00e9sztvev\u0151 nem tudja <em>p(i), <\/em>senki m\u00e1s <em>i-<\/em>-t\u00f3l r\u00e9sztvev\u0151 nem ellen\u0151rizheti, hogy <em>Hi <\/em>val\u00f3ban helyesen lett kisz\u00e1m\u00edtva, \u00e9s valamilyen kriptogr\u00e1fiai bizony\u00edt\u00e9k n\u00e9lk\u00fcl,<em> H<\/em>i, a t\u00e1mad\u00f3 b\u00e1rmilyen \u00e9rt\u00e9ket k\u00f6zz\u00e9tehet mint <em>Hi, <\/em>\u00e9s \u00f6nk\u00e9nyesen befoly\u00e1solhatja a v\u00e9letlensz\u00e1m-gener\u00e1tor kimenet\u00e9t.<em>:<\/em><\/p>\n<p><img decoding=\"async\" alt=\"Lehet-e v\u00e9letlensz\u00e1mokat gener\u00e1lni, ha nem b\u00edzunk egym\u00e1sban? 2. r\u00e9sz\" src=\"\/wp-content\/uploads\/2020\/10\/694a86666806c49edb6e44dd9ec26b0f.png\" style=\"display:block;margin: 0 auto;\" \/>A k\u00fcl\u00f6nb\u00f6z\u0151 H_1 \u00e9rt\u00e9kek, amelyeket az els\u0151 r\u00e9sztvev\u0151 k\u00fcld\u00f6tt, k\u00fcl\u00f6nb\u00f6z\u0151 H_0 eredm\u00e9nyekhez vezetnek.<\/p>\n<p>Minimum k\u00e9t m\u00f3dja van a helyess\u00e9g bizony\u00edt\u00e1s\u00e1nak<em> H<\/em>i, ezeket megvizsg\u00e1ljuk, miut\u00e1n \u00e1tbesz\u00e9lt\u00fck a polinomsz\u00e1ml\u00e1l\u00e1st.<\/p>\n<h3>Polinomsz\u00e1ml\u00e1l\u00e1s<\/h3>\n<p>Az el\u0151z\u0151 r\u00e9szben felt\u00e9telezt\u00fck, hogy van egy olyan polinomunk, <em>p(x)<\/em> fok\u00fa <em>k<\/em>-1 amelyet a r\u00e9sztvev\u0151 <em>i<\/em> tudja <em>p(i)<\/em>, \u00e9s senki m\u00e1s nem tud semmilyen inform\u00e1ci\u00f3val rendelkezni err\u0151l az \u00e9rt\u00e9kr\u0151l. A k\u00f6vetkez\u0151 r\u00e9szben sz\u00fcks\u00e9ges, hogy egy el\u0151re meghat\u00e1rozott pontban <em>G<\/em> mindenki tudja, <em>p(x)G <\/em>mindenki sz\u00e1m\u00e1ra<em> x<\/em>.<\/p>\n<p>Ebben a r\u00e9szben azt fogjuk felt\u00e9telezni, hogy minden r\u00e9sztvev\u0151 helyben rendelkezik egy priv\u00e1t kulccsal, <em>xi, <\/em>\u00edgy a megfelel\u0151 nyilv\u00e1nos kulcs mindenki sz\u00e1m\u00e1ra ismert<em> X<\/em>i.<\/p>\n<p>Egy lehets\u00e9ges polinomsz\u00e1ml\u00e1l\u00e1si protokoll a k\u00f6vetkez\u0151:<\/p>\n<p><img decoding=\"async\" alt=\"Lehet-e v\u00e9letlensz\u00e1mokat gener\u00e1lni, ha nem b\u00edzunk egym\u00e1sban? 2. r\u00e9sz\" src=\"\/wp-content\/uploads\/2020\/10\/ccd8afbc3c88a7f5a03714aeb6593361.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<ol>\n<li>\n<p>Minden r\u00e9sztvev\u0151 <em>i<\/em> helyben l\u00e9trehoz egy tetsz\u0151leges polinomot <em>pi(x) k-1 fokon. <\/em>Ezt k\u00f6vet\u0151en minden r\u00e9sztvev\u0151nek<em> j <\/em>\u00e9rt\u00e9ket<em> p<\/em>i(j), a nyilv\u00e1nos kulccsal titkos\u00edtva <em>Xj. <\/em>\u00cdgy csak<em> i-<\/em>j-<em> <\/em>\u00e9s<em> t\u00f3l r\u00e9sztvev\u0151 tudja<\/em>j-<em> <\/em>i(j). A r\u00e9sztvev\u0151<em> p<\/em>nyilv\u00e1nosan bejelenti <em>i<\/em> pi(j)G <em>bele\u00e9rtve. <\/em>mindenki sz\u00e1m\u00e1ra<em> j <\/em>t\u00f3l<em> 1 <\/em>t\u00f3l<em> k <\/em>Minden r\u00e9sztvev\u0151 egy konszenzust haszn\u00e1l, hogy kiv\u00e1lassza<\/p>\n<\/li>\n<li>\n<p>azokat a r\u00e9sztvev\u0151ket, akiknek polinomait felhaszn\u00e1lj\u00e1k. Mivel egyes r\u00e9sztvev\u0151k offline lehetnek, nem v\u00e1rhatjuk meg, hogy minden<em> k <\/em>r\u00e9sztvev\u0151 k\u00f6zz\u00e9tegye a polinomj\u00e1t. Ennek a l\u00e9p\u00e9snek az eredm\u00e9nye \u2013 egy halmaz<em> n <\/em>amely legal\u00e1bb<em> <\/em><strong><em>Z<\/em><\/strong><em> <\/em>polinomot tartalmaz, amelyek az (1) l\u00e9p\u00e9sben k\u00e9sz\u00fcltek.<em> k <\/em>A r\u00e9sztvev\u0151k meggy\u0151z\u0151dnek arr\u00f3l, hogy a nyilv\u00e1nosan bejelentett<em>.<\/em><\/p>\n<\/li>\n<li>\n<p>pi(j)G-hez ismert \u00e9rt\u00e9kek<em> p<\/em>i(j) megfelelnek. <em>E l\u00e9p\u00e9s ut\u00e1n a <\/em>csak azok a polinomok maradnak, amelyekhez priv\u00e1ton \u00e1tadott<em> <\/em><strong><em>Z <\/em><\/strong>kisz\u00e1m\u00edtja a priv\u00e1t komponens\u00e9t<em> p<\/em>i(j) megfelelnek. <em>E l\u00e9p\u00e9s ut\u00e1n a<\/em><\/p>\n<\/li>\n<li>\n<p>Minden r\u00e9sztvev\u0151<em> j <\/em>p(j)<em> mint az \u00f6sszeg <\/em>i(j) mindenki sz\u00e1m\u00e1ra.<em> p<\/em>A r\u00e9sztvev\u0151k emellett kisz\u00e1m\u00edtj\u00e1k az \u00f6sszes \u00e9rt\u00e9ket <em>i<\/em> be. <strong><em>Z<\/em><\/strong>pi(x)G minden i-hez. <em>p(x)G <\/em>i(j) mindenki sz\u00e1m\u00e1ra. <em>K\u00e9rj\u00fck, vegye figyelembe, hogy <\/em>be.<em> <\/em><strong><em>Z<\/em><\/strong><em>.<\/em><\/p>\n<\/li>\n<\/ol>\n<p><img decoding=\"async\" alt=\"Lehet-e v\u00e9letlensz\u00e1mokat gener\u00e1lni, ha nem b\u00edzunk egym\u00e1sban? 2. r\u00e9sz\" src=\"\/wp-content\/uploads\/2020\/10\/a7a92dba3b9de7a376c415fc6c330c46.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>p(x) \u2013<em> val\u00f3j\u00e1ban egy k-1 fok\u00fa polinom, <\/em>mivel ez az egyes<em> i(x) \u00f6sszeg\u00e9b\u0151l sz\u00e1rmazik, mindegyik fok\u00fa polinom. <\/em>mivel ez az egyes<em> p<\/em>i(x) polinomok \u00f6sszeg\u00e9b\u0151l \u00e1ll. <em>k<\/em>-1. Ezut\u00e1n vegye figyelembe, hogy m\u00edg minden r\u00e9sztvev\u0151 <em>j<\/em> tudja <em>p(j), <\/em>nincs inform\u00e1ci\u00f3juk a <em>p(x)<\/em> a <em>x \u2260 j<\/em>. Val\u00f3j\u00e1ban ahhoz, hogy ezt az \u00e9rt\u00e9ket kisz\u00e1m\u00edts\u00e1k, sz\u00fcks\u00e9g\u00fck van arra, hogy tudj\u00e1k az \u00f6sszes <em>pi(x), <\/em>\u00e9s am\u00edg a r\u00e9sztvev\u0151<em> j <\/em>nem tud legal\u00e1bb egy kiv\u00e1lasztott polinomot, nincs elegend\u0151 inform\u00e1ci\u00f3juk a<em> p(x)-r\u00f3l.<\/em><\/p>\n<p>Ez az eg\u00e9sz polinomgener\u00e1l\u00e1si folyamat, amely a kor\u00e1bbi r\u00e9szben sz\u00fcks\u00e9ges volt. Az 1., 2. \u00e9s 4. l\u00e9p\u00e9seknek nyilv\u00e1nval\u00f3 megval\u00f3s\u00edt\u00e1sa van. A 3. l\u00e9p\u00e9s azonban nem annyira trivi\u00e1lis.<\/p>\n<p>Konkr\u00e9tan bizony\u00edtanunk kell, hogy a titkos\u00edtott<em> p<\/em>i(j) val\u00f3ban megfelel a k\u00f6zz\u00e9tett <em>E l\u00e9p\u00e9s ut\u00e1n a <\/em>Ha nem tudjuk ezt bizony\u00edtani, a t\u00e1mad\u00f3<em> i <\/em>k\u00fcldhet szem\u00e9t a<em> p<\/em>i(j) r\u00e9sztvev\u0151nek, <em>j<\/em>\u00e9s a r\u00e9sztvev\u0151 <em>j <\/em>nem tudja megkapni a val\u00f3di \u00e9rt\u00e9ket <em>pi(j), <\/em>\u00e9s nem fogja tudni kisz\u00e1m\u00edtani a saj\u00e1t priv\u00e1t komponens\u00e9t.<em>.<\/em><\/p>\n<p>Van egy kriptogr\u00e1fiai protokoll, amely lehet\u0151v\u00e9 teszi egy tov\u00e1bbi \u00fczenet<em> proof<\/em>i(j) l\u00e9trehoz\u00e1s\u00e1t, amely lehet\u0151v\u00e9 teszi, hogy b\u00e1rmely r\u00e9sztvev\u0151, akinek van egy \u00e9rt\u00e9ke <em>e, <\/em>valamint<em> proofi(j) <\/em>\u00e9s<em> p<\/em>i(j)G, helyben ellen\u0151rizhesse, hogy <em>e<\/em> \u2013 ez val\u00f3ban <em>pi(j), <\/em>a r\u00e9sztvev\u0151<em> j kulcs\u00e1val titkos\u00edtott. <\/em>Sajnos az ilyen bizony\u00edt\u00e9kok m\u00e9rete hihetetlen\u00fcl nagy, \u00e9s figyelembe v\u00e9ve, hogy<em> O(nk) <\/em>ilyen bizony\u00edt\u00e9kokat kell k\u00f6zz\u00e9tenni, nem lehet \u0151ket erre a c\u00e9lra haszn\u00e1lni.<\/p>\n<p>Ahelyett, hogy bizony\u00edtan\u00e1nk, hogy <em>pi(j) <\/em>megfelel<em> p<\/em>i(j)G, a polinom gener\u00e1l\u00e1si protokoll sor\u00e1n nagyon hossz\u00fa id\u0151t t\u00f6lthet\u00fcnk, amely alatt minden r\u00e9sztvev\u0151 ellen\u0151rzi a kapott titkos\u00edtott <em>pi(j), <\/em>\u00e9s ha a dek\u00f3dolt \u00fczenet nem felel meg a nyilv\u00e1nos<em> p<\/em>i(j)G-nek, k\u00f6zz\u00e9teszik a kriptogr\u00e1fiai bizony\u00edt\u00e9kot, hogy a kapott titkos\u00edtott \u00fczenet t\u00e9ves. Bizony\u00edtani, hogy az \u00fczenet <em>nem <\/em>megfelel <em>pi(G)<\/em> sokkal egyszer\u0171bb, mint bizony\u00edtani, hogy az megfelel. Meg kell jegyezni, hogy ez megk\u00f6veteli, hogy minden r\u00e9sztvev\u0151 legal\u00e1bb egyszer megjelenjen a h\u00e1l\u00f3zatban azokon az id\u0151kereteken bel\u00fcl, amelyek az ilyen bizony\u00edt\u00e9kok l\u00e9trehoz\u00e1s\u00e1ra vannak fenntartva, \u00e9s azt a feltev\u00e9st k\u00f6veteli meg, hogy ha k\u00f6zz\u00e9tett\u00e9k ezt a bizony\u00edt\u00e9kot, az eljut a t\u00f6bbi r\u00e9sztvev\u0151h\u00f6z is ugyanebben az id\u0151keretben.<\/p>\n<p><img decoding=\"async\" alt=\"Lehet-e v\u00e9letlensz\u00e1mokat gener\u00e1lni, ha nem b\u00edzunk egym\u00e1sban? 2. r\u00e9sz\" src=\"\/wp-content\/uploads\/2020\/10\/f7d92f18c75aa6161a9e3f1724b57426.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Ha egy r\u00e9sztvev\u0151 nem jelent meg a h\u00e1l\u00f3zatban ezen id\u0151 alatt, \u00e9s val\u00f3ban volt legal\u00e1bb egy hib\u00e1s komponense, akkor ez a konkr\u00e9t r\u00e9sztvev\u0151 nem tud r\u00e9szt venni a tov\u00e1bbi sz\u00e1mok gener\u00e1l\u00e1s\u00e1ban. A protokoll azonban tov\u00e1bbra is m\u0171k\u00f6dni fog, ha van legal\u00e1bb <em>k<\/em> r\u00e9sztvev\u0151k, akik vagy csak megkapt\u00e1k a helyes \u00f6sszetev\u0151ket, vagy siker\u00fclt bizony\u00edtaniuk a helytelens\u00e9get a megadott id\u0151n bel\u00fcl.<\/p>\n<h3>A H_i helyess\u00e9g\u00e9nek bizony\u00edt\u00e9kai<\/h3>\n<p>Az utols\u00f3 r\u00e9sz, amelyet meg kell vitatni, az az, hogyan lehet bizony\u00edtani a k\u00f6zz\u00e9tett<em> H<\/em>i, nevezetesen, hogy <em>Hi = p(i)H, <\/em>felt\u00e1r\u00e1s n\u00e9lk\u00fcl<em> p(i).<\/em><\/p>\n<p>Eml\u00e9kezz\u00fcnk vissza, hogy az \u00e9rt\u00e9kek<em> H, G, p(i)G <\/em>nyilv\u00e1nosak \u00e9s mindenki sz\u00e1m\u00e1ra ismertek.<em> <\/em>A megszerz\u00e9s folyamata<em> p(i) <\/em>ismerve<em> p(i)G <\/em>\u00e9s<em> G <\/em>diszkr\u00e9t logaritmusnak vagy<em> dlog-nak nevezik, <\/em>\u00e9s bizony\u00edtani szeretn\u00e9nk, hogy:<\/p>\n<p><em>dlog(p(i)G, G) = dlog(H<\/em>i, <em>H<\/em>)<\/p>\n<p>felfed\u00e9s n\u00e9lk\u00fcl. <em>p(i)<\/em>Az ilyen bizony\u00edt\u00e9kok konstrukci\u00f3i l\u00e9teznek, p\u00e9ld\u00e1ul a<noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Proof_of_knowledge#Schnorr_protocol\"> <u>Schnorr protokoll.<\/u><\/a><\/noindex>.<\/p>\n<p>Ilyen konstrukci\u00f3val minden r\u00e9sztvev\u0151 egy\u00fctt, <em>Hi <\/em>k\u00fcldi a helyess\u00e9gi bizony\u00edt\u00e9kot a konstrukci\u00f3nak megfelel\u0151en.<\/p>\n<p>Amikor a v\u00e9letlensz\u00e1mot gener\u00e1lj\u00e1k, azt gyakran m\u00e1s r\u00e9sztvev\u0151knek is el kell k\u00fcldeni, nem csak azoknak, akik gener\u00e1lt\u00e1k. Ezeknek a r\u00e9sztvev\u0151knek egy\u00fctt a sz\u00e1mmal minden <em>Hi<\/em> \u00e9s a kapcsol\u00f3d\u00f3 bizony\u00edt\u00e9kokat el kell k\u00fcldeni.<\/p>\n<p>A k\u00edv\u00e1ncsi olvas\u00f3 megk\u00e9rdezheti: mivel a v\u00e9gs\u0151 v\u00e9letlensz\u00e1m \u2013 ez<em> H<\/em>0, \u00e9s <em>p(0)G \u2013 <\/em>ez egy nyilv\u00e1nos inform\u00e1ci\u00f3, mi\u00e9rt sz\u00fcks\u00e9ges a bizony\u00edt\u00e9k minden egyes<em> H<\/em>i-re, mi\u00e9rt nem k\u00fcld\u00fcnk ink\u00e1bb bizony\u00edt\u00e9kot arr\u00f3l, hogy<\/p>\n<p>dlog(<em>p(0)G, G) = dlog(H<\/em>0, <em>H<\/em>)<\/p>\n<p>A probl\u00e9ma az, hogy a Schnorr protokollal nem lehet ilyen bizony\u00edt\u00e9kot l\u00e9trehozni, mert senki sem ismeri a <em>p(0) \u00e9rt\u00e9k\u00e9t,<\/em>amely sz\u00fcks\u00e9ges a bizony\u00edt\u00e9k l\u00e9trehoz\u00e1s\u00e1hoz, \u00e9s ami m\u00e9g fontosabb, az eg\u00e9sz v\u00e9letlensz\u00e1m-gener\u00e1tor azon alapul, hogy senki sem ismeri ezt az \u00e9rt\u00e9ket. Ez\u00e9rt sz\u00fcks\u00e9ges, hogy minden \u00e9rt\u00e9ket <em>Hi <\/em>\u00e9s az egyedi bizony\u00edt\u00e9kokat egy\u00fcttesen bemutassuk a helyess\u00e9g bizony\u00edt\u00e1s\u00e1hoz.<em> H<\/em>0.<\/p>\n<p>Viszont, ha az elliptikus g\u00f6rb\u00e9k pontjain lenne valamilyen m\u0171velet, amely szemantikailag hasonl\u00edt a szorz\u00e1sra, akkor a helyess\u00e9g bizony\u00edt\u00e1sa <em>H0 <\/em>trivi\u00e1lis lenne, egyszer\u0171en csak biztos\u00edtan\u00e1nk, hogy<\/p>\n<p><em>H<\/em>0 \u00d7 <em>G<\/em> = <em>p(0)G \u00d7 H<\/em><\/p>\n<p>Ha a v\u00e1lasztott g\u00f6rbe t\u00e1mogatja az <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/@VitalikButerin\/exploring-elliptic-curve-pairings-c73c1864e627\"><u>elliptikus g\u00f6rbe p\u00e1ros\u00edt\u00e1sokat,<\/u><\/a><\/noindex>akkor ilyen bizony\u00edt\u00e9k m\u0171k\u00f6dik. Ebben az esetben<em> H<\/em>0 \u2013 ez nemcsak a v\u00e9letlensz\u00e1m-generator kimenete, amit b\u00e1rmely r\u00e9sztvev\u0151 ellen\u0151rizhet, aki ismeri <em>G, H,<\/em> \u00e9s <em>p(0)G. H<\/em>0 \u2013 ez egy \u00fczenet al\u00e1\u00edr\u00e1sa is, amelyet a seedk\u00e9nt haszn\u00e1ltak, meger\u0151s\u00edtve, hogy <em>k<\/em> \u00e9s <em>n <\/em>a r\u00e9sztvev\u0151k al\u00e1\u00edrt\u00e1k ezt az \u00fczenetet. \u00cdgy, ha <em>seed \u2013 <\/em>ez egy blokk hash a blokkl\u00e1nc protokollban, akkor <em>H0<\/em> ez egyidej\u0171leg t\u00f6bb al\u00e1\u00edr\u00e1s a blokkra, \u00e9s egy nagyon j\u00f3 v\u00e9letlensz\u00e1m.<\/p>\n<h4>V\u00e9g\u00fcl<\/h4>\n<p>Ez a cikk a blogon tal\u00e1lhat\u00f3 technikai cikkek sorozat\u00e1nak r\u00e9sze. <noindex><a rel=\"nofollow\" href=\"https:\/\/near.org\">NEAR<\/a><\/noindex>. NEAR \u2013 egy blokkl\u00e1nc protokoll \u00e9s platform decentraliz\u00e1lt alkalmaz\u00e1sok fejleszt\u00e9s\u00e9re, amely a fejleszt\u00e9s egyszer\u0171s\u00e9g\u00e9re \u00e9s a v\u00e9gfelhaszn\u00e1l\u00f3k sz\u00e1m\u00e1ra a haszn\u00e1lat egyszer\u0171s\u00e9g\u00e9re helyezi a hangs\u00falyt.<\/p>\n<p>A protokoll k\u00f3dja ny\u00edlt forr\u00e1sk\u00f3d\u00fa, a megval\u00f3s\u00edt\u00e1sunk Rust nyelven \u00edr\u00f3dott, \u00e9s megtal\u00e1lhat\u00f3 itt <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/nearprotocol\/nearcore\">itt<\/a><\/noindex>.<\/p>\n<p>Megn\u00e9zheti, hogyan n\u00e9z ki a NEAR fejleszt\u00e9se, \u00e9s k\u00eds\u00e9rletezhet az online IDE-ben <noindex><a rel=\"nofollow\" href=\"https:\/\/examples.near.org\">itt<\/a><\/noindex>.<\/p>\n<p>Minden h\u00edr k\u00f6vethet\u0151 oroszul a <noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/near_protocol\">Telegram csoportban<\/a><\/noindex> \u00e9s a <noindex><a rel=\"nofollow\" href=\"https:\/\/vk.com\/nearprotocol\">VK csoportban<\/a><\/noindex>, angolul pedig a hivatalos <noindex><a rel=\"nofollow\" href=\"https:\/\/twitter.com\/NEARProtocol\">Twitteren<\/a><\/noindex>.<\/p>\n<p>Hamarosan tal\u00e1lkozunk!<\/p>\n<p>Forr\u00e1s: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/near\/blog\/521700\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0438\u0432\u0435\u0442, \u0425\u0430\u0431\u0440! \u0412 \u043f\u0435\u0440\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0441\u0442\u0430\u0442\u044c\u0438 \u043c\u044b \u043e\u0431\u0441\u0443\u0434\u0438\u043b\u0438, \u0437\u0430\u0447\u0435\u043c \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0435 \u0447\u0438\u0441\u043b\u0430 \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u0430\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u0434\u043e\u0432\u0435\u0440\u044f\u044e\u0442 \u0434\u0440\u0443\u0433 \u0434\u0440\u0443\u0433\u0443, \u043a\u0430\u043a\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u0432\u044b\u0434\u0432\u0438\u0433\u0430\u044e\u0442\u0441\u044f \u043a \u0442\u0430\u043a\u0438\u043c \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430\u043c \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b, \u0438 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043b\u0438 \u0434\u0432\u0430 \u043f\u043e\u0434\u0445\u043e\u0434\u0430 \u043a \u0438\u0445 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438. \u0412 \u044d\u0442\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0441\u0442\u0430\u0442\u044c\u0438 \u043c\u044b \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0435\u0449\u0435 \u043e\u0434\u0438\u043d \u043f\u043e\u0434\u0445\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u043f\u043e\u0440\u043e\u0433\u043e\u0432\u044b\u0435 \u043f\u043e\u0434\u043f\u0438\u0441\u0438. \u041d\u0435\u043c\u043d\u043e\u0433\u043e \u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438 \u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":95847,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-95846","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/mozhno-li-generirovat-sluchajnye-chisla-esli-my-ne-doveryaem-drug-drugu-chast-2\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"hu_HU\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041c\u043e\u0436\u043d\u043e \u043b\u0438 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0435 \u0447\u0438\u0441\u043b\u0430, \u0435\u0441\u043b\u0438 \u043c\u044b \u043d\u0435 \u0434\u043e\u0432\u0435\u0440\u044f\u0435\u043c \u0434\u0440\u0443\u0433 \u0434\u0440\u0443\u0433\u0443? \u0427\u0430\u0441\u0442\u044c 2 | ProHoster\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/mozhno-li-generirovat-sluchajnye-chisla-esli-my-ne-doveryaem-drug-drugu-chast-2\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-10-03T23:42:23+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-10-03T23:42:23+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Lehets\u00e9ges-e v\u00e9letlensz\u00e1mokat gener\u00e1lni, ha nem b\u00edzunk egym\u00e1sban? 2. r\u00e9sz | ProHoster","description":"","canonical_url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/mozhno-li-generirovat-sluchajnye-chisla-esli-my-ne-doveryaem-drug-drugu-chast-2","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"hu_HU","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041c\u043e\u0436\u043d\u043e \u043b\u0438 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0435 \u0447\u0438\u0441\u043b\u0430, \u0435\u0441\u043b\u0438 \u043c\u044b \u043d\u0435 \u0434\u043e\u0432\u0435\u0440\u044f\u0435\u043c \u0434\u0440\u0443\u0433 \u0434\u0440\u0443\u0433\u0443? \u0427\u0430\u0441\u0442\u044c 2 | ProHoster","og:url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/mozhno-li-generirovat-sluchajnye-chisla-esli-my-ne-doveryaem-drug-drugu-chast-2","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-10-03T23:42:23+00:00","article:modified_time":"2020-10-03T23:42:23+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"95846","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 10:56:24","updated":"2022-09-30 13:54:48","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/95846","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/comments?post=95846"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/95846\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media\/95847"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media?parent=95846"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/categories?post=95846"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/tags?post=95846"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}