資料介紹
軟件簡介
Swift Crypto 衍生自 Apple CryptoKit 加密框架,是一個跨平臺加密解決方案,可用于 Swift 支持的所有平臺。
Crypto?將?Apple CryptoKit?優(yōu)秀的 API 帶到了受眾更廣的 Swift 社區(qū),無論應(yīng)用部署在哪個平臺上,Swift 開發(fā)者都可以訪問這些 API,以進(jìn)行通用的加密操作。也就意味著,在所有平臺上 Swift 開發(fā)者可以輕松通過以下代碼獲取所有 CryptoKit API:
import Crypto
Swift Crypto 加密庫由兩部分組成,在 Apple 平臺上,Swift Crypto 依循 Apple CryptoKit 加密框架,提供 Apple CryptoKit 的 API,而在其他平臺上,Swift Crypto 則使用了以 Boring SSL 函數(shù)庫為基礎(chǔ)構(gòu)建的全新實(shí)現(xiàn),目標(biāo)是提供一個可在所有平臺輕松訪問的簡單易用的安全加密 API,讓開發(fā)者用于編寫跨平臺加密代碼。
示例
通過 Swift Crypto,開發(fā)者可輕松實(shí)現(xiàn)許多強(qiáng)大的功能。例如,隱藏您的數(shù)據(jù)并阻止攻擊者嘗試使用 AES GCM 對其進(jìn)行修改的安全身份驗(yàn)證加密:
func encrypt(input: [UInt8]) throws -> Data {
// Don't forget to save your key somewhere!
let key = SymmetricKey(size: .bits256)
let sealedBox = try AES.GCM.seal(input, using: key)
return sealedBox.combined!
}
此代碼避免了我們自己構(gòu)建加密方案時可能遇到的眾多陷阱。例如,它確保你使用的是隨機(jī)選擇的?Nonce 數(shù)值,并且對密文進(jìn)行身份驗(yàn)證。兩者都可以防止對系統(tǒng)的各種攻擊,但這些功能在許多其他加密庫中不一定會自動應(yīng)用。
同樣,生成消息身份驗(yàn)證代碼也很簡單,我們可以使用它來確保數(shù)據(jù)不被篡改:
func authenticate(message: [UInt8]) -> [UInt8] {
// Again, don't forget to save your keys!
let key = SymmetricKey(size: .bits256)
return Array(HMAC.authenticationCode(for: message, using: key))
}
Swift Crypto 甚至涵蓋了執(zhí)行橢圓曲線密鑰交換的相當(dāng)復(fù)雜的邏輯。例如,使用 Curve25519 生成共享密鑰:
func curve25519SharedSecret(myKey: Curve25519.KeyAgreement.PrivateKey, theirKeyBytes: [UInt8]) throws -> SharedSecret {
let theirKey = try Curve25519.KeyAgreement.PublicKey(rawRepresentation: theirKeyBytes)
return try myKey.sharedSecretFromKeyAgreement(with: theirKey)
}
- Tor-Crypto-Wallet開源加密貨幣錢包
- wickr-crypto-c Wickr安全加密庫
- Crypto算法庫使用技巧 —— 基于STM32 AES GCM應(yīng)用提示
- 基于可搜索加密機(jī)制的數(shù)據(jù)庫加密方案綜述 4次下載
- 降低物聯(lián)網(wǎng)跨平臺設(shè)計復(fù)雜性的十個辦法資料下載
- wxWidgets跨平臺GUI開發(fā)編程 7次下載
- 面向云數(shù)據(jù)庫的屬性基加密和查詢轉(zhuǎn)換中間件 5次下載
- IOS面試寶典之Swift 0次下載
- 跨域的代理重加密交友隱私保護(hù)方案 0次下載
- 多條件型非對稱跨加密系統(tǒng)的代理重加密方案 0次下載
- 一種基于云計算平臺的數(shù)據(jù)庫加密保護(hù)系統(tǒng) 16次下載
- 基于PowerNT的跨平臺遠(yuǎn)程數(shù)據(jù)庫訪問技術(shù)研究 0次下載
- SWIFT設(shè)計軟件工具
- 基于IBE的跨網(wǎng)絡(luò)電子公文安全交換平臺
- 基于B/S結(jié)構(gòu)的數(shù)據(jù)庫加密設(shè)計
- 分享一個跨平臺通用型GUI框架 476次閱讀
- 用C語言實(shí)現(xiàn)的跨平臺開發(fā)庫TBOX 1426次閱讀
- OpenCV圖像處理庫的跨平臺:Emgu CV 4084次閱讀
- Splashtop跨平臺遠(yuǎn)程訪問的優(yōu)勢 496次閱讀
- MySQL數(shù)據(jù)庫免安裝版配置教程 1608次閱讀
- 開源數(shù)據(jù)庫管理工具Beekeeper Studio簡介 3761次閱讀
- 跨平臺構(gòu)建工具xmake簡介與安裝使用說明 6120次閱讀
- 基于Digipcba平臺創(chuàng)建共享元器件庫 3291次閱讀
- libcurl等第三方庫的通用編譯方法 2038次閱讀
- 如何利用geth crypto模塊進(jìn)行密鑰加載測試 1011次閱讀
- 如何快速構(gòu)建一個移動跨平臺視頻通話應(yīng)用 2896次閱讀
- Python運(yùn)維中20個常用的庫和模塊盤點(diǎn) 2173次閱讀
- 一文讀懂boost庫的概念和安裝方式 8016次閱讀
- Go語言在多線程領(lǐng)域編程、跨異構(gòu)平臺及編程難易程度的優(yōu)勢 6310次閱讀
- 基于ASF開發(fā)的crypto加密開發(fā)板程序 1291次閱讀
下載排行
本周
- 1人形機(jī)器人電機(jī)驅(qū)動和傳感報告
- 4.27 MB | 9次下載 | 免費(fèi)
- 2Altium Designer元件庫
- 17.11 MB | 6次下載 | 免費(fèi)
- 324V2A開關(guān)電源PCB資料分享
- 0.23 MB | 4次下載 | 1 積分
- 4GD100PIX120C6SNA規(guī)格書
- 0.98 MB | 3次下載 | 免費(fèi)
- 5Multisim模擬電路仿真教程
- 1.93 MB | 1次下載 | 3 積分
- 6BK7258英文規(guī)格書
- 1.67 MB | 1次下載 | 免費(fèi)
- 7RA4L1硬件手冊
- 21.89 MB | 1次下載 | 免費(fèi)
- 8RA4L1_SENSOR-V1原理圖
- 754.36 KB | 1次下載 | 免費(fèi)
本月
- 1晶體三極管的電流放大作用詳細(xì)說明
- 0.77 MB | 32次下載 | 2 積分
- 2雙極型三極管放大電路的三種基本組態(tài)的學(xué)習(xí)課件免費(fèi)下載
- 4.03 MB | 25次下載 | 1 積分
- 3AIWA HS-J303 MKⅡ維修手冊
- 22.47 MB | 24次下載 | 10 積分
- 4九陽豆?jié){機(jī)高清原理圖
- 2.47 MB | 23次下載 | 1 積分
- 5多級放大電路的學(xué)習(xí)課件免費(fèi)下載
- 1.81 MB | 21次下載 | 2 積分
- 6AIWA HS-J202/HS-J202M/HS-J800維修手冊
- 13.60 MB | 16次下載 | 10 積分
- 7東芝彩色電視機(jī)29SF6C維修說明書
- 4.86 MB | 9次下載 | 1 積分
- 8人形機(jī)器人電機(jī)驅(qū)動和傳感報告
- 4.27 MB | 9次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935127次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420063次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191382次下載 | 10 積分
- 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183338次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81586次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73814次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
評論