[C#] 如何判斷 TRON 錢包是否被標記為可疑?

2025-02-21

在 TRON 區塊鏈的 Tronscan 網站上,有些錢包地址會被標記為 「Risk Warning」,這通常代表該地址可能涉及詐騙、垃圾交易或其他問題。
但如果我們要 自動化檢測,就需要透過 Tronscan API 來判斷某個 TRON 錢包是否被標記為可疑。
就是在網站上會出現 [Risk Warning] This account has been reported to be a phishing account by multiple users. Please be cautious!



今天我們就來寫一個 C# 自動檢測 TRON 錢包風險 的小工具,其實 tronscan 整個網站都是大量透過 AJAX 去取得資料
所以我透過 F12 找到他是來自於這網址
這裡可以找到,其中有一個 redTag 的屬性可抓到有沒有問題 

// Safe Address Console.WriteLine("Check Normal Address - TS2m5A15VDnzrJxWyz3njexzKQPzshmUBq"); Console.WriteLine("Result:" + CheckTRC20WalletInIssue("TS2m5A15VDnzrJxWyz3njexzKQPzshmUBq")); // Issue Address Console.WriteLine("Check Normal Address - TKyPzHiXW4Zms4txUxfWjXBidGzZpiCchn"); Console.WriteLine("Result:" + CheckTRC20WalletInIssue("TKyPzHiXW4Zms4txUxfWjXBidGzZpiCchn")); /// <summary> /// 判斷 tronscan 上面某錢包是不是被標示有問題 /// </summary> /// <param name="walletAddress">檢測地址</param> /// <returns>空的才是正常其他都不正常</returns> static string CheckTRC20WalletInIssue(string walletAddress) { string apiUrl = $"https://apilist.tronscanapi.com/api/multiple/chain/query?address={walletAddress}"; var client = new RestClient(apiUrl); var request = new RestRequest("", Method.Get); request.AddHeader("accept", "application/json"); var response = client.Execute(request); if (response.IsSuccessful) { var resObj = JsonConvert.DeserializeObject<WalletIssueResponse>(response.Content); if (resObj == null) { return "response parse error"; } //只有空的才是正常的 if (string.IsNullOrEmpty(resObj.redTag)) { return ""; } else { return resObj.redTag; } } else { return "query error"; } } public class WalletIssueResponse { public bool isToken { get; set; } public bool isContract { get; set; } public string tronLogo { get; set; } public string tronAddress { get; set; } public List<object> multipleChain { get; set; } /// <summary> /// 如果這個值有東西就是代表 "可能" 有問題 /// </summary> public string redTag { get; set; } }

result:


這樣就可以簡單寫一個小工具,這邊好像是透過用戶去回報可能有問題的錢包,這樣可以初步篩選掉有問題的錢包



當麻許的碎念筆記 2014 | Donma Hsu Design.