JavaTM Platform
Standard Ed. 6

javax.crypto.spec
클래스 SecretKeySpec

java.lang.Object 
  상위를 확장 javax.crypto.spec.SecretKeySpec
모든 구현된 인터페이스:
Serializable , Key , KeySpec , SecretKey


public class SecretKeySpec
extends Object
implements KeySpec , SecretKey

프로바이더에 의존하지 않는 형식에서 비밀열쇠를 지정합니다.

이 클래스를 사용해, 바이트 배열로부터 SecretKey 를 구축할 수가 있어 프로바이더 베이스의 SecretKeyFactory 를 사용할 필요가 없습니다.

이 클래스는, 바이트 배열로서 나타낼 수가 있어 DES 나 Triple DES 열쇠 등, 비밀열쇠에 관련한 열쇠 파라미터가 없는 생의 비밀열쇠에 대해서만 유효합니다.

도입된 버젼:
1.4
관련 항목:
SecretKey , SecretKeyFactory , 직렬화 된 형식

필드의 개요
 
인터페이스 javax.crypto. SecretKey 로부터 상속된 필드
serialVersionUID
 
생성자 의 개요
SecretKeySpec (byte[] key, int offset, int len, String  algorithm)
          offset 로부터 시작되는 key 의 최초의 len 바이트를 사용해, 지정된 바이트 배열로부터 비밀열쇠를 구축합니다.
SecretKeySpec (byte[] key, String  algorithm)
          지정된 바이트 배열로부터 비밀열쇠를 구축합니다.
 
메소드의 개요
 boolean equals (Object  obj)
          지정된 객체와 현재의 객체가 등가일지 어떨지를 테스트합니다.
 String getAlgorithm ()
          이 비밀열쇠에 관련지을 수 있고 있는 알고리즘명을 돌려줍니다.
 byte[] getEncoded ()
          이 비밀열쇠의 열쇠 데이터를 돌려줍니다.
 String getFormat ()
          이 비밀열쇠의 암호화 방식군의 이름을 돌려줍니다.
 int hashCode ()
          객체의 해시 코드값를 계산합니다.
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , finalize , getClass , notify , notifyAll , toString , wait , wait , wait
 

생성자 의 상세

SecretKeySpec

public SecretKeySpec(byte[] key,
                     String  algorithm)
지정된 바이트 배열로부터 비밀열쇠를 구축합니다.

이 생성자 은, 지정된 바이트가 지정된 알고리즘의 비밀열쇠를 실제로 지정할지 어떨지는 판정하지 않습니다. 예를 들어, 알고리즘이 DES 의 경우, 이 생성자 은 key 가 8 바이트의 길이일지 어떨지를 판정하지 않고, 미만 또는 반약의 열쇠일지 어떨지도 판정하지 않습니다. 이러한 판정을 실시하기 위해서(때문에)는, 알고리즘에 특정의 「열쇠 스펙」클래스 (이 경우는 DESKeySpec )를 사용할 필요가 있습니다.

파라미터:
key - 비밀열쇠의 열쇠 데이터 이 배열의 내용은, 후속의 변경에 영향을 받지 않게 카피되는
algorithm - 지정된 열쇠 데이터에 관련하는 비밀열쇠 알고리즘의 이름. 표준의 알고리즘명에 대해서는, 「Java 암호화 아키텍쳐(architecture) 레퍼런스 가이드」의 부록 A 를 참조
예외:
IllegalArgumentException - algorithm 가 null, 혹은 key 가 null 또는 빈 상태(empty)의 경우

SecretKeySpec

public SecretKeySpec(byte[] key,
                     int offset,
                     int len,
                     String  algorithm)
offset 로부터 시작되는 key 의 최초의 len 바이트를 사용해, 지정된 바이트 배열로부터 비밀열쇠를 구축합니다.

비밀열쇠를 구성하는 바이트는,key[offset] 로부터 key[offset+len-1] 까지의 바이트입니다.

이 생성자 은, 지정된 바이트가 지정된 알고리즘의 비밀열쇠를 실제로 지정할지 어떨지는 판정하지 않습니다. 예를 들어, 알고리즘이 DES 의 경우, 이 생성자 은 key 가 8 바이트의 길이일지 어떨지를 판정하지 않고, 미만 또는 반약의 열쇠일지 어떨지도 판정하지 않습니다. 이러한 판정을 실시하기 위해서(때문에)는, 알고리즘에 특정의 「열쇠 스펙」클래스 (이 경우는 DESKeySpec )를 사용할 필요가 있습니다.

파라미터:
key - 비밀열쇠의 열쇠 데이터 배열의 offset 로부터 시작되는 최초의 len 바이트는, 후속의 변경에 영향을 받지 않게 카피되는
offset - 열쇠 데이터가 시작되는 key 내의 오프셋(offset)
len - 열쇠 데이터의 길이
algorithm - 지정된 열쇠 데이터에 관련하는 비밀열쇠 알고리즘의 이름. 표준의 알고리즘명에 대해서는, 「Java 암호화 아키텍쳐(architecture) 레퍼런스 가이드」의 부록 A 를 참조
예외:
IllegalArgumentException - algorithm 가 null, 혹은 key 가 null, 빈 상태(empty), 또는 너무 짧은 (즉 key.length-offset) 경우
ArrayIndexOutOfBoundsException - offset 또는 len 의 인덱스 바이트가 key 의 범위내에 없는 경우 throw 된다
메소드의 상세

getAlgorithm

public String  getAlgorithm()
이 비밀열쇠에 관련지을 수 있고 있는 알고리즘명을 돌려줍니다.

정의:
인터페이스 Key 내의 getAlgorithm
반환값:
비밀열쇠 알고리즘

getFormat

public String  getFormat()
이 비밀열쇠의 암호화 방식군의 이름을 돌려줍니다.

정의:
인터페이스 Key 내의 getFormat
반환값:
「생의」캐릭터 라인

getEncoded

public byte[] getEncoded()
이 비밀열쇠의 열쇠 데이터를 돌려줍니다.

정의:
인터페이스 Key 내의 getEncoded
반환값:
열쇠 데이터. 이 메소드가 불려 갈 때마다 새로운 배열을 돌려준다

hashCode

public int hashCode()
객체의 해시 코드값를 계산합니다. 동일한 객체는 해시 코드도 같습니다.

오버라이드(override):
클래스 Object 내의 hashCode
반환값:
이 객체의 해시 코드값
관련 항목:
Object.equals(java.lang.Object) , Hashtable

equals

public boolean equals(Object  obj)
지정된 객체와 현재의 객체가 등가일지 어떨지를 테스트합니다. 2 개의 SecretKeySpec 객체는, 어느쪽이나 같은 대문자와 소문자를 구별하지 않는 알고리즘명과 열쇠의 인코딩을 가지는 SecretKey 인스턴스이면 동일하다고 보여집니다.

오버라이드(override):
클래스 Object 내의 equals
파라미터:
obj - 이 객체와 동일한지 어떤지가 판정되는 객체
반환값:
객체가 동일하다고 보여졌을 경우는 true. 그렇지 않은 경우, 또는 obj 가 null 의 경우는 false
관련 항목:
Object.hashCode() , Hashtable

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.