1 个不稳定版本

0.14.0 2024年8月3日

#925 in 加密

Download history 95/week @ 2024-07-29 21/week @ 2024-08-05 8/week @ 2024-08-12

每月 124 次下载
用于 sentc-crypto

自定义许可证

205KB
5.5K SLoC

Sentc

来自 Sentclose

一个端到端加密 SDK,适用于需要用户管理的开发者。

支持以下语言:

  • Web 的 JavaScript
  • 带有 Flutter 的 Dart
  • Rust

包含:

  • 用户管理:注册、登录、身份验证、授权
  • 群组管理:邀请或添加成员、角色管理、群组加密
  • 浏览器和本地处理大文件

从源码构建

要求

  • Rust MRV 1.75.0
  • 对于 Flutter
    • flutter_rust_bridge_codegen (cargo install flutter_rust_bridge_codegen)
    • cargo-ndk
    • llvm
    • flutter ffi (dart pub global activate ffigen)
  • 对于 JavaScript
    • wasm-pack
    • node js 最小版本 14 lts

为 Rust 构建

在当前工作区中构建 Rust

cargo build --release

使用 wasm pack 构建 JavaScript (wasm)

  1. implementation/js/sentc_wasm 中使用 wasm pack 构建
cd ./implementation/js/sentc_wasm
wasm-pack build --target web 
  1. implementation/js/sentc_wasm 中构建 TypeScript 代码
cd ./implementation/js/sentc_wasm
npm run build

构建 Flutter

使用 flutter rust bridge 和 cargo-ndk 构建

  1. 在当前工作区中生成 Flutter 代码
flutter_rust_bridge_codegen --rust-input implementation/dart/sentc_flutter_rust/src/sentc.rs --dart-output implementation/dart/sentc/lib/generated.dart --llvm-path <path-to-your-llvm>
  1. implementation/dart/sentc_flutter_rust 中使用 cargo-ndk 构建 Android 代码
cd ./implementation/dart/sentc_flutter_rust
cargo ndk -t armeabi-v7a -t arm64-v8a -t x86 -t x86_64 -o ../sentc/android/src/main/jniLibs build --release

依赖项

~30MB
~653K SLoC