סיכום ביקורת – הבדלי גרסאות

תוכן שנמחק תוכן שנוסף
Yonidebot (שיחה | תרומות)
מ בוט החלפות: בהינתן;
אין תקציר עריכה
שורה 1:
'''סכום ביקורת''' (Checksum) הוא [[קוד תיקון שגיאות|קוד לזיהוי שגיאות]], המאפשר זיהוי של שגיאות ותיקונן במקרים מסוימים, והוא סוג של "פונקצית יתירות" ([[redundancy check]]).
אופן הפעולה מתבצע על ידי הוספת חלק נוסף להודעה שהוא תוצאה של פונקציה ידועה מראש המופעלת על ההודעה. לאחר מכן, ניתן להפעיל את הפונקציה שוב על ההודעה ולוודא שהתוצאה שהתקבלה זהה לתוצאה שצורפה להודעה, אחרת, יש להסיק שנפלה שגיאה במידע.
 
יעילות המנגנון של פונקצת יתירות תלויה בבחירת הפונקציה לחישוב סכום הביקורתהיתירות.
פונקציית סכום הביקורתהיתירות הפשוטה ביותר לחישוב היא פונקציית הזהות: בהינתן הודעה M, הפלט של הפונקציה יהיה ההודעה עצמה. פונקציה זו מאפשרת זיהוי שגיאות באופן יעיל, אך לא מאפשרת תיקון השגיאות כיוון שלא ניתן לדעת אם הטעות נמצאת בהודעה עצמה או בחלק שהתווסף לה כסכום ביקורת. פונקציה אחרת פשוטה גם היא לחישוב היא בהינתן הודעה M הפלט של הפונקציה יהיה MM ואז כאשר נשלחת ההודעה בצירוף סכום הביקורת יש שלוש גרסאות להשוות ואז במקרה של שגיאה ניתן להשוות את ההודעה עם שתי הגרסאות הנוספות ולתקן לפי הרוב.
 
ב"סכום ביקורת" (checksum), קוד היתירות נקבע ע"י סיכום של כל הבתים בהודעה.
לדוגמה:
נניח שישנם 4 בתים בהודעה: 0x25, 0x62, 0x3F, 0x52.
מסכמים את כל הבתים ומקבלים 0x118.
מורידים את הביט הנושא ומקבלים 0x18.
מחשבים משלים ל-2 ומקבלים 0xE8. זהו "סכום הביקורת" (checksum).
 
החיסרונות של שיטה זו:
בדרך כלל משתמשים בפונקציות סכום ביקורת מתוחכמות יותר, שמאפשרות גם תיקון של שגיאות בחלק מהמקרים.
* אינה מבחינה בהוספת אפסים
* אינה מבחינה בשינוי סדר של בתים
* אינה מבחינה במספר טעויות שסכומן אפס.
 
בדרך כלל משתמשים בפונקציות סכום ביקורתיתירות מתוחכמות יותר, שמאפשרות גם תיקון של שגיאות בחלק מהמקרים.
פונקציות סכום ביקורת נפוצות:
 
פונקציות סכוםיתירות ביקורתנוספות נפוצות:
* [[CRC]]
* [[קוד המינג]]
* [[סיבית זוגיות]] (Parity Bit)
* Fletcher's checksum
* Adler-32
 
לפעמים מכנים כל פונקציית יתירות בשם "checksum".
 
[[קטגוריה:תורת הקודים]]