다음을 통해 공유


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
상속
KeyGenerator
특성

설명

이 클래스는 비밀(대칭) 키 생성기의 기능을 제공합니다.

키 생성기는 이 클래스의 클래스 메서드 중 getInstance 하나를 사용하여 생성됩니다.

KeyGenerator 개체는 다시 사용할 수 있습니다. 즉, 키가 생성된 후 동일한 KeyGenerator 개체를 다시 사용하여 추가 키를 생성할 수 있습니다.

키를 생성하는 방법에는 알고리즘 독립적 방식과 알고리즘별 방식으로 두 가지가 있습니다. 두 개체의 유일한 차이점은 개체의 초기화입니다.

<ul><li><b>Algorithm-Independent Initialization</b>

모든 키 생성기는 키 크기및 임의성의 원인을 공유합니다. #init(int, java.security.SecureRandom) init 이 KeyGenerator 클래스에는 이러한 두 가지 범용 공유 형식의 인수를 사용하는 메서드가 있습니다. 또한 인수만 keysize 사용하고 우선 순위가 가장 높은 설치 공급자의 SecureRandom 구현을 임의성의 원본(또는 설치된 공급자 중 SecureRandom 구현을 제공하지 않는 경우 시스템에서 제공하는 임의 소스)으로 사용하고 임의성의 원본만 사용하는 공급자도 있습니다.

위의 알고리즘 독립적 init 메서드를 호출할 때 다른 매개 변수가 지정되지 않으므로 각 키와 연결할 알고리즘별 매개 변수(있는 경우)에 대해 수행할 작업은 공급자에게 달려 있습니다.

<li><b>알고리즘별 초기화</b>

알고리즘별 매개 변수 집합이 이미 있는 경우 인수가 있는 두 #init(java.security.spec.AlgorithmParameterSpec) init 가지 메서드가 AlgorithmParameterSpec 있습니다. 하나는 인수도 있지만 SecureRandom , 다른 하나는 우선 순위가 가장 높은 설치 공급자의 SecureRandom 구현을 임의성의 원본으로 사용합니다(또는 설치된 공급자 중 SecureRandom 구현을 제공하지 않는 경우 시스템에서 제공하는 임의 소스). </ul>

클라이언트가 메서드 호출 init 을 통해 KeyGenerator를 명시적으로 초기화하지 않는 경우 각 공급자는 기본 초기화를 제공하고 문서화해야 합니다.

Android는 다음 KeyGenerator 알고리즘을 제공합니다. table><thead><tr><th>Algorithm</th th><>Supported API Levels</th<>/tr<>/thead<>tbody><tr tr<>td>AES</td td>><1+</td<>/tr tr><class="deprecated"<>td>AESWRAP</td td>><1-8</td<>/tr tr tr><td><<>ARC4</td><td>14+</td<>/tr tr><tr<>td>BLOWFISH</td td<>>10+</td></tr tr tr<>><td>ChaCha20</td td><>28+</td></tr tr><tr<>td>DES</td<>td>1+</td<>/tr tr><tr<>td>DESede</td td 1+</td/><>>< tr tr class="deprecated"><td>DESedeWRAP</td td><>1-8</td></tr tr><tr><td>HmacMD5</td td><1+</td><> /tr tr><<>td>HmacSHA1</td td><>11+</td<>/tr 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><tr><td>HmacSHA512</td td><>1+</td></tr tr<>class="deprecated"><td>RC4</td td><>10-13</td></tr></tbody></table>

이러한 알고리즘은 Java 암호화 아키텍처 표준 알고리즘 이름 설명서의 KeyGenerator 섹션에 설명 되어 있습니다.

1.4에 추가되었습니다.

에 대한 javax.crypto.KeyGeneratorJava 설명서

이 페이지의 일부는 Android 오픈 소스 프로젝트에서 만들고 공유하고 Creative Commons 2.5 특성 라이선스에 설명된 용어에 따라 사용되는 작업을 기반으로 하는 수정 사항입니다.

생성자

KeyGenerator(IntPtr, JniHandleOwnership)

JNI 개체의 관리되는 표현을 만들 때 사용되는 생성자입니다. 런타임에서 호출합니다.

KeyGenerator(KeyGeneratorSpi, Provider, String)

KeyGenerator 개체를 만듭니다.

속성

Algorithm

KeyGenerator 개체의 알고리즘 이름을 반환합니다.

Class

Object런타임 클래스를 반환합니다.

(다음에서 상속됨 Object)
Handle

기본 Android 인스턴스에 대한 핸들입니다.

(다음에서 상속됨 Object)
JniIdentityHashCode

이 클래스는 비밀(대칭) 키 생성기의 기능을 제공합니다.

(다음에서 상속됨 Object)
JniPeerMembers

이 클래스는 비밀(대칭) 키 생성기의 기능을 제공합니다.

PeerReference

이 클래스는 비밀(대칭) 키 생성기의 기능을 제공합니다.

(다음에서 상속됨 Object)
Provider

KeyGenerator 개체의 공급자를 반환합니다.

ThresholdClass

이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

ThresholdType

이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

메서드

Clone()

이 개체의 복사본을 만들고 반환합니다.

(다음에서 상속됨 Object)
Dispose()

이 클래스는 비밀(대칭) 키 생성기의 기능을 제공합니다.

(다음에서 상속됨 Object)
Dispose(Boolean)

이 클래스는 비밀(대칭) 키 생성기의 기능을 제공합니다.

(다음에서 상속됨 Object)
Equals(Object)

다른 개체가 이 개체와 "같음"인지 여부를 나타냅니다.

(다음에서 상속됨 Object)
GenerateKey()

비밀 키를 생성합니다.

GetHashCode()

개체에 대한 해시 코드 값을 반환합니다.

(다음에서 상속됨 Object)
GetInstance(String)

지정된 알고리즘에 KeyGenerator 대한 비밀 키를 생성하는 개체를 반환합니다.

GetInstance(String, Provider)

지정된 알고리즘에 KeyGenerator 대한 비밀 키를 생성하는 개체를 반환합니다.

GetInstance(String, String)

지정된 알고리즘에 KeyGenerator 대한 비밀 키를 생성하는 개체를 반환합니다.

Init(IAlgorithmParameterSpec)

지정된 매개 변수 집합을 사용하여 이 키 생성기를 초기화합니다.

Init(IAlgorithmParameterSpec, SecureRandom)

지정된 매개 변수 집합 및 사용자가 제공한 임의 소스를 사용하여 이 키 생성기를 초기화합니다.

Init(Int32)

특정 키화에 대해 이 키 생성기를 초기화합니다.

Init(Int32, SecureRandom)

사용자가 제공한 임의성 소스를 사용하여 특정 키화에 대해 이 키 생성기를 초기화합니다.

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)

이 클래스는 비밀(대칭) 키 생성기의 기능을 제공합니다.

적용 대상