נראה כי הדברים מתנהלים די טוב בפרויקט WireGuard, כפי שג'ייסון א. דוננפלד, מחבר VPN WireGuard, הציג את פרויקט WireGuardNT שהוא יציאת VPN WireGuard בעלת ביצועים גבוהים עבור ליבת Windows התואם ל- Windows 7, 8, 8.1 ו- 10, ותומך בארכיטקטורות AMD64, x86, ARM64 ו- ARM.
חשוב לזכור כי בסמסטר האחרון של 2019 נעשו התיקונים עם יישום ממשק ה- VPN של הפרויקט בענף net-next, זאת מכיוון שמפתחי WireGuard התחייבו והסכימו להעביר חלק מהקוד לרשת הראשית kernel, לא כממשק API נפרד, אלא כחלק מתת מערכת ה- Crypto API.
לאחר כמה חודשים לאחר מכן הפרויקט הגיע לשינויי OpenBSD עבור כלי ifconfig ו- tcpdump עם תמיכה בפונקציונליות של WireGuard, תיעוד ושינויים קלים לשילוב WireGuard עם שאר המערכת ולאחר מכן הפרויקט הועבר כך שיתאימו ל- Android .
WireGuard VPN מיושם על בסיס שיטות הצפנה מודרניות, מספק ביצועים גבוהים מאוד, קל לשימוש, ללא טרחה, והוכיח את עצמו במספר פריסות גדולות המתמודדות עם נפח תנועה גבוה.
הפרויקט מתפתח מאז 2015, עבר ביקורת רשמית ואימות של שיטות ההצפנה בהן נעשה שימוש. WireGuard משתמשת במושג ניתוב מפתחות הצפנה, הכרוך בכריכת מפתח פרטי לכל ממשק רשת ושימוש במפתחות הציבוריים בכריכה.
החלפת המפתחות הציבוריים ליצירת חיבור נעשית באנלוגיה ל- SSH. כדי לנהל משא ומתן על מפתחות ולהתחבר מבלי להפעיל שד נפרד במרחב המשתמשים, נעשה שימוש במנגנון Noise_IK של מסגרת פרוטוקול הרעשים, בדומה לתחזוקה של מפתחות מורשים ב- SSH. העברת הנתונים מתבצעת על ידי אנקפסולציה במנות UDP. תומך בשינוי כתובת ה- IP של שרת ה- VPN (נדידה) מבלי לנתק את החיבור עם תצורה אוטומטית מחדש של הלקוח.
הצפנה משתמש בהצפנת זרם ChaCha20 ובאלגוריתם אימות הודעות Poly1305 (MAC). ChaCha20 ו- Poly1305 ממוקמים כמקבילים מהירים ובטוחים יותר ל- AES-256-CTR ו- HMAC, שיישום התוכנה שלהם מאפשר לך להשיג זמן ריצה קבוע מבלי להשתמש בתמיכת חומרה מיוחדת.
ועכשיו הפרויקט מגיע כנמל עבור Windows כי בונה על בסיס הקוד שנבדק של יישום הליבה WireGuard עבור ליבת לינוקס, שתורגם לשימוש בישויות הליבה של Windows ובערימת הרשתות NDIS.
לאחר חודשים רבים של עבודה, סיימון ואני שמחים להכריז על פרויקט WireGuardNT, יציאת WireGuard מקומית עבור גרעין Windows.
WireGuardNT, התחיל כיציאה של בסיס הקוד של לינוקס ... לאחר מאמצי ניידות ראשוניים היו מוצלחים, בסיס קוד ה- NT התפזר במהירות כדי להתאים היטב ל- NTisms מקוריים ול- API של NDIS (Windows stacking networking). התוצאה הסופית היא יישום WireGuard המשולב באופן עמוק, בעל ביצועים גבוהים, העושה שימוש במכלול היכולות של ליבת NT ו- NDIS.
בהשוואה ליישום wireguard-go הפועל במרחב משתמשים ומשתמש בממשק הרשת של Wintun, WireGuardNT יש שיפור משמעותי בביצועים על ידי ביטול פעולות החלפת הקשר והעתק את תכולת החבילה מהגרעין למרחב המשתמש.
באנלוגיה ליישומי WireGuardNT עבור Linux, OpenBSD ו- FreeBSD, כל ההיגיון של עיבוד פרוטוקול פועל ישירות ברמת מחסנית הרשת.
למרות שעדיין לא בוצעו אופטימיזציות ספציפיות, WireGuardNT כבר השיגה תפוקת העברת נתונים מרבית של 7,5 Gbps בסביבת הבדיקה שלנו עם אתרנט.
במערכות משתמש אמיתיות עם Wi-Fi הביצועים נמוכים באופן ניכר, אך לא שונה מאוד מהעברת נתונים ישירה. לדוגמה, במערכת עם כרטיס אלחוטי Intel AC9560, הביצועים ללא WireGuard היו 600 Mbps ו- WireGuardNT היו גם 600 Mbps, בעוד שבשימוש ב- wireguard-go / Wintun הוא היה 95 Mbps.
מקור: https://lists.zx2c4.com/