|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
java.lang.Objectjavax.crypto.KeyAgreementSpi
public abstract class KeyAgreementSpi
이 클래스는,KeyAgreement
클래스의 Service Provider Interface (SPI)를 정의합니다. 특정의 열쇠 합의 알고리즘의 구현을 제공하는 각 암호화 서비스 프로바이더는, 이 클래스의 모든 추상 메소드를 구현할 필요가 있습니다.
공유의 비밀 정보의 확립에 관계하는 열쇠는, 열쇠 제네레이터 (KeyPairGenerator
또는 KeyGenerator
)의 1 개, 또는 KeyFactory
에 의해, 혹은 열쇠 합의 프로토콜 (engineDoPhase
)의 중간 단계의 결과로서 작성됩니다.
열쇠 교환의 대응 관계 마다,engineDoPhase
를 호출할 필요가 있습니다. 예를 들어, 열쇠 교환의 상대가 1 개의 경우는,lastPhase
플래그를 true
로 설정해 engineDoPhase
를 1 회 호출할 필요가 있습니다. 열쇠 교환의 상대가 2 개의 경우는, 처음은 lastPhase
플래그를 false
로 설정해, 2 번째는 true
로 설정해,engineDoPhase
를 2 회 호출할 필요가 있습니다. 열쇠 교환의 상대의 수는 임의입니다.
KeyGenerator
,
SecretKey
생성자 의 개요 | |
---|---|
KeyAgreementSpi ()
|
메소드의 개요 | |
---|---|
protected abstract Key |
engineDoPhase (Key key,
boolean lastPhase)
이 열쇠 합의에 관계하는 상대의 누군가로부터 받은, 지정된 열쇠를 사용해 이 열쇠 합의의 다음의 단계를 실행합니다. |
protected abstract byte[] |
engineGenerateSecret ()
공유의 비밀 정보를 생성해 새로운 버퍼내에 돌려줍니다. |
protected abstract int |
engineGenerateSecret (byte[] sharedSecret,
int offset)
공유의 비밀 정보를 생성해, offset 로부터 시작되는 sharedSecret 버퍼내에 포함합니다. |
protected abstract SecretKey |
engineGenerateSecret (String algorithm)
공유의 비밀 정보를 작성해, 그것이 요구된 알고리즘형의 비밀열쇠 객체로서 돌려줍니다. |
protected abstract void |
engineInit (Key key,
AlgorithmParameterSpec params,
SecureRandom random)
지정된 열쇠, 알고리즘 파라미터세트, 및 random number generation의 원을 사용해 이 열쇠 합의를 초기화합니다. |
protected abstract void |
engineInit (Key key,
SecureRandom random)
지정된 열쇠와 random number generation의 원으로 이 열쇠 합의를 초기화합니다. |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
생성자 의 상세 |
---|
public KeyAgreementSpi()
메소드의 상세 |
---|
protected abstract void engineInit(Key key, SecureRandom random) throws InvalidKeyException
열쇠 합의 알고리즘이 난수 바이트를 필요로 하는 경우는, 지정된 random number generation의 원 random
로부터 가져옵니다. 다만, 기본이 되는 알고리즘 구현이 난수 바이트를 필요로 하지 않는 경우,random
는 무시됩니다.
key
- 당사자의 비공개 정보. 예를 들어, Diffie-Hellman 의 열쇠 합의의 경우는, 당사자 자신의 Diffie-Hellman 비공개키random
- random number generation의 원
InvalidKeyException
- 지정된 열쇠가 이 열쇠 합의에 올바르지 않은 경우. 예를 들어, 형태가 잘못되어 있는 경우, 또는 알고리즘의 형태에 호환성이 없는 경우protected abstract void engineInit(Key key, AlgorithmParameterSpec params, SecureRandom random) throws InvalidKeyException , InvalidAlgorithmParameterException
key
- 당사자의 비공개 정보. 예를 들어, Diffie-Hellman 의 열쇠 합의의 경우는, 당사자 자신의 Diffie-Hellman 비공개키params
- 열쇠 합의 파라미터random
- random number generation의 원
InvalidKeyException
- 지정된 열쇠가 이 열쇠 합의에 올바르지 않은 경우. 예를 들어, 형태가 잘못되어 있는 경우, 또는 알고리즘의 형태에 호환성이 없는 경우
InvalidAlgorithmParameterException
- 지정된 파라미터가 이 열쇠 합의에 올바르지 않은 경우protected abstract Key engineDoPhase(Key key, boolean lastPhase) throws InvalidKeyException , IllegalStateException
key
- 이 단계의 열쇠. 예를 들어, 2 당사자 사이의 Diffie-Hellman 의 경우는, 상대의 Diffie-Hellman 공개키lastPhase
- 이것이 이 열쇠 합의의 마지막 단계인가 어떤가를 나타내는 플래그
InvalidKeyException
- 지정된 열쇠가 이 단계에 올바르지 않은 경우
IllegalStateException
- 이 열쇠 합의가 초기화되어 있지 않은 경우protected abstract byte[] engineGenerateSecret() throws IllegalStateException
이 메소드는, 이 KeyAgreementSpi
객체를 리셋 하므로, 게다가 다른 열쇠 합의에 재사용할 수 있습니다. 이 열쇠 합의가 engineInit
메소드의 1 개로 재초기화되지 않는 경우, 그 후의 열쇠 합의에서는, 같은 비공개 정보와 알고리즘 파라미터가 사용됩니다.
IllegalStateException
- 이 열쇠 합의가 아직 완료하고 있지 않는 경우protected abstract int engineGenerateSecret(byte[] sharedSecret, int offset) throws IllegalStateException , ShortBufferException
offset
로부터 시작되는 sharedSecret
버퍼내에 포함합니다.
sharedSecret
버퍼가 너무 작아 결과를 보관 유지할 수 없는 경우는,ShortBufferException
가 throw 됩니다. 이 경우, 보다 큰 출력 버퍼를 사용해 이 호출을 반복합니다.
이 메소드는, 이 KeyAgreementSpi
객체를 리셋 하므로, 게다가 다른 열쇠 합의에 재사용할 수 있습니다. 이 열쇠 합의가 engineInit
메소드의 1 개로 재초기화되지 않는 경우, 그 후의 열쇠 합의에서는, 같은 비공개 정보와 알고리즘 파라미터가 사용됩니다.
sharedSecret
- 공유의 비밀 정보를 포함하는 버퍼offset
- 공유의 비밀 정보가 포함되는 sharedSecret
내의 오프셋(offset)
sharedSecret
에 포함된 바이트수
IllegalStateException
- 이 열쇠 합의가 아직 완료하고 있지 않는 경우
ShortBufferException
- 지정된 출력 버퍼가 너무 작아 비밀 정보를 보관 유지할 수 없는 경우protected abstract SecretKey engineGenerateSecret(String algorithm) throws IllegalStateException , NoSuchAlgorithmException , InvalidKeyException
이 메소드는, 이 KeyAgreementSpi
객체를 리셋 하므로, 게다가 다른 열쇠 합의에 재사용할 수 있습니다. 이 열쇠 합의가 engineInit
메소드의 1 개로 재초기화되지 않는 경우, 그 후의 열쇠 합의에서는, 같은 비공개 정보와 알고리즘 파라미터가 사용됩니다.
algorithm
- 요구된 비밀열쇠 알고리즘
IllegalStateException
- 이 열쇠 합의가 아직 완료하고 있지 않는 경우
NoSuchAlgorithmException
- 요구된 비밀열쇠 알고리즘이 없는 경우
InvalidKeyException
- 공유의 비밀열쇠 데이터를 사용해, 요구된 알고리즘형의 비밀열쇠를 생성할 수 없는 경우 (열쇠 데이터가 너무 짧은 등)
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.