Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Математические аспекты задачи обфускации программ

crdoo
October 09, 2018
4

Математические аспекты задачи обфускации программ

Захаров В.А
ф-т ВМиК МГУ им. М.В. Ломоносова

crdoo

October 09, 2018
Tweet

More Decks by crdoo

Transcript

  1. Ìàòåìàòè÷åñêèå
    àñïåêòû çàäà÷è
    îáôóñêàöèè ïðîãðàìì
    Â.À. Çàõàðîâ
    ô-ò ÂÌèÊ ÌÃÓ èì. Ì.Â. Ëîìîíîñîâà

    View Slide

  2. ÎÁÔÓÑÊÀÖÈß ÏÐÎÃÐÀÌÌ
    ýòî òàêàÿ ðàçíîâèäíîñòü ýêâèâàëåíòíûõ
    ïðåîáðàçîâàíèé ïðîãðàìì, êîòîðàÿ ïðåäíàçíà÷åíà
    äëÿ çàòðóäíåíèÿ ïîíèìàíèÿ ïðîãðàìì è
    èçâëå÷åíèÿ èç íèõ ïîëåçíîé èíôîðìàöèè îá
    àëãîðèòìàõ, ñòðóêòóðàõ äàííûõ, ñåêðåòíûõ
    êëþ÷àõ, ñîäåðæàùèõñÿ â ïðîãðàììàõ.

    View Slide

  3. ÎÁÔÓÑÊÀÖÈß ÏÐÎÃÐÀÌÌ
    ýòî òàêàÿ ðàçíîâèäíîñòü ýêâèâàëåíòíûõ
    ïðåîáðàçîâàíèé ïðîãðàìì, êîòîðàÿ ïðåäíàçíà÷åíà
    äëÿ çàòðóäíåíèÿ ïîíèìàíèÿ ïðîãðàìì è
    èçâëå÷åíèÿ èç íèõ ïîëåçíîé èíôîðìàöèè îá
    àëãîðèòìàõ, ñòðóêòóðàõ äàííûõ, ñåêðåòíûõ
    êëþ÷àõ, ñîäåðæàùèõñÿ â ïðîãðàììàõ.
    Îñíîâíûå çàäà÷è
    Êàê ïîñòðîèòü îáôóñêàòîð ïðîãðàìì?
    Êàê îöåíèòü ñòîéêîñòü îáôóñêàöèè?

    View Slide

  4. ÄÂÀ ÍÀÏÐÀÂËÅÍÈß ÈÑÑËÅÄÎÂÀÍÈÉ
    Îáôóñêàöèÿ äëÿ íóæä êðèïòîãðàôèè
    Die W., Hellman M. New directions in cryptography
    . IEEE
    Transactions in Information Theory, 1976.
    Îáôóñêàöèÿ ïîçâîëÿåò ïðåîáðàçîâûâàòü êðèïòîñèñòåìû ñ
    ñåêðåòíûì êëþ÷îì â êðèïòîñèñòåìû ñ îòêðûòûì êëþ÷îì.
    Äëÿ ýòîãî äîñòàòî÷íî ïîäâåðãíóòü îáôóñêàöèè ïðîãðàììó,
    ðåàëèçóþùóþ àëãîðèòì øèôðîâàíèÿ ñ âñòàâëåííûì â íåå
    ñåêðåòíûì êëþ÷îì. Ïðåîáðàçîâàííóþ òàêèì îáðàçîì
    ïðîãðàììó ìîæíî èñïîëüçîâàòü â êà÷åñòâå ïðîãðàììû
    øèôðîâàíèÿ êðèïòîñèñòåìû ñ îòêðûòûì êëþ÷îì.

    View Slide

  5. ÄÂÀ ÍÀÏÐÀÂËÅÍÈß ÈÑÑËÅÄÎÂÀÍÈÉ
    Îáôóñêàöèÿ äëÿ íóæä êðèïòîãðàôèè
    Îáôóñêàöèÿ ïðîãðàìì ïîçâîëÿåò
    ïðåâðàùàòü êðèïòîñèòåìû ñ ñåêðåòíûì êëþ÷îì â
    êðèïòîñèñòåìû ñ îòêðûòûì êëþ÷îì,
    ñòðîèòü ñèñòåìû âû÷èñëåíèé íàä çàøèôðîâàííûìè
    äàííûìè (êðèïòîñèñòåìû ãîìîìîðôíûõ âû÷èñëåíèé),
    èçáàâèòüñÿ îò ìîäåëè ñëó÷àéíîãî îðàêóëà â
    êðèïòîãðàôè÷åñêèõ ïðîòîêîëàõ,
    ñîçäàâàòü âåðèôèöèðóåìûå ñèñòåìû òàéíîãî ãîëîñîâàíèÿ,
    îáåñïå÷èòü êîíôèäåíöèàëüíîñòü â ïîèñêîâûõ ñèñòåìàõ è
    áàçàõ äàííûõ.

    View Slide

  6. ÄÂÀ ÍÀÏÐÀÂËÅÍÈß ÈÑÑËÅÄÎÂÀÍÈÉ
    Îáôóñêàöèÿ äëÿ íóæä êðèïòîãðàôèè
    Íî äëÿ ýòîãî îáôóñêàöèÿ äîëæíà óäîâëåòâîðÿòü î÷åíü ñòðîãèì
    òðåáîâàíèÿì ñòîéêîñòè, ïðèíÿòûì â êðèïòîãðàôèè.
    Ñîâðåìåííîå ñîñòîÿíèå äåë â ýòîì íàïðàâëåíèè
    èññëåäîâàíèé òàêîâî:
    î÷åíü ìíîãî îòðèöàòåëüíûõ ðåçóëüòàòîâ,
    è î÷åíü ìàëî ïîëîæèòåëüíûõ äîñòèæåíèé.

    View Slide

  7. ÄÂÀ ÍÀÏÐÀÂËÅÍÈß ÈÑÑËÅÄÎÂÀÍÈÉ
    Îáôóñêàöèÿ äëÿ îáåñïå÷åíèÿ êîìïüþòåðíîé
    áåçîïàñíîñòè
    Collberg C., Thomborson C., Low D. A taxonomy of obfuscating
    transformations
    , Tech. Report, N 148, Dept. of Computer Science,
    University of Auckland, 1997.
    Îáôóñêèðóþùèå ïðåîáðàçîâàíèÿ ìîæíî èñïîëüçîâàòü äëÿ
    çàùèòû èíòåëëåêòóàëüíîé ñîáñòâåííîñòè íà ïðîãðàììíîå
    îáåñïå÷åíèå,
    èíôîðìàöèîííîé çàùèòû ìîáèëüíûõ àãåíòîâ è
    ìèêðîýëåêòðîííûõ ñõåì íà ýòàïå ïðîåêòèðîâàíèÿ,
    à òàêæå äëÿ

    View Slide

  8. ÄÂÀ ÍÀÏÐÀÂËÅÍÈß ÈÑÑËÅÄÎÂÀÍÈÉ
    Îáôóñêàöèÿ äëÿ îáåñïå÷åíèÿ êîìïüþòåðíîé
    áåçîïàñíîñòè
    Collberg C., Thomborson C., Low D. A taxonomy of obfuscating
    transformations
    , Tech. Report, N 148, Dept. of Computer Science,
    University of Auckland, 1997.
    Îáôóñêèðóþùèå ïðåîáðàçîâàíèÿ ìîæíî èñïîëüçîâàòü äëÿ
    çàùèòû èíòåëëåêòóàëüíîé ñîáñòâåííîñòè íà ïðîãðàììíîå
    îáåñïå÷åíèå,
    èíôîðìàöèîííîé çàùèòû ìîáèëüíûõ àãåíòîâ è
    ìèêðîýëåêòðîííûõ ñõåì íà ýòàïå ïðîåêòèðîâàíèÿ,
    à òàêæå äëÿ
    ñîêðûòèÿ èñêóññòâåííûõ óÿçâèìîñòåé â ïðîãðàììàõ ,
    ìàñêèðîâêè êîìïüþòåðíûõ ¾âèðóñîâ¿ ,
    óäàëåíèÿ ¾âîäÿíûõ çíàêîâ¿ èç ïðîãðàìì .

    View Slide

  9. ÄÂÀ ÍÀÏÐÀÂËÅÍÈß ÈÑÑËÅÄÎÂÀÍÈÉ
    Îáôóñêàöèÿ äëÿ îáåñïå÷åíèÿ êîìïüþòåðíîé
    áåçîïàñíîñòè
    Öåëü îáôóñêàöèè îêàçàòü ïðîòèâîäåéñòâèå ìåòîäàì
    îáðàòíîé èíæåíåðèè è àëãîðèòìàì ñòàòè÷åñêîãî è
    äèíàìè÷åñêîãî àíàëèçà ïðîãðàìì.
    Ñîâðåìåííîå ñîñòîÿíèå äåë â ýòîì íàïðàâëåíèè
    èññëåäîâàíèé òàêîâî:
    ìíîãî ¾ýâðèñòè÷åñêèõ¿ ìåòîäîâ îáôóñêàöèè,
    è íèêàêèõ îöåíîê èõ ñòîéêîñòè.

    View Slide

  10. ÄÂÀ ÍÀÏÐÀÂËÅÍÈß ÈÑÑËÅÄÎÂÀÍÈÉ
    Îáôóñêàöèÿ äëÿ îáåñïå÷åíèÿ êîìïüþòåðíîé
    áåçîïàñíîñòè
    C. Wang, ¾A Security Architecture for survivability Mechanisms¿,
    PhD thesis, Dep. of Computer Science, University of Virginia, 2000.
    G. Wroblewski, ¾General Method of Program Code Obfuscation¿,
    PhD thesis, Wroclaw University, 2002.
    À.Â. ×åðíîâ, ¾Èññëåäîâàíèå è ðàçðàáîòêà ìåòîäîëîãèè
    ìàñêèðîâêè ïðîãðàìì¿, Äèññ. íà ñîèñêàíèå ó÷. ñò. ê.ô.-ì.í,
    ÂÌÊ ÌÃÓ, 2003.
    Y. T. Kalai, ¾Attacks on the Fiat-Shamir Paradigm and Program
    Obfuscation¿, PhD thesis, MIT, 2006

    View Slide

  11. ÄÂÀ ÍÀÏÐÀÂËÅÍÈß ÈÑÑËÅÄÎÂÀÍÈÉ
    Îáôóñêàöèÿ äëÿ îáåñïå÷åíèÿ êîìïüþòåðíîé
    áåçîïàñíîñòè
    S. Drape, ¾Obfuscation of Abstract Data-Types¿, PhD thesis,
    University of Oxford, 2004.
    Ä.À. Ùåëêóíîâ, ¾Ðàçðàáîòêà ìåòîäèê çàùèòû ïðîãðàìì îò
    àíàëèçà è ìîäèôèêàöèè íà îñíîâå çàïóòûâàíèÿ êîäà è
    äàííûõ¿, Äèññ. íà ñîèñêàíèå ó÷. ñò. ê.ò.íàóê, ÌÃÒÓ èì. Í.Ý.
    Áàóìàíà, 2009.
    Mila Dalla Preda, ¾Code Obfuscation and Malware Detection by
    Abstract Interpretation¿, Ph.D. Thesis. Universita degli Studi di
    Verona, 2007.

    View Slide

  12. ÄÂÀ ÍÀÏÐÀÂËÅÍÈß ÈÑÑËÅÄÎÂÀÍÈÉ
    Îáôóñêàöèÿ äëÿ îáåñïå÷åíèÿ êîìïüþòåðíîé
    áåçîïàñíîñòè
    Í.À. Êîíîíîâ, ¾Ñòðóêòóðíàÿ îïòèìèçàöèÿ è îáôóñêàöèÿ
    êîìáèíàöèîííûõ öèôðîâûõ ñõåì â áàçèñå ÏËÈÑ/ÑÁÌÊ¿,
    Äèññ. íà ñîèñêàíèå ó÷. ñò. ê.ò.í., ÌÈÝÒ, 2011.
    J. Cappaert, ¾Code Obfuscation Techniques for Software
    Protection¿, PhD thesis, Katholieke Universiteit Leuven, B. Preneel
    (promotor), 112+14 pages, 2012.
    C. Collberg, J. Nagra. ¾Surreptitious Software: Obfuscation,
    Watermarking, and Tamperproong for Program Protection.¿
    Addison-Wesley Professional, 2009.

    View Slide

  13. ÄÂÀ ÍÀÏÐÀÂËÅÍÈß ÈÑÑËÅÄÎÂÀÍÈÉ
    Ðàçðûâ ïðîëåãàåò ìåæäó
    ôîðìàëüíîé ïîñòàíîâêîé çàäà÷è îáôóñêàöèè è
    ïðèëîæåíèÿìè :
    Îáëàñòü ïðèìåíåíèÿ îáôóñêàöèè îáøèðíà, íî ëèøü â
    ðåäêèõ ñëó÷àÿõ óäàâàëîñü äîáèòüñÿ ñòðîãîé
    ìàòåìàòè÷åñêîé ïîñòàíîâêè çàäà÷è îáôóñêàöèè ñ
    ïîäõîäÿùèì îïðåäåëåíèåì ñòîéêîñòè îáôóñêàöèè.

    View Slide

  14. ÄÂÀ ÍÀÏÐÀÂËÅÍÈß ÈÑÑËÅÄÎÂÀÍÈÉ
    Ðàçðûâ ïðîëåãàåò ìåæäó
    ôîðìàëüíîé ïîñòàíîâêîé çàäà÷è îáôóñêàöèè è
    ïðèëîæåíèÿìè :
    Îáëàñòü ïðèìåíåíèÿ îáôóñêàöèè îáøèðíà, íî ëèøü â
    ðåäêèõ ñëó÷àÿõ óäàâàëîñü äîáèòüñÿ ñòðîãîé
    ìàòåìàòè÷åñêîé ïîñòàíîâêè çàäà÷è îáôóñêàöèè ñ
    ïîäõîäÿùèì îïðåäåëåíèåì ñòîéêîñòè îáôóñêàöèè.
    ïîëîæèòåëüíûìè è îòðèöàòåëüíûìè ðåçóëüòàòàìè :
    Åñòü ìíîãî ðåçóëüòàòîâ î íåâîçìîæíîñòè ïîñòðîåíèÿ
    óíèâåðñàëüíûõ îáôóñêàòîðîâ, íî ìàëî ÷òî èçâåñòíî î
    âîçìîæíîñòè ñòîéêîé îáôóñêàöèè äëÿ îòäåëüíûõ
    ñïåöèàëüíûõ êëàññîâ ïðîãðàìì.

    View Slide

  15. ÄÂÀ ÍÀÏÐÀÂËÅÍÈß ÈÑÑËÅÄÎÂÀÍÈÉ
    Ðàçðûâ ïðîëåãàåò ìåæäó
    ôîðìàëüíîé ïîñòàíîâêîé çàäà÷è îáôóñêàöèè è
    ïðèëîæåíèÿìè :
    Îáëàñòü ïðèìåíåíèÿ îáôóñêàöèè îáøèðíà, íî ëèøü â
    ðåäêèõ ñëó÷àÿõ óäàâàëîñü äîáèòüñÿ ñòðîãîé
    ìàòåìàòè÷åñêîé ïîñòàíîâêè çàäà÷è îáôóñêàöèè ñ
    ïîäõîäÿùèì îïðåäåëåíèåì ñòîéêîñòè îáôóñêàöèè.
    ïîëîæèòåëüíûìè è îòðèöàòåëüíûìè ðåçóëüòàòàìè :
    Åñòü ìíîãî ðåçóëüòàòîâ î íåâîçìîæíîñòè ïîñòðîåíèÿ
    óíèâåðñàëüíûõ îáôóñêàòîðîâ, íî ìàëî ÷òî èçâåñòíî î
    âîçìîæíîñòè ñòîéêîé îáôóñêàöèè äëÿ îòäåëüíûõ
    ñïåöèàëüíûõ êëàññîâ ïðîãðàìì.
    òåîðèåé è ïðàêòèêîé îáôóñêàöèè :
    Èçâåñòíî ìíîãî ïðàêòè÷åñêèõ ìåòîäîâ îáôóñêàöèè
    ïðîãðàìì, îäíàêî, íà íèõ íå îêàçàëè íèêàêîãî âëèÿíèÿ
    îñíîâîïîëàãàþùèå ðåçóëüòàòû èç îáëàñòè êðèïòîãðàôèè.

    View Slide

  16. ÄÂÀ ÍÀÏÐÀÂËÅÍÈß ÈÑÑËÅÄÎÂÀÍÈÉ
    Äàëüíåéøèé ïðîãðåññ
    áóäåò âîçìîæåí, åñëè óäàñòñÿ ñáëèçèòü îáà ýòèõ
    íàïðàâëåíèÿ èññëåäîâàíèé çà ñ÷åò ñîçäàíèÿ
    ñîãëàñîâàííîé ñèñòåìû òðåáîâàíèé ñòîéêîñòè, êîòîðûå
    ìîæíî áóäåò ïðèìåíÿòü äëÿ ðàçðàáîòêè ðàçíûõ ìåòîäîâ
    îáôóñêàöèè ïðîãðàìì â ðàçíûõ ïðèëîæåíèÿõ.

    View Slide

  17. ÄÂÀ ÍÀÏÐÀÂËÅÍÈß ÈÑÑËÅÄÎÂÀÍÈÉ
    Äàëüíåéøèé ïðîãðåññ
    áóäåò âîçìîæåí, åñëè óäàñòñÿ ñáëèçèòü îáà ýòèõ
    íàïðàâëåíèÿ èññëåäîâàíèé çà ñ÷åò ñîçäàíèÿ
    ñîãëàñîâàííîé ñèñòåìû òðåáîâàíèé ñòîéêîñòè, êîòîðûå
    ìîæíî áóäåò ïðèìåíÿòü äëÿ ðàçðàáîòêè ðàçíûõ ìåòîäîâ
    îáôóñêàöèè ïðîãðàìì â ðàçíûõ ïðèëîæåíèÿõ.
    Áëàãîäàðÿ ýòîìó ìîæíî áóäåò
    ïîíÿòü, êàêèì òðåáîâàíèÿì ñòîéêîñòè äîëæíû
    óäîâëåòâîðÿòü òå èëè èíûå ðàçíîâèäíîñòè îáôóñêàöèè
    ïðîãðàìì;
    îöåíèòü, êàêèìè äîñòîèíñòâàìè è íåäîñòàòêàìè îáëàäàþò
    ðàçíûå ìåòîäû îáôóñêàöèè,
    ïðèñïîñîáèòü ôîðìàëüíûå ìåòîäû òåîðèè âû÷èñëåíèé è
    êðèïòîãðàôèè äëÿ íóæä îáôóñêàöèè ïðîãðàìì.

    View Slide

  18. ÎÁÔÓÑÊÀÖÈß ×ÀÑÒÈ×ÍÎ ÇÀÙÈÙÅÍÍÛÕ
    ÏÐÎÃÐÀÌÌ
    R. Ostrovsky, Ecient computation on oblivious RAM, Proc. of
    22nd ACM Symposium on Theory of Computing (STOC-90)
    Çàùèùåííûé ïðîöåññîð P
    èìååò îòêðûòóþ ïàìÿòü M
    :
    M ⇐⇒ P

    View Slide

  19. ÎÁÔÓÑÊÀÖÈß ×ÀÑÒÈ×ÍÎ ÇÀÙÈÙÅÍÍÛÕ
    ÏÐÎÃÐÀÌÌ
    R. Ostrovsky, Ecient computation on oblivious RAM, Proc. of
    22nd ACM Symposium on Theory of Computing (STOC-90)
    Çàùèùåííûé ïðîöåññîð P
    èìååò îòêðûòóþ ïàìÿòü M
    :
    M ⇐⇒ P
    Òåîðåìà
    Åñëè ñóùåñòâóþò îäíîñòîðîííèå ôóíêöèè, òî ëþáóþ
    ïðîãðàììó π
    ìîæíî ïðåîáðàçîâàòü â ýêâèâàëåíòíóþ ïðîãðàììó
    O(π)
    òàê, ÷òî:
    1. Time(O(π)) = Time(π) × log3(Time(π));
    2. Ïðè âûïîëíåíèè O(π)
    íà âû÷èñëèòåëüíîì óñòðîéñòâå ñ
    çàêðûòûì ïðîöåññîðîì P
    è îòêðûòîé ïàìÿòüþ M
    íèêàêîé
    ïðîòèâíèê, îãðàíè÷åííûé ïîëèíîìèàëüíûì âðåìåíåì, íå
    ñïîñîáåí ðàñïîçíàòü ïðîãðàììó O(π)
    ïî
    ïîñëåäîâàòåëüíîñòè åå îáðàùåíèé ê ïàìÿòè.

    View Slide

  20. ÑÒÎÉÊÎÑÒÜ ÎÁÔÓÑÊÀÖÈÈ Â ÌÎÄÅËÈ
    ÂÈÐÒÓÀËÜÍÎÃÎ ¾×ÅÐÍÎÃÎ ßÙÈÊÀ¿
    [Barak B., Goldreich O., Impagliazzo R., et al., 2001]
    Âåðîÿòíîñòíûé àëãîðèòì O
    íàçûâàåòñÿ îáôóñêàòîðîì,
    ñòîéêèì â ìîäåëè ¾÷åðíîãî ÿùèêà¿, åñëè îí
    óäîâëåòâîðÿåò ñëåäóþùèì òðåáîâàíèÿì:
    1. (ôóíêöèîíàëüíîñòü) äëÿ ëþáîé ìàøèíû Òüþðèíãà M
    M ≈ O(M).
    2. (ïîëèíîìèàëüíîå çàìåäëåíèå) Ñóùåñòâóåò òàêîé ïîëèíîì
    p(·)
    , ÷òî äëÿ ëþáîé ìàøèíû Òüþðèíãà M
    size(O(M)) ≤ p(size(M)), time(O(M)) ≤ p(time(M)).
    3. (ñòîéêîñòü) Äëÿ ëþáîé PPT A
    (ïðîòèâíèêà ) ñóùåñòâóåò
    PPT S
    (ñèìóëÿòîð ) è ïðåíåáðåæèìî ìàëàÿ ôóíêöèÿ ν
    ,
    òàêèå ÷òî íåðàâåíñòâî
    |Pr{A(O(M))=1} − Pr{SM(1size(M))=1}| ≤ ν(size(M))
    âûïîëíÿåòñÿ äëÿ ëþáîé ìàøèíû Òüþðèíãà M
    .

    View Slide

  21. ÑÒÎÉÊÎÑÒÜ ÎÁÔÓÑÊÀÖÈÈ Â ÌÎÄÅËÈ
    ÂÈÐÒÓÀËÜÍÎÃÎ ¾×ÅÐÍÎÃÎ ßÙÈÊÀ¿
    Òåîðåìà [Barak B., Goldreich O.,
    Impagliazzo R., et al., 2001]
    Îáôóñêàòîðîâ, ñòîéêèõ â ìîäåëè
    ¾÷åðíîãî ÿùèêà¿, íå ñóùåñòâóåò .

    View Slide

  22. ÑÒÎÉÊÎÑÒÜ ÎÁÔÓÑÊÀÖÈÈ Â ÌÎÄÅËÈ
    ÂÈÐÒÓÀËÜÍÎÃÎ ¾×ÅÐÍÎÃÎ ßÙÈÊÀ¿
    Äîêàçàòåëüñòâî.
    Ñóùåñòâóþò òàêèå âû÷èñëèìûå ôóíêöèè, ÷òî ëþáóþ èõ
    ïðîãðàììíóþ ðåàëèçàöèþ íåâîçìîæíî îáôóñêèðîâàòü.

    View Slide

  23. ÑÒÎÉÊÎÑÒÜ ÎÁÔÓÑÊÀÖÈÈ Â ÌÎÄÅËÈ
    ÂÈÐÒÓÀËÜÍÎÃÎ ¾×ÅÐÍÎÃÎ ßÙÈÊÀ¿
    Äîêàçàòåëüñòâî.
    Ñóùåñòâóþò òàêèå âû÷èñëèìûå ôóíêöèè, ÷òî ëþáóþ èõ
    ïðîãðàììíóþ ðåàëèçàöèþ íåâîçìîæíî îáôóñêèðîâàòü.
    Fα,β
    (x) =
    β, åñëè x = α ,
    0 â îñòàëüíûõ ñëó÷àÿõ .
    Gγ,δ
    (x) =
    1, åñëè x(γ) = δ ,
    0 â îñòàëüíûõ ñëó÷àÿõ .
    Hα,β,γ,δ
    (x, y) =
    Fα,β
    (x), åñëè y = 0 ,
    Gγ,δ
    (x), åñëè y = 0.

    View Slide

  24. ÑÒÎÉÊÎÑÒÜ ÎÁÔÓÑÊÀÖÈÈ Â ÌÎÄÅËÈ
    ÂÈÐÒÓÀËÜÍÎÃÎ ¾×ÅÐÍÎÃÎ ßÙÈÊÀ¿
    Äîêàçàòåëüñòâî.
    Ïðåäïîëîæèì, ÷òî π ïðîãðàììà, âû÷èñëÿþùàÿ
    ôóíêöèþ Hα,β,γ,δ
    , è O(π) ýòî îáôóñêàöèÿ ïðîãðàììû π.
    Ðàñïîëàãàÿ ïðîãðàììîé O(π), òðåáóåòñÿ âûÿñíèòü, ïðàâäà
    ëè, ÷òî α = γ è β = δ.

    View Slide

  25. ÑÒÎÉÊÎÑÒÜ ÎÁÔÓÑÊÀÖÈÈ Â ÌÎÄÅËÈ
    ÂÈÐÒÓÀËÜÍÎÃÎ ¾×ÅÐÍÎÃÎ ßÙÈÊÀ¿
    Äîêàçàòåëüñòâî.
    Ïðåäïîëîæèì, ÷òî π ïðîãðàììà, âû÷èñëÿþùàÿ
    ôóíêöèþ Hα,β,γ,δ
    , è O(π) ýòî îáôóñêàöèÿ ïðîãðàììû π.
    Ðàñïîëàãàÿ ïðîãðàììîé O(π), òðåáóåòñÿ âûÿñíèòü, ïðàâäà
    ëè, ÷òî α = γ è β = δ.
    Åñëè òåêñò ïðîãðàììû O(π) íåäîñòóïåí, òî ýòî ìîæíî
    ñäåëàòü òîëüêî ïîëíûì ïåðåáîðîì.

    View Slide

  26. ÑÒÎÉÊÎÑÒÜ ÎÁÔÓÑÊÀÖÈÈ Â ÌÎÄÅËÈ
    ÂÈÐÒÓÀËÜÍÎÃÎ ¾×ÅÐÍÎÃÎ ßÙÈÊÀ¿
    Äîêàçàòåëüñòâî.
    Ïðåäïîëîæèì, ÷òî π ïðîãðàììà, âû÷èñëÿþùàÿ
    ôóíêöèþ Hα,β,γ,δ
    , è O(π) ýòî îáôóñêàöèÿ ïðîãðàììû π.
    Ðàñïîëàãàÿ ïðîãðàììîé O(π), òðåáóåòñÿ âûÿñíèòü, ïðàâäà
    ëè, ÷òî α = γ è β = δ.
    Åñëè òåêñò ïðîãðàììû O(π) íåäîñòóïåí, òî ýòî ìîæíî
    ñäåëàòü òîëüêî ïîëíûì ïåðåáîðîì.
    Åñëè òåêñò ïðîãðàììû O(π) äîñòóïåí, òî äîñòàòî÷íî
    âû÷èñëèòü
    O(π)[O(π)[·, 0], 1] .

    View Slide

  27. ÑÒÎÉÊÎÑÒÜ ÎÁÔÓÑÊÀÖÈÈ Â ÌÎÄÅËÈ
    ÂÈÐÒÓÀËÜÍÎÃÎ ¾ÑÅÐÎÃÎ ßÙÈÊÀ¿
    Âåðîÿòíîñòíûé àëãîðèòì O
    íàçûâàåòñÿ îáôóñêàòîðîì,
    ñòîéêèì â ìîäåëè ¾ñåðîãî ÿùèêà¿, åñëè îí óäîâëåòâîðÿåò
    ñëåäóþùèì òðåáîâàíèÿì:
    1. (ôóíêöèîíàëüíîñòü)
    2. (ïîëèíîìèàëüíîå çàìåäëåíèå)
    3. (ñòîéêîñòü) Äëÿ ëþáîé PPT A
    (ïðîòèâíèêà) ñóùåñòâóåò
    PPT S
    (ñèìóëÿòîð) è ïðåíåáðåæèìî ìàëàÿ ôóíêöèÿ ν
    ,
    òàêèå ÷òî íåðàâåíñòâî
    |Pr{A(O(M))=1} − Pr{STr(M)(1size(M))=1}| ≤ ν(size(M))
    âûïîëíÿåòñÿ äëÿ ëþáîé ìàøèíû Òüþðèíãà M
    .
    Îðàêóë Tr(M)
    â îòâåò íà çàïðîñ x
    âûäàåò ïàðó (y, trM(x))
    ,
    ñîñòîÿùóþ èç
    ðåçóëüòàòà âû÷èñëåíèÿ y = M(x)
    òðàññû trM(x)
    âûïîëíåíèÿ ÌÒ M
    íà âõîäå x
    .

    View Slide

  28. ÑÒÎÉÊÎÑÒÜ ÎÁÔÓÑÊÀÖÈÈ Â ÌÎÄÅËÈ
    ÂÈÐÒÓÀËÜÍÎÃÎ ¾ÑÅÐÎÃÎ ßÙÈÊÀ¿
    Ðàññìîòðèì ñåìåéñòâî ðåàãèðóþùèõ ÌÒ (RMT), íà âõîä
    êîòîðûõ ïîäàåòñÿ áåñêîíå÷íûé ïîòîê äàííûõ (çàïðîñîâ)
    x1, x2, . . . , xn, . . .
    . RMT âû÷èñëÿåò áåñêîíå÷íûé ïîòîê âûõîäíûõ
    äàííûõ (îòêëèêîâ) y1, y2, . . . , yn, . . .
    :
    yn = Fn(x1, x2, . . . , xn).
    Òåîðåìà[Âàðíîâñêèé Í.Ï., 2002]
    Åñëè ñóùåñòâóþò îäíîñòîðîííèå
    ôóíêöèè, òî îáôóñêàòîðîâ, ñòîéêèõ â
    ìîäåëè âèðòóàëüíîãî ¾ñåðîãî ÿùèêà¿,
    äëÿ ðåàãèðóþùèõ ÌÒ íå ñóùåñòâóåò .

    View Slide

  29. ÑÒÎÉÊÎÑÒÜ ÎÁÔÓÑÊÀÖÈÈ Â ÌÎÄÅËÈ
    ÂÈÐÒÓÀËÜÍÎÃÎ ¾ÑÅÐÎÃÎ ßÙÈÊÀ¿
    Îòêðûòàÿ ïðîáëåìà
    À ñóùåñòâóþò ëè îáôóñêàòîðû,
    ñòîéêèå â ìîäåëè âèðòóàëüíîãî
    ¾ñåðîãî ÿùèêà ¿, äëÿ îáû÷íûõ
    ìàøèí Òüþðèíãà?

    View Slide

  30. ÎÁÔÓÑÊÀÖÈß ÄËß ÇÀÙÈÒÛ
    ÀËÃÎÐÈÒÌÎÂ
    Âåðîÿòíîñòíûé àëãîðèòì O
    íàçûâàåòñÿ îáôóñêàòîðîì,
    ñòîéêî çàùèùàþùèì àëãîðèòìû, åñëè îí óäîâëåòâîðÿåò
    ñëåäóþùèì òðåáîâàíèÿì:
    1. (ôóíêöèîíàëüíîñòü)
    2. (ïîëèíîìèàëüíîå çàìåäëåíèå)
    3. (ñòîéêîñòü) Äëÿ ëþáîé PPT A
    (ïðîòèâíèêà) ñóùåñòâóåò
    PPT S
    (ñèìóëÿòîð) è ïðåíåáðåæèìî ìàëàÿ ôóíêöèÿ ν
    ,
    òàêèå ÷òî íåðàâåíñòâî
    |Pr{A(O(M),N)=1} − Pr{SM(1size(M),N)=1}|≤ν(size(M))
    âûïîëíÿåòñÿ äëÿ ëþáîé òàêîé ïàðû ÌÒ (M, N)
    , êîòîðàÿ
    óäîâëåòâîðÿåò óñëîâèÿì
    M ≈ N,
    size(N) = poly(size(M)).

    View Slide

  31. ÎÁÔÓÑÊÀÖÈß ÄËß ÇÀÙÈÒÛ
    ÀËÃÎÐÈÒÌÎÂ
    Òåîðåìà
    Ñóùåñòâóåò îáôóñêàòîð, ñòîéêî
    çàùèùàþùèé àëãîðèòìû,
    ïðåäñòàâëåííûå äåòåðìèíèðîâàííûìè
    êîíå÷íûìè àâòîìàòàìè.

    View Slide

  32. ÎÁÔÓÑÊÀÖÈß ÄËß ÇÀÙÈÒÛ
    ÀËÃÎÐÈÒÌÎÂ
    Òåîðåìà
    Ñóùåñòâóåò îáôóñêàòîð, ñòîéêî
    çàùèùàþùèé àëãîðèòìû,
    ïðåäñòàâëåííûå äåòåðìèíèðîâàííûìè
    êîíå÷íûìè àâòîìàòàìè.
    Îáôóñêàòîð äåòåðìèíèðîâàííûõ êîíå÷íûõ àâòîìàòîâ ýòî
    ïðîñòî àëãîðèòì ìèíèìèçàöèè êîíå÷íûõ àâòîìàòîâ.
    Ýòî òèïè÷íûé ïðèìåð òðèâèàëüíîé îáôóñêàöèè àëãîðèòìîâ
    ïóòåì ýôôåêòèâíîãî ïðèâåäåíèÿ ïðîãðàìì ê åäèíñòâåííîé
    íîðìàëüíîé ôîðìå (ñòðîãàÿ íîðìàëèçóåìîñòü).

    View Slide

  33. ÎÁÔÓÑÊÀÖÈß ÄËß ÇÀÙÈÒÛ
    ÀËÃÎÐÈÒÌÎÂ
    S. Goldwasser, G. N. Rothblum, On Best Possible Obfuscation,
    TCC 2007.
    Âåðîÿòíîñòíûé àëãîðèòì O
    íàçûâàåòñÿ íàèëó÷øèì
    âîçìîæíûì îáôóñêàòîðîì, åñëè îí óäîâëåòâîðÿåò
    ñëåäóþùèì òðåáîâàíèÿì:
    1. (ôóíêöèîíàëüíîñòü)
    2. (ïîëèíîìèàëüíîå çàìåäëåíèå)
    3. (ñòîéêîñòü) Äëÿ ëþáîé PPT L
    (âûâåäûâàòåëü) ñóùåñòâóåò
    òàêàÿ PPT S
    (ñèìóëÿòîð), ÷òî äëÿ äîñòàòî÷íî áîëüøèõ n
    è äëÿ ïðîèçâîëüíîé ïàðû ÌÒ M1
    , M2
    , âû÷èñëÿþùèõ îäíó
    è òó æå ôóíêöèþ è èìåþùèõ ðàçìåð n
    , ò. å. M1 ≈ M2
    ,
    size(M1) = size(M2) = n
    , äâà ðàñïðåäåëåíèÿ âåðîÿòíîñòåé
    L(O(M1))
    è S(M2)
    âû÷èñëèòåëüíî íåîòëè÷èìû çà ïîëèíîìèàëüíîå âðåìÿ.

    View Slide

  34. ÎÁÔÓÑÊÀÖÈß ÄËß ÇÀÙÈÒÛ
    ÀËÃÎÐÈÒÌÎÂ
    Òåîðåìà [S. Goldwasser, G. N. Rothblum, 2007]
    Ñóùåñòâóåò íàèëó÷øèé âîçìîæíûé
    îáôóñêàòîð äëÿ OBDD ïîëèíîìèàëüíîãî
    ðàçìåðà.

    View Slide

  35. ÎÁÔÓÑÊÀÖÈß ÄËß ÇÀÙÈÒÛ
    ÀËÃÎÐÈÒÌÎÂ
    Òåîðåìà [S. Goldwasser, G. N. Rothblum, 2007]
    Ñóùåñòâóåò íàèëó÷øèé âîçìîæíûé
    îáôóñêàòîð äëÿ OBDD ïîëèíîìèàëüíîãî
    ðàçìåðà.
    Òåîðåìà
    Åñëè äëÿ ñåìåéñòâà 3-CNF ñóùåñòâóåò
    íàèëó÷øèé âîçìîæíûé îáôóñêàòîð, òî
    Σpoly
    2
    = PSPACE
    .

    View Slide

  36. ÎÁÔÓÑÊÀÖÈß ÄËß ÇÀÙÈÒÛ
    ÀËÃÎÐÈÒÌÎÂ
    [Barak B., Goldreich O., Impagliazzo R., et al., 2001]
    Âåðîÿòíîñòíûé àëãîðèòì O
    îáëàäàåò ñâîéñòâîì
    íåîòëè÷èìîãî îáôóñêàòîðà, åñëè îí óäîâëåòâîðÿåò
    ñëåäóþùèì òðåáîâàíèÿì:
    1. (ôóíêöèîíàëüíîñòü) äëÿ ëþáîé ìàøèíû Òüþðèíãà M
    M ≈ O(M).
    2. (ïîëèíîìèàëüíîå çàìåäëåíèå) Ñóùåñòâóåò òàêîé ïîëèíîì
    p(·)
    , ÷òî äëÿ ëþáîé ìàøèíû Òüþðèíãà M
    size(O(M)) ≤ p(size(M)), time(O(M)) ≤ p(time(M)).
    3. (ñòîéêîñòü) Äëÿ ëþáîé PPT A
    (ïðîòèâíèêà ) ñóùåñòâóåò
    òàêàÿ ïðåíåáðåæèìî ìàëàÿ ôóíêöèÿ ν
    , ÷òî äëÿ ëþáîé
    ïàðû ìàøèí Òüþðèíãà M1, M2
    , åñëè M1 ∼ M2
    , òî
    |Pr{A(O(M1))=1}−Pr{A(O(M2))=1}|≤ν(size(M1) + size(M2)

    View Slide

  37. ÎÁÔÓÑÊÀÖÈß ÄËß ÇÀÙÈÒÛ
    ÀËÃÎÐÈÒÌÎÂ
    Îòêðûòûå ïðîáëåìû
    Ñóùåñòâóþò ëè êëàññû ïðîãðàìì, äîïóñêàþùèõ
    íåòðèâèàëüíóþ ñòîéêóþ îáôóñêàöèþ, çàùèùàþùóþ
    àëãîðèòìû ?
    Ñóùåñòâóþò ëè ïðîãðàììû, íå èìåþùèå ñòîéêîé
    îáôóñêàöèè, çàùèùàþùåé àëãîðèòìû ?
    Êàê ñâÿçàíû äðóã ñ äðóãîì îáôóñêàöèÿ, çàùèùàþùàÿ
    àëãîðèòìû è íàèëó÷øàÿ âîçìîæíàÿ îáôóñêàöèÿ?

    View Slide

  38. ÎÁÔÓÑÊÀÖÈß, ÑÊÐÛÂÀÞÙÀß
    ÊÎÍÑÒÀÍÒÓ
    Ïóñòü M
    ýòî ïðîãðàììà ñ ïàðàìåòðîì (ïåðåìåííîé) x
    .
    Îáîçíà÷èì Mc
    ïðèìåð ïðîãðàììû M
    , â êîòîðîé âìåñòî
    ïàðàìåòðà x
    ïîäñòàâëåíà êîíñòàíòà c ∈ {0, 1}n.
    Âåðîÿòíîñòíûé àëãîðèòì O
    íàçûâàåòñÿ îáôóñêàòîðîì,
    ñêðûâàþùèì êîíñòàíòó, äëÿ ïàðàìåòðèçîâàííîãî ñåìåéñòâà
    ïðîãðàìì F = {Mc : c ∈ {0, 1}n, n ≥ 1}
    , åñëè îí
    óäîâëåòâîðÿåò ñëåäóþùèì òðåáîâàíèÿì:
    1. (ôóíêöèîíàëüíîñòü)
    2. (ïîëèíîìèàëüíîå çàìåäëåíèå)
    3. (ñòîéêîñòü) Äëÿ ëþáîé PPT A
    (ïðîòèâíèêà) ñóùåñòâóåò
    PPT S
    (ñèìóëÿòîð) è ïðåíåáðåæèìî ìàëàÿ ôóíêöèÿ ν
    ,
    òàêèå ÷òî íåðàâåíñòâî
    |Pr{A[O(Mc0
    ), Mc]=1} − Pr{SMc0 [1size(Mc0
    ), Mc]=1} ≤ ν(n)
    âåðíî äëÿ ëþáîé ïàðû êîíñòàíò c0 ∈ {0, 1}n è c ∈R {0, 1}n.

    View Slide

  39. ÎÁÔÓÑÊÀÖÈß, ÑÊÐÛÂÀÞÙÀß
    ÊÎÍÑÒÀÍÒÓ
    ÃÈÏÎÒÅÇÀ
    Ñòîéêàÿ îáôóñêàöèÿ, ñêðûâàþùàÿ
    êîíñòàíòó,
    íåâîçìîæíà , åñëè Mx
    ýòî
    óíèâåðñàëüíàÿ ìàøèíà Òüþðèíãà;
    âîçìîæíà , åñëè Mx
    = E(key(x), m)

    ýòî ïðîãðàììà øèôðîâàíèÿ ñòîéêîé
    êðèïòîñèñòåìû ñ îòêðûòûì êëþ÷îì
    key(x)
    è ñåêðåòíûì êëþ÷îì x
    .

    View Slide

  40. ÎÁÔÓÑÊÀÖÈß ÏÐÅÄÈÊÀÒÎÂ
    Âåðîÿòíîñòíûé àëãîðèòì O
    íàçûâàåòñÿ îáôóñêàòîðîì
    ïðåäèêàòà π
    , çàäàííîãî íà ñåìåéñòâå ìàøèí Òüþðèíãà F
    ,
    åñëè îí óäîâëåòâîðÿåò ñëåäóþùèì òðåáîâàíèÿì:
    1. (ôóíêöèîíàëüíîñòü)
    2. (ïîëèíîìèàëüíîå çàìåäëåíèå)
    3. (ñòîéêîñòü) Äëÿ ëþáîé PPT A
    (ïðîòèâíèêà) ñóùåñòâóåò
    PPT S
    (ñèìóëÿòîð) è ïðåíåáðåæèìî ìàëàÿ ôóíêöèÿ ν
    ,
    òàêèå ÷òî íåðàâåíñòâî
    |Pr{A[O(M)]=π(M)} − Pr{SM[1size(M)]=π(M)}|≤neg(size(M))
    âåðíî äëÿ êàæäîé ÌÒ M
    èç F
    è åå îáôóñêàöèè O(M)
    .

    View Slide

  41. ÎÁÔÓÑÊÀÖÈß ÏÐÅÄÈÊÀÒÎÂ
    Òî÷å÷íîé íàçûâàåòñÿ ôóíêöèÿ fa : {0, 1}n → {0, 1}
    , a ∈ {0, 1}n,
    óäîâëåòâîðÿþùàÿ óñëîâèþ
    fa(x) =
    1
    , åñëè x = a
    ,
    0
    , åñëè x = a
    .
    Ðàññìîòðèì ñåìåéñòâî Fn
    , ñîñòîÿùåå èç òî÷å÷íûõ ôóíêöèé
    {fu : u ∈ {0, 1}n}
    è ôóíêöèè, òîæäåñòâåííî ðàâíîé 0. Íà ýòîì
    ñåìåéñòâå îïðåäåëåí ïðåäèêàò P(f ) = (f ≡ 0)
    .
    Òåîðåìà [Çàõàðîâ Â.À., Âàðíîâñêèé Í.Ï., 2003]
    Åñëè ñóùåñòâóþò îäíîñòîðîííèå ïåðåñòàíîâêè, òî
    ïðåäèêàò P
    , îïðåäåëåííûé íà ñåìåéñòâå ïðîãðàìì,
    âû÷èñëÿþùèõ ôóíêöèè ñåìåéñòâà Fn
    , èìååò ñòîéêóþ
    îáôóñêàöèþ.

    View Slide

  42. ÎÁÔÓÑÊÀÖÈß ÏÐÅÄÈÊÀÒÎÂ
    Äîêàçàòåëüñòâî
    Íóæíî ñäåëàòü íåîòëè÷èìûìè äðóã îò äðóãà äâå ïðîãðàììû
    prog π0
    ; prog πa
    ;
    var x : string y : bit; var x : string y : bit;
    input (x) ; const a : string;
    y = 0; output (y); input (x) ;
    end of prog if x==a then y=1 else y=0;
    output (y);
    end of prog

    View Slide

  43. ÎÁÔÓÑÊÀÖÈß ÏÐÅÄÈÊÀÒÎÂ
    Äîêàçàòåëüñòâî
    Íóæíî ñäåëàòü íåîòëè÷èìûìè äðóã îò äðóãà äâå ïðîãðàììû
    prog π0
    ; prog πa
    ;
    var x : string y : bit; var x : string y : bit;
    input (x) ; const a : string;
    y = 0; output (y); input (x) ;
    end of prog if x==a then y=1 else y=0;
    output (y);
    end of prog
    Íàì ïîíàäîáèòñÿ îäíîñòîðîííÿÿ ïåðåñòàíîâêà ϕ
    íà ìíîæåñòâå
    ñòðîê {0, 1}n è ãåíåðàòîð ñëó÷àéíûõ ñòðîê, êîòîðûé ìîæíî
    ïîñòðîèòü íà îñíîâå îäíîñòðîííåé ïåðåñòàíîâêè.

    View Slide

  44. ÎÁÔÓÑÊÀÖÈß ÏÐÅÄÈÊÀÒÎÂ
    Äëÿ ïðîãðàììû π0
    : 1) âûáðàòü äâå ñëó÷àéíûå ñòðîêè w, u
    ,
    2) âû÷èñëèòü v = ϕ(w)
    è σ =
    n
    i=1
    wi ui
    mod 2
    .

    View Slide

  45. ÎÁÔÓÑÊÀÖÈß ÏÐÅÄÈÊÀÒÎÂ
    Äëÿ ïðîãðàììû π0
    : 1) âûáðàòü äâå ñëó÷àéíûå ñòðîêè w, u
    ,
    2) âû÷èñëèòü v = ϕ(w)
    è σ =
    n
    i=1
    wi ui
    mod 2
    .
    Äëÿ ïðîãðàììû πa
    : 1) âûáðàòü ñëó÷àéíóþ ñòðîêó u
    ,
    2) âû÷èñëèòü v = ϕ(a)
    è σ = 1 +
    n
    i=1
    ai ui
    mod 2
    .

    View Slide

  46. ÎÁÔÓÑÊÀÖÈß ÏÐÅÄÈÊÀÒÎÂ
    Äëÿ ïðîãðàììû π0
    : 1) âûáðàòü äâå ñëó÷àéíûå ñòðîêè w, u
    ,
    2) âû÷èñëèòü v = ϕ(w)
    è σ =
    n
    i=1
    wi ui
    mod 2
    .
    Äëÿ ïðîãðàììû πa
    : 1) âûáðàòü ñëó÷àéíóþ ñòðîêó u
    ,
    2) âû÷èñëèòü v = ϕ(a)
    è σ = 1 +
    n
    i=1
    ai ui
    mod 2
    .
    Òîãäà êàæäàÿ èç ïðîãðàìì π0
    , πa
    , ãäå a ∈ {0, 1}n ïðèìåò âèä:
    prog O(π)
    ;
    var x : string y : bit;
    const u,v : string, σ
    : bit;
    input (x) ;
    if ϕ
    (x)==v then
    if σ
    == n
    i=1
    xi ∗ ui
    mod 2 then y=0 else y=1
    else y=0;
    output (y);
    end of prog

    View Slide

  47. ÎÁÔÓÑÊÀÖÈß ÏÐÅÄÈÊÀÒÎÂ
    Òåîðåìà
    Ïóñòü O1
    , O2
    îáôóñêàòîðû ôóíêöèîíàëüíûõ ñâîéñòâ
    π1
    , π2
    ñîîòâåòñòâåííî, è ïðè ýòîì îáëàñòü çíà÷åíèé
    îáôóñêàòîðà O2
    ñîäåðæèòñÿ â îáëàñòè îïðåäåëåíèÿ
    îáôóñêàòîðà O1
    .
    Òîãäà êîìïîçèöèÿ O = O1O2
    ÿâëÿåòñÿ îáôóñêàòîðîì
    îáîèõ ïðåäèêàòîâ π1
    è π2
    .

    View Slide

  48. ÇÀÊËÞ×ÅÍÈÅ
    Íóæíî ïðîäîëæàòü ýòîò ñïèñîê îïðåäåëåíèé,
    ôîðìóëèðóÿ âñå áîëåå è áîëåå ñëàáûå òðåáîâàíèÿ
    ñòîéêîñòè, ïðèãîäíûå äëÿ ðåøåíèÿ äðóãèõ
    ïðèëîæåíèé îáôóñêàöèè.

    View Slide

  49. ÇÀÊËÞ×ÅÍÈÅ
    Íóæíî ïðîäîëæàòü ýòîò ñïèñîê îïðåäåëåíèé,
    ôîðìóëèðóÿ âñå áîëåå è áîëåå ñëàáûå òðåáîâàíèÿ
    ñòîéêîñòè, ïðèãîäíûå äëÿ ðåøåíèÿ äðóãèõ
    ïðèëîæåíèé îáôóñêàöèè.
    Íóæíî àêòèâíåå ïðèâëåêàòü äëÿ îáôóñêàöèè
    äîñòèæåíèÿ êðèïòîãðàôèè è òåîðèè ñëîæíîñòè
    ñèñòåìû ãîìîìîðôíîãî øèôðîâàíèÿ,
    òðóäíîðåøàåìûå çàäà÷è.

    View Slide

  50. ÄÎÑÒÈÆÅÍÈß ÏÎÑËÅÄÍÈÕ ËÅÒ
    Â èþëå 2013 ã. áûëà îïóáëèêîâàíà ñòàòüÿ
    Candidate Indistinguishability Obfuscation and Functional
    Encryption for All Circuits
    S. Garg, C. Gentry, S. Halevi, M. Raykova, A. Sahai, B. Waters
    â êîòîðîé àâòîðû ïîêàçàëè, ÷òî âåðíà
    Òåîðåìà [S. Carg, C. Gentry, et al, 2013]
    Íåîòëè÷èìàÿ îáôóñêàöèÿ âîçìîæíà äëÿ
    ïðîèçâîëüíûõ ïðîãðàìì
    (ïðè íåêîòîðûõ ïðåäïîëîæåíèÿõ î òðóäíîñòè
    ðåøåíèÿ çàäà÷ òåîðèè ãðóïï)

    View Slide

  51. ÄÎÑÒÈÆÅÍÈß ÏÎÑËÅÄÍÈÕ ËÅÒ
    30 ñåíòÿáðÿ 2013 ã. áûëà îïóáëèêîâàíà ñòàòüÿ
    Virtual Black-Box Obfuscation for All Circuits via Generic
    Graded Encoding.
    Zvika Brakerski, Guy N. Rothblum
    We present a new general-purpose obfuscator for all polynomial-size
    circuits. The obfuscator uses graded encoding schemes, a
    generalization of multilinear maps. We prove that the obfuscator
    exposes no more information than the program's black-box
    functionality, and achieves virtual black-box security
    , in the generic
    graded encoded scheme model.

    View Slide

  52. Áëàãîäàðþ çà
    âíèìàíèå
    Âàøè âîïðîñû?

    View Slide