WrappedKeyEntry 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
一个 Entry
包含已包装键的 。
[Android.Runtime.Register("android/security/keystore/WrappedKeyEntry", ApiSince=28, DoNotGenerateAcw=true)]
public class WrappedKeyEntry : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.Security.KeyStore.IEntry
[<Android.Runtime.Register("android/security/keystore/WrappedKeyEntry", ApiSince=28, DoNotGenerateAcw=true)>]
type WrappedKeyEntry = class
inherit Object
interface KeyStore.IEntry
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 继承
- 属性
- 实现
注解
一个 Entry
包含已包装键的 。 包装的密钥包含加密密钥数据和说明信息,可用于将密钥材料安全地导入到硬件支持的密钥存储中。
包装的键采用 DER 编码的 ASN.1 格式,由以下架构指定:
KeyDescription ::= SEQUENCE(
keyFormat INTEGER, # Values from KeyFormat enum.
keyParams AuthorizationList,
)
SecureKeyWrapper ::= SEQUENCE(
version INTEGER, # Contains value 0
encryptedTransportKey OCTET_STRING,
initializationVector OCTET_STRING,
keyDescription KeyDescription,
encryptedKey OCTET_STRING,
tag OCTET_STRING
)
<ul><li>keyFormat 是 KeyFormat 枚举中的一个整数,用于定义纯文本键材料的格式。 </li><li>keyParams 是要 (导入密钥的特征,与 generateKey 或 importKey) 一样。 如果安全导入成功,则这些特征必须与密钥关联,就像使用 importKey 不安全地导入密钥材料一样。 有关 AuthorizationList 格式,请参阅 密钥证明 。 </li><li>encryptedTransportKey 是一个 256 位 AES 密钥,XORed 具有掩码密钥,然后在 RSA-OAEP 模式下加密 (SHA-256 摘要,SHA-1 MGF1 摘要) 包装密钥由 wrappingKeyBlob 指定的包装密钥。 </li><li>keyDescription 是上面的 KeyDescription。 </li><li>encryptedKey 是要导入的密钥的密钥材料,格式为 keyFormat,并在 AES-GCM 模式下使用 encryptedEphemeralKey 进行加密,keyDescription 的 DER 编码表示形式作为附加经过身份验证的数据提供。 </li><li>tag 是由 encryptedKey 的 AES-GCM 加密生成的标记。 </li></ul>
导入的包装键将具有KeymasterDefs.KM_ORIGIN_SECURELY_IMPORTED
的 android.security.keystore.WrappedKeyEntry
Java 文档。
此页面的某些部分是基于 创建和共享的工作进行的修改,并根据 署名许可中所述的条款使用。
构造函数
WrappedKeyEntry(Byte[], String, String, IAlgorithmParameterSpec) |
|
WrappedKeyEntry(IntPtr, JniHandleOwnership) |
一个 |
属性
AlgorithmParameterSpec |
一个 |
Class |
返回此 |
Handle |
基础 Android 实例的句柄。 (继承自 Object) |
JniIdentityHashCode |
一个 |
JniPeerMembers |
一个 |
PeerReference |
一个 |
ThresholdClass |
一个 |
ThresholdType |
一个 |
Transformation |
一个 |
WrappingKeyAlias |
一个 |
方法
Clone() |
创建并返回此对象的副本。 (继承自 Object) |
Dispose() |
一个 |
Dispose(Boolean) |
一个 |
Equals(Object) |
指示某个其他对象是否“等于”此对象。 (继承自 Object) |
GetHashCode() |
返回对象的哈希代码值。 (继承自 Object) |
GetWrappedKeyBytes() |
一个 |
JavaFinalize() |
当垃圾回收确定不再引用对象时,由垃圾回收器对对象调用。 (继承自 Object) |
Notify() |
唤醒正在等待此对象的监视器的单个线程。 (继承自 Object) |
NotifyAll() |
唤醒正在等待此对象的监视器的所有线程。 (继承自 Object) |
SetHandle(IntPtr, JniHandleOwnership) |
设置 Handle 属性。 (继承自 Object) |
ToArray<T>() |
一个 |
ToString() |
返回对象的字符串表示形式。 (继承自 Object) |
UnregisterFromRuntime() |
一个 |
Wait() |
导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>。<> (继承自 Object) |
Wait(Int64) |
导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<> (继承自 Object) |
Wait(Int64, Int32) |
导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<> (继承自 Object) |
显式接口实现
IJavaPeerable.Disposed() |
一个 |
IJavaPeerable.DisposeUnlessReferenced() |
一个 |
IJavaPeerable.Finalized() |
一个 |
IJavaPeerable.JniManagedPeerState |
一个 |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
一个 |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
一个 |
IJavaPeerable.SetPeerReference(JniObjectReference) |
一个 |
扩展方法
JavaCast<TResult>(IJavaObject) |
执行 Android 运行时检查的类型转换。 |
JavaCast<TResult>(IJavaObject) |
一个 |
GetJniTypeName(IJavaPeerable) |
一个 |