CryptoSwift 사용하여 암호화 및 복호화 하는 방법
일단 관련 모듈을 사용할 수 있는 환경을 만들자
cocoapods 를 이용하여 설치한다.
해당 프로젝트 터미널에서
$ pod init
Pod 파일이 생성된다.
pod 'CryptoSwift'
추가한 다음 파일을 저장하고 터미널로 나온 다음에 다음 명령으로 설치를 하자
$ pod install
그럼 해당 프로젝트 폴더에 확장자 .xcworkspace 가 생길 것이다.
이걸 클릭하여 프로젝트를 Xcode 에서 연다.
이제 프레임워크를 열 수 있다.
import CryptoSwift
상단에 추가하면 이제 암호화 및 복호화를 할 수 있다.
암호와 복호화에 사용되는 키와 벡터가 있는데 이건 꼭 맞아야 하고 256비트로 하려면 32자 이어야 하고 128비트로 하려면 16자로 정해야 한다.
암호화 방법
do {
let aes = try AES(key: DEFINE_KEY, iv: DEFINE_IV)
let chiperText = try aes.encrypt("암호화할 문자열".bytes).toBase64()
} catch { print(error) }
복호화 방법
do {
let aes = try AES(key: DEFINE_KEY, iv: DEFINE_IV)
let e64_data = Data(base64Encoded: chiperText) ?? Data()
let decryptData = try aes.decrypt(e64_data.bytes)
let decryptText = String(bytes: decryptData, encoding: .utf8)
} catch { print(error) }
문자열을 찍어보니 암/복호화 잘 된다.
cocoapods 를 이용하여 설치한다.
해당 프로젝트 터미널에서
$ pod init
Pod 파일이 생성된다.
pod 'CryptoSwift'
추가한 다음 파일을 저장하고 터미널로 나온 다음에 다음 명령으로 설치를 하자
$ pod install
그럼 해당 프로젝트 폴더에 확장자 .xcworkspace 가 생길 것이다.
이걸 클릭하여 프로젝트를 Xcode 에서 연다.
이제 프레임워크를 열 수 있다.
import CryptoSwift
상단에 추가하면 이제 암호화 및 복호화를 할 수 있다.
암호와 복호화에 사용되는 키와 벡터가 있는데 이건 꼭 맞아야 하고 256비트로 하려면 32자 이어야 하고 128비트로 하려면 16자로 정해야 한다.
암호화 방법
do {
let aes = try AES(key: DEFINE_KEY, iv: DEFINE_IV)
let chiperText = try aes.encrypt("암호화할 문자열".bytes).toBase64()
} catch { print(error) }
복호화 방법
do {
let aes = try AES(key: DEFINE_KEY, iv: DEFINE_IV)
let e64_data = Data(base64Encoded: chiperText) ?? Data()
let decryptData = try aes.decrypt(e64_data.bytes)
let decryptText = String(bytes: decryptData, encoding: .utf8)
} catch { print(error) }
문자열을 찍어보니 암/복호화 잘 된다.
define_key , define_iv 가 뭔가요?
답글삭제암호화할 때 사용하는 키값인데요. 보통 상수로 선언해서 사용합니다.
답글삭제