我們如何建立使用 Rust 的 Swift 應用程序

https://dev.to/build-trust/how-we-built-a-swift-app-that-uses-rust-102f

我們團隊昨天推出了 Portals,這是一個使用 Swift 構建的開源 Mac 應用程式。它使用 Ockam Rust 庫,可讓您通過端點到端點加密的 Ockam Portals,從 Mac 上與朋友私下分享 TCP 或 HTTP 服務。共享服務出現在他們的本地主機上!這篇文章將深入探討 SwiftUI macOS 應用程式如何與 Rust 代碼互動。

如果您對 Mac 上的 Portals 感到好奇,您可以在本文中了解更多,並按照以下方式使用 Homebrew 進行安裝:

brew install build-trust/ockam/portals

在此您可以觀看一段 2 分鐘的應用程式操作視頻:

Portals 提供已在 Ockam Rust 庫中實現的功能。我們決定基於 SwiftUI 創建出色的 macOS 本地化體驗。

不幸的是,我們找不到可供使用的即用解決方案來整合 Swift 和 Rust,可以給我們帶來 Rust 的安全性和 SwiftUI 的豐富 macOS 本地化體驗。通過更深入的研究,我們意識到我們可以通過 C-89 來連接這兩者。

Swift 應用程式在編譯時靜態連結到我們的 Rust lib。數據流動簡單:Swift 將 UI 互動作為操作呼叫 C API 發送到 Rust,僅由 Rust 發出更改事件,並且透過回撥通知 Swift 從而導致 UI 更新。

如果您有興趣進一步了解,可以查看 ockam_app_lib crate 中的代碼和 Swift 中的 Portals 應用程式。在 swift 文件夾中的 Makefile 也是探索所有內容如何構建和連接在一起的好地方。

如果您有興趣為應用程序的 Swift 或 Rust 代碼做出貢獻,我們每週都會增加新的“好初次輕度”問題,並樂於幫助新貢獻者。歡迎加入我們的貢獻者 discord 一同參與。

獲取有關 Portals for Mac 的更多資訊

build-trust / ockam

在分佈式應用程序之間組織端點到端點加密,加密身份,互相驗證以及授權策略 – 以龐大的規模。

🚀 Portals for Mac – 這是一個在 Swift 中構建的 macOS 應用程序,使用 Ockam Rust 庫可讓您從 Mac 上私下與任何人共享服務。服務將透過端點到端點加密和互相驗證的 Ockam Portal 安全共享。您的朋友將在他們的本地主機上訪問它!這個應用程式是使用 Ockam 您可以構建的各種應用程式的絕佳範例。

數據流動的信任

Ockam 是一套用於分佈式軟件應用程序的開源編程庫和命令行工具套件,用來組織端點到端點加密,互相驗證,密鑰管理,憑證管理以及授權策略執行 – 以龐大的規模。

現代應用程序是分佈式的,並且擁有龐大的相互連接,這些連接必須信任地交換數據。對於流動數據的信任,應用程序需要數據真實性,完整性和機密性的端點到端點保證。為了實現設計上的私密性和安全性,應用程序必須對每一個信任和訪問決策擁有細粒度控制…。

via DEV Community

December 29, 2023 at 01:05AM

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *