问题标签 [security.framework]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 从私有 SecKeyRef 获取公钥
给定从 RSA 私钥SecKeyRef
加载的使用,有没有办法仅为公钥组件获取或创建一个?在 OpenSSL 中,这可以通过将模数和公共指数复制到新结构来完成,但它是不透明的,我一直无法找到执行此操作的函数。SecItemImport
SecKeyRef
SecKeyRef
ios - 添加第二个证书时,SecItemAdd 返回 -25299
尝试添加第二个证书时失败并显示 -25299(该项目已存在。)。他们有不同的 kSecAttrLabel。在尝试删除之前,它也会失败,代码为 -25300(找不到该项目。)。
也许有人知道这段代码有什么问题?我错过了一些属性吗?
objective-c - 使用 SecTransform API(或其他系统 API)在 OS X 上解密 RSA 公钥
我正在尝试使用安全转换 API 替换我对 OpenSSL 的使用,它很久以前就被弃用并已从 10.11 SDK 中删除。我使用 OpenSSL 只是为了验证许可证密钥。我遇到的问题是许可证密钥是使用 OpenSSL 的rsa_private_encrypt()
功能生成的(服务器端),而不是(可能更合适)rsa_sign()
。在当前的 OpenSSL 代码中,我使用rsa_public_decrypt()
如下方式验证它们:
不幸的是,我无法使用 SecTransform API 来复制它。我有以下内容:
调用SecTransformExecute()
失败并出现CSSMERR_CSP_INVALID_KEY_CLASS
错误。
我是否遗漏了什么,或者RSA_public_decrypt()
Security.framework 中没有与 OpenSSL 等效的东西?也许SecVerifyTransform
可以使用 a (我也无法让它工作,但 OpenSSL 也是如此RSA_sign()
)。如果它能让我做到这一点,我当然愿意使用另一个系统 API(例如 CDSA/CSSM)。
不幸的是,由于此代码需要验证现有的许可证代码,我不能简单地将我的许可证生成代码更改为使用RSA_sign()
或类似代码。
ios - 如何在没有 TouchID 和密码的情况下使用 Secure Enclave?
为了生成密钥对,我使用了 Secure Enclave (kSecAttrTokenIDSecureEnclave)。当尝试访问生成的密钥对时,iOS 系统会询问 TouchID。下面是我如何生成和访问密钥对的代码快照。
这里有没有一种设置属性/属性的方法,Secure Enclave 功能可以在没有 TouchID 和密码的情况下使用?
生成密钥对:
访问密钥对:
ios - 在swift下,是否需要手动导入安全框架才能使用keychain?
我想在我的应用程序中使用 swift 下的 iOS 钥匙串保存登录凭据。我下载了SwiftKeychainWrapper并观看了一些youtube 教程。在这些之后,我将 KeychainWrapper.swift 文件复制到我的项目中,并开始使用提供的函数来存储一些字符串。一切正常,但现在我想知道是否需要我没有手动导入的安全框架。这是我仍然需要迅速做的事情吗?我可以 Cmd+单击包装器中的那些 kSec 密钥,它会将我发送到安全框架 - 这是否意味着它现在“内置”到 swift 中或类似的东西?
如果我确实需要那个框架,为什么它现在“没有”它就可以工作?我的字符串是否已保存但未加密或类似的东西?
我还检查了 1-2 个其他关于钥匙串的 github 项目,比如Locksmith,这似乎也没有让我手动导入该框架。
干杯
ios - 从 keychainItemWrapper iOS 中检索密码和用户名
我正在尝试使用KeychainItemWrapper.h
andkeychainWrapperItemWrapper.m
来存储用户凭据,例如用户名和密码。我目前在用户第一次登录时存储如下:
这会将值存储在钥匙串中。但是下次用户打开应用程序时,我想再次检索用户名和密码。但是,当我调用以下命令时:
似乎我得到了奇怪的加密密钥,例如:<6f78696c 69676874 2d746573 74>
有没有办法检索用户名和密码的原始字符串?我以前从未使用过钥匙串,任何帮助将不胜感激!
swift - xctest 中的 SecKeyGeneratePair
我在可可触摸框架中使用 SecKeyGeneratePair 生成 publicKey 和 privateKey。
但是当我尝试测试该方法时,它总是返回
操作系统状态 -50
我什至无法添加钥匙串共享权利,因为它在框架中不支持。
swift - 如何在 macOS 上使用 Security.framework 解密数据?
我需要使用 RSApublic
密钥解密数据macOS
,通过谷歌搜索我知道我们可以使用方法SecKeyCreateDecryptedData
来Security.framework
实现这一点,但这会导致两个问题:
SecKeyCreateDecryptedData
接受private
密钥来执行解密,但在我的情况下,数据在服务器端用私钥加密,需要public
在客户端用密钥解密。我尝试
SecKey
从 RSApublic
密钥字符串创建,但失败了。
我的代码:
使用 方法Kazunori Takaishi
,我测试了所有算法,都不支持: