2025/09 2

[Swift] KeychainManager

iOS 개발을 하다 보면 앱 내에서 데이터를 저장해야 하는 경우가 많다.단순한 설정 값은 UserDefaults로 충분하지만,엑세스 토큰이나 사용자 인증 정보처럼 민감한 데이터는 보안이 강화된 Keychain에 저장하면 좋다.이번 글에서는 기존에 만들어둔 UserDefaultsManager와 유사한 패턴으로,Keychain을 조금 더 손쉽게 다룰 수 있는 KeychainManager를 직접 구현해보려고 한다 :)Keychain은 시스템에서 직접 암호화하여 관리하는 안전한 저장소지만,API가 다소 복잡하고 반복적인 코드가 필요하다.따라서 UserDefaults처럼 간단하게 '저장, 읽기, 삭제' 메서드만 호출하면 되도록 래핑하면 실무에서 훨씬 사용하기 편리할 것 같았다.이번에 구현한 KeychainMana..

🌙 2025.09.21

[Swift] Keychain

iOS에서 흔히 사용하는 데이터 저장소로는 UserDefaults, CoreData, Keychain 등이 있다.한창 공부할 때, 이런 이야기를 자주 들었다."비밀번호 혹은 토큰과 같이 중요한 정보들은 키체인에 저장해야해. UserDefaults는 보안상 좋지 않아.""결국 따지고 보면 UserDefaults에 저장하나 키체인에 저장하나 비슷해."하지만 정작 어떤 상황에서 어떤 저장소를 선택해야 하는지 명확한 기준을 찾지 못했고,단순히 구현이 간편하다는 이유로 UserDefaults를 자주 사용해 왔다.이번 글에서는 iOS Keychain을 좀 더 면밀히 살펴보고, 앞으로는 개발 과정에서 데이터의 성격과 보안 요구 사항에 맞추어 적절한 저장소를 선택하는 기준을 세워보려고 한다 :)Keychain이란?- ..

🌙 2025.09.14