ශ්‍රී ලංකාවේ නවතම තාක්ෂණික පුවත් 2026-07-25, Saturday
💻 ක්‍රමලේඛනය · 🕒 කියවීමට විනාඩි 2 · 👁 1

Rust භාවිතයෙන් ඉහළ සමාන්තරතාවය සහිත OSINT එන්ජින් නිර්මාණය – සොකට් පිරීම් නොවෙයි!

Rust භාවිතයෙන් ඉහළ සමාන්තරතාවය සහිත OSINT එන්ජින් නිර්මාණය – සොකට් පිරීම් නොවෙයි!

ඊයේ දිනවල, විශ්‍රාමික තොරතුරු (OSINT) එකතුව සඳහා නවතම CLI මෙවලමක් වන Reconx, Rust භාෂාවෙන් පදනම් කරගෙන නිර්මාණය කරමින් සිටී. පෙනී සිටින පරිසරයේ විවිධ Go සහ Python මෙවලම් එකතුවට පිටුපස, එක් සංකල්පයක්, සියලුම API එකතුවක් එකවර පවත්වා ගැනීමේ අභියෝගයක් තිබුණි.

ප්‍රශ්නය – Reconx හි 35කට අධික OSINT එකතුකරුවන් සෑම වරක්ම නව HTTP client එකක් සකස් කරමින්, Tokio async runtime එකේ එම client ගණන ඉක්මනින් අතුරුදන් වීමේ (ephemeral port exhaustion) ගැටළුවට පත් විය. API රේට් ලිමිට් හෝ සර්වර් සම්බන්ධතා බිඳ වැටීම, OS‑යේ file descriptor අවසන් වීම යන අතුරුපල මතුවුණි.

මෙම ගැටළුව විසඳීමට කේන්ද්‍රගත සම්බන්ධතා පූල් එක (centralized connection pooling) ගොඩනැගීමේ තීරණය ගත්තා. src/http.rs ෆයිලය තුළ, reqwest::Client එකක් Arc (Atomic Reference Count) මගින් බෙදාගන්නා ආකාරයට සකස් කර, සියලු එකතුකරුවන් ඒ client එක මගින් ඉල්ලීම් යොමු කරන ලෙස වෙනස් කරන ලදී. මෙහිදී ප්‍රොක්සි (HTTP/SOCKS5) සහ කාල සීමා (timeout) සැකසීමේ විකල්පද එක් කර ඇත.

ඉල්ලීම් කළමනාකරණය සඳහා request_with_retry async function එක හඳුන්වා දී, API රේට් ලිමිට් (429) හා 5xx සේවා දෝෂයන්ට exponential backoff (500ms → 1s → 2s → 4s) යෙදුම් කරයි. අවශ්‍ය නම් ApiRateLimiter මගින් එක් API එකකට මිනිත්තුවකට ඉල්ලීම් සංඛ්‍යාව සීමා කරයි.

මෙම සැලැස්මෙන් ලැබුණු ප්‍රධාන ලාභ:

  • TCP සම්බන්ධතා නැවත භාවිතය – එකම සොකට් එකක් මත අනුගමනය වන ඉල්ලීම් නැවත භාවිතා කරයි, පෝට් අවසන් වීමක් නොමැතිව.
  • ගෝලීය ප්‍රොක්සි රූට් කිරීම – එක් client එකට ප්‍රොක්සි සැකසීමෙන් සියලු OSINT මොඩියුලයම ඒකකයේ ප්‍රොක්සි පිරිවැය ලබා ගනී.

තවත් වැදගත් සංවර්ධනයක් ලෙස, diff_engine.rs හි මතකය තුළ state diffing යන්ත්‍රයක් නිර්මාණය කර, පසුගිය ස්කෑන් එකේ දත්ත හා වත්මන් දත්ත අතර වෙනස්කම් හඳුනාගත හැකිය. මෙය පරිශීලකයන්ට එකම කාලයකදී වෙනස්කම් පරීක්ෂා කිරීමේ කාර්යක්ෂමතාව වැඩි කරයි.

ශ්‍රී ලංකාවට ඇති වැදගත්කම

ශ්‍රී ලංකාවේ තාක්ෂණ විද්‍යාත්මක පරිසරය තවමත් open‑source සහ cyber‑security ක්ෂේත්‍රවල නවෝත්පාදන අවශ්‍යතාවය අධිකයි. Reconx වැනි මෙවලමක්, රුස්ට් භාවිතයෙන් ඉහල සමාන්තරතාවයක් ලබා දීම, දේශීය සංවර්ධකයින්ට:

  • අවංක, වේගවත්, සම්පත් සුරක්ෂිත API එකතුකාරකයක් නිර්මාණය කිරීමේ උදාහරණයක්.
  • socket exhaustion වැනි නවීන ජාල ගැටළු හඳුනාගැනීම සහ ඒවා විසඳීමේ පළපුරුද්ද.
  • OSINT, bug bounty, penetration testing වැනි ක්ෂේත්‍රවල දත්ත සංවිධානය කිරීමේ කාර්යක්ෂමතා වැඩි කිරීම.

මෙම තාක්ෂණය ශ්‍රී ලාංකීය ව්‍යාපාරික ආයතනවල සයිබර් ආරක්ෂණය ශක්තිමත් කිරීමේදී, ප්‍රතිපත්ති සහ නීතිමය රෙගුලාසි වලට අනුකූලව, තොරතුරු එකතු කිරීමේ ක්‍රියාවලි සරල කරයි.

අවසානයේ, Reconx හි නවීන රුස්ට්-කේන්ද්‍රිත ව්‍යුහය, සමාජිකයින්ට ඉහළ ප්‍රදර්ශනීය OSINT මෙවලමක් ලබා දීමට පියවරක්. මෙවැනි ප්‍රොජෙක්ට්ස්, ශ්‍රී ලංකාවේ තාක්ෂණික දක්ෂතා ඉහළ දැමීමට මඟ පෙන්වයි.

💡 ඔබේ පරිගණක වැඩ සදහා Rust භාවිතය අදම පරීක්ෂා කරන්න!
මූලාශ්‍රය මෙම ලිපිය AI මගින් රචිත මුල් සාරාංශයකි. සම්පූර්ණ වාර්තාව කියවන්න:
Dev.to ↗
#Rust #OSINT #Concurrency #Networking #OpenSource #SriLankaTech