اهمیت نظریه مشبکه در دنیای امروز
Download
Report
Transcript اهمیت نظریه مشبکه در دنیای امروز
1
حمالت مشبکه( )Latticeبه سیستم های رمزنگاری
و امضاهای دیجیتال
گردآورنده :زهرا فرجی معز
با راهنمایی دکتر حسین حاجی ابوالحسن
در این پروژه بر آن شدیم تا روی
اهمیت نظریه مشبکه در دنیای امروز
سیستم های رمزنگاری بر پایه نظریه مشبکه
و به خصوص
حمالت مشبکه ( )Latticeبه سیستم های رمزنگاری و امضاهای
دیجیتال
مطالعه داشته باشیم.
3
اهمیت نظریه مشبکه در دنیای امروز
مشبکه ها در سال های اخیر نقش مهمی در رشته هایی چون؛
«هنر و طراحی»« ،علوم» « ،اقتصاد» و « ریاضیات» ،
پیدا کرده اند و روز به روز بر استفاده از آن ها افزوده می شود.
4
در اینجا کاربردهای نظریه مشبکه در رشته های فوق را به صورت اجمالی بیان
می کنیم:
•
•
•
•
•
•
5
علوم کامپیوتر:بازرسی کدها ،ساختار متریک ،امنیت رایانه ها و...
علوم مواد و فیزیک حالت جامد :قالب بندی ساختار بلورین
فیزیک :تکنیک های محاسباتی
سرمایه گذاری و اقتصاد :ارزیابی موجودی و سرمایه در بازه های
زمانی گسسته
ریاضیات محض :ترکیبیات و نظریه گراف ،جبرهای لی ،نظریه
اعداد و نظریه گروه ها
ریاضیات کاربردی :نظریه کدگذاری و رمزنگاری
چرا از نظریه مشبکه در رمزنگاری استفاده می کنند؟
6
امنیت سیستم های رمزنگاری lattice-basedمبتنی بر
مسائل سخت ریاضی است.
س ر ع ت ب ا ال ی ا ی ن س ی س ت م ه ا ن س ب ت ب ه س ی س ت م ه ا ی م ب ت ن ی ب ر
لگاریتم گسسته و تجزیه اعداد صحیح.
پیچیدگی کمتر این سیستم ها() )O(k²نسبت به سیستم های
رمزی الجمالRSA،و ،)O(k³)(ECC
(برای کلید kبیتی).
عملیات جبرخطی در سیستم های lattice-based
برای اجرا در سخت افزار و نرم افزار بسیار ساده
می باشد.
تعاریف و ویژگی های بنیادی Lattice
7
تعریف(مشبکه):
اگر v1,..,vnRnمجموعه ای از بردارهای مستقل
خطی باشند( L=L(v1,..,vn) ،تولید شده توسط ) v1,..,vn
مجموعه تمام ترکیبات خطی از v1,..,vnاست که ضرایب صحیح
می باشند...
8
n
i
a v
i
i 1
a 1 ,...,a n Z s.t. v
L L ( v 1 , .., v n ) v
مثالی از یک مشبکه درR2
هر نقطه معادل با یک بردار در لتیس
می باشد
9
مطالب اساسی که برای کاربرد مشبکه باید دانست
ارتباط دو پایه در مشبکه
نامساوی هادامارد و پایا بودن )det(L
دامنه بنیادی مشبکه و حجم آن
10
ارتباط دو پایه در مشبکه
اگر} V={v1,…,vnو} W={w1,…,wnپایه هایی برای
لتیس Lباشند ،می توان ثابت کرد که ، V=TWبه طوریکه T
ماتریسی با درایه های صحیح و دترمینان ±1می باشد.
اصطالحا ً ماتریس هایی با ویژگی Tرا ،ماتریس های یونی مادوالر مینامند.
11
نامساوی هادامارد
برای هر پایه } {v1,…,vnاز مشبکه ، Lداریم
|| det( L ) || v 1 || ... || v n
این در حالی ست که اگر ماتریس Bرا طوری در نظر بگیریم که
سطرهای آن بردار های v1,…,vnباشند؛
|)det(L)=|det(B
الزم به ذکر است که ) det(Lپایاست ،یعنی نسبت به هر پایه ای از
Lمقداری ثابت اخذ می کند.
12
دامنه بنیادی مشبکه و حجم آن
اگر Lمشبکه ای nبعدی و v1,…,vnپایه آن باشد ،دامنه
بنیادی متناظر با این پایه برابر است با:
حجم Fرا با ) volume(Fنمایش می دهند و مقدارش را
برابر با ) det(Lمی گیرند
F(v1, . . . , vn) = {t...
}1v1 + t2v2 + · · · + tnvn : 0 ≤ ti < 1
13
مسائل دشوار در لتیس و اهمیت آن ها
مسائل اصلی و بنیادی مرتبط با لتیس عبارت اند از:
SVPو . CVP
oمسئله کوتاه ترین بردار( :)SVPیک پایه برای لتیس Lداده
شده است .مطلوب یافتن کوتاهترین بردار ناصفر در Lبا توجه به
نرم تعریف شده (معموالً نرم اقلیدسی) می باشد.
14
• مسئله نزدیک ترین بردار( :)CVPیک پایه برای لتیس Lداده
شده است .مطلوب یافتن نزدیک ترین بردار ناصفر در Lنسبت به
بردار دلخواه tєRⁿمی باشد.
15
16
هر دو مسئله CVPو SVPاز لحاظ محاسباتی بسیار دشوارند.
از طرف دیگر ؛ جواب های تخمینی برای این دو مسئله کاربردهای
بسیاری در ریاضیات محض و کاربردی دارند.
تعمیم هایی از این دو مسئله نیز وجود دارند که در تئوری یا در عمل
باشندبه...ذکر است که ) ψ(nتابعی از
دارای اهمیت می الزم
nمی باشد و با تغییر آن ،جواب
:)apprSVP
کوتاه ترین
از جمله مسئله تقریب
بردار(بود.
متفاوت خواهد
مسئله نیز
اگر لتیس -n ،Lبعدی باشد؛مطلوب یافتن بردار vєLاست که
|| || v || ( n ) || v shortest
17
• در مسئله ،appr CVPکه آن را با Γ-CVPنمایش می دهند،داریم:
برای ،wεRⁿمطلوب یافتن بردار u εLمی باشد که به
ازای هر ،)v≠u( vεLداشته باشیم
||||w-u||≥ Γ ||v-w
18
الگوریتم های Babai
در سال Babai ،1986دو الگوریتم به منظور حل مسئله
Γ-CVPارائه کرد .چنان که هردو الگوریتم در زمان چندجمله
ای
اجرا می شوند...
• الگوریتم Round-Off
• الگوریتم Nearest Plane
الزم به ذکر است که هر در الگوریتم باال ،برای پایه های مطلوب نتایج کارا
دارند .لذا بهتر است قبل از اجرا ،از الگوریتم LLLاستفاده نمود...
19
الگوریتم Babai’s Round-Off
نقطه دلخواه uRnو مشبکه Lبه همراه پایه v1,..,vnRnداده
شده است.
u=a1v1+…anvn
می توان نوشت :
مطلوب tبه
پایه های
برای
الگوریتم
با این
مثل
صحیح
عدد
ترین
نزدیک
i
خوبی کار می کند.
این الگوریتم aiها را
جایگزین می کند .و خروجی آن برداری مانند
v=t1v1+…tnvnخواهد بود.
20
الگوریتم Babai’s Nearest Plane
دراین الگوریتم ،به منظور یافتن نزدیکترین نقطه مشبکه به بردار
دلخواه cϵRⁿنزدیکترین صفحه آفین
به cرا مییابیم.
را روی صفحه n-1بعدی که توسط v1,..,vn-1
سپس نقطه
تولید شده ،تصویر میکنیم.
در مرحله بعد؛الگوریتم را برای یافتن نزدیکترین نقطه مشبکه n-1
تکرار میکنیم .اگر آن نقطه را p′بنامیم؛
بعدی به بردار
خروجی الگوریتم نقطه p′+kvnخواهد بود.
21
•
الگوریتم nearest planeبا آن که تقریب بهتری نسبت به
الگوریتم round-offدارد ،بسیار آهسته ترعمل می کند.
n
الگوریتم Nearest Planeدارای تقریب 2 2و الگوریتم Round-Offدارای
n
9
تقریب 1 2 n ( ) 2
2
22
قضایای «هرمیت و مینکوفسکی» و شهود گوسی
به کمک این قضایا می توان اندازه کوتاه ترین برداردر لتیس را تقریب
زد ...این اندازه به مقدار بعد و دترمینان Lبستگی دارد.
• قضیه هرمیت
هر لتیس -nبعدی Lشامل بردار ناصفر vست که
1
n d e t( L ) n
23
|| v ||
• قضیه مینکوفسکی
اگر Lلتیسی -nبعدی در R nو Sنیز مجموعه
محدب متقارن در R nباشند که ) ، vol(S )>2 det( Lآنگاه Sشامل
یک بردار ناصفر Lخواهد شد.
n
به عالوه اگر Sمجموعه بسته نیز باشد و
نامساوی مختار به تساوی نیز شود ،حکم
برقرار خواهد بود.
24
اگر در قضیه مینکوفسکی Sرا گویی به مرکز صفر و شعاع Rدر نظر
n
)vol(S
2
بگیریم و Rرا طوری انتخاب کنیم که ) det( L
برقرار باشد؛
می توان مطمئن بود که این گوی شامل یک نقطه ناصفر لتیس می باشد.
از طرفی ،برای nهای بزرگ داریم:
.R
2 e
n
با جایگزاری در شرط
) vol(S) 2 det( L
n
1
vo l(B R (0 )) n
خواهیم داشت:
1
. d e t( L ) n
25
2n
e
R
پس می توان نتیجه گرفت که بردار لتیس ) (vواقع در گوی در نامساوی
زیر صدق می کند.
2n
1
. d et( L ) n
مالحضه می شود که نسبت به
قضیه هرمیت ،کران بهتری
بدست آوردیم...
26
e
|| v ||
شهود گوسی
می دانیم تعداد نقاط مشبکه واقع در گوی برابر است با
))v olum e ( B R (0
) v olum e ( F
حال اگر Rرا طوری در نظر بگیریم که تنها یک نقطه مشبکه درون گوی
بیافتد ،خواهیم داشت:
) v olum e ( B R (0)) v olum e ( F
1
. d e t( L ) n
تعریف می کنیم:
1
. d et( L ) n
27
n
2 e
n
2 e
R
(L )
سیستم های رمزنگاری بر پایه مسائل دشوار لتیس
از جمله اولین سیستم های رمزنگاری مبتنی بر مشبکه می توان به
Atjai-Dworkو )Goldreich,Goldwasser,Halevi (GGH
اشاره کرد.
هر دوی این سیستم ها در سال 1997توسط Phong Q.Nguyen
شکسته شد.
با این که این شروع بدی برای سیستم های رمزی مبتنی بر مشبکه بود،
در سال 1998سیستم کارآمد NTRUمعرفی شد.
28