{"id":53444,"date":"2019-12-02T00:00:00","date_gmt":"2019-12-01T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/shema-razdeleniya-sekreta-shamira"},"modified":"2020-02-18T14:01:21","modified_gmt":"2020-02-18T11:01:21","slug":"shema-razdeleniya-sekreta-shamira","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/shema-razdeleniya-sekreta-shamira","title":{"rendered":"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>S\u0103 presupunem un scenariu \u00een care trebuie s\u0103 asigur\u0103m securitatea unei camere de bani. Aceasta este considerat\u0103 complet inaccesibil\u0103 f\u0103r\u0103 cheia pe care o prime\u0219ti \u00een prima zi de lucru. Obiectivul t\u0103u este s\u0103 p\u0103strezi cheia \u00een siguran\u021b\u0103.<\/p>\n<p>S\u0103 zicem c\u0103 ai decis s\u0103 \u00ee\u021bi p\u0103strezi cheia tot timpul, oferind acces la camer\u0103 doar c\u00e2nd este necesar. Dar vei realiza rapid c\u0103 aceast\u0103 solu\u021bie nu se scaleaz\u0103 bine \u00een practic\u0103, pentru c\u0103 de fiecare dat\u0103 pentru a deschide camera este necesar\u0103 prezen\u021ba ta fizic\u0103. Ce se \u00eent\u00e2mpl\u0103 cu concediile promise? \u00cen plus, te \u00eengrijoreaz\u0103 \u0219i mai mult \u00eentrebarea: ce se \u00eent\u00e2mpl\u0103 dac\u0103 pierzi singura cheie?<\/p>\n<p>G\u00e2ndindu-te la concediu, ai decis s\u0103 faci o copie a cheii \u0219i s\u0103 o \u00eencredin\u021bezi unui alt coleg. Totu\u0219i, \u00ee\u021bi dai seama c\u0103 aceasta nu este o solu\u021bie ideal\u0103. Duplic\u00e2nd num\u0103rul cheilor, ai dublat \u0219i riscurile de furt al cheii.<\/p>\n<p>Disperat, distrugi copia \u0219i decizi s\u0103 \u00eempar\u021bi cheia original\u0103 \u00een dou\u0103. Acum, te g\u00e2nde\u0219ti c\u0103 dou\u0103 persoane de \u00eencredere cu fragmentele cheii trebuie s\u0103 fie prezente fizic pentru a asambla cheia \u0219i a deschide camera. Aceasta \u00eenseamn\u0103 c\u0103 ho\u021bul trebuie s\u0103 fure dou\u0103 fragmente, ceea ce este de dou\u0103 ori mai greu dec\u00e2t s\u0103 fure o singur\u0103 cheie. Cu toate acestea, \u00een cur\u00e2nd \u00ee\u021bi dai seama c\u0103 aceast\u0103 schem\u0103 nu este cu mult mai bun\u0103 dec\u00e2t o cheie simpl\u0103, deoarece dac\u0103 cineva pierde o jum\u0103tate din cheie, cheia complet\u0103 nu poate fi recreat\u0103.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nProblema poate fi rezolvat\u0103 printr-o serie de chei \u0219i \u00eencuietori suplimentare, dar cu acest tip de abordare rapid se va necesita <i>multe<\/i> chei \u0219i \u00eencuietori. Decizi c\u0103 \u00een schema ideal\u0103 cheia ar trebui \u00eemp\u0103r\u021bit\u0103 pentru ca securitatea s\u0103 nu depind\u0103 complet de o singur\u0103 persoan\u0103. De asemenea, concluzionezi c\u0103 ar trebui s\u0103 existe un prag de num\u0103r de fragmente astfel \u00eenc\u00e2t, \u00een cazul pierderii unuia (sau dac\u0103 cineva pleac\u0103 \u00een concediu), \u00eentreaga cheie s\u0103 r\u0103m\u00e2n\u0103 func\u021bional\u0103.<\/p>\n<h1>Cum s\u0103 \u00eempar\u021bi secretul<\/h1>\n<p>\nAcest tip de schem\u0103 de gestionare a cheilor a fost g\u00e2ndit de Adi Shamir \u00een 1979, c\u00e2nd \u0219i-a publicat lucrarea <noindex><a rel=\"nofollow\" href=\"https:\/\/cs.jhu.edu\/~sdoshi\/crypto\/papers\/shamirturing.pdf\">\u201eCum s\u0103 \u00eemp\u0103r\u021bim un secret\u201d<\/a><\/noindex>. \u00cen articol se explic\u0103 pe scurt a\u0219a numita <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/64d1d06429d10e2571b04ba756a9e44d.jpg\" style=\"display:block;margin: 0 auto;\" \/> schem\u0103 de praguri pentru \u00eemp\u0103r\u021birea eficient\u0103 a unei valori secrete (de exemplu, a unei chei criptografice) \u00een <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/d2ecc715b363a149fefb4cc647a30e6e.jpg\" style=\"display:block;margin: 0 auto;\" \/> p\u0103r\u021bi. Apoi, c\u00e2nd \u0219i numai c\u00e2nd cel pu\u021bin <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/7a3f94d0d7874387726d18ef0c5c4174.jpg\" style=\"display:block;margin: 0 auto;\" \/> din <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/83808316ecdccf2d3d1d05696c6d5507.jpg\" style=\"display:block;margin: 0 auto;\" \/> p\u0103r\u021bi sunt adunate, secretul poate fi recuperat u\u0219or. <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/ec92794c36ed48497df201c55697e065.jpg\" style=\"display:block;margin: 0 auto;\" \/>.<\/p>\n<p>Din punct de vedere al securit\u0103\u021bii, o caracteristic\u0103 important\u0103 a acestui sistem este c\u0103 un atacator nu ar trebui s\u0103 afle nimic absolut, dac\u0103 nu are cel pu\u021bin <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/49419db7a603359c9d7f2949263e0f7d.jpg\" style=\"display:block;margin: 0 auto;\" \/> p\u0103r\u021bile. Chiar \u0219i de\u021binerea <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/13aad9d68bc8f0729bf06fc49435b7dc.jpg\" style=\"display:block;margin: 0 auto;\" \/> p\u0103r\u021bilor nu ar trebui s\u0103 ofere nicio informa\u021bie. Numim aceast\u0103 caracteristic\u0103 <i>securitate semantic\u0103<\/i>.<\/p>\n<h1>Interpolare polinomial\u0103<\/h1>\n<p>\nSchema de prag Shamir <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/5bcbb5a7f61e4e37103c379964d49e63.jpg\" style=\"display:block;margin: 0 auto;\" \/> este construit\u0103 \u00een jurul conceptului de <b>interpolare polinomial\u0103<\/b>. Dac\u0103 nu e\u0219ti familiarizat cu acest concept, este de fapt destul de simplu. \u00cen general, dac\u0103 ai desenat vreodat\u0103 puncte pe un grafic \u0219i apoi le-ai unit cu linii sau curbe, atunci deja l-ai folosit!<\/p>\n<p><img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/66d66cc226dde7af9d71ab1ad7f92eea.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Pentru dou\u0103 puncte se poate trasa un num\u0103r nelimitat de polinoame de gradul 2. Pentru a alege dintre ele unicul \u2014 este nevoie de un al treilea punct. Ilustra\u021bie: <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A1%D1%85%D0%B5%D0%BC%D0%B0_%D1%80%D0%B0%D0%B7%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F_%D1%81%D0%B5%D0%BA%D1%80%D0%B5%D1%82%D0%B0_%D0%A8%D0%B0%D0%BC%D0%B8%D1%80%D0%B0#\/media\/File:3_polynomials_of_degree_2_through_2_points.svg\">Wikipedia<\/a><\/noindex><\/i> <\/p>\n<p>S\u0103 consider\u0103m un polinom de gradul unu, <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/479ff09339b6907cf7fd5420a6b66907.jpg\" style=\"display:block;margin: 0 auto;\" \/>. Dac\u0103 vrei s\u0103 construie\u0219ti aceast\u0103 func\u021bie pe grafic, c\u00e2te puncte \u00ee\u021bi trebuie? Ei bine, \u0219tim c\u0103 este o func\u021bie liniar\u0103, care formeaz\u0103 o linie, a\u0219a c\u0103 ai nevoie de cel pu\u021bin dou\u0103 puncte. Apoi, s\u0103 analiz\u0103m o func\u021bie polinomial\u0103 de gradul doi, <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/bd6591a5e317fadba394b9f93c03f813.jpg\" style=\"display:block;margin: 0 auto;\" \/>. Aceasta este o func\u021bie p\u0103tratic\u0103, deci pentru a desena graficul este necesar s\u0103 ai cel pu\u021bin trei puncte. Dar ce zici de un polinom de gradul trei? Cel pu\u021bin patru puncte. \u0218i tot a\u0219a \u0219i mai departe.<\/p>\n<p>Ceea ce este cu adev\u0103rat interesant \u00een aceast\u0103 proprietate este c\u0103, av\u00e2nd gradul func\u021biei polinomiale \u0219i, cel pu\u021bin <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/97d23bb431f561738675a8eecd78c8bd.jpg\" style=\"display:block;margin: 0 auto;\" \/> puncte, putem deduce puncte suplimentare pentru aceast\u0103 func\u021bie polinomial\u0103. Extrapolarea acestor puncte suplimentare o numim <i>interpolare polinomial\u0103<\/i>.<\/p>\n<h1>Compunerea secretului<\/h1>\n<p>\nProbabil c\u0103 deja ai \u00een\u021beles c\u0103 aici intervine schema inteligent\u0103 a lui Shamir. S\u0103 presupunem c\u0103 secretul nostru <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/9f18d04feb91617cc6b17ee999f7621e.jpg\" style=\"display:block;margin: 0 auto;\" \/> \u2014 acesta este <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/724e6fe3c0b6e8460207592d515dde4a.jpg\" style=\"display:block;margin: 0 auto;\" \/>. Putem transforma <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/e1bb80717e0e060d77dc3fa2bff5e396.jpg\" style=\"display:block;margin: 0 auto;\" \/> \u00eentr-un punct pe grafic <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/d7291bf682131a3cd1dc9fb65c351a5d.jpg\" style=\"display:block;margin: 0 auto;\" \/> \u0219i s\u0103 g\u0103sim o func\u021bie polinomial\u0103 de gradul <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/c63b9a9efa9409f73baf5916cd77b8b5.jpg\" style=\"display:block;margin: 0 auto;\" \/>, care s\u0103 satisfac\u0103 acest punct. S\u0103 reamintim c\u0103 <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/4670e092c7dc86f70984a3d5e875ae7e.jpg\" style=\"display:block;margin: 0 auto;\" \/> va fi pragul nostru de fragmente necesare, a\u0219a c\u0103, dac\u0103 stabilim pragul la trei fragmente, atunci trebuie s\u0103 alegem o func\u021bie polinomial\u0103 de gradul doi.<\/p>\n<p>Polinomul nostru va avea forma <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/06e96a58093b9e00d7c37ad5f832a6f4.jpg\" style=\"display:block;margin: 0 auto;\" \/>, unde <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/fc9ce1b274e8224fcfee33290fee6455.jpg\" style=\"display:block;margin: 0 auto;\" \/> \u0219i <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/ec120b09589c1ee882f1f93b47626c94.jpg\" style=\"display:block;margin: 0 auto;\" \/> sunt numere \u00eentregi pozitive alese aleatoriu. Construim pur \u0219i simplu un polinom de gradul <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/ef10f07dfb8496cca70579246c1d9c48.jpg\" style=\"display:block;margin: 0 auto;\" \/>, unde coeficientul liber <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/d7db113a15325721c9fea613a379026f.jpg\" style=\"display:block;margin: 0 auto;\" \/>\u00a0este secretul nostru <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/093bd4575a590bed819e6ec9f9b41aa0.jpg\" style=\"display:block;margin: 0 auto;\" \/>, iar fiecare dintre urm\u0103torii <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/6c33d819871b32ff7d347d00408d02d1.jpg\" style=\"display:block;margin: 0 auto;\" \/> un coeficient pozitiv ales membrilor este ales la \u00eent\u00e2mplare. Dac\u0103 ne \u00eentoarcem la exemplul ini\u021bial \u0219i presupunem c\u0103 <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/c6ff5a7ad5a6a82ae31c583148ea5274.jpg\" style=\"display:block;margin: 0 auto;\" \/>, atunci vom ob\u021bine o func\u021bie <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/b3386ca5ec27e0dacd17874d6f5720c8.jpg\" style=\"display:block;margin: 0 auto;\" \/>.<\/p>\n<p>\u00cen aceast\u0103 etap\u0103 putem genera fragmente, conect\u00e2nd <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/50a46de4540f90ddba6b1bbfa3702892.jpg\" style=\"display:block;margin: 0 auto;\" \/> numere \u00eentregi unice \u00een <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/fcbc7f0b6d9353e6eae0fafe4a06a4f2.jpg\" style=\"display:block;margin: 0 auto;\" \/>, unde <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/c58e20b2b97950112194f6a51707289c.jpg\" style=\"display:block;margin: 0 auto;\" \/> (deoarece acesta este secretul nostru). \u00cen acest exemplu, vrem s\u0103 distribuim patru fragmente cu un prag de trei, a\u0219a c\u0103 gener\u0103m puncte aleatoriu <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/720b820e264f0314cb2e14ab6502ee96.jpg\" style=\"display:block;margin: 0 auto;\" \/> \u0219i trimitem c\u00e2te un punct fiec\u0103rei dintre cele patru persoane de \u00eencredere, p\u0103str\u0103torii cheii. De asemenea, le comunic\u0103m oamenilor c\u0103 <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/c441ff2a652b58011e13d60855c7e404.jpg\" style=\"display:block;margin: 0 auto;\" \/>, deoarece aceasta este considerat\u0103 informa\u021bie public\u0103 \u0219i este necesar\u0103 pentru recuperare <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/2011019c98b6d1a77a0cd25a3667c9e4.jpg\" style=\"display:block;margin: 0 auto;\" \/>.<\/p>\n<h1>Recuperarea secretului<\/h1>\n<p>\nAm discutat deja despre conceptul de interpolare polinomial\u0103 \u0219i despre faptul c\u0103 acesta st\u0103 la baza schemei de prag Shamir. <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/6f93e17d2d2ce5659972b98a9c8eee83.jpg\" style=\"display:block;margin: 0 auto;\" \/>. C\u00e2nd oricare trei din cele patru persoane de \u00eencredere doresc s\u0103 recupereze <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/9b5ba8c78e395d3dee229e222c31d85a.jpg\" style=\"display:block;margin: 0 auto;\" \/>, trebuie doar s\u0103 interpoleze <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/cfec467c0571c4d54d74938c5667146f.jpg\" style=\"display:block;margin: 0 auto;\" \/> cu punctele lor unice. Pentru aceasta, ei pot determina punctele lor <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/035e1f8407434fdbe1b8814d7fd3ee1f.jpg\" style=\"display:block;margin: 0 auto;\" \/> \u0219i pot calcula polinomul de interpolare Lagrange, folosind urm\u0103toarea formul\u0103. Dac\u0103 programarea \u00ee\u021bi este mai clar\u0103 dec\u00e2t matematica, atunci pi este practic operatorul <code>for<\/code>, care \u00eenmul\u021be\u0219te toate rezultatele, iar sigma este <code>for<\/code>, care adun\u0103 tot.<\/p>\n<p><img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/01a47d3bc38f07f7b65da2ca1f772e28.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/cc0039bc38e27a62161bc0fde3b1472d.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\nUpon <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/b41d5abefcac0bb813291063f0a56404.jpg\" style=\"display:block;margin: 0 auto;\" \/> putem rezolva asta \u00een felul urm\u0103tor \u0219i s\u0103 return\u0103m func\u021bia noastr\u0103 polinomial\u0103 original\u0103:<\/p>\n<p><img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/b7af6d68d1fa639442f96ed11cc96bd7.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\nDeoarece \u0219tim c\u0103 <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/df250c5c331d0a2903867efcad71d325.jpg\" style=\"display:block;margin: 0 auto;\" \/>, recuperarea <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/a6968a889776d0caa3db0dd6e10842d4.jpg\" style=\"display:block;margin: 0 auto;\" \/> se realizeaz\u0103 simplu:<\/p>\n<p><img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/b89862098c973d18a75a104092364a04.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<h1>Utilizarea aritmeticii \u00eentregi nesigure<\/h1>\n<p>\nDe\u0219i am aplicat cu succes ideea de baz\u0103 a lui Shamir <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/626be5c238019fc0a2ff08798b8e620c.jpg\" style=\"display:block;margin: 0 auto;\" \/>, avem \u00eenc\u0103 o problem\u0103 pe care am ignorat-o p\u00e2n\u0103 acum. Func\u021bia noastr\u0103 polinomial\u0103 folose\u0219te aritmetica \u00eentreag\u0103 nesigur\u0103. Re\u021bine\u021bi c\u0103 pentru fiecare punct suplimentar pe care atacatorul \u00eel ob\u021bine pe graficul func\u021biei noastre, r\u0103m\u00e2ne un num\u0103r mai mic de oportunit\u0103\u021bi pentru celelalte puncte. Pute\u021bi vedea asta cu ochii vo\u0219tri atunci c\u00e2nd construi\u021bi un grafic cu un num\u0103r crescut de puncte pentru o func\u021bie polinomial\u0103 folosind aritmetica \u00eentreag\u0103. Acest lucru este contraproductiv pentru scopul nostru declarat de securitate, deoarece atacatorul nu ar trebui s\u0103 afle absolut nimic p\u00e2n\u0103 nu are cel pu\u021bin <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/d5278c748b7713fc387c37425d43656d.jpg\" style=\"display:block;margin: 0 auto;\" \/> fragmente.<\/p>\n<p>Pentru a demonstra c\u00e2t de slab\u0103 este schema cu aritmetica \u00eentreag\u0103, s\u0103 lu\u0103m \u00een considerare un scenariu \u00een care atacatorul a ob\u021binut dou\u0103 puncte <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/ebe75137fa19aaccdc733618707de3c0.jpg\" style=\"display:block;margin: 0 auto;\" \/> \u0219i \u0219tie informa\u021bia public\u0103 c\u0103 <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/45dc1dbd7564637c96d1c8383af19e15.jpg\" style=\"display:block;margin: 0 auto;\" \/>. Din aceste informa\u021bii, acesta poate deduce <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/16e75561bf051ecd3232f0560f75e494.jpg\" style=\"display:block;margin: 0 auto;\" \/>, echivalent cu doi, \u0219i poate introduce \u00een formul\u0103 valorile cunoscute <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/e6c550b9a0d630e62d5be66e61ff3a89.jpg\" style=\"display:block;margin: 0 auto;\" \/> \u0219i <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/e2a3c2a324c159cf73852513dda5ff3b.jpg\" style=\"display:block;margin: 0 auto;\" \/>.<\/p>\n<p><img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/003b535b08b5de17b573c7af61110dbb.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\n Apoi, atacatorul poate g\u0103si <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/76d496e3442e88c7d5a238612f2ee8da.jpg\" style=\"display:block;margin: 0 auto;\" \/>, calcul\u00e2nd <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/96ef9b4a0657cd258978e2eda974bd09.jpg\" style=\"display:block;margin: 0 auto;\" \/>:<\/p>\n<p><img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/8e677012c61e1cc45f1f3be6e44aa1c1.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\nDeoarece am definit <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/62af08665bef7cd3fc447411455352c6.jpg\" style=\"display:block;margin: 0 auto;\" \/> ca numere \u00eentregi pozitive selectate aleatoriu, exist\u0103 un num\u0103r limitat de op\u021biuni posibile <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/66c39a1014c0acab55fea137f28a6d0f.jpg\" style=\"display:block;margin: 0 auto;\" \/>. Cu aceste informa\u021bii, atacatorul poate deduce <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/0c3caaa1e189ffea0001ca9ad08a65d1.jpg\" style=\"display:block;margin: 0 auto;\" \/>, deoarece orice num\u0103r mai mare de 5 va face <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/104807891ce9ab1d3adc649f8d1dcd29.jpg\" style=\"display:block;margin: 0 auto;\" \/> negativ. Asta se dovede\u0219te a fi adev\u0103rat, deoarece am definit <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/cf2bebff28344be58b02c492fd0e49ba.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Apoi, atacatorul poate calcula valorile posibile <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/7c9c09333ee4ab432122e959892daeda.jpg\" style=\"display:block;margin: 0 auto;\" \/>, \u00eenlocuind <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/c5d88d7a2488ae0c40e5ec3edb66dd2d.jpg\" style=\"display:block;margin: 0 auto;\" \/> \u00een <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/8fd97c507a4d2bc8d4e4619e10e97063.jpg\" style=\"display:block;margin: 0 auto;\" \/>:<\/p>\n<p><img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/1f2fb897dc37702dd543a6d7783339cb.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\nCu un set limitat de op\u021biuni pentru <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/9960ad727ecf47084cacfb9f487f329a.jpg\" style=\"display:block;margin: 0 auto;\" \/> devine clar c\u00e2t de u\u0219or este s\u0103 ghice\u0219ti \u0219i s\u0103 verifici valorile <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/47f9786e9728ed72e10dd505d7445b41.jpg\" style=\"display:block;margin: 0 auto;\" \/>. Exist\u0103 doar cinci op\u021biuni.<\/p>\n<h1>Solu\u021bia problemei cu aritmetica \u00eentreag\u0103 nesigur\u0103<\/h1>\n<p>\nPentru a elimina aceast\u0103 vulnerabilitate, Shamir propune utilizarea aritmeticii modulare, \u00eenlocuind <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/503fd220af76c5e96cce3a84a4673f91.jpg\" style=\"display:block;margin: 0 auto;\" \/> pe <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/49ab2b2ee61d6551a1b41f6a1795a295.jpg\" style=\"display:block;margin: 0 auto;\" \/>, unde <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/bb5a5adda52f7d4dd401efd8a040be69.jpg\" style=\"display:block;margin: 0 auto;\" \/> \u0219i <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/1e062a8784dfb6da2bc708d3de027042.jpg\" style=\"display:block;margin: 0 auto;\" \/> \u2014 mul\u021bimea tuturor numerelor prime.<\/p>\n<p>S\u0103 ne amintim rapid cum func\u021bioneaz\u0103 aritmetica modular\u0103. Ceasurile cu ace sunt o conceptie deja cunoscut\u0103. Acesta utilizeaz\u0103 ceasuri care sunt <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/93520a0c8bdbbe57ab424e58c3bbfe30.jpg\" style=\"display:block;margin: 0 auto;\" \/>. Atunci c\u00e2nd bratul orar trece de dou\u0103sprezece, acesta revine la unu. O caracteristic\u0103 interesant\u0103 a acestui sistem este c\u0103, doar uit\u00e2ndu-ne la ceas, nu putem deduce c\u00e2te rota\u021bii a f\u0103cut bratul orar. Cu toate acestea, dac\u0103 \u0219tim c\u0103 bratul orar a trecut de 12 de patru ori, putem determina complet num\u0103rul de ore trecute cu ajutorul unei formule simple <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/5b8b7655f38ee900b989fdc070616a6b.jpg\" style=\"display:block;margin: 0 auto;\" \/>, unde <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/0ec5da4245e1eac619b42bb62f682773.jpg\" style=\"display:block;margin: 0 auto;\" \/>\u00a0\u2014 acesta este divizorul nostru (aici <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/a8656dac61ddb1097f06781c5b5aad69.jpg\" style=\"display:block;margin: 0 auto;\" \/>), <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/3ba5b3dc4f29fac3c9d4f5f2072d688b.jpg\" style=\"display:block;margin: 0 auto;\" \/>\u00a0\u2014 acesta este coeficientul (de c\u00e2te ori divizorul se \u00eempac\u0103 cu num\u0103rul ini\u021bial f\u0103r\u0103 rest, aici <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/ac9bb70e1511109b0181e14b6227f57e.jpg\" style=\"display:block;margin: 0 auto;\" \/>), iar <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/57b6842c2bfd39b19ce428e5b9345946.jpg\" style=\"display:block;margin: 0 auto;\" \/>\u00a0\u2014 acesta este restul, care de obicei este returnat de operatorul modulo (aici <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/28f71e672ecc717d2bd1845e27273398.jpg\" style=\"display:block;margin: 0 auto;\" \/>). Cunoa\u0219terea tuturor acestor valori ne permite s\u0103 rezolv\u0103m ecua\u021bia pentru <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/9548f9d6b522258582be1f8968752866.jpg\" style=\"display:block;margin: 0 auto;\" \/>, dar dac\u0103 omitem coeficientul, nu vom putea niciodat\u0103 s\u0103 recuper\u0103m valoarea ini\u021bial\u0103.<\/p>\n<p>Putem demonstra cum acest lucru \u00eembun\u0103t\u0103\u021be\u0219te securitatea schemei noastre aplic\u00e2nd schema la exemplul nostru anterior \u0219i folosind <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/c0f760bdd2b67444bd233d4ea7fe5e72.jpg\" style=\"display:block;margin: 0 auto;\" \/>. Func\u021bia noastr\u0103 polinomial\u0103 nou\u0103 <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/afddb9747f68076bc6dbe9b5cf60d107.jpg\" style=\"display:block;margin: 0 auto;\" \/>, iar noile puncte <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/da9d9ecfcf949b6be4bc8e3a29d670ab.jpg\" style=\"display:block;margin: 0 auto;\" \/>. Acum, cei care p\u0103streaz\u0103 cheia pot folosi din nou interpolarea polinomial\u0103 pentru a recupera func\u021bia noastr\u0103, dar de data aceasta opera\u021biile de adunare \u0219i \u00eenmul\u021bire trebuie s\u0103 fie \u00eenso\u021bite de reducerea modulo <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/f94ae5343347b38dc64228472b564f0e.jpg\" style=\"display:block;margin: 0 auto;\" \/> (ex. <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/d19138189cd40c6c01ab68d3d6b7027b.jpg\" style=\"display:block;margin: 0 auto;\" \/>).<\/p>\n<p>Folosind acest nou exemplu, s\u0103 presupunem c\u0103 atacatorul a aflat dou\u0103 dintre aceste puncte noi, <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/4f13c2640360f124305f3f023d6cfa83.jpg\" style=\"display:block;margin: 0 auto;\" \/>, iar informa\u021biile publice <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/376e0e059b761e3f3e7473d8d2d3428f.jpg\" style=\"display:block;margin: 0 auto;\" \/>. De aceast\u0103 dat\u0103, atacatorul pe baza tuturor informa\u021biilor disponibile extrage urm\u0103toarele func\u021bii, unde <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/f0aedf279cc2418e2d62d51e63e324b2.jpg\" style=\"display:block;margin: 0 auto;\" \/>\u00a0\u2014 un set al tuturor numerelor \u00eentregi pozitive, iar <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/c92efad35129d61013f6e37ec1907fd3.jpg\" style=\"display:block;margin: 0 auto;\" \/> reprezint\u0103 coeficientul modulelor <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/c2679ec08a40d7aa13a9d375b610642c.jpg\" style=\"display:block;margin: 0 auto;\" \/>.<\/p>\n<p><img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/0f6d09b6c15f013e9a445fef060f8091.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\nAcum, atacatorul nostru g\u0103se\u0219te din nou <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/8e01640ea802740996150d09277cbf1f.jpg\" style=\"display:block;margin: 0 auto;\" \/>, calcul\u00e2nd <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/78fa395ca715c36835c38f4fe16d63e0.jpg\" style=\"display:block;margin: 0 auto;\" \/>:<\/p>\n<p><img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/d739d7e52d675aeba9abcc6ada4097e1.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\nApoi, \u00eencearc\u0103 din nou s\u0103 extrag\u0103 <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/e47c9bd27ac92787c287b7db249a345f.jpg\" style=\"display:block;margin: 0 auto;\" \/>, \u00eenlocuind <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/15c82f6824ad986351d3358c32b28f26.jpg\" style=\"display:block;margin: 0 auto;\" \/> \u00een <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/56cddebdf83ddc105aa8aba91bd0bb38.jpg\" style=\"display:block;margin: 0 auto;\" \/>:<\/p>\n<p><img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/6e9643108864d1d2cf9e04bed493fff7.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\nDe data aceasta, are o problem\u0103 serioas\u0103. Formula nu con\u021bine valori <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/217282ca338c79dd058db66f405b07a0.jpg\" style=\"display:block;margin: 0 auto;\" \/>, <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/fb908d84b7eac873bba662cf69d95b95.jpg\" style=\"display:block;margin: 0 auto;\" \/> \u0219i <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/83389928ca52ffce5266fe6a414e1f18.jpg\" style=\"display:block;margin: 0 auto;\" \/>. Deoarece exist\u0103 un num\u0103r infinit de combina\u021bii ale acestor variabile, nu poate ob\u021bine informa\u021bii suplimentare.<\/p>\n<h1>Considera\u021bii de securitate<\/h1>\n<p>\nSchema de \u00eemp\u0103r\u021bire a secretului lui Shamir ofer\u0103 <i>securitate din perspectiva teoriei informa\u021biei<\/i>. Asta \u00eenseamn\u0103 c\u0103 matematica este rezistent\u0103 chiar \u0219i \u00een fa\u021ba unui atacator cu putere de calcul nelimitat\u0103. Cu toate acestea, schema con\u021bine totu\u0219i c\u00e2teva probleme cunoscute.<\/p>\n<p>De exemplu, schema lui Shamir nu genereaz\u0103 <i>fragmente verificabile<\/i>, adic\u0103 oamenii pot prezenta liber fragmente false \u0219i pot \u00eempiedica restaurarea secretului corect. Un st\u0103p\u00e2n inamic al fragmentelor cu informa\u021bii suficiente ar putea chiar s\u0103 genereze un alt fragment, modific\u00e2nd <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/8f646ae3193da8c9be778eceb315e902.jpg\" style=\"display:block;margin: 0 auto;\" \/> dup\u0103 bunul plac. Aceast\u0103 problem\u0103 este rezolvat\u0103 prin <i>scheme verificabile de \u00eemp\u0103r\u021bire a secretului<\/i>, cum ar fi schema lui Feldman.<\/p>\n<p>O alt\u0103 problem\u0103 este c\u0103 lungimea oric\u0103rui fragment este egal\u0103 cu lungimea secretului corespunz\u0103tor, astfel \u00eenc\u00e2t lungimea secretului poate fi u\u0219or identificat\u0103. Aceast\u0103 problem\u0103 este abordat\u0103 printr-o <i>umplere<\/i> a secretului cu numere aleatoare p\u00e2n\u0103 la o lungime fix\u0103.<\/p>\n<p>\u00cen cele din urm\u0103, este important de men\u021bionat c\u0103 temerile noastre legate de securitate pot dep\u0103\u0219i cadrul schemei \u00een sine. Pentru aplica\u021biile criptografice reale, exist\u0103 adesea amenin\u021b\u0103ri din atacuri pe canale laterale, c\u00e2nd atacatorul \u00eencearc\u0103 s\u0103 extrag\u0103 informa\u021bii utile din timpul de execu\u021bie al aplica\u021biei, cache, erori etc. Dac\u0103 aceasta reprezint\u0103 o \u00eengrijorare, este recomandat s\u0103 se considere cu aten\u021bie utilizarea m\u0103surilor de protec\u021bie \u00een timpul dezvolt\u0103rii, cum ar fi func\u021bii \u0219i c\u0103ut\u0103ri cu timp de execu\u021bie constant, prevenirea salv\u0103rii memoriei pe disc \u0219i o serie de alte aspecte ce dep\u0103\u0219esc aceast\u0103 discu\u021bie.<\/p>\n<h1>Demo<\/h1>\n<p>\nPe <noindex><a rel=\"nofollow\" href=\"https:\/\/ericrafaloff.com\/shamirs-secret-sharing-scheme\/\">aceast\u0103 pagin\u0103<\/a><\/noindex> are o demonstra\u021bie interactiv\u0103 a schemei de \u00eemp\u0103r\u021bire a secretului lui Shamir. Demonstra\u021bia este realizat\u0103 pe baza bibliotecii <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/gburca\/ssss-js\/\">ssss-js<\/a><\/noindex>, care este \u00een sine un port JavaScript al unei programe populare <noindex><a rel=\"nofollow\" href=\"http:\/\/point-at-infinity.org\/ssss\/\">ssss<\/a><\/noindex>. V\u0103 rug\u0103m s\u0103 re\u021bine\u021bi c\u0103 calcularea valorilor mari <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/4d8ec4bf92d337e22ed38aef8c2afa60.jpg\" style=\"display:block;margin: 0 auto;\" \/>, <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/cadfa859ca9627c9c3d63d52e1270de2.jpg\" style=\"display:block;margin: 0 auto;\" \/> \u0219i <img decoding=\"async\" alt=\"Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir\" src=\"\/wp-content\/uploads\/2019\/12\/c66b23e0128c4b7a50e9d8b0ed99e406.jpg\" style=\"display:block;margin: 0 auto;\" \/> poate dura ceva timp.<br \/>\n<br \/>Sursa: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/431392\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0439, \u043a\u043e\u0433\u0434\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442\u044c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c \u0431\u0430\u043d\u043a\u043e\u0432\u0441\u043a\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430. \u041e\u043d\u043e \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e \u043d\u0435\u043f\u0440\u0438\u0441\u0442\u0443\u043f\u043d\u044b\u043c \u0431\u0435\u0437 \u043a\u043b\u044e\u0447\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u0430\u043c \u0432\u044b\u0434\u0430\u044e\u0442 \u0432 \u043f\u0435\u0440\u0432\u044b\u0439 \u0436\u0435 \u0434\u0435\u043d\u044c \u0440\u0430\u0431\u043e\u0442\u044b. \u0412\u0430\u0448\u0430 \u0446\u0435\u043b\u044c\u00a0\u2014 \u043d\u0430\u0434\u0451\u0436\u043d\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043a\u043b\u044e\u0447. \u041f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u043c, \u0432\u044b \u0440\u0435\u0448\u0438\u043b\u0438 \u0432\u0441\u0451 \u0432\u0440\u0435\u043c\u044f \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043a\u043b\u044e\u0447 \u043f\u0440\u0438 \u0441\u0435\u0431\u0435, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044f \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0443 \u043f\u043e \u043c\u0435\u0440\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438. \u041d\u043e \u0432\u044b \u0431\u044b\u0441\u0442\u0440\u043e \u043f\u043e\u0439\u043c\u0451\u0442\u0435, \u0447\u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e \u043d\u0435 \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u0443\u0435\u0442\u0441\u044f, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-53444","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0439, \u043a\u043e\u0433\u0434\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442\u044c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c \u0431\u0430\u043d\u043a\u043e\u0432\u0441\u043a\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430. \u041e\u043d\u043e \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e \u043d\u0435\u043f\u0440\u0438\u0441\u0442\u0443\u043f\u043d\u044b\u043c \u0431\u0435\u0437 \u043a\u043b\u044e\u0447\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u0430\u043c \u0432\u044b\u0434\u0430\u044e\u0442 \u0432 \u043f\u0435\u0440\u0432\u044b\u0439 \u0436\u0435 \u0434\u0435\u043d\u044c \u0440\u0430\u0431\u043e\u0442\u044b.\" \/>\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\/ro\/blog\/administrirovanie\/shema-razdeleniya-sekreta-shamira\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\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\u0421\u0445\u0435\u043c\u0430 \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0441\u0435\u043a\u0440\u0435\u0442\u0430 \u0428\u0430\u043c\u0438\u0440\u0430 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0439, \u043a\u043e\u0433\u0434\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442\u044c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c \u0431\u0430\u043d\u043a\u043e\u0432\u0441\u043a\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430. \u041e\u043d\u043e \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e \u043d\u0435\u043f\u0440\u0438\u0441\u0442\u0443\u043f\u043d\u044b\u043c \u0431\u0435\u0437 \u043a\u043b\u044e\u0447\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u0430\u043c \u0432\u044b\u0434\u0430\u044e\u0442 \u0432 \u043f\u0435\u0440\u0432\u044b\u0439 \u0436\u0435 \u0434\u0435\u043d\u044c \u0440\u0430\u0431\u043e\u0442\u044b.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/shema-razdeleniya-sekreta-shamira\" \/>\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=\"2019-12-01T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:01:21+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\udd47Schema de \u00eemp\u0103r\u021bire a secretului lui Shamir | ProHoster","description":"S\u0103 lu\u0103m \u00een considerare scenariul \u00een care este necesar\u0103 asigurarea securit\u0103\u021bii unei b\u0103nc\u0103rii. Aceasta este considerat\u0103 complet inaccesibil\u0103 f\u0103r\u0103 cheia pe care o primi\u021bi \u00een prima zi de munc\u0103.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/shema-razdeleniya-sekreta-shamira","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","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\u0421\u0445\u0435\u043c\u0430 \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0441\u0435\u043a\u0440\u0435\u0442\u0430 \u0428\u0430\u043c\u0438\u0440\u0430 | ProHoster","og:description":"\u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0439, \u043a\u043e\u0433\u0434\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442\u044c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c \u0431\u0430\u043d\u043a\u043e\u0432\u0441\u043a\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430. \u041e\u043d\u043e \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e \u043d\u0435\u043f\u0440\u0438\u0441\u0442\u0443\u043f\u043d\u044b\u043c \u0431\u0435\u0437 \u043a\u043b\u044e\u0447\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u0430\u043c \u0432\u044b\u0434\u0430\u044e\u0442 \u0432 \u043f\u0435\u0440\u0432\u044b\u0439 \u0436\u0435 \u0434\u0435\u043d\u044c \u0440\u0430\u0431\u043e\u0442\u044b.","og:url":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/shema-razdeleniya-sekreta-shamira","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":"2019-12-01T21:00:00+00:00","article:modified_time":"2020-02-18T11:01:21+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"53444","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":"2026-01-24 07:23:42","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 20:25:27","updated":"2026-01-24 07:23:42","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/53444","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=53444"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/53444\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=53444"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=53444"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=53444"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}