SharedPreferences?
초기 설정 값과 같은 간단한 값을 저장할 때 DB를 사용하면 복잡하기 때문에 SharedPreferences를 많이 사용하고있다.
형태는 (Key, Value) 로 data/data/패키지명/shared_prefs 폴더 안에
xml 파일 형태로 데이터를 저장한다.
또한 해당 파일은 어플리케이션이 삭제되기 전까지 보존된다.
그러나, 저장되는 값이 단순 평문으로 저장되기 때문에 큰 의미 없는 값은 상관없지만
사용자의 개인정보라면 큰 문제가 된다. 누군가 악의적으로 해당 정보를 쉽게 유출하여
사용할 수 있기 때문이다.
EncryptedSharedPreferences!
SDK23 (마시멜로6.0) 에 추가된 Security 라이브러리에서 제공하는 서비스
SharedPreferencs 클래스를 감싸고 다음 두 가지 방법을 사용하여 키와 값을 자동으로 암호화함Key
결정론적 암호화 알고리즘을 사용하여 암호화
Value
AES-256 GCM을 사용하여 암호화되며 결정적이지 않음
[ 공식문서 ] https://developer.android.com/reference/androidx/security/crypto/EncryptedSharedPreferences?hl=ko