은 8:00이며 해커 (또는 PRISM!) 은 이미 내 세부 정보가있는 고객 데이터의 전체 사본을 가지고 있습니다. 데이터가 이미 읽을 수 있다고 가정하면 개인 정보를 어떻게 보호 할 수 있습니까?클라우드의 개인 데이터에 대한 지식/클라이언트 측 암호화를 구현하는 방법은 무엇입니까?
PRISM에 관한 현재의 추문이 있기 전에 저는 고객 데이터베이스의 특정 필드 (이름, 전자 메일, 암호 등)를 어떻게 보호하는지 생각하고있었습니다. 기본적으로 암호를 암호화하는 키가있는 보안 서버가 있습니다. 그러나 지금, 어떻게 그 반대입니까?
iSQL에 데이터를 sqlite로 저장합니다. 거기에서 데이터를 읽을 수 있습니다 (즉,이 시나리오에서 클라이언트는 완전한 액세스 권한이 있고 "신뢰할 수있는"것으로 가정되지만 서버는 그렇지 않습니다.)는 Client-Side encryption입니까?).
클라이언트에 Name= John Doe
, 서버에 Name=*****
을 갖고 싶습니다. 서버가 디코딩 할 수 없습니다. 고객 장치 만.
고객은 동일한 데이터에 액세스하는 여러 장치를 보유 할 수 있습니다. 서버의 모든 데이터를 암호화하는 것은 실현 가능하지 않습니다 (성능 및 기타 비즈니스 로직에 대한 내용 인 < - 주로이 부분). 데이터의 큰 부분은 숫자가 아닌 개인적인 데이터입니다.
여기에 동의하는 것이 필요합니다. 최종 사용자가 사용하기 쉽고 데이터 보호를 가능한 한 많이 늘리십시오. (클라이언트 장치에 대한 액세스가 데이터에 대한 액세스를 제공한다는 것을 알고 있지만, "인기있는 서비스 X가 해킹 당했고 수백만 개의 암호가 악의적 인 사용자에게 해킹당했습니다! "라고 말하면서 단일 고객에 대한 공격이 아닙니다.
이 작업을 수행하는 방법에 대한 몇 가지 예를 존재? 아니면 지침? – mamcx
@mamcx : 1. 사용자에게 키를 요청하십시오. (또는 암호). 2. AES로 암호화하십시오. 3. 암호화 된 블록을 전선으로 보냅니다. –
그래서 나는 장치에서 "비밀 키"를 요구하고 그것을 keychan에 저장하고 crypt로 사용합니다 ... – mamcx