關於安全支付的幾個tips

2021-06-06 07:07:54 字數 1128 閱讀 6707

今天閱讀了一下cft的商戶支付接入文件,發現對安全支付這塊,包括防止釣魚等其實是有一些低成本的方案的:

1, 提交請求使用https協議,而不是http協議,可以防止資訊在傳輸通道的安全。

2, 重要資訊走後台通知,而不是單獨的前端頁面跳轉。

4,提交引數進行數字簽名,防止資訊被串改;

5,把使用者客戶端的ip也作為引數進行提交,同時,該ip作為數字簽名的一部分,伺服器驗證請求的**ip是否跟引數的一致,為什麼?

想象乙個場景:使用者a把使用者b的請求串拷貝都自己本機上去執行,當然假設a和b的ip 出口不一樣。

6,雙向確認機制保證安全性,如支付後台通知給到商戶乙個notify_id,商戶通過該notify_id從cft介面進行反查支付訂單。

注意:這裡的notify_id是有有效期的,時間為2 min。

7,前端跳轉refer機制驗證,當然有些瀏覽器支援不好導致問題,而refer必須跟接入商戶的網域名稱配置一致。

這裡有個小技巧:在內網測試的時候,對refer驗證不通過的情況,因為refer可能是localhost,這裡cft給到乙個方案是允許金額在100分以下進行支付,方便除錯。

這就是安全性和可用性,方便性的trade - off 問題了。

8,總之,安全問題的策略是從低成本的方案提高惡意使用者的「作案」門檻,同時,需要設定多個多層門檻,實行層層保護,像「洋蔥」一樣,一層剝掉裡面還有一層。

幾個要注意的TIPS

我來澄清下幾個不為人注意的觀點,如果有錯,大家可以補充。1.binlog cache size 手冊上寫的範圍是global級別的。但是 實際上是這樣的 a.當對有事務的引擎來說,他是transaction級別,意思就是說限制每個transaction的buffer。b.對於非事務引擎來說,的確是g...

Python程式設計中的幾個tips

1.在大數字中使用下劃線,增強 可讀性 普通 num1 100000000000 num2 100000000 res num1 num2 print res 使用下劃線 適用於python3以上 num1 1000 0000 0000 num2 1 0000 0000 res num1 num2 ...

git使用的幾個小tips分享

問題3 git如何同步 多個遠端倉庫?本文是我在使用git過程中總結出來的幾個小經驗,能夠解決初學者在使用遠端倉庫,如github gitee等,可能遇到的幾個常見問題。由於本人也在不斷探索中,有新的經驗也會繼續在這裡不定期更新。初學者看到好的專案,一般直接git clone下來。但是對於大型專案,...