KeyGenerator Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Этот класс предоставляет функциональные возможности генератора секретных (симметричного) ключей.
[Android.Runtime.Register("javax/crypto/KeyGenerator", DoNotGenerateAcw=true)]
public class KeyGenerator : Java.Lang.Object
[<Android.Runtime.Register("javax/crypto/KeyGenerator", DoNotGenerateAcw=true)>]
type KeyGenerator = class
inherit Object
- Наследование
- Атрибуты
Комментарии
Этот класс предоставляет функциональные возможности генератора секретных (симметричного) ключей.
Генераторы ключей создаются с помощью одного из getInstance
методов класса этого класса.
Объекты KeyGenerator можно использовать повторно, т. е. после создания ключа один и тот же объект KeyGenerator можно повторно использовать для создания дополнительных ключей.
Существует два способа создания ключа: независимо от алгоритма и способом, зависящим от алгоритма. Единственное различие между ними заключается в инициализации объекта :
<ul><li><b>Алгоритмонезависимая инициализация</b>
Все генераторы ключей разделяют концепции keyize и источника случайности. В этом классе KeyGenerator есть #init(int, java.security.SecureRandom) init
метод, который принимает эти два универсально общих типа аргументов. Существует также один, который принимает только keysize
аргумент и использует реализацию SecureRandom установленного поставщика с наивысшим приоритетом в качестве источника случайности (или предоставленный системой источник случайности, если ни один из установленных поставщиков не предоставляет реализацию SecureRandom), и тот, который принимает только источник случайности.
Так как при вызове указанных выше алгоритмьных init
методов другие параметры не указываются, поставщик должен определить, что делать с параметрами алгоритма (если таковые имеются), связанными с каждым из ключей.
<li><b>Инициализация для конкретного алгоритма</b>
Для ситуаций, когда набор параметров, зависящих от алгоритма, уже существует, существует два #init(java.security.spec.AlgorithmParameterSpec) init
метода с аргументом AlgorithmParameterSpec
. Один из них также имеет SecureRandom
аргумент, а другой использует реализацию SecureRandom установленного поставщика с наивысшим приоритетом в качестве источника случайности (или предоставленного системой источника случайности, если ни один из установленных поставщиков не предоставляет реализацию SecureRandom). </ul>
Если клиент явно не инициализирует KeyGenerator (с помощью вызова init
метода), каждый поставщик должен предоставить (и документировать) инициализацию по умолчанию.
Android предоставляет следующие KeyGenerator
алгоритмы: <table><thead><tr><th>Algorithm</th th>><Supported API Levels</th<>/tr></thead<>tbody<>tr><td>AES</td><>1+</td></tr tr><class="deprecated"<>td>AESWRAP</td td>><1-8</td<>/tr<>tr><td>ARC4</td><td>14+</td<>/tr<>tr<>td>BLOWFISH</td<>td>10+</td<>/tr<>td><>ChaCha20</td><td>28+</td></tr<>td>><DES</td<>td>1+</td<>/tr<>tr><td>DESede</td><td>1+</td/>< tr>tr class="deprecated"><td>DESedeWRAP</td<>td>1-8</td></tr<>tr<>td>HmacMD5</td<>td>1+</td></tr<>tr><td>HmacSHA1</td><td>11+</td<>/tr><tr<>td>HmacSHA224</td><td>1-8,22+</td<></tr<>tr<>td>HmacSHA256</td><td>1+</td<>/tr><tr<>td>HmacSHA384</td<>td>1+</td></tr><tr><td>HmacSHA512</td><td>1+</td<>/tr<>tr tr class="deprecated"<>td>RC4</td><td>10-13</Td></tr></tbody></table>
Эти алгоритмы описаны в разделе KeyGenerator документации по стандартному имени алгоритма архитектуры шифрования Java.
Добавлено в версии 1.4.
Документация по Java для javax.crypto.KeyGenerator
.
Части этой страницы являются изменениями, основанными на работе, созданной и совместно используемой проектом Android и используемой в соответствии с условиями, Creative Commons 2.5 Attribution License.
Конструкторы
KeyGenerator(IntPtr, JniHandleOwnership) |
Конструктор, используемый при создании управляемых представлений объектов JNI; вызывается средой выполнения. |
KeyGenerator(KeyGeneratorSpi, Provider, String) |
Создает объект KeyGenerator. |
Свойства
Algorithm |
Возвращает имя алгоритма этого |
Class |
Возвращает класс среды выполнения данного объекта |
Handle |
Дескриптор базового экземпляра Android. (Унаследовано от Object) |
JniIdentityHashCode |
Этот класс предоставляет функциональные возможности генератора секретных (симметричного) ключей. (Унаследовано от Object) |
JniPeerMembers |
Этот класс предоставляет функциональные возможности генератора секретных (симметричного) ключей. |
PeerReference |
Этот класс предоставляет функциональные возможности генератора секретных (симметричного) ключей. (Унаследовано от Object) |
Provider |
Возвращает поставщик этого |
ThresholdClass |
Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода. |
ThresholdType |
Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода. |
Методы
Clone() |
Создает и возвращает копию этого объекта. (Унаследовано от Object) |
Dispose() |
Этот класс предоставляет функциональные возможности генератора секретных (симметричного) ключей. (Унаследовано от Object) |
Dispose(Boolean) |
Этот класс предоставляет функциональные возможности генератора секретных (симметричного) ключей. (Унаследовано от Object) |
Equals(Object) |
Указывает, равен ли какой-то другой объект этому объекту. (Унаследовано от Object) |
GenerateKey() |
Создает секретный ключ. |
GetHashCode() |
Возвращает значение хэш-кода для объекта. (Унаследовано от Object) |
GetInstance(String) |
|
GetInstance(String, Provider) |
|
GetInstance(String, String) |
|
Init(IAlgorithmParameterSpec) |
Инициализирует этот генератор ключей с указанным набором параметров. |
Init(IAlgorithmParameterSpec, SecureRandom) |
Инициализирует этот генератор ключей указанным набором параметров и предоставленным пользователем источником случайности. |
Init(Int32) |
Инициализирует этот генератор ключей для определенного keyize. |
Init(Int32, SecureRandom) |
Инициализирует этот генератор ключей для определенного keyize, используя предоставленный пользователем источник случайности. |
Init(SecureRandom) |
Инициализирует этот генератор ключей. |
JavaFinalize() |
Вызывается сборщиком мусора для объекта , когда сборка мусора определяет, что больше нет ссылок на объект . (Унаследовано от Object) |
Notify() |
Пробуждает один поток, ожидающий монитора этого объекта. (Унаследовано от Object) |
NotifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. (Унаследовано от Object) |
SetHandle(IntPtr, JniHandleOwnership) |
Задает свойство Handle. (Унаследовано от Object) |
ToArray<T>() |
Этот класс предоставляет функциональные возможности генератора секретных (симметричного) ключей. (Унаследовано от Object) |
ToString() |
Возвращает строковое представление объекта. (Унаследовано от Object) |
UnregisterFromRuntime() |
Этот класс предоставляет функциональные возможности генератора секретных (симметричного) ключей. (Унаследовано от Object) |
Wait() |
Вызывает ожидание текущего потока, пока он не пробудится, как правило, из-за <уведомления><<> или>прерывания или прерывания.>< (Унаследовано от Object) |
Wait(Int64) |
Вызывает ожидание текущего потока, пока он не пробудится, как правило, путем <уведомления><<> или>прерывания или прерывания<> или до истечения определенного количества реального времени. (Унаследовано от Object) |
Wait(Int64, Int32) |
Вызывает ожидание текущего потока, пока он не пробудится, как правило, путем <уведомления><<> или>прерывания или прерывания<> или до истечения определенного количества реального времени. (Унаследовано от Object) |
Явные реализации интерфейса
IJavaPeerable.Disposed() |
Этот класс предоставляет функциональные возможности генератора секретных (симметричного) ключей. (Унаследовано от Object) |
IJavaPeerable.DisposeUnlessReferenced() |
Этот класс предоставляет функциональные возможности генератора секретных (симметричного) ключей. (Унаследовано от Object) |
IJavaPeerable.Finalized() |
Этот класс предоставляет функциональные возможности генератора секретных (симметричного) ключей. (Унаследовано от Object) |
IJavaPeerable.JniManagedPeerState |
Этот класс предоставляет функциональные возможности генератора секретных (симметричного) ключей. (Унаследовано от Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Этот класс предоставляет функциональные возможности генератора секретных (симметричного) ключей. (Унаследовано от Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Этот класс предоставляет функциональные возможности генератора секретных (симметричного) ключей. (Унаследовано от Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Этот класс предоставляет функциональные возможности генератора секретных (симметричного) ключей. (Унаследовано от Object) |
Методы расширения
JavaCast<TResult>(IJavaObject) |
Выполняет преобразование типа, проверенного средой выполнения Android. |
JavaCast<TResult>(IJavaObject) |
Этот класс предоставляет функциональные возможности генератора секретных (симметричного) ключей. |
GetJniTypeName(IJavaPeerable) |
Этот класс предоставляет функциональные возможности генератора секретных (симметричного) ключей. |