#key #flutter #user-management #encryption #sentc #sdk #14

sentc-crypto-std-keys

sentc 0.14.0 之前使用的经典算法的关键实现

1 个不稳定版本

0.14.0 2024年8月2日

#1884密码学

Download history 54/week @ 2024-07-27 45/week @ 2024-08-03 7/week @ 2024-08-10

106 每月下载量
用于 2 crates

自定义许可

175KB
5K SLoC

Sentc

来自 Sentclose

适用于开发者的端到端加密 SDK,具有用户管理功能。

支持以下平台

  • Web 的 JavaScript
  • Dart 与 Flutter
  • 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. 使用 cargo-ndk 在 implementation/dart/sentc_flutter_rust 中构建 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

依赖项

~5.5MB
~105K SLoC