כל זוג מפתחות formula_65 מיוצג על ידי זוג עמודות, למשל formula_66. כעת הוא מחשב את המפתח הציבורי:
למשל המפתח הפרטי formula_68 שהוא 7 בבסיס עשרוני. לכן המפתח הציבורי המקביל הוא formula_69.
החתימה על formula_70 היא:
כלומר החותם חושף את המפתחות הפרטיים (עמודות של formula_13) המתאימים לערכי המסר, במקרה זה מימין לשמאל נבחרו העמודה הראשונה, הרביעית והחמישית בהתאמה. כדי לאמת את החתימה formula_38 המאמת משתמש במפתח הציבורי formula_24. למשל החתימה השלישית שקיבל היא formula_75 וכן formula_76. מה שנותר לו לבדוק שאכן מתקיים:
וכן לגבי כל הערכים האחרים. רק אם הבדיקה של כולם מסתיימת בהצלחה הוא יכול להיות בטוח שהחתימה אותנטית.
לפי דוגמה זו נניח שהחותם חתם עם אותו מפתח על תמצית שני מסמכים שונים formula_79 ו-formula_80 כעת בידי המאמת המפתחות formula_81 אותם הוא השיג משילוב המידע משתי החתימות. כעת הוא יכול להשתמש במידע זה כדי לחתום על תמצית של מסמך אחר נניח formula_82 והחתימה תהיה לגיטימית כי בידיו למעשה מספיק מפתחות כדי לשכנע אחרים שהמסמך חתום על ידי הבעלים של formula_13 בעוד שלמעשה הוא החותם. אולם יש לשים לב שהוא אינו יכול לחתום על תמצית מסמך formula_84 כי חסר לו הערך formula_85 אותו לא קיבל מהחותם הלגיטימי. אם ברצונו לזייף חתימה על המסמך האמור עליו לחשב את formula_85 מתוך formula_87 שבידו כלומר להפוך את הפונקציה החד כיוונית, כל עוד היא בטוחה הדבר לא יעלה בידו. כלומר התוקף יכול לזייף חתימה רק עבור מסמכים מסוימים ולא עבור כל מסמך שירצה. אפשר לעקוף בעיה זו על ידי הוספת בדיקת זוגיות.
גרסת וינטרניץ.
רוברט וינטרניץ (Robert Steven Winternitz) הציע לקצר את מפתחות החתימה של אלגוריתם למפורט באופן משמעותי על חשבון עלייה בסיבוכיות זמן. הרעיון הוא לחתום על מספר סיביות של תמצית המסר בבת אחת. ההצעה של וינטרניץ הובאה לראשונה בתזה של רלף מרקל והיא פועלת כדלהלן:
נתון פרמטר ביטחון formula_1 ופונקציה חד כיוונית formula_3 בדיוק כמו בחתימת למפורט, בנוסף נתון פרמטר formula_90 המייצג את מספר הסיביות שאפשר לחתום עליהן בו-זמנית ושלושה פרמטרים נוספים formula_91 כך שמתקיים:
מפתח החתימה הוא:
כלומר המפתח הפרטי מורכב מ-formula_94 מחרוזות אקראיות באורך formula_1 סיביות. מפתח האימות הציבורי הוא:
שים לב שבניגוד לחתימת למפורט כאן הפונקציה formula_3 מופעלת באופן רקורסיבי (הפונקציה מופעלת שוב ושוב על התוצאה שלה) formula_100 פעמים עבור כל formula_97 ובסך הכול מופעלת formula_102 פעמים. הרווח כאן הוא שהמפתחות formula_13 ו-formula_24 קצרים יותר, ליתר דיוק באורך formula_105 סיביות כל אחד. אם formula_94 קטן הושג כאן שיפור משמעותי לעומת formula_107 סיביות בחתימת למפורט.
תהליך החתימה.
כמו בתהליך ההכנה לעיל, נתונה תמצית המסר formula_108 באורך formula_1 סיביות. תחילה מרפדים את formula_34 באפסים מובילים לפי הצורך כדי שאורך המחרוזת יתחלק ב-formula_111 ומחלקים את התוצאה ל-formula_112 מחרוזות (formula_113) באורך formula_111 סיביות כל אחת. מתייחסים למחרוזות formula_115 כאל מספרים שלמים בטווח formula_116 ומחשבים ספרת ביקורת כך:
היות ש-formula_118 אורך הייצוג הבינארי של השלם formula_119 אינו עולה על formula_120 סיביות. מוסיפים ל-formula_119 אפסים מובילים כנדרש כדי להשלימו למחרוזת באורך formula_122 כניסות באורך formula_111 סיביות כל אחת formula_124. המחרוזת המורחבת המתקבלת משרשור המחרוזות formula_34 ו-formula_119 יחד, מומרת למערך שלמים formula_127 המכיל formula_128 מספרים באורך formula_111 סיביות כל אחד. לבסוף החתימה היא:
כלומר על כל formula_97 מפעילים את הפונקציה formula_3 ברקורסיה formula_115 פעמים. במקרה הגרוע כגון אם המסר מכיל מחרוזת של אחדים, הכנת החתימה דורשת formula_102 הפעלות של הפונקציה formula_3 ואורך החתימה הוא formula_105 סיביות.
אימות החתימה.
כאשר המאמת מקבל את תמצית המסמך formula_34 והחתימה formula_38 תחילה מכין את מערך השלמים formula_139 בדיוק כמו בהתליך החתימה ואז בודק אם מתקיים:
ביתר פירוט, היות שאם החתימה תקפה מתקיים formula_141 מזה נובע ש-formula_142. לדוגמה אם formula_143 מפתח האימות formula_56 הופק על ידי קריאה רקורסיבית לפונקציה formula_3 בסך הכול formula_146 פעמים. כעת אם formula_147 החתימה על formula_97 היא formula_149 מזה נובע ש-formula_150.
סיבוכיות האימות זהה לסיבוכיות החתימה.
דוגמה במספרים קטנים.
נניח שנקבעו הפרמטרים הבאים: formula_151. נתונה הפונקציה החד כיוונית formula_152 המחזירה עבור formula_7 את formula_154 מודולו formula_155. נניח שהחותם בחר את המפתח:
חישוב המפתח הציבורי יהיה:
אם נתונה תמצית המסמך formula_158 תחילה מוסיפים אפס בראש המחרוזת (משמאל) ומקבלים מחרוזת באורך 4 סיביות המחולקת לשני בלוקים באורך formula_159 כדלהלן:
ספרת הביקורת לפי הנוסחה לעיל היא formula_161 שהוא "111" בייצוג בינארי. את המחרוזת הזו מרפדים באפס מוביל ומתקבלת מחרוזת באורך 4 סיביות המחולקת לשני בלוקים:
כעת ממירים את ארבעת הבלוקים שהתקבלו למערך formula_163 באורך 4 כניסות כאשר כל כניסה מכילה מספר שלם בין 0 ל-3 ומתקבל:
את החתימה מחשבים על ידי הפעלה של הפונקציה formula_3 על כל formula_97 במספר פעמים לפי הערך formula_115. כלומר החתימה היא:
(הערה: אם formula_169 הפירוש הוא שהפונקציה formula_3 אינה מופעלת כלל, במקום זאת מעתיקים את formula_97 כמו שהוא).
לאימות החתימה בודקים שמתקיים:
למשל היות ש-formula_173 בדיקת החתימה formula_174 מתבצעת על ידי חישוב הפונקציה formula_3 שלה בדיוק formula_176 פעמים. לכן formula_177.
בדומה לחתימת למפורט הבסיסית גם כאן אם החותם ישתמש באותו מפתח כדי לחתום על מסמכים נוספים נניח למשל שהוא חתם על תמצית המסמך formula_178, formula_179 לכן לפי הדוגמה המובאת החתימות שהצטברו בידי המאמת הן: formula_180. עם חתימות אילו הוא יכול לחתום על מסמך formula_181. כלומר תוקף פוטנציאלי שמקבל מספר מרובה של חתימות על מסמכים שונים יכול להפיק חתימה שתראה אותנטית על מסמך אחר, גם אם לא בהכרח מסמך בעל משמעות כלשהי. בשל עובדה זו אין לחתום על מסמכים נוספים עם אותו מפתח.
חתימת למפרוט וחתימת וינטרניץ אינן פרקטיות כמו שהן משתי סיבות. כל חתימה מתאימה רק למסמך אחד ולכן יש צורך לאחסן כמות גדולה של חתימות וכן לנהל מעקב אחר חתימות שכבר נעשה בהן שימוש. ומלבד זאת מפתחות החתימה והאימות גדולים מאוד. למשל בדוגמה שהובאה לעיל כדי לחתום על מסמך באורך שלוש סיביות נדרשו מפתחות חתימה ואימות באורך 12 סיביות כל אחד, שזה פי ארבעה מאורך המסמך עצמו. ביישומים מעשיים כגון חתימה על חבילות מידע ברשת האינטרנט או על קבצים של עדכוני תוכנה לא תיתכן חתימה כל כך גדולה. לשם השוואה חתימה דיגיטלית DSA על מסמך באורך 256 סיביות היא באורך לכל היותר 512 סיביות. מצד שני היות שתהליך החתימה עצמה מאוד יעיל ובטוח, המחקר עדיין בעיצומו לנסות למצוא דרכים לייעול חתימה דיגיטלית מבוססת פונקציית גיבוב כך שתהיה קומפקטית ויעילה במידת האפשר.
הדת הסינית העממית
הדת הסינית העממית (מוכרת במגוון שמות, ביניהם הדת הסינית המסורתית, הדת הסינית הילידית, ושֶנְשִיאניזם) היא דת עממית שמקורה בסין. בשל היותה דת עממית היא אינה דת מאורגנת בעלת עיקרי אמונה ברורים ופולחן מסודר, אלא אוסף מנהגים ופולחנים מקומיים הנהוגים בסין ובפזורה הסינית בעולם. ישנן אין ספור וריאציות לדת זו, רובן מכילות אלמנטים משלוש הפילוסופיות הסיניות הגדולות - קונפוציאניזם, דאואיזם ובודהיזם, כמו גם פולחן אלילי, פולחן אבות, פולחן איתני הטבע, ושיטות חקלאיות או ניהוליות שהוכיחו את עצמן והועברו כמסורת מאב לבנו. היא כוללת גם אגדות עם רבות ולהן גרסאות שונות, כמו גם מגוון ישויות על טבעיות (כגון שדים, דרקונים, וחיות מדברות) שצורתן ותפקידן משתנה מאזור לאזור ומשפחה למשפחה. החוקרת והאתנוגרפית הסינגפורית ויויאן ווי תיארה את התופעה כ"קערה ריקה שניתן למלאה בתוכן מדתות מאורגנות, ביניהן בודהיזם, דאואיזם וקונפוציאניזם. דת סינית סינקרטית". לדת הסינית גם מאפיינים השמאניים, ואנשי הדת העוסקים בסוג זה של שמאניזם נקראים ווּ (מסינית: 巫, פין-יין: wū)
מושאי הפולחן של דת זו הן ישויות המכונות שֵן (מסינית: 神, פין-יין: shén), שם המתורגם לעיתים לביטוי "אל" או "אליל" בשפות אחרות. אלילים אלו הם לעיתים האנשה של תופעות טבע, של התנהגות אנושית, של מושגים פילוסופיים, של אתרים גאוגרפים, או רוחות גדולי אומה שנפטרו ואף נשמותיהם של קרובי משפחה. סיפורי חלק מהאלים האלה נאספים לתוך המיתולוגיה המסורתית של סין. מושג זה דומה מאוד למושג היפני קאמי, ושתיהם אף משתמשים באותה סימנית סינית (סימניות המכונות ביפנית קאנג'י).
השם המועדף היום באקדמיה הסינית הוא "הדת העממית" (סינית: 民間宗教, פין-יין: "mínjiān zōngjiào"), אך קיימים שמות רבים נוספים, והיא מוכרת לעיתים במערב בשמות "שניזם", "שנשיאניזם", או "ווּאיזם". כל שמות הדת נמצאים בשימוש במחקר בלבד ואינם שגורים בקרב ציבור מאמיניה, מכיוון שמגוון האמונות והפולחנים המקומיים השונים אינם מזוהים על ידם כחלק מדת אחת.
היסטוריה.
תקופת סין הקיסרית.