VirgilSDKKeyknox 0.4.3

VirgilSDKKeyknox 0.4.3

Sergey SeroshtanEvgenySanjoDeundiakOleksandr Deundiak 维护。



 
依赖项
VirgilSDK~> 5.7
VirgilCrypto>= 5.0.0-alpha5
 

  • Virgil Security

Virgil KeyKnox Objective-C/Swift SDK

Build Status CocoaPods Compatible Carthage compatible Platform GitHub license

简介 | SDK 特性 | 安装和配置 SDK | 文档 | 支持

简介

Virgil Security 提供了一个 SDK,允许您与 Virgil Keyknox 服务进行通信。Virgil Keyknox 服务允许用户以加密(使用端到端加密)的方式存储他们的敏感数据(如私钥),以便在不同设备之间使用和共享。

SDK 特性

  • 使用 Virgil Crypto 库
  • 使用 Virgil SDK
  • 将加密的敏感数据上传到 Virgil Keyknox 服务
  • 从 Virgil Keyknox 服务下载数据
  • 更新和同步数据

安装和配置SDK

安装

Virgil Keyknox SDK以一系列框架的形式提供。这些框架通过Carthage和CocoaPods进行分发。此外,在本指南中,您还可以找到一个名为VirgilCrypto的包(Virgil Crypto库),用于SDK执行加密操作。

框架适用于

  • iOS 9.0+
  • macOS 10.11+
  • tvOS 9.0+
  • watchOS 2.0+

COCOAPODS

CocoaPods 是Cocoa项目的依赖管理器。您可以使用以下命令安装它

$ gem install cocoapods

要使用CocoaPods将Virgil Keyknox集成到您的Xcode项目中,请在您的 Podfile 中指定它

target '<Your Target Name>' do
  use_frameworks!

  pod 'VirgilSDKKeyknox', '~> 0.4.2'
end

然后,运行以下命令

$ pod install

Carthage

Carthage 是一个分散式的依赖管理器,它构建您的依赖关系并提供二进制框架。

您可以使用以下命令通过Homebrew安装Carthage

$ brew update
$ brew install carthage

要使用Carthage将Virgil Keyknox集成到您的Xcode项目中,请在自己的项目根文件夹中创建一个名为 Cartfile 的空文件,并添加以下行到您的 Cartfile

github "VirgilSecurity/virgil-keyknox-x" ~> 0.4.2

链接到预构建的二进制文件

要将预构建框架链接到您的应用中,运行以下命令

$ carthage update

这将为每个依赖项构建或从github Releases下载预编译的框架。

针对 iOS/tvOS/watchOS 的构建

在您的应用程序目标的“通用”设置标签页中,“已链接框架和库”部分,从您的项目文件夹中 Carthage/Build 文件夹添加以下框架

  • VirgilSDKKeyknox
  • VirgilSDK
  • VirgilCryptoAPI
  • VirgilCrypto
  • VirgilCryptoFoundation
  • VSCCommon
  • VSCFoundation

在您的应用程序目标的“构建阶段”设置标签页中,点击“+”图标并选择“新建运行脚本阶段”。在脚本区域下 specify your shell(例如:/bin/sh),将以下内容添加到脚本区域

/usr/local/bin/carthage copy-frameworks

在“输入文件”下添加您要使用的框架路径,例如

$(SRCROOT)/Carthage/Build/iOS/VirgilSDKKeyknox.framework
$(SRCROOT)/Carthage/Build/iOS/VirgilSDK.framework
$(SRCROOT)/Carthage/Build/iOS/VirgilCryptoAPI.framework
$(SRCROOT)/Carthage/Build/iOS/VirgilCrypto.framework
$(SRCROOT)/Carthage/Build/iOS/VirgilCryptoFoundation.framework
$(SRCROOT)/Carthage/Build/iOS/VSCCommon.framework
$(SRCROOT)/Carthage/Build/iOS/VSCFoundation.framework
针对 macOS 的构建

在您的应用程序目标的“通用”设置标签页中,“已嵌入的二进制文件”部分,将磁盘上的 Carthage/Build 文件夹中的以下框架拖放到桌面

  • VirgilSDKKeyknox
  • VirgilSDK
  • VirgilCryptoAPI
  • VirgilCrypto
  • VirgilCryptoFoundation
  • VSCCommon
  • VSCFoundation

此外,您还需要复制 macOS 上的调试符号以进行调试和崩溃报告。

在您的应用程序目标的“构建阶段”设置标签页中,点击“+”图标并选择“新建复制文件阶段”。点击“目标位置”下拉菜单并选择“产品目录”。为每个框架拖放相应的 dSYM 文件。

配置 SDK

要开始使用 Virgil Keyknox SDK,您需要初始化 SyncKeyStorage 类。此类负责 Keychain 与 Keyknox 云之间的同步。为了初始化 SyncKeyStorage 类,您需要以下值

  • accessTokenProvider
  • 应访问数据的所有设备/用户的公钥
  • 当前设备/用户的私钥
  • 用户的身份(设备可以有不同用户)
import VirgilSDK
import VirgilSDKKeyknox

// Setup Access Token provider to provide access token for Virgil services
// Check https://github.com/VirgilSecurity/virgil-sdk-x
let accessTokenProvider = ""

// Download public keys of users that should have access to data from Virgil Cards service
// Check https://github.com/VirgilSecurity/virgil-sdk-x
let publicKeys = []

// Load private key from Keychain
let privateKey = ""

let syncKeyStorage = SyncKeyStorage(identity: "Alice",
                                    accessTokenProvider: accessTokenProvider,
                                    publicKeys: publicKeys, privateKey: privateKey)

文档

Virgil Security 具有一套强大的 API,以下文档可以帮助您今日开始。

许可协议

本库采用3-clause BSD License发布。

支持

我们的开发者支持团队随时为您提供帮助。更多详情请访问我们的帮助中心

您可以在Twitter上找到我们,或者通过[email protected]给我们发送邮件。

此外,您还可以在Slack上从我们的支持团队获得额外帮助。