@KITE AI $KITE #KITE 我第一次在一個平靜的星期天遇到KITE會話混亂的問題。或者說我以爲那是平靜的。圖表是平坦的;聊天是喧鬧的,我們的機器人正在進行它的常規操作。提取數據,進行微小的測試訂單,記錄所有內容。然後發生了一筆交易,我們誰也沒有發送。沒什麼大不了的。儘管如此,它看起來像是新雪上的腳印。我們愣住了。有人偷了機器人的登錄密鑰嗎?交易所出現故障了嗎?大約十分鐘我們反覆辯論。最大的收穫來自一位初級開發人員,他說:“這個密鑰爲什麼能存在幾個星期?”這句話讓我印象深刻。在加密貨幣中,我們把密鑰當作房屋鑰匙。我們隱藏它們並寄希望於此。但希望不是計劃。在KITE堆棧中,會話是機器人用來證明它可以在短時間內行動的薄票。一些人稱之爲短期憑證。它只是一個快速過期的票。如果票存在整整一天,一次泄漏就足夠了。那筆奇怪的交易是警告的火焰。我們運氣很好。下次,運氣可能不會到來。因此,我開始感興趣,有點生氣,並且非常專注。如果我們可以輪換交易者的班次,爲什麼不輪換允許代碼進行交易的東西呢?我們用KITE會話輪換重建了這個過程。想象一下,就像在工作時交換手套。相同的手,新手套。短期通行證是一個快速過期的令牌,通常在兩到五分鐘內過期。令牌只是一個文本字符串,用於驗證你就是你。輪換意味着你根據計劃(即,當你想要時)而不是在需要時交換那個令牌。但你不能馬虎。如果你太早關閉一個活動令牌,你會失去交易,失去填充,並讓市場出現故障。這樣做的乾淨方法是重疊。在前一個會話活動的短時間窗口內,鑄造一個新的KITE會話,例如二十到四十秒。然後停止前一個會話。接下來是範圍。範圍是指令牌可以做什麼的限制。數據讀取令牌不應被允許發送資金。交易一種貨幣對的機器人不應擁有可以與每一種幣互動的票。還有“種子”密鑰用於創建新的會話?那是皇冠上的珠寶。將其存儲在運行機器人的機器之外。將其鎖定在安全位置,或將其鎖定在具有嚴格訪問權限的主機上,以便機器人崩潰不會導致完全清除。現在進入風險部分,這是我作爲市場人士關心的部分。攻擊不是隨機的。它們聚集在一起。大波動日帶來更多的網絡釣魚郵件,更多的虛假插件安裝,以及更多緊急的私信。這是恐懼轉化爲撬棍。短期憑證提供保護,因爲它們使深層漏洞減少爲攻擊者的短期收益。只要你的規則足夠強。如果輪換失敗兩次,機器人應減速並請求幫助。如果同一個會話令牌似乎同時來自兩個不同的網絡路徑,則立即終止它。如果一個令牌每秒調用的多個API超過機器人以前調用的次數,則限制其速率,無論這是否會造成一點干擾。也要注意交接。開發人員意外記錄令牌的案例很多。這種情況時有發生。一個開發者在凌晨2點的腳本中放入“調試”,點擊提交,然後去睡覺。然後一個日誌排水在幾天內保留了通行證。通過KITE會話,你通過減少令牌的生命週期和限制重複使用令牌的難易程度來減少潛在損害。有兩種方法可以做到這一點,包括爲每個調用添加一個隨機數——一個只使用一次的唯一標識符。你還可以將會話鏈接到節點ID,以便令牌僅在一個特定主機上工作。這不是靈丹妙藥,但是一條穩固的繩索。最後,保持一個乾淨的關閉開關。當交易臺注意到奇怪的填充時,你應該能夠通過一個簡單的操作終止所有活動會話。最終,KITE會話輪換感覺像一波,而不是一堵牆。它移動、重置,並防止過去的風險僅僅存在。你無法阻止每一次攻擊。但你可以防止那些傷害最大的緩慢、潛行的攻擊。當市場變得瘋狂時,那一點小優勢將顯得巨大。