מחפש מידע אודות מקודד AES128 ECB
היי,
אני צריך לפתח בעצמי מקודד + מפענח עבור AES128 ECB לתשתית בקרה\תוכנה שלא ניתן לטעון אליה שום ספריית קידוד מוכנה מוכנה מעולם התכנות הנורמלי , אז בבקשה לא להציע לי פתרונות מוכנים מהרשת.
מצאתי ברשת כל מיני הסברים על התהליך קידוד וגם על תהליך הפענוח, אבל האסימון לא נופל, אני פשוט לא מבין את ההסברים או שזה גדול עליי מתמטית או גם וגם.
לדוגמא:
https://he.wikipedia.org/wiki/AES
https://csrc.nist.gov/csrc/media/pub...s/fips-197.pdf
אם אתם מכירים לינק יעיל ברור יותר ממה ששמתי מעלה אודה לכם ,
אם יש פה מישהו שיודע להסביר לי שלב אחרי שלב מה צריך להתבצע (אני אכתוב את הקוד, הוא רק צריך להבין ולהסביר את השלבים) אני אודה לו מאוד אם ייצור קשר.
תודה מוטי.
0504445398
תגובה: מחפש מידע אודות מקודד AES128 ECB
תגובה: מחפש מידע אודות מקודד AES128 ECB
לא יודע באיזה סביבה אתה עובד אבל בטוח אפשר למצוא קוד open-source ולהעתיק אותו לאן שצריך בלי לייבא ספריה חיצונית.
ארנון
תגובה: מחפש מידע אודות מקודד AES128 ECB
חיפשתי, לא קיים.
יש במוצר דומה "ליד" אבל מאמץ ההמרה יהיה גדול מכתיבה לבד.
מחפש מידע אודות מקודד AES128 ECB
יש פה ספריה בקוד פתוח:
https://github.com/kokke/tiny-AES-c
גם אם אתה לא יכול להשתמש בקוד מסיבותיך, הוא לטעמי כתוב בצורה מסודרת וברורה יחסית ואולי תוכל להיעזר בו גם להבנת התהליך ואחכ למימוש.
נ.ב. אתה יודע ש ECB פחות מומלץ לפרוטוקולי תקשורת?
תגובה: מחפש מידע אודות מקודד AES128 ECB
אני לא בחרתי, זה נתון.
תודה!
תגובה: מחפש מידע אודות מקודד AES128 ECB
אני מחדד את השאלה אחרי שהבנתי את הרעיון הבסיסי, ובכל האתרים מוצג טיפול בטקסט של 16 תווים.
מה קורה בטקסט של 280 תווים(שזה מה שאני צריך) , איך אני מטפל בזה?
האם אני מחלק את זה לקבוצות של 16 תווים ומטפל בהם בנפרד עפ"י הלוגיקה הבסיסית?
תגובה: מחפש מידע אודות מקודד AES128 ECB
הי מוטי
כן - כל פעם קוראים לפונקציית ה ECB עם 16 הבתים הבאים,
למשל בדוגמא שנתת זה 17 קריאות של 16 בתים, ועוד קריאה עם השמונה בתים האחרונים בתוספת 8 בתים של ריפוד (מכיוון שהפונקציה מטפלת רק ב 16 , לא פחות ולא יותר)
בסהכ 18 קריאות לפונקציה
שים לב שאם יש לך 280 בתים של מידע לא מקודד (plaintext) אתה תקבל 288 של מידע מקודד, בשביל לשחזר את המידע אתה חייב לשמור את כולו - אחרת (למיטב זכרוני / הבנתי) לא תוכל לשחזר את הבתים האחרונים (אותו בלוק שריפדת למעלה)
תגובה: מחפש מידע אודות מקודד AES128 ECB
אתה עובד בבלוקים של 16 בתים בכל פעם. מומלץ שאתה מרפד להשתמש במידע רנדומלי ולא במידע קבוע (ובטח לא באפסים או אחדים).
יש עוד שיטה שמערבלת את המידע קצת יותר וזה ע"י שימוש ב counter לכל בלוק, שאותו אתה מכפיל במידע (XOR). זה מייצר רמת אבטחה נוספת. כמובן שה counter לא מתחיל ב 0 או 1. הכל תלוי ברמת האבטחה הנדרשת. גם לגבי מפתחות יש כל מיני הגדרות ודרישות סף כדי למנוע ממשתמשים לשים מפתחות מטומטמים ועד מפתחות שבנויים מפולינומים ספציפיים כדי להבטיח קידוד מיטבי.
תגובה: מחפש מידע אודות מקודד AES128 ECB
אני מתחבר למוצר קיים ולכן אני לא בוחר את השיטה, השיטה כבר נתונה על ידי היצרן.
אני מתקדם בפיתוח, כרגע אני תקוע בשלב ה mix לא הבנתי מבין כל האתרים שראיתי, האם יש שם רק מכפלות בין מטריצות (הסטייט מוכפל בקבועה) או עוד משהו, אני חופר בזה בין לקוח ללקוח, לא פול טיים על זה.
כי מכפלה לבדה מוציאה אותי מחוץ ל FF ואני מאבד דאטה.
עובד על זה....
תגובה: מחפש מידע אודות מקודד AES128 ECB
מבין שיש מכפלה ובמקום חיבור(כמו כפל מטריצות רגיל) יש xor.
עובד על זה....
תגובה: מחפש מידע אודות מקודד AES128 ECB
תודה לכולם , כרגע השלב של פענוח הדאטה שאני מקבל ב AES128 +"ריפוד" , עובד!
אחרי שצפיתי במלא סרטונים ב"אנגלית" של הודים ( וואו המבטא שלהם קשה! ) בשביל להבין את הרעיון מאחורי התהליך, התחלתי לתרגם קוד פתוח ב C שמצאתי ברשת (השפה שאני עובד מבוססת פסקל, אז הסינטקס מעט שונה ואין לי שום הכרות בפועל עם C, אז הייתי צריך לחפש גם מה המשמעות של כל הסימנים)
אחרי הפענוח מ AES128 נאלצתי (עפי הגדרת המוצר) להוסיף "פענוח" מ BASE64 לטקסט , אבל זה היה מוכן לי בספריה.
השלב הבא הוא קידוד הבקשה שאני שולח בסדר פעולות הפוך, אבל נראה לי שזה יהיה כבר החלק הקל.
תודה לכולם!
תגובה: מחפש מידע אודות מקודד AES128 ECB
באיזו שפה אתה כותב ?
לפני המון שנים (אם זכרוני אינו מטעה) השתמשתי בספריה כזו ב- perl שהיתה כתובה כולה ב- perl, כך שניתן במאמץ סביר לתרגם אותה גם לשפות אחרות.
בשלוף מצאתי את זה:
https://metacpan.org/pod/Crypt::Rijndael_PP
(זה לא מה שהשתמשתי אז, אם זה יכול לעזור אנסה לדוג את הקוד הישן)
תגובה: מחפש מידע אודות מקודד AES128 ECB
:)
איזה nerds פה!
מילא מקודדים, אבל פסקל/פרל?
מה שיותר גרוע, שגם אני תכנתתי בהן
ארנון
Sent from my Pixel 6 using Tapatalk
תגובה: מחפש מידע אודות מקודד AES128 ECB
אתה מתכוון "איזה זקנים פה" ...
עוד אחד ב- perl
https://metacpan.org/pod/Crypt::Perl
תגובה: מחפש מידע אודות מקודד AES128 ECB
אני עובד על בקר מתוכנת של חברת beckhoff( החברה בה אני עובד)
התכנות מתבצע בשפה מבוססת תקן iec 61131-3( שנולד אי שם בשנות ה80) שמכילה 7 שפות "גרפיות" שונות: דיאגמת סולם, בלוקים בשורה, בלוקים בדף נקי (כמו lab view), תרשים זרימה,משהו שדומה לאסמבלר (ברעיון הכללי של נגישות לשטחי זכרון) וגולת הכותרת שפה טקסטואלית שנקראת ST( stucture text) וזה מאוד דומה לפסקל (לפחות ממה שאני זוכר מתיכון כשלמדתי פסקל).
יש תמיכה צדדית גם ב C אבל לא הצלחתי להפעיל את זה, משהו עם רגיסטרציה של סרטיפיקציות ולא רציתי להתאמץ על זה, זה משהו שאנו כמעט ולא מוכרים אז ה ROI של זה נמוך, העדפתי לשכתב הכל ב ST על מנת להבין מה כתוב שם ולדעת לדבג את זה.
זהו לגבי התשתית.
לגבי הצורך, זה ממשק בין הבקר בבית למזגני תדיראן ב wifi מבלי הצורך לחשוף את המזגנים לשרת החברה בסין (המזגן מיוצר ע"י תאגיד Gree ) וכל פתיחה של האפליקציה שלהם מחוייב גישה לענן.
הרעיון בפתרון שלי, שאני עובד עליו מידי פעם ככר 4 שנים מאז סיום הבנייה, הוא לאפשר גישה GUI מבוסס web (שהוא גם מוצר שלנו) מכל מקום בעולם לבקרה בבית ע"ב הדפדפן בטלפון.
הבקר אצלי בבית שולט בהשקיה, בחימום המים בדוד, ובאזעקה של הבית, המזגנים נרכשו עם wifi במטרה לחבר אותם לבקר גם כן, לאפשר הפעלה/כיבוי מרחוק או סתם כיבוי של המזגנים בחדרים כשיוצאים מהבית.
תגובה: מחפש מידע אודות מקודד AES128 ECB
תגובה: מחפש מידע אודות מקודד AES128 ECB
ציטוט:
נכתב במקור על ידי
alto
:)
איזה nerds פה!
מילא מקודדים, אבל פסקל/פרל?
מה שיותר גרוע, שגם אני תכנתתי בהן
ארנון
Sent from my Pixel 6 using Tapatalk
גם אני הצצתי בלוח השנה לוודא שלא עברתי מסע בזמן.
תגובה: מחפש מידע אודות מקודד AES128 ECB
אם הייתה ספריה מוכנה ממקור מהימן הייתי לוקח אותה as is אבל אין, ולכן כל דבר שאני אמור "לאמץ" מחייב אותי להכיר אותו לעומק,
בכללי, אני כזה שמעדיף לחפור ולכתוב בעצמי אם אני מרגיש שהמקור לא מהימן לחלוטין.
תגובה: מחפש מידע אודות מקודד AES128 ECB
קשה להאמין שלא כתבו כבר דבר כזה, תוכל לתרום לנו עוד כמה מילות חיפוש טובות, כמו הדגם של הבקר, סביבת הפיתוח שלו, שם מדוייק וגירסה של שפת הפיתוח, וגם של השפות הנוספות שזמינות לך עבור הבקר ?