אלגוריתם לאימות ללא צורך בטבלה לשמירת נתונים
-
אני רוצה שכדי שגולש יוכל ליצור חשבון משתמש באתר, הוא יזין אימייל ואז בשלב שני הוא יקבל לינק עם קוד מסויים, ואם הוא ילחץ על הלינק שקיבל אוכל לאמת את אותו לקוח ואז יווצר לו חשבון המשתמש.
יש אופציה לעשות את זה בלי לעשות טבלה במסד נתונים אלא ע"י איזה מפתח שמאמת קשר בין הסיסמא לאימייל?תודה.
-
אז כדאי שתשתמש בקוד הזה באמת, תנסה להריץ ככה
$method = 'AES-256-CBC'; $key = 'here very hard password and ultra long 1234'; $length = openssl_cipher_iv_length($method); $iv = openssl_random_pseudo_bytes($length); $encrypted = openssl_encrypt($pltxt, $method, $key, OPENSSL_RAW_DATA, $iv); $ctxt = base64_encode($encrypted) . '|' . base64_encode($iv); list($data, $iv) = explode('|', $encrypted); $iv = base64_decode($iv); $pltxt = openssl_decrypt($data, $method, $key, 0, $iv);
אם יש שגיאה על הopen_ssl צריך להוסיף את ההרחבה php_openssl, אני לא יודע איך מוסיפים הרחבה בPHP, זה מקוה שיהיה פה מישהו שיענה.
בקוד הנ"ל ה -
@www רק הערב התפניתי להיכנס לזה.
הצלחתי ככה.
@dovid תודה.$pltxt='1@domain.com'; $method = 'AES-256-CBC'; $key = 'here very hard password and ultra long 1234'; $length = openssl_cipher_iv_length($method); $iv = openssl_random_pseudo_bytes($length); $encrypted = openssl_encrypt($pltxt, $method, $key, OPENSSL_RAW_DATA, $iv); $ctxt = base64_encode($encrypted) . '|' . base64_encode($iv); $array = explode('|', $ctxt); $data = $array[0]; $iv = base64_decode($array[1]); echo ($pltxt = openssl_decrypt($data, $method, $key, 0, $iv)) ;//1@domain.com