IssacE2E

Objective-C

@interface IssacE2E : NSObject

Swift

class IssacE2E : NSObject

구간암호화 관련 기능

  • 새로운 세션 정보(하이브리드 데이터)를 생성한다.

    Declaration

    Objective-C

    - (nullable NSData *)generateSession:(nonnull NSData *)data
                                 symmAlg:(SymmAlg)symmAlg
                                 hashAlg:(HashAlg)hashAlg
                            publicKeyB64:(nonnull NSString *)publicKeyB64;

    Swift

    func generateSession(_ data: Data, symmAlg: SymmAlg, hashAlg: HashAlg, publicKeyB64: String) -> Data?

    Parameters

    data

    암호화 할 데이터

    symmAlg

    세션 암호화에 사용할 대칭키 알고리즘

    hashAlg

    세션 암호화에 사용할 해시 알고리즘

    publicKeyB64

    서버의 공개키 (Base64)

  • 새로운 세션 정보(하이브리드 데이터)를 생성한다.

    Declaration

    Objective-C

    - (nullable NSData *)generateSession:(nonnull NSData *)data
                                 symmAlg:(SymmAlg)symmAlg
                                 hashAlg:(HashAlg)hashAlg
                               publicKey:(nonnull NSData *)publicKey;

    Swift

    func generateSession(_ data: Data, symmAlg: SymmAlg, hashAlg: HashAlg, publicKey: Data) -> Data?

    Parameters

    data

    암호화 할 데이터

    symmAlg

    세션 암호화에 사용할 대칭키 알고리즘

    hashAlg

    세션 암호화에 사용할 해시 알고리즘

    publicKey

    서버의 공개키

  • 새로운 세션 정보(하이브리드 데이터)를 생성한다.

    Declaration

    Objective-C

    - (nullable NSData *)generateSession:(nonnull NSData *)data
                                 symmAlg:(SymmAlg)symmAlg
                                 hashAlg:(HashAlg)hashAlg
                              sessionKey:(nonnull NSData *)sessionKey
                            publicKeyB64:(nonnull NSString *)publicKeyB64;

    Swift

    func generateSession(_ data: Data, symmAlg: SymmAlg, hashAlg: HashAlg, sessionKey: Data, publicKeyB64: String) -> Data?

    Parameters

    data

    암호화 할 데이터

    symmAlg

    세션 암호화에 사용할 대칭키 알고리즘

    hashAlg

    세션 암호화에 사용할 해시 알고리즘

    sessionKey

    주입할 세션키 (외부 랜덤 생성기 사용)

    publicKeyB64

    서버의 공개키 (Base64)

  • 새로운 세션 정보(하이브리드 데이터)를 생성한다.

    Declaration

    Objective-C

    - (nullable NSData *)generateSession:(nonnull NSData *)data
                                 symmAlg:(SymmAlg)symmAlg
                                 hashAlg:(HashAlg)hashAlg
                              sessionKey:(nonnull NSData *)sessionKey
                               publicKey:(nonnull NSData *)publicKey;

    Swift

    func generateSession(_ data: Data, symmAlg: SymmAlg, hashAlg: HashAlg, sessionKey: Data, publicKey: Data) -> Data?

    Parameters

    data

    암호화 할 데이터

    symmAlg

    세션 암호화에 사용할 대칭키 알고리즘

    hashAlg

    세션 암호화에 사용할 해시 알고리즘

    sessionKey

    주입할 세션키 (외부 랜덤 생성기 사용)

    publicKey

    서버의 공개키

  • 생성된 세션으로 데이터를 암호화한다.

    Declaration

    Objective-C

    - (nullable NSData *)sessionEncrypt:(nonnull NSData *)data;

    Swift

    func sessionEncrypt(_ data: Data) -> Data?

    Parameters

    data

    암호화 할 데이터

  • 생성된 세션으로 암호화 된 데이터를 복호화한다.

    Declaration

    Objective-C

    - (nullable NSMutableData *)sessionDecrypt:(nonnull NSData *)encryptedData;

    Swift

    func sessionDecrypt(_ encryptedData: Data) -> NSMutableData?

    Parameters

    encryptedData

    암호화 된 데이터

  • 생성된 세션의 세션키를 가져온다.

    Declaration

    Objective-C

    - (nullable NSMutableData *)getSessionKey;

    Swift

    func getSessionKey() -> NSMutableData?
  • 세션 정보를 삭제한다. (직접 호출하지 않아도 객체 삭제 시 세션 정보를 삭제한다)

    Declaration

    Objective-C

    - (void)finalizeSession;

    Swift

    func finalizeSession()