הצפנה קוונטית

forum link

הצפנה היא המרת מידע לפורמאט "לא קריא". הגישה המקובלת היא להשתמש בקוד (מספר רב ספרתי) לצורך ביצוע ההצפנה.  
הצפנה קוונטית היא שימוש בתכונות הקיטוב של פוטונים או אלקטרונים על מנת ליצור קוד אשר משמש להצפנת מידע.

BobElis


נניח שיש שני אנשים, אליס ובוב, שמעוניינים לתאם ביניהם קוד באמצעות הצפנה קוונטית ואדם שלישי המנסה לצותת - איב. ההסבר המובא בסיכום זה מתייחס לקיטוב אלקטרונים לפי ניסוי שטרלן גרלך. אלקטרון הוא בעל ספין 1/2 כאשר אפשרויות הקיטוב הן או up/down כשהמקטב במצב אנכי, או left/right כשהמקטב במצב אופקי. נשתמש בהגדרות הבאות:

Associated digit Measured state
0 \(\displaystyle{ \mid \uparrow\rangle }\)
1 \(\displaystyle{ \mid \downarrow\rangle }\)
0 \(\displaystyle{ \mid \rightarrow\rangle }\)
1 \(\displaystyle{ \mid \leftarrow\rangle }\)

פרוצדורת הכנת הקוד היא כדלקמן:
נשים לב שכאשר המכשירים מוצבים באותו כיוון יש קורלציה מלאה בין מה שאליס ובוב מודדים. לעומת זאת כאשר מכשירי המדידה לא באותו כיוון אין קורלציה. ראוי להדגיש שבשלב האחרון של הפרוצדורה נדרשת תקשורת טלפונית בלתי מוצפנת על מנת שאליס ובוב יוכלו לבדוק (בדיעבד) באילו מחזורי מדידה המכשירים שלהם היו מוצבים באותו כיוון (אנכי או אפקי). מאידך, אליס ובוב מקפידים לא לספר מה היו התוצאות של המדידות (אפס או אחד), כך שהמידע הטלפוני לא יכול לעזור לאיב: רק אליס ובוב יודעים מה הקוד שהתקבל.

 
Generated Code Bob measures Alice measures
0 \(\displaystyle{ \mid \uparrow\rangle }\) \(\displaystyle{ \mid \uparrow\rangle }\)
impossible event \(\displaystyle{ \mid \downarrow\rangle }\) \(\displaystyle{ \mid \uparrow\rangle }\)
- \(\displaystyle{ \mid \rightarrow\rangle }\) \(\displaystyle{ \mid \uparrow\rangle }\)
0 \(\displaystyle{ \mid \rightarrow\rangle }\) \(\displaystyle{ \mid \rightarrow\rangle }\)
1 \(\displaystyle{ \mid \downarrow\rangle }\) \(\displaystyle{ \mid \downarrow\rangle }\)
- \(\displaystyle{ \mid \leftarrow\rangle }\) \(\displaystyle{ \mid \downarrow\rangle }\)
1 \(\displaystyle{ \mid \leftarrow\rangle }\) \(\displaystyle{ \mid \leftarrow\rangle }\)
1 \(\displaystyle{ \mid \downarrow\rangle }\) \(\displaystyle{ \mid \downarrow\rangle }\)
- \(\displaystyle{ \mid \downarrow\rangle }\) \(\displaystyle{ \mid \rightarrow\rangle }\)
0 \(\displaystyle{ \mid \rightarrow\rangle }\) \(\displaystyle{ \mid \rightarrow\rangle }\)

 
נניח שאיב מעוניינת לעלות על השדר. איב תנסה לגלות את השדר שאליס שולחת לבוב על ידי הצבת מקטב בין אליס לבוב. הבעיה היא שהיא אינה יודעת באיזה כיוון לכוון אותו. בהכרח בחלק מן הפעמים היא תכוון אותו בכיוון "אורתוגונלי" לזה של בוס ואליס. זה יגרום לכך שבהסתברות מסוימת בוב ואליס לא ימדדו את אותו מצב קיטוב למרות שמצבי המקטבים שלהם אותו דבר. זה יגרום לכך שבוב ואליס לא יצליחו להחליף קוד. לחילופין בוב ואליס יכולים תוך כדי תיקשורת לבצע בדיקה מדגמית של שדרים על מנת לודא את "תקינות התקשורת".

הדגשים

חשוב להבין שבעת מדידת האלקטרון על ידי איב היא אינה יכולה לבצע מדידה ולשלוח "אלקטרון משוכפל" לבוב במטרה להסוות את הציתות. אי האפשרות לשכפל מצב קוונטי נקרא בספרות "no cloning theorem". פעולת השכפול אינה אפשרית כיוון שהיא אינה מקיימת את עקרון הסופרפוזיציה, שהוא העיקרון הבסיסי במכניקה הקוונטית שעליו מבוסס התאור הדינמי של התפתחות מצבים בזמן. אם איב הייתה מסוגלת ליצור שכפול של מצב החלקיק, ולשלוח אלקטרון משוכפל לבוב, זה היה עומד בסתירה לעקרונות תורת היחסות: היה משתמע מכך שאפשר להעביר אינפורמציה מעל מהירות האור. לדיון נוסף ראה הרצאה על הניסוי המחשבתי של אינשטיין-פודולסקי-רוזן.

בשיטה של הצפנה קוונטית הצופן מתקבל באופן אקראי, וההסתברות לעלות עליו היא אפסית (לא יותר טוב מניחוש).

בפועל ההצפנה הקוונטית מיושמת באמצעות פוטונים ולא באמצעות אלקטרונים. המקטבים במקרה זה הם בזוויות 0 ו-45 במקום 0 ו-90. כמו כן הקונפיגורציה המקובלת היא לשדר פוטונים שזורים אל אליס ואל בוב: אליס ובוב מודדים כל אחד את הפוטון שמגיע אליו. מבחינה מתמטית זה שקול לסטאפ שנידון למעלה שבו חלקיק יחיד נמדד על ידי אליס ואחר כך על ידי בוב. בשני הסטאפים קיימת קורלציה מלאה בתוצאות של המדידות אם הן מתבצעות באותו כיוון.