بکارگیری محاسبه مولکولی با استاندارد رمزگذاری دادهها
لئونارد ام. المان، یاول دبلیو، کی، روتمود، سام روئیس، اریک وینفری
آزمایشگاه برای علم مولکولی
دانشگاه کالیفرنیای جنوبی و
بخش علم کامپیوتری
دانشگاه کالیفرنیای جنوبی
محاسبه و انتخاب سیستمهای عصبی
موسسه تکنولوژی کالیفرنیا
اخیراً، بونه، دال ووس ولیپتون، استفاده اصلی از محاسبه مولکولی را در جمله به استاندارد رمزگذاری (دادهها) در اتحاد متحده توضیح دادند (DES). در اینجا، ما یک توضیح از چنین حملهای را با استفاده از مدل استیگر برای محاسبه مولکولی ایجاد نموده ایم. تجربه ما پیشنهاد میکند که چنین حملهای ممکن است با دستگاه table-top ایجاد شود که بصورت تقریبی از یک گرم PNA استفاده میکند و ممکن است که حتی در حضور تعداد زیادی از اشتباهها موفق شود:
مقدمه :
با کار آنها در زمینه DES بته، رانودرس ولیبتون [Bor]، اولین نمونه از یک مشکل علمی را ایجاد نمودند که ممکن بود برای محاسبه مولکولی آسیبپذیر باشد. DES یکی از سیستمهای Cryptographic می باشد که به صورت گسترده مورد استفاده قرار میگیرد آن یک متن رمزی 64 بیتی را از یک متن ساده 46 بیتی و تحت کنترل یک کلید 56 بیتی ایجاد مینماید.
در حالیکه این بحث وجود دارد که هدف خاص سختافزار الکترونیکی [Wi] یا سویر کامیپوترهای همسان بصورت گسترده، این امری میباشد که DES را به یک میزان زمانی منطقی بشکند، اما به نظر میرسد که دستگاههای متوالی قدرتمند امروزی قادر به انجام چنین کاری نیستند. ما کار را با بوته ان ال دنبال کردیم که مشکل شکست DES را موردتوجه قرار داده بود و اخیراً مدل قویتری را برای محاسبه مولکولی پیشنهاد داده بود [Ro]. در حالیکه نتایج ما امید بخش بود، اما باید بر این امر تأکیدی نمودیم که آسانی این امر نیز باید سرانجام در آزمایشگاه تصمیم گرفته شود.
در این مقاله، به اصطلاح ما محله متن ساده- متن رمزدار مورد توجه قرار میگیرد و امید این است که کلیدی که برای عملکرد encryption (رمزدار کردن) مورد استفاده قرار میگیرد، مشخص شود. سادهترین نظریه برای این امر، تلاش بر روی تمام کلیدهای 256 میباشد که رمزسازی را برای یک متن ساده تحت هر یک از این کلیدها انجام دهیم تا متن رمزدار را پیدا نمائیم. به طور مشخص، حملات کار امر مشخص نمی باشد و در نتیجه یک نیروی کامل برای انجام آن در اینجا لازم است.
ما، کار خود را با توضیح الگوریتم آغاز کردیم تا حمله متن رمزدار- متن ساده را به منظور شکستن DES در یک سطح منطقی بکار بریم. این به ما اجازه میدهد تا عملکردهای اصلی را که برای اجرا در یک دستگاه استیکر (Sticker) نیاز داریم و بعنوان یک نقشه مسیر برای آنچه که باید دنبال کنیم عمل میکنند تشخیص دهیم.
(2) الگوریتم مولکولی : بصورت تقریبی، بار رشتههای حافظهای DNA همان یکسان 256 [Ro] شروع کنید که هر یک دارای طول نئوکلیتد 11580 میباشد. ما فکر میکنیم که هر رشته حافظه دارای 5792 قطر پشت سر هم باشد (به مناطق [Ro] برگردید) B0,B1,B2,…B578 هر یک طول به میزان 20 نئوکلتید دارد. در یک مدل استیکر که اینجا وجود ادر 579 استیکر وجود ارد S0, S1, …S578 که هر یک برای تکمیل هر قطعه میباشد (ما به رشتههای حافظه با استیکرهای S بعنوان پیچیدگیهای حافظهای میباشد برمیگردیم) زیرا، ما به این امر توجه میکنیم که هر رشته نماینده یک حافظه 579 بیتی باشد، در بعضی از مواقع از Bi استفاده میکنیم که به بیتی که نماینده Bi میباشد، برمیگردد. قطعه B0 هرگز تنظیم میشود و بعداً در اجرای الگوریتم استفاده میشود (بخش فرعی 1-3) قطعههای B1 تا B56 رشتههای حافظهای می باشد که برای ذخیره یک کلید مورد استفاده قرار میگیرد، 64 قطعه بعدی، B57….B120 سرانجام بر اساس متن رمزگذاری کدگذاری میشود و بقیه قطعهها برای نتایج واسطه ودر مدت محاسبه مورد استفاده قرار میگیرد. دستگاه استیکر که رشتههای حافظه را پردازش میکند، متون رمزدار را محاسبه میکند که تحت کنترل یک ریز پردازنده انجام می گیرد. به این علت که در تمام نمونهها، متن ساده یکسان است؛ ریز پردازنده کوچک ممکن است که آن را ذخیره سازد، ما نیاز نداریم که متن ساده را در رشتههای حافظه نشان دهیم. هماکنون یک جفت متن رمزدار- متن ساده را در نظر بگیرید، الگوریتم اجرا شده در سه مرحله می باشد.
(1) مرحله ورودی: رشتههای حافظه را به اجرا درآورید تا پیچیدگیهای حافظه ای را ایجاد نماید که نماینده تمام 256 کلید میباشد .
(2) مرحله رمزی کردن : در هر پیچیدگی حافظه، متن رمزدار محاسبه کنید که با رمز کردن متن ساده و تحت کلید پیچیدگی همسان است.
(3) مرحله بازدهی: پیچیدگی حافظه ای که متن رمزدار آن با متن رمزدار مورد نظر تطبیق دارد، انتخاب نمایند و کلید تطبیقی با آن را بخوانید.
قسمت عمده کار در مدت مرحله دوم صورت میگیرد که رمزگذاری دادههای DES صورت میگیرد، بنابراین ما این مراحل را در زیر مختصر کردهایم. هدف ما بر روی این امر است که شرح دهیم چگونه DES در یک کامپیوتر مولکولی اجرا میشود و برای این امر، نشان دادن دقیق همه جزئیات در DES لازم نیست (برای جزئیات [Na] را ببینید)
ما به جای این جزئیات بر روی عملکردهای ضروری که برای DES نیاز است، توجه داریم که آن چگونگی عملکردها رانشان می دهد که با یکدیگر مرتبط می شوند تا یک الگوریتم کامل را ایجاد نمایند.
DES، یک رمزنویسی با 16 دروه است در هر دوره، یک نتیجه واسطه 32 بیتی جدید ایجاد میشود آن به این صورت طرحریزی شده است R1….R16. ما R16, R15 را در جایگاههای B57 تا B160 ذخیره میکنیم (مجاور با کلید)
در حالیکه R10….R12 در جایگاههای B121 تا B568 ذخیره میشوند لزوماً R15, R16 با هم در نظر گرفته می شوند تا متن رمزدار مورد نظر را ایجاد نمایند ما متن رمزدار را مجاور با کلید رمزگذاری میکنیم به این امر بدلایل اجرایی می باشد که در بخش فرعی 4-3 آمده است.
32 بیت چپ و 32 بیت راست متن ساده به عنوان R0, R-1 در نظر گرفته میشوند و برای کنترل کردن میکور پروسورهای ریز پردازندهها می باشد. بیتهای B569 تا B578 بعنوان یک فضای کاری مورد استفاده قرار میگیرد و در مدت محاسبه نوشته و پاک میشود. بنابراین بجز بیتهای دیگر که بصورت یکبار نوشتن میباشد این بیتها میتوانند پاک و دوباره نوشته شود برای دلایل اجرایی، همیشه ما کل فضای کاری را یکبار پاک میکنیم.
صورت خاص ، Ri از Ri-2, Ri-1 و بوسیله محاسبه زیر بدست میآید.
R1= Ri-2 S(ELKi-1) Ki)
در اینجا ، دلالت بر موارد خاجر از این میزان یا (x-or) میکند، Ki به یک انتخاب وابسته دایره وار 48 بیتی از کلید میکند، E به عملکرد گستردهای که دارای 32 بیت از Ri-1 میباشد دلالت میکند و آنها را محدوده 48 بیتی تکرار میشوند، S نیز به عملکرد S دلالت می کند که یک ورودی 48بیتی میباشد و در یک بازده 32 بیتی طرحریزی شده است. عملکرد S,E و انتخاب Ki دارای کدگذاری سختی میباشد، و آن مانند متن سادهای که به ریز پردازنده وارد شود، میباشد.
در واقع، عملکرد S میتواند درهشت عملکرد مستقل 6 بیتی تجزیه شود که آن معروف به باکسهای (S-boxes)s میباشد. زیرا هر Ri ممکن سا که در هشت عمکرد مستقل محاسبه شود، هر یک از آنها یک جانک 4 بیتی ایجاد مینماید. یک جانک در نظر گرفته شده عملکرد 16 بیت ورودی میباشد که 6 بیت Ri-1 ، 6 بیت Ki و 4 بیت Ri-1 میباشد ما محاسبه جانک را در زیر توضیح میدهیم.
(1) 6 بیت Ri-1 و 6 بیت Ki ، x-ored میباشند که یک نتیجه 6بیتی را ایجاد مینماید که سپس در جایگاههای فضای کاری B569,…. B574 ذخیره میشوند.
(2) یکی از عملکردهای باکس – S در بیتهای B569,…. B574 بکار گرفته میشود و نتیجه 4- بیت در جایگاههای فضای کاری B575,…. B578 ذخیره میشود.
(3) بیتهای B575,…. B578 ، x-roed با 4 بیت Ri-2 میباشند که جانک مورد نظر Ri را ایجاد میکنند و سپس در چهار قطعه مناسب بیتهای واسطه B56,…. B568 ذخیره میشوند.
(4) اگر چانک محاسبه شده ، آخرین چانک R16 نباشد، کل فضای کاری، بیتهای B569,…. B578 به منظور استفاده آمیزه پاک می شوند.
جایگاهها در هر مجموعه، حافظه دارای 16 بیت ورودی نیاز دارند تا چانک مورد نظر را محاسبه کنند که آن به تعداد چانک (8و....و1) و تعداد دوره (16و.... و1) وابسته است، اگر چه مقدار 1/0 از این بیتها از یک مجموعه حافظه تا مجموعه دیگر متفاوت است. ریزپردازندههای کنترل میدانند که کدام جایگاهها دارای این بیتها (آنها کدگذاری سخت میباشند) میباشد و همچنین x-or یا s-bos را که برای بکارگیری مورد نیاز است، میشناسند. سپس ما میبینیم که کدگذاری یک متن ساده با DES به فرآیند (1) انتخاب 2 بیتی، تولید x-pr آنها، و نوشتن نتایج در یک بیت جدید یا (2) انتخاب 6 بیتی، بکارگیری یک S-box و نوشتن نتایج در 4 بیتی وارد میشود.
(3) اجرا:
هماکنون، ما به اجرای الگوریتم در یک دستگاه استیکر برمیگردیم. چنین دستگاهی، همانطور که در [Ro] توضیح داده شد، ممکن است بعنوان یک فضای کاری رباتیک همسان توضیح داده شود. آن شامل یک فضا برای لولهها ( )لولههای دادهها، لولههای استیکر و لولههای اجرا کننده تعدادی رباتیک (دستهها، پمپها، گرم کننده، سرد کننده، اتصال کننده و غیره) و یک ریزپردازنده میباشد. این ریزپردازنده و رباتیکها را کنترل میکند. دوویس ات ال پذیرفت که ترکیبات رباتیکها و دادهها و لولههای عملکردی ممکن است به صورتی ترتیب یابند که هر یک از چهار عملکرد را اجرا کنند: جداسازی، ترکیب، تنظیم و پاک کردن.
ما میپذیریم که رباتیکها قادر هستند که یک سری گسترده از عملکردها را انجام دهند:
(1) جداسازی همسان: رباتیکها میتوانند، DNA را از هر یک از 32 لوله داده به دو لوله داده بیشتر تجزیه کنند و در یک لحظه از 32 لوله عملکرد مجزا استفاده کنند.
(2) ترکیب همسان: رباتیکها میتوانند DNA را از 64 لوله اطلاعاتی متفاوت به یک لوله داده و در یک لحظه ترکیب کنند. ما میپذیریم که لوله عملکردی خالی که برای ترکیب در [Ro] استفاده میشود، فقط یک اتصال گسترده میباشد که قسمتی از رباتیکها میباشد.
(3) تنظیم همسان: رباتیکها میتوانند از یک لوله استیکر با استیکرهای SK استفاده کنند و بیت Bk را در مجموعههایی که دارای 64 لوله داده متفاوت میباشد، در یک لحظه، تنظیم کنند. ما میپذیریم که لوله عملکردی استیکر برای تنظیم در [Ro] مورد استفاده قرار میگیرد و فقط نوعی فیلتر میباشد که میتواند در رباتیکها ایجاد شود.
(4) پاک کردن: رباتیکها میتوانند تمام بیتهای فضای کاری را در تمام مجموعهها در یک لوله اطلاعاتی پاک کنند. ما میپذیریم که استیکرها در فضای کاری، به طور همزمان، پاک میشوند. از این رو قطعههای فضای کاری ممکن است با استفاده از به اصطلاح مناطق ضعیف اجرا شوند. [Ro] دو باره، ما میپذیریم که لوله عملیاتی استیکر برای پاک کردن در [Ro] مورد استفاده قرار میگیرد، و فقط نوعی فیلتر است که میتواند در رباتیکها ساخته شود.
ما چهار عملکرد بالا را انجام میدهیم و از لولههای اطلاعاتی که ممکن است مجموعههای حافظه DNA را نگهدارد، استفاده میکنیم. لولههای استیکر (به منظور محاسبه) منبع خاصی از استیکر Sk میباشند که لولههای عملکرد مجزا برای قطعه خاص Bk نگهداشته میشوند.
در بخشهای فرعی ما توضیح میدهیم، از الگوریتم مولکولی اجرایی و کاربردی استفاده میشود که از این عملکردها استفاده میکند و برای اهداف تخمین زمان و مکان مورد نیاز برای دستگاه استیکر مورد استفاده قرار میگیرد ما سه منبع کیفیتی زیر را دنبال می کنیم.
(1) مراحل کامل: ما تاداد مراحل را بعنوان تعداد تجزیههای همسان، ترکیبهای همسان، تنظیمها و پاک کردنهای همسان تعریف میکنیم که بعد از شروع عملکرد دارای تجربههای پیچیدهای است. ما عملکرد رباتیکها را در یک مقدار بزرگ از لولهها محاسبه میکنیم که دارای یک مرحله واحد میباشد و فرایندهای حرکت اطلاعات و لولههای عملکردی را نادیده میگیریم.
(2) لولههای دارای مکان کامل: ما تعداد جایگاه لولهها را مشخص می کنیم که برای تعداد لولههای اطلاعاتی لولههای استیکر و لولههای عملکرد مجزا و در مدت محاسبه مورد استفاده قرار میگیرد. تمام لولهها قابل استفاده دوباره میباشند، بنابراین ما تنها نیاز داریم که کپیهای یک لوله را داشته باشیم که در صورتیکه نیاز به استفاده از نوع خاصی از لولهها صورت گرفت، دوباره از آن استفاده کنیم. ما باید توجه کنیم که هرگز نیاز نداریم که لولههای استیکر را اضافه کنیم، رباتیکهای ما قادر میباشند که از یک لوله استیکر بیش از یکبار استفاده نمایند. اگر چه ما نیاز خواهیم داشت که لولههای عملکردی مجزا را اضافه کنیم و بسیاری از لولههای اطلاعاتی را نیز اضافه کنیم، زیرا ما قصد داریم که مجموعهها را در چندین لوله اطلاعاتی متفاوت و با همان بیت Bi در یک زمان تجزیه کنیم.
(3) حداکثر تعداد لولههای فعال برای هر عملکرد وجود دارد. ما تعداد لولههای فعال را برای هر زمان و در مدت محاسبه مشخص میکنیم و تعداد لولههایی که رباتیکها از جایگاه و به منظور پردازش استفاده میکنیم، مشخص میکنیم توجه کنید که حداکثر تعداد لولههای فعال، چنان پارالیسم (Paralelism) را که بوسیله الگوریتم ما مورد استفاده قرار میگیرد، مشخص میکند بنابراین این آن باید ساختار یا رالیسم را با رباتیکهای ما مرتبط سازد.
1-3 به اجرا درآوردن رشتههای حافظه
در ابتدا ما باید کلیدهای کدگذاری لوله اولیه را ایجاد نمائید. هدف ما این است که هر رشته حافظه 256 را در یک کلید متفاوت ذخیره کنیم برای مثال، این به صورت زیر صورت میگیرد:
(1) رشتههای حافظه را در دو لوله A,B تقسیم کنید.
(2) اضافی S1 تا S56 را به لوله A اضافه کنید و به آنها اجازه دهید تا 56 قطعه اول را در هر رشته اشباع کند.
(3) از تکمیل کننده B برای جداسازی مجموعههای حافظه در لوله A و از استیکرهای اضافی استفاده کنید.
(4) لوله B را به لوله A اضافه کنید.
(5) لوله A را گرما و سرما دهید که استیکرها را ریانسیل (reaneal) سازد.
مجموعه حافظه ایجاد شده بوسیله این فرآیند به نظر میرسد که بصورت منطقی با یک پراکندگی Poiso مدلسازی شده است. این انتظار وجود دارد که بصورت تقریبی %63 از کلیدها ارائه خواهد شد که بصورت میانگین یکی در هر کلید است.
اگر میخواهید که در مدت محاسبه هیچ اشتباهی صورت نگیرد، ما شانس منطقی داریم که از کلیدها برای کدسازی متنی استفاده کنیم.
در واقع، شانس این امر با استفاده از رشتههای حافظهای بیشتر افزایش مییابد.
برای اطمینان از این امر که 9510 از کلیدها نمایش داده شدهاند و به طور میانگین سه کیسی از یک کلید صورت گرفته است، بطور ساده، ما از سه برابر DNA استفاده میکنیم این موضوعات با جزئیات بیشتر در بخش 4 آمده است.
2-3 اجرای عملکردهای پایهای
همانطور که در بخش 2 مبحث صورت گرفت الگوریتم رمزی کردن DES ترکیبی از دو عملکرد ساده است.
x-or ها که ورودی 2 بیتی را به خروجی 1 بیتی صورت میدهند. باکسهای- S که ورودی 6 بیتی را به خروجی 4 بیتی طرحریزی میکند.
محاسبه عملکرد x-or 1 بیتی به 2 بیتی در شکل (19 توضیح داده شده است هماکنون، ما محاسبه عمکرد x-or را توضیح میدهیم که بصورت جزئیتر Bj Bk= Bi میباشد که آن را بصورت عملکرد n-bit به m-bit عمومیت میدهیم.
A) تجزیه همسان نمونه دارای لوله اطلاعاتی میباشد که برای هر یک میزان ممکن BiBj وجود دارد.
در ابتدا، آن بااستفاده از یک لوله عملکردی مجزا صورت میگیرد که مخصوص Bi می باشد، سپس به صورت خاکستری در نظر گرفته شدهاند. روئیس ات ال، یک تجزیه واحد را مدلسازی کرد که عملکرد دارای سه لوله فعال در یک لحظه بود. یک لوله اطلاعاتی منبع، لوله عملکردی مجزا و یکی از دو لوله اطلاعاتی تجزیه زا. که آنها برداشته شده و بصورت پشت هم با رباتیکها پر شوند. به این علت که در یک لحظه (بصورت همزمان) سه لوله فعال است ، سه لوله اطلاعاتی مورد استفاده قرار میگیرد. در مدت دومین جداسازی همسان بالا، شش لوله اطلاعاتی مورد استفاده قرار میگیرد که شش لوله فعال است.
برای عملکرد n-bit به m-bit این امر به صورت زیر عمومیت می یابد.
تجزیه همسان، نمونه n، از لولههای اطلاعاتی n2 استفاده میکند که هر یک برای میزان ورودی n-bit میباشد. آن به لولههای عملکردی تجزیه 1- i 2 برای تجزیه همسان نه میزان (i تا) نیاز دارد (بصورت کامل 1- n2) به این علت که تجزیه همسان n تا به لولههای اطلاعاتی 1-n 2×3 نیاز دارد لولههای 1-n 2×3 فعال میشود
B) تنظیم همسان Bkبه (1) با یک استیکر Sk برای تمام لولههایی که مورد استفاده می باشد.
برای یک x-or آن تنها زمانی کاربردی است که 10 یا 01= Bi Bj باشد، اما برای یک عملکرد کلی 1-2، این ممکن است نیاز باشد که یک استیکر اضافی به هر سری فرعی از همیار لوله اطلاعاتی همسان اضافه شود. برای هر عملکرد n-bit به m-bit بصورت کلی، این امر صورت میگیرد:
تنظیم همسان یک سری فرعی (با امکان تفاوت) از لولههایاطلاعاتی n2 و m دفعه، از یک سری کامل از لولههای استیکر m استفاده میکند آن نیاز به لولههای فعال 1+ n 2 دارد. توجه کنید که سری فرعی لولههای اطلاعاتی که در تنظیم همسان استفاده میشود، تنها با استفاده از الگوریتم ذخیره شده در ریز پردازندهها تعیین میشود.
C) ترکیب همسان محتوی تمام سیار لوله اطلاعاتی در یک لوله اطلاعاتی می باشد آن به 5 لوله اطلاعاتی نیاز دارد و بنابراین 5 لوله فعال است.
برای یک عملکرد n-bit و m-bit به اسفیورت کلی سازی صورت می گیرد:
ترکیب همسان، محتوی تمام لولههای اطلاعاتی n2 به یک لوله اطلاعاتی تبدیل میشود آن به1+ n2 لوله اطلاعاتی و 1+ n 2 لوله فعال نیاز دارد.
در انتهای عملکرد x-or ها تمام DNA یی ما به یک لوله واحد برگشت:
بصورت کلی میتوان گفت که عملکرد n-bit به m-bit نیازمند به مراحر 1+n+m میباشد، لولههای عملکردی تجزیه 1- n2 (مخصوص برای لولههای متفاوت) لولههای استیکر m، حداکثر لولههای اطلاعاتی 1-n 2×3 و حداکثر لولههای فعال 1-n 2×3 می باشد.
در این امر، ما میتوانیم ببینیم که یکی از کمیتهای منبعی مورد علاقه، حداکثر تعداد لولههای فعال می باشد که هماکنون مشخص شده است. یک بیت-6 به بیت-4 در جعبه (S-box)s ، بزرگترین عملکرد استفاده نمیکنیم. (عملکرد دیگری که در الگوریتم مورد استفاده قرار گرفت، Clear و پاک کردن) میباشد که تنها از یک لوله فعال استفاده میکند.
تعداد لولهها و جایگاه آنها، مجموعه اطلاعاتی است، لولههای تجزیه و استیکر مورد استفاده قرار میگیرد، اما و به آسانی ما نمی توانیم تعداد آنها را برای یک باکس- s محاسبه کنیم و باید آنها مورد محاسبه قرار گیرند. لولههای دادهها، قابل مبادله با یکدیگر میباشند. بنابراین ما میدانیم که حداکثر تعداد استفاده شده در یک 96- S-box ، تعداد لولههای شرکت کنده در کل محاسبات باشد. در حالیکه لولههای استیکر مجزا مشخص می باشند، آنها با یک قسمت خاص از مجموعههای حافظه مرتبط میباشند برای محاسبه لولههای جایگاهی، ما نیاز به توجه بیشتر به الگوریتم مولکولی داریم:
بنابراین در بخش فرعی دیگرما توجه میکنیم که چگونه x-or و S-box برای DES ترکیب شده محاسبه میشوند و تعداد کامل مراحل را محاسبه میکنیم و در رابطه با روشهایی که برای لولههای عملکردی مجزا و لولههای استیکر مورد استفاده قرار میگیرند تا تعداد کامل لولههای جایگاهی را به حداقل برسانند، بحث میکنیم.
3-3- محاسبه متون رمزدار :
ما واحد پایهای محاسبه را در الگوریتم مولکولی خود مرور کردیم که یک چانک 4 بیتی می باشد که با استفاده از ترکیب x-or ها وS-box ها که دارای 16 بیت ورودی میباشد، محاسبه میشود. برای هر چانک در نظر گرفته شده ترکیبات آنها 16 بیت ورودی میباشد که برای هر مجموعه حافظه یکسان میباشد. جایگاههای بیتهای ورودی کدگذاری سخت در ریز پردازنده ها می باشد و مقادیر دقیق آن در دنباله کار نادیده گرفته می شود. از توجه به عمکردهای n-bit به m-bit ما میدانیم که چهار مرحله برای محاسبه یک x-or و 11 مرحله برای محاسبه یک S-box نیاز است.
در ادامه، یک چانک را محاسبه میکنیم که دارای 51 مرحله به اینصورت میباشد 51=4×4+11+4×6 بعد از آنکه یک چانک محاسبه شد، اگر فضای کاری دوباره استفاده شود آن باید پاک شود. برای تکمیل حاسبه چانکها به این صورت نیاز است 128=8×16، و پاک کردن فضای کاری 127 دفعه صورت میگیرد. بنابراین عدد کامل مورد نیاز مراحل 6655 می باشد. در مدت محاسبه یک x-or یک لوله عملکردی مجزا نیاز است تا اولین بیت را جدا کند و دو لوله عملکردی مجزا نیاز است تا دومین بیت (بصورت همسان) را جدا کند. برای اقتصادی کردن لولههای عملکردی مجزا در زمانیکه x-or در حال انجام است، ما از مجموعه حافظه و تعداد لولههای کم استفاده میکنیم. برای هر x-or شامل یک بیت Ri-2 میباشد که 448 امکان از R1,….R14 وجوددارد. و یک بیت از فضای کاری B578,…. B578 (که تنها 4بیت است)، ما در ابتدا، Ri-2 را تجزیه میکنیم و سپس بیت فضای کاری را جدا میکنیم. برای هر x-or که شامل یک بیت در Ri-1 میباشد (که دارای 480 امکان از R1,….R15 وجود دارد) و Ki (که 56 امکان را دارد) ما در ابتدا Ri-1 و سپس بیت کلیدی را جدا میکنیم در ادامه برای هر یک از بیتها از R1…R15 یک لوله عملکردی جدا بای بیت مورد نیاز است و برای هر بیت K و هر بیت B575,…. B578 دو لوله عملکردی مجزا برای آن بیت مورد نیاز است بنابراین و بطور کلی این بیتها نیازمند به لولههای عملکردی مجزا می باشند که به این صورت محاسبه می شود: 600=4×2+56×2+480 عملکرد جعبههای (S-boxes) s روش دیگری را توضیح میدهد که ما یکسری لولههای عملکردی تجزیهای را دارا می باشیم. محاسبات فرعی استفاده شده و پشت هم نیاز ندارد که ما یک بیت جدید را در هر دفعه که آنها اجرا میشوند، استفاده کنیم (و در نتیجه از لوله عملکردی مجزای دیگری استفاده کنیم)
بجای آن، ورودی و خروجی در یک منطقه، از مجموعه حافظه ذخیره میشوند که در اجرای بعدی مورد استفاده قرار می گیرند. جایگاه ورودی برای جعبههای S در شش فضای کاری اول ذخیره میشود و خروجی درچهار فضای کاری آخر ذخیره میشود. بنابراین، اگر چه هشت جعبه S متفاوت (برای هر چانک یک عدد) وجود دارد، اما همه آنها از همان لولههای عملکردی و استیکر مجزا استفاده می کنند (تحت کنترل ریزپردازنده میباشند و برای هر جعبه (S-box) s استیکرها به صورت متفاوت بکار میروند. جعبه (S-boxes) s نیاز به لولههای عملکردی مجزا با 63 تای اضافی دارد که DNA را در تمام دستههای 6 بیتی B569,…. B574 جدا کند.
بنابراین برای تکمیل مرحله تولیدمتن رمزگذاری شده الگوریتم، ما به 663 عملکردی مجزا نیازمند هستیم، بصورت کلی، 522= 10+512 لوله استیکر نیاز است تا استیکرهایی که برای نوشتن نتایج واسطه وبیتهای فضای کاری مورد استفاده قرار میگیرد، نگهداری کند. بزرگترین عدد لولههای اطلاعاتی استفاده شده در مدت محاسبه 96 میباشد که در مدت مرحله جداسزی بدست آمده است. بطور کلی لولههای جایگاهی که برای محاسبه متون رمزدار مورد نیاز می باشد به این صورت محاسبه می شود : 1271= 96+512+663
4-3 انتخاب متن رمزدار در نظر گرفته شده و خواندن کلید درست
زمانیکه متون رمزی محاسبه میشود کلید مورد نظر بوسیله بررسی و مناسب با متن کدگذاری شده انتخاب میشود و برای ملبیدا کردن کلید بندی مورد استفاده قرار میگیرد. آن به یک مرحله مجزای 64 تایی نیاز دارد در زمان تجزیه مجموعه مورد نظر، این لازم است که کلید آن خوانده شود. خواندن آن با استفاده از کدگذاری درختی دو تایی و بررسی مولکولی واحد صورت میگیرد که در [Ro] توضیح داده شد. اگرچه این امر مشخص نیست که چنین نظریهای در آزمایشگاه بصورت کامل موثر باشد در زیر ما دو نظریه اضافی را توضیح میدهیم که هر یک از آنها شامل اصلاح روشهایی میباشد که در بخشهای قبل توضیح داده شد.
در اولین نظریه رشتههای حافظه 5 بیوتینیلید (biotinylate) شدهاند در زمانیکه متون رمزدار محاسبه میشود که در بخشهای قبل توضیح داده شد، مجموعه های حافظه en mass را به شکل رشتهای واحد انتقال میدهند. یک روش برای انجام آن به اینصورت است:
(1) برای هر استیکر S0, S120 یک استیکر جدید صفر ایجاد میشود، Si `3 و `5 در mers-8 را با si تقسیم میکند، در mer-4 میانی از آن تمایز مییابد.
(2) یک میزان اضافی s`i به راه حل نهایی اضافه میشود و تحت شرایطی که برای آن مطلوب است صورت میگیرد.
(3) ligase را اضافه کنید هماکنون هر مجموعه حافظه دارای یک منطقه مجزا و یک متن رمزدار کلیدی میباشد که هیچ یک از رشتههای حافظه دارای توالی استیکرها و استیکر صفر نمیباشند. توجه کنید که تصمیم گیری اصلی ما، ایجاد متن رمزداری میباشد که دارای کلید و رشته حافظه بسیار پیچیدهای نباشد. جائیزیتیما، تعداد Ligase را کاهش میدهد که برای موفقیت کدگذاری در متن رمزدار و تشکیل کلیدمهم میباشد.
(4) رشتههای حافظه بیوتینیلید شده را جدا کنیدو از رشتهةای جدید برای عملکرد استفاده کنید.
بصورت لازم، این فرایند مجموعه حافظه استیکر راتبدیل به رشته های حافظه به روش لیپتون [Li] میسازد و هر قسمت دارای یک بار و توالی واحد میباشد که یکی برای صفر و دیگری برای (1)است.
یک متن رمزدار ممکن است انتخاب شود (بوسیله بکارگیری 64 مرحله جداسازی معمول) ، DCR توقیت شود (استفاده از S`0 و تکمیل کننده بیت متن رمزدار نهایی) و خوانده شود (با توانایی DNA رشتهای). توجه کنید که مجموعه راهحلها بوسیله PRC میتواند اضافه شود و کپیهای چندتایی صورت بگیرد. هر کپی، غالباً یک کتاب کد میباشد که شامل (کلید، متن رمزدار) میباشد این کتاب که بصورت تقریبی، دارای بیت اطلاعاتی می باشد که به این صورت محاسبه میشود.
(بیت متن رمزدار 64+ بیت کلیدی 56) × 256= 263 (که آن معادل با یک میلیون بابت CDS میباشد) آنطور که بوته ولیپتون اذعان کردند [B 01] چنین کتاب کدی میتواند بهصورت گسترده پخش شده و برای سرعت بخشی در حملات مداوم در DES مورد استفاده قرار گیرد.
برای دومین نظریه برای خواندن، بجای تبدیل به رشتههای حافظه و روش لیپتون که بعد از محاسبه متون رمزدار صورت میگیرد یک مدل لیپتون – استیکر برای کدگذاری مجموعههای حافظه اولیه استفاده میشود .
1) DNA های رشتهای واحد را ایجاد کنید که نماینده تمام کلیدهای 256 میباشد و از کدگذاری لیپتون استفاده کنید. علاوه بر این آن ضامن هر رشته کلیدی میباشد که به همان کوتاهی PCR میباشد.
2) لیگیت، برای هر یک از رشتههای کلیدی لیپتون،ر شتههای حافظهای استیکر 255 بیتی یکسان وجوددارد.
فرمت این مقاله به صورت Word و با قابلیت ویرایش میباشد
تعداد صفحات این مقاله 27 صفحه
پس از پرداخت ، میتوانید مقاله را به صورت انلاین دانلود کنید
دانلود مقاله بکارگیری محاسبه مولکولی با استاندارد رمزگذاری دادهها