.NET新增時間戳記防止重放攻擊

來源:互聯網
上載者:User
如過用戶端在向服務端介面進行請求,如果請求資訊進行了加密處理,被第三方截取到請求包,雖然第三方無法解密擷取其中的資料,但是可以使用該請求包進行重複的請求操作。如果服務端不進行防重放攻擊,就會參數伺服器壓力增大,資料紊亂的後果。而使用新增時間戳記的方式可以解決這一問題。

private readonly string TimeStamp = ConfigurationManager.AppSettings["TimeStamp"];//配置時間戳記    [HttpPost]    public ActionResult TestApi()    {        string RequestTime = Request["rtime"]; //請求時間經過RSA簽名        try        {          //請求時間RSA解密後加上時間戳記的時間即該請求的有效時間          DateTime Requestdt = DateTime.Parse(RSACryptoProvider.Decrypt(RequestTime, RSA_Keys.Private)).AddMinutes(int.Parse(TimeStamp));           DateTime Newdt = DateTime.Now; //伺服器接收請求的目前時間          //if 請求的有效時間 < 現在伺服器接受請求的時間 即該請求失效          if (Requestdt < Newdt)          {            return Json(new { success = false, message = "該請求已經失效" });          }          else          {      //進行其他動作      }        }        catch (Exception ex)        {          return Json(new { success = false, message = "請求參數不和要求" });        }    }



以上就是.NET新增時間戳記防止重放攻擊 的內容,更多相關內容請關注topic.alibabacloud.com(www.php.cn)!

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.