הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   תכנות - מדריכים, code snippets (https://hosts.co.il/forums/forumdisplay.php?f=68)
-   -   [מדריך] PHP - שיטת ההצפנה Base64 (הצפנה דו כיוונית) ושימושיה (https://hosts.co.il/forums/showthread.php?t=743)

Ikki 09-10-05 13:42

[מדריך] PHP - שיטת ההצפנה Base64 (הצפנה דו כיוונית) ושימושיה
 
בס"ד

שלום רב!,
במדריך זה החלטתי ללמד על ההצפנה הדו כיוונית הנפוצה ביותר כיום, Base64.
החלטתי לחלק את המדריך לארבעה נושאי אם: "מהי הצפנה דו כיוונית?", "כיצד נצפין מידע?", "כיצד נשחזר מידע?" ו"מהם שימושי הBase64?".


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

UEhQ
לאחר מכן ננסה לשחזר את הקוד ע"י פונקצייה הפוכה ונקבל:
קוד:

PHP

ובמדריך זה אנו נלמד להצפין מידע בשיטת ה Base64.


כיצד נצפין מידע?

על מנת להצפין מידע עלינו להשתמש בפונקצייה מסוג encode(פונקציית הצפנה), בBase64 אנו נשתמש בפונקצייה הבאה: base64_encode() .

תבנית הפונקצייה:
PHP קוד:

<?php
base64_encode
(x);
?>


לדוגמא:
PHP קוד:

<?php
$code 
"Base64 Guide - By Ikki";
$encode base64_encode($code);
echo 
$encode;
?>

יחזיר לנו:
ציטוט:

QmFzZTY0


כיצד נשחזר מידע?

על מנת לשחזר מידע עלינו להשתמש בפונקצייה מסוג decode(פונקציית שיחזור), בBase64 אנו נשתמש בפונקצייה הבאה: base64_decode() .

תבנית הפונקצייה:
PHP קוד:

<?php
base64_encode
(date);
?>


לדוגמא:
PHP קוד:

<?php
$code 
"QmFzZTY0";
$decode base64_decode($code);
echo 
$decode;
?>

יחזיר לנו:
ציטוט:

Base64 Guide - By Ikki


מהם שימושי ה Base64?
בBase64 נוכל להשתמש בשימושים רבים שמצריכים שיחזור.
למשל אם נרצה להצפין את הקוד, כך שרק מי שמכיר את הקוד ידע שצריך לשחזר כדי לערוך, וכך נמנע שינויים בקוד.
נצפין בBase64 ונשחזר בעמוד השיחזור.

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

לסיכום, לשיטת ההצפנה Base64 ישנם שימושים רבים!.


בהצלחה,
Ikki

Opacity 09-10-05 13:54

מדריך מצויין, תודה רבה רבה !

hi_sorie 09-10-05 14:57

לא הבנתי איך אני יכול לצפין קוד שלם ... יענו את כלהאתר ....

Ikki 09-10-05 15:47

כך את כל הקוד, תצפין אותו, ותפענח.

meshuga 09-10-05 15:51

ציטוט:

נכתב במקור על ידי hi_sorie
לא הבנתי איך אני יכול לצפין קוד שלם ... יענו את כלהאתר ....

הוא לא דיבר על זה...הוא דיבר על הצפנה כמו MD5 רק דו כיוונית...משמע..שאתה יכול ל"שחזר" את הסיסמה..

Ikki 09-10-05 15:53

ציטוט:

נכתב במקור על ידי meshuga
הוא לא דיבר על זה...הוא דיבר על הצפנה כמו MD5 רק דו כיוונית...משמע..שאתה יכול ל"שחזר" את הסיסמה..

טעות בידיך ידידי.

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

Balrog 09-10-05 16:58

תודה רבה
מדריך לעניין :-)

Ikki 09-10-05 17:54

אין על מה...
עוד תגובות?

meshuga 09-10-05 17:56

ציטוט:

נכתב במקור על ידי Ikki
טעות בידיך ידידי.

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

אתה רוצה להגיד לי שאם אני כותב לך
PHP קוד:

for($i=0;$i<12;$i++){
echo 
"asdasd";


את זה אתה יכול להצפין?כי זה מה שאני חושב שהוא מתכוון

Ikki 09-10-05 17:59

כן, אפשר להצפין את זה.


כל הזמנים הם GMT +2. הזמן כעת הוא 21:55.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ