瀏覽代碼

Krypterade lösenord i login/register

Axel Nordh 7 年之前
父節點
當前提交
2f166612b1
共有 2 個文件被更改,包括 6 次插入6 次删除
  1. 1 1
      Assets/Scripts/Login/Login.cs
  2. 5 5
      Assets/Scripts/Login/Register.cs

+ 1 - 1
Assets/Scripts/Login/Login.cs

@@ -93,7 +93,7 @@ public class Login : MonoBehaviour {
         if (!u.userId.Equals("")) {
             byte[] pwd = Encoding.UTF8.GetBytes(u.salt + Password);
             SHA1CryptoServiceProvider sha1 = new SHA1CryptoServiceProvider();
-            string pass = sha1.ComputeHash(pwd).ToString();
+            string pass = Convert.ToBase64String(sha1.ComputeHash(pwd));
             if (pass.Equals(u.pass)) {
                 errorColor.a = 0;
                 errorText.color = errorColor;

+ 5 - 5
Assets/Scripts/Login/Register.cs

@@ -6,6 +6,7 @@ using UnityEngine.EventSystems;
 using UnityEngine.SceneManagement;
 using System.Security.Cryptography;
 using System.Text;
+using System;
 
 public class Register : MonoBehaviour {
     public GameObject username;
@@ -90,7 +91,7 @@ public class Register : MonoBehaviour {
         SHA1CryptoServiceProvider sha1 = new SHA1CryptoServiceProvider();
         byte[] pass = sha1.ComputeHash(pwd);
 
-        string postUrl = registerUserUrl + "name=" + UnityWebRequest.EscapeURL(Username) + "&password=" + pass.ToString() + "&email=" + UnityWebRequest.EscapeURL(Email) + "&s=" + salt;
+        string postUrl = registerUserUrl + "name=" + UnityWebRequest.EscapeURL(Username) + "&password=" + UnityWebRequest.EscapeURL(Convert.ToBase64String(pass)) + "&email=" + UnityWebRequest.EscapeURL(Email) + "&s=" + UnityWebRequest.EscapeURL(salt);
 
         UnityWebRequest www = UnityWebRequest.Get(postUrl);
         yield return www.SendWebRequest();
@@ -115,12 +116,11 @@ public class Register : MonoBehaviour {
     private string GetSalt() {
         RNGCryptoServiceProvider rnd = new RNGCryptoServiceProvider();
 
-        int saltLength = 64;
+        int saltLength = 32;
         byte[] salt = new byte[saltLength];
 
-         rnd.GetNonZeroBytes(salt);
-
-        return salt.ToString();
+        rnd.GetNonZeroBytes(salt);
 
+        return Convert.ToBase64String(salt);
     }
 }