登录 注册 返回主站
F10资料 推荐产品 炒股必读

苹果发布的 CryptoKit 和密码学有关 但与密码货币无关

  • 作者:深渊潜龙
  • 2019-06-06 14:22:08
  • 分享:

撰:潘致雄

  苹果在刚刚举行的全球开发者大会(WWDC2019)中发布了新的“CryptoKit”框架。通过该框架,软件开发者可以在苹果即将发布的新系统iOS13,macOS10.15和tvOS13中,安全和高效的执行特定的加密算法。

  这个消息让币圈的朋友兴奋了一下子。

  众所周知,加密算法是区块链技术得以实现的重要根基,所以这件事在加密货币社区也引起了不小的反响,甚至有夸张的言论说苹果可能会开发加密货币钱包。但事实上,CryptoKit和密码学有关,意味着未来可能会支持越来越多的算法和提供更多的硬件加密方案,但这与密码货币关系不大。

  被币安收购的Trust钱包的创始人Viktor Radchenko在苹果发布CryptoKit后评论:

  离把你的手机变成一个硬件钱包仅有几步之遥了。

  但另一名区块链开发者Ronald Mannak却泼了一盆冷水:

   CryptoKit是一个“密码学”的框架,但并不是“加密货币”的框架。CryptoKit的发布并不能暗示苹果正在改变对加密货币的态度。

  苹果之前已经有了一个密码学框架“CommonCrypto”,但CryptoKit更强大一些。CryptoKit是一个对Swift编程语言更友好的框架,并且包含了更多的哈希算法,比如说众望所归的SHA256。

   CryptoKit的功能并不一定需要“Secure Enclave”协处理器(目前在售的iOS设备和部分Mac支持)。

  与 CommonCrypto框架类似,如果设备未集成Secure Enclave,CryptoKit就会回退并使用苹果设备内置的“钥匙串|Keychain”功能处理加密算法作为替代。

  从目前的开发档中可以到Secure Enclave仅支持secp256r1(也叫prime256)这一种椭圆曲线,并不是比特币、以太坊和其他区块链常用的secp256k1。除非以后硬件升级,否则你的iPhone是不可能变成一台硬件钱包的。

  再者,就算CryptoKit支持区块链常用的secp256k1,那通过CryptoKit生成的私钥也是没办法被Secure Enclave的外部所读取的。你可以(通过CryptoKit)使用这个私钥生成公钥或者执行消息签名,但你永远无法获得私钥本身。所以也就没办法备份这个私钥,这个限制可能会非常不方便钱包的使用场景。

  对 Swift开发者而言CryptoKit是一个很好的新功能,但这并不是加密货币社区所想要的那种翻天覆地的变化。

  在 CryptoKit中,苹果加入了一些常用的加密算法。在开发档中,苹果是这样介绍的:

使用CryptoKit执行常用的加密算法:

计算和对比安全摘要

使用“非对称”加密算法创建和对比数字签名,或执行交换公钥的操作

  除了可以在内存中储存密钥,也可以在“Secure Enclave”中储存并管理私钥

创建“对称”密钥,并执行消息的验证或加密等功能

  相比底层接口,更推荐使用CryptoKit框架。CryptoKit可以替开发者管理指针,自动处理那些可以让App更安全的任务,比如在内存释放期间覆盖敏感数据

  再仔细档中所支持的加密算法,大多是由美国国家标准技术研究所(NIST)发布的通用和标准的加密算法。

包含:

AES-GCM对称加密算法

ChaCha20-Poly1305对称加密算法

HMAC消息认证算法

  第二代安全哈希算法SHA-2系列,包含SHA-512,SHA-384,SHA-256

  非对称加密算法(又称公钥加密算法),包含Curve25519,P-521,P-384,P-256这四种椭圆曲线

  而且开发者可以调用Secure Enclave自带的P-256算法进行硬件加解密。

   Secure Enclave(安全区域)是Apple A7(初次集成在iPhone5S中,用以保证“触控ID”的安全性)或更高版本A系列处理器中集成的协处理器,它为数据保护密钥管理提供所有加密操作,即使在内核遭到入侵的情况下,也可维护数据保护的完整性。而且在Secure Enclave内部生成的密钥使用真正的硬件随机数生成器。

  虽然比特币使用了许多和密码学相关的算法,但最重要的至少会包含这两个:SHA-256,secp256k1。

   SHA-256是第二代安全哈希算法,比特币也在不止一处使用了该算法,比如在计算工作量证明的时候(PoW)

   secp256k1是非对称加密算法中的一种椭圆曲线,比特币的私钥可以通过该算法生成对应的公钥

  非常可惜的是,Secure Enclave支持的P-256的椭圆曲线是secp256r1,而不是比特币采用的secp256k1。这也就意味着无法将现有的苹果设备变成一台硬件钱包。就算还是可以在苹果设备上开发软件钱包,但也是用不到这个CryptoKit框架的,需要开发者自己实现或者使用第三方代码库。

   CryptoKit还处于Beta阶段,而且这也是苹果发布的第一个版本而已,所以这仅仅只是一个开始。

  苹果专门独立出一个框架用以处理密码学相关的算法,是一个值得肯定并会影响深远的决策,未来可能会支持越来越多的算法和提供更多的硬件加密方案。但以现阶段的细节来,对区块链技术的普及还是比较有限的。

  有意思的是,CryptoKit和CryptoKitties(迷恋猫,一个曾经最热门的基于以太坊的收集类游戏)相比只多了最后的ties这四个字母,也许这也是为什么CryptoKit和币圈有关系的理由。

参考介绍Secure Enclave的档:

   https://apple.com/iphone/business/docs/iOSSecurityGuide.pdf

项目专题|Lightning移动钱包全收录

  在闪电网络的生态产品不断迭代演进的过程中,Block123.com整理出目前可见的移动钱包,以便于读者系统地了解现状。

“Lightning移动钱包”闪电专题


温馨提醒:用户在赢家聊吧发表的所有资料、言论等仅代表个人观点,与本网站立场无关,不对您构成任何投资建议。本文中出现任何联系方式与本站无关,谨防个人信息,财产资金安全。
点赞1
发表评论
输入昵称或选择经常@的人
聊吧群聊

添加群

请输入验证信息:

你的加群请求已发送,请等候群主/管理员验证。

时价预警 查看详情>
  • 江恩支撑:4.87
  • 江恩阻力:5.41
  • 时间窗口:2024-04-27

数据来自赢家江恩软件>>

本吧详情
吧 主:

虚位以待

副吧主:

暂无

会 员:

8人关注了该股票

功 能:
知识问答 查看详情>