IKey 介面
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
金鑰介面是所有金鑰的頂層介面。
[Android.Runtime.Register("java/security/Key", "", "Java.Security.IKeyInvoker")]
public interface IKey : IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable
[<Android.Runtime.Register("java/security/Key", "", "Java.Security.IKeyInvoker")>]
type IKey = interface
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 衍生
- 屬性
- 實作
備註
金鑰介面是所有金鑰的頂層介面。 它定義了所有關鍵物件共享的功能。 所有按鍵都有三個特性:
<UL>
<LI>一個演算法
這是該金鑰的關鍵演算法。 金鑰演算法通常是加密或非對稱運算演算法(如 DSA 或 RSA),可與這些演算法及相關演算法(如 MD5 搭配 RSA、SHA-1 搭配 RSA、Raw DSA 等)運作。金鑰演算法名稱即透過該 #getAlgorithm() getAlgorithm 方法取得。
<LI>編碼形式
這是一種外部編碼的形式,用於在 Java 虛擬機外需要標準金鑰表示時使用,例如將金鑰傳送給他人時。 金鑰依標準格式編碼(例如 X.509 SubjectPublicKeyInfo 或 PKCS#8),並以此 #getEncoded() getEncoded 方法回傳。 注意:ASN.1 類型的 SubjectPublicKeyInfo 語法定義如下:
SubjectPublicKeyInfo ::= SEQUENCE {
algorithm AlgorithmIdentifier,
subjectPublicKey BIT STRING }
AlgorithmIdentifier ::= SEQUENCE {
algorithm OBJECT IDENTIFIER,
parameters ANY DEFINED BY algorithm OPTIONAL }
欲了解更多資訊,請參閱 RFC 5280:Internet X.509 公鑰基礎設施憑證與 CRL 設定檔。
<LI>A 格式
這是編碼金鑰格式的名稱。 它會由方法回傳 #getFormat() getFormat 。
</UL>
金鑰通常透過金鑰產生器、憑證、金鑰儲存或其他用於管理金鑰的類別取得。 金鑰也可透過金鑰工廠(參見 KeyFactory)從金鑰規格(底層金鑰材料的透明表示)中取得。
一個 Key 應該使用 KeyRep 作為其序列化的表示。 請注意,序列化金鑰可能包含敏感資訊,不應在不受信任的環境中外洩。 更多資訊請參閱序列化規範 的安全附錄 。
在 1.1 版本中加入。
本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。
欄位
| 名稱 | Description |
|---|---|
| SerialVersionUID |
類別指紋設定為表示序列化相容性,與先前版本的類別。 |
屬性
| 名稱 | Description |
|---|---|
| Algorithm |
回傳此鍵的演算法名稱。 |
| Format |
回傳用於編碼此金鑰的格式名稱,或 |
| Handle |
取得底層 Android 物件的 JNI 值。 (繼承來源 IJavaObject) |
| JniIdentityHashCode |
回傳包裹實例的 |
| JniManagedPeerState |
管理貴族的狀況。 (繼承來源 IJavaPeerable) |
| JniObjectReferenceControlBlock |
金鑰介面是所有金鑰的頂層介面。 (繼承來源 IJavaPeerable) |
| JniPeerMembers |
成員存取與召喚支援。 (繼承來源 IJavaPeerable) |
| PeerReference |
回傳JniObjectReference包裹後的 Java 物件實例。 (繼承來源 IJavaPeerable) |
方法
| 名稱 | Description |
|---|---|
| Disposed() |
當實例被處理後才被召喚。 (繼承來源 IJavaPeerable) |
| DisposeUnlessReferenced() |
如果沒有未解決的參考資料,則 |
| Finalized() |
當實例完成後才會被通知。 (繼承來源 IJavaPeerable) |
| GetEncoded() |
回傳金鑰的主要編碼格式,若該金鑰不支援編碼則回傳為空。 |
| SetJniIdentityHashCode(Int32) |
將回傳的值設為 |
| SetJniManagedPeerState(JniManagedPeerStates) |
金鑰介面是所有金鑰的頂層介面。 (繼承來源 IJavaPeerable) |
| SetPeerReference(JniObjectReference) |
將回傳的值設為 |
| UnregisterFromRuntime() |
取消註冊此實例,讓執行時不會在未來 Java.Interop.JniRuntime+JniValueManager.PeekValue 的呼叫中回傳該實例。 (繼承來源 IJavaPeerable) |
擴充方法
| 名稱 | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
取得實例 |
| JavaAs<TResult>(IJavaPeerable) |
試著強制 |
| JavaCast<TResult>(IJavaObject) |
執行 Android 執行時檢查型別轉換。 |
| JavaCast<TResult>(IJavaObject) |
金鑰介面是所有金鑰的頂層介面。 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
試著強制 |