2017-06-15 63 views
0

我是网络开发新手。我正在开发我的课程项目,使我在网站中访问数据。我想从那里为用户隐藏这些数据,以便他们在将来无法更改它。 我正在ASP.net上工作。帮助将不胜感激。隐藏网址中的数据

回答

1

您不能隐藏数据的URL 行驶,就像我的网址是text.aspx?姓=罗宾&姓氏=胡德 您可以在网址 加密数据,那么是应该显示像Test.aspx的?姓= 121sdnasdkjn121928 &姓氏= sadklsdn12981029 类似的东西 ,然后你在哪里得到的数据,你需要解密的数据,它将返回实际的数据

这里是加密或解密

public static string Encrypt(string clearText) 
    { 
     try 
     { 
      string EncryptionKey = "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890abcdefghijklmnopqrstuvwxyz1234567890"; 
      byte[] clearBytes = Encoding.Unicode.GetBytes(clearText); 
      using (Aes encryptor = Aes.Create()) 
      { 
       Rfc2898DeriveBytes pdb = new Rfc2898DeriveBytes(EncryptionKey, new byte[] { 0x49, 0x76, 0x61, 0x6e, 0x20, 0x4d, 0x65, 0x64, 0x76, 0x65, 0x64, 0x65, 0x76 }); 
       encryptor.Key = pdb.GetBytes(32); 
       encryptor.IV = pdb.GetBytes(16); 
       using (MemoryStream ms = new MemoryStream()) 
       { 
        using (CryptoStream cs = new CryptoStream(ms, encryptor.CreateEncryptor(), CryptoStreamMode.Write)) 
        { 
         cs.Write(clearBytes, 0, clearBytes.Length); 
         cs.Close(); 
        } 
        clearText = Convert.ToBase64String(ms.ToArray()); 
       } 
      } 
      return clearText; 
     } 
     catch 
     { 
      return null; 
     } 
    } 

    public static string Decrypt(string cipherText) 
    { 
     try 
     { 
      string EncryptionKey = "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890abcdefghijklmnopqrstuvwxyz1234567890"; 
      byte[] cipherBytes = Convert.FromBase64String(cipherText.Replace(" ", "+")); 

      using (Aes encryptor = Aes.Create()) 
      { 
       Rfc2898DeriveBytes pdb = new Rfc2898DeriveBytes(EncryptionKey, new byte[] { 0x49, 0x76, 0x61, 0x6e, 0x20, 0x4d, 0x65, 0x64, 0x76, 0x65, 0x64, 0x65, 0x76 }); 
       encryptor.Key = pdb.GetBytes(32); 
       encryptor.IV = pdb.GetBytes(16); 
       using (MemoryStream ms = new MemoryStream()) 
       { 
        using (CryptoStream cs = new CryptoStream(ms, encryptor.CreateDecryptor(), CryptoStreamMode.Write)) 
        { 
         cs.Write(cipherBytes, 0, cipherBytes.Length); 
         cs.Close(); 
        } 
        cipherText = Encoding.Unicode.GetString(ms.ToArray()); 
       } 
      } 
      return cipherText; 
     } 
     catch 
     { 
      return null; 
     } 
    } 
功能

OR

可以使用术语URL路由,以及以隐藏真实的URL,并显示虚假的URL用户 喜欢以代替localhost:1544/Test.aspx文件,它会显示本地主机:1544 /测试或本地主机:1544/what_ever_you_want 它会隐藏.aspx扩展名以及

希望这会帮助

1

您无法隐藏在URL中传输的数据。发送未在url中显示的数据的最简单方法是使用POST请求而不是GET请求。