تقسیم رمز با استفاده از قضیه باقی‌مانده چینی

از testwiki
پرش به ناوبری پرش به جستجو

الگو:ویکی‌سازی تقسیم راز به معنای برگرداندن راز با استفاده از یک سری سهم، به طوری که هر سهم یک سری اطلاعات از راز دارد. در این صفحه به تقسیم راز با استفاده از قضیه باقیمانده چینی می‌پردازیم.

تقسیم راز انواع مختلفی دارد یکی از پایه‌ای‌ترین نوع‌ها طرح‌های آستانه‌ای می‌باشد که در آن به ازای یک k برای دستیابی به راز حداقل به k سهم نیاز داریم و اگر k سهم داشته باشیم حتماً می‌توانیم به راز دست پیدا کنیم، روش تقسیم رمز با استفاده از قضیه باقیمانده چینی نیز یکی از روش‌های طرح آستانه‌ای می‌باشد.

شرح

فرض کنید راز مورد نظر Sباشد، با توجه به قضیه باقیمانده چینی اگر برای یک kتایی m1,m2,...,mkکه هردوتایی از آن‌ها نسبت به هم اول هستند و S<i=1kmi باقیمانده Sبر miها را بدانیم، Sیکتا بدست می‌آید و اگر Si=1kmiحداقل دو جواب برای Sطبق قضیه باقیمانده چینی وجود دارد. این گزاره ایده ای برای انتخاب کردن سهم‌ها می‌دهد.

اگر n عدد مثبت انتخاب کنیم که دو به دو نسبت به هم اول باشند مثل 0<m1<m2<...<mn و سهم‌ها باقیمانده S بر miها باشند، برای اینکه با استفاده از هر k تا سهم بتوان S را پیدا کرد و با کمتر از k سهم نتوان Sرا پیدا کرد باید شرط روبرو برقرار باشد: i=nk+2nmi<S<i=1kmi (چون i=1kmi بین همه زیرمجموعه‌های حداقل k عضوی کمترین ضرب است و i=nk+2nmi بین همه زیرمجموعه‌های کمتر از k عضوی بیشترین ضرب است) در این صورت طبق چیزی که قبلاً گفتیم چون ضرب mi‌های هر k1سهم کمتر از Sاست پس نمی‌توان به صورت یکتا به Sدست یافت و از طرفی چون ضرب هر kسهم از Sبیشتر است می‌توان Sرا به صورت یکتا بدست آورد.

روش مینوت (Mignotte)

دنباله Mignotte(k,n)شامل nعدد مثبت است مثل 0<m1<m2<...<mn که دو به دو نسبت به هم اول هستند و i=nk+2nmi<i=1kmi.

به ازای یک S رندوم که شرط i=nk+2nmi<S<i=1kmi را دارا می‌باشد سهم‌ها به این صورت تعریف می‌شوند : si=S%mi (a%b برابر باقیمانده تقسیم a بر b است)

و طبق قضیه باقیمانده چینی برای به دست آوردن S از k سهم باید معادله زیر را حل کنیم:

{xsi1 mod mi1xsik mod mik

روش ازموث-بلوم (Asmuth-Bloom)

دو عدد طبیعی n و k را در نظر بگیرید که دارای شرط روبرو باشند 2kn و یک مجموعه از اعداد طبیعی مثل 0<m0<m1<...<mn که دو به دو نسبت به هم اول هستند و شرط m0.i=nk+2nmi<i=1kmi برقرار است، فرض کنید S یک عدد تصادفی باشد که در شرط 0S<m0 صدق می‌کند، حال برای مشخص کردن سهم‌ها یک عدد تصادفی αانتخاب می‌کنیم که در شرط S+αm0<i=1kmiصدق کند، سپس سهم‌ها را به این صورت تعریف می‌کنیم : si=(S+αm0)%mi

در این صورت به ازای هر k سهم چون S+αm0<i=1kmi طبق قضیه باقیمانده چینی می‌توان S+αm0 را به صورت یکتا پیدا کرد پس می‌توان با باقیمانده گرفتن S+αm0 بر m0 می‌توان S را پیدا کرد.

برتری این روش نسبت به روش قبل این است که در روش قبلی با داشتن k1 سهم اطلاعاتی راجع به S داشتیم چون اگر ضرب miهای متناظر این k1 سهم برابر Z باشد با استفاده از قضیه باقیمانده چینی باقیمانده S را بر Zداشتیم، در صورتی که در روش ازموث-بلوم با داشتن همین k1 سهم باقیمانده S+αm0 را بر Z داریم و چون α را یک عدد تصادفی انتخاب کردیم در واقع اطلاعاتی دربارهٔ خود S نداریم.

مثال

در ادامه مثالی از روش ازموث-بلوم را بررسی می‌کنیم:

{n=4k=3m0=3,m1=11,m2=13,m3=17,m4=19

در مثال بالا miها دارای شرایط گفته شده می‌باشند چون هم دو به دو نسبت به هم اول هستند (چون همه اعداد اول هستند و هر دو عدد اولی نیز نسبت به هم اول هستند) و در شرط m0.i=nk+2nmi<i=1kmi نیز برقرار هستند (3×17×19<11×13×17).

فرض کنید S=2 باشد و عدد تصادفی‌ای که انتخاب کردیم α=51باشد در این صورت در شرط S+αm0<i=1kmi صدق می‌کند (چون 2+51×3=155<11*13*17=2431).

در این صورت سهم‌ها برابر {1,12,2,3} می‌باشند. حال با استفاده از باقیمانده چینی به ازای هر سه سهم می‌توان به عدد S رسید.

جستارهای وابسته

منابع

الگو:پانویس

  • Oded Goldreich, Dana Ron and Madhu Sudan, Chinese Remaindering with Errors, IEEE Transactions on Information Theory, Vol. 46, No. 4, July 2000, pages 1330-1338.
  • C.A. Asmuth and J. Bloom. A modular approach to key safeguarding. IEEE Transactions on Information Theory, IT-29(2):208-210, 1983.
  • Sorin Iftene. General Secret Sharing Based on the Chinese Remainder Theorem with Applications in E-Voting. Electronic Notes in Theoretical Computer Science (ENTCS). Volume 186, (ژوئیه ۲۰۰۷). Pages 67–84. Year of Publication: 2007. الگو:ISSN.
  • Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. Introduction to Algorithms, Second Edition. MIT Press and McGraw-Hill, 2001. الگو:ISBN. Section 31.5: The Chinese remainder theorem, pages 873-876.
  • Ronald Cramer. Basic Secret Sharing (Lectures 1-2), Class Notes. October 2008, version 1.1.