2013-03-04 2 views
2

일부 중요한 데이터를 저장합니다. 데이터는 여러 부분으로 나누어 져 있으며 각 부분마다 별도의 정보를 얻고 싶습니다. 제가 1000 개의 파일을 가지고 있다고 가정합시다. 각 대칭 암호화 알고리즘으로 각 파일을 암호화하고 싶습니다. 해커가 암호를 1000 개 이상 가지고있을 때 키를 깨는 것이 더 쉽다고 추측합니다. 따라서 각 파일마다 별도의 키를 사용해야한다고 생각합니다. 내 질문은 다음과 같습니다 :별도의 데이터 암호화

각 파일마다 별도의 키를 사용해야합니까?

내가해야한다면, 1000 개의 키를 저장하는 데 문제가 있습니다. 그래서 하나의 비밀 키를 갖고 싶고 비밀 키로 각 ​​파일에 대해 별도의 키를 계산하는 알고리즘을 사용하고 싶습니다. 좋은 생각이야?

답변

3

수동적 인 적을 생각하고 AES와 같은 CPA 강력한 암호를 사용하는 경우 모든 파일에 대해 하나의 키만 사용해도 충분합니다. 적들이 당신이 사용하는 암호를 알고, 심지어 평문을 알고 있다고 가정하면, 그는 무시할 수없는 확률로 키를 재구성 할 수 없습니다. Here 자세한 답변입니다.

액티브 공격자 (암호문 대체 가능)를 고려하는 경우 인증 된 암호화를 사용해야합니다. 그러나 나는 이것이 당신의 경우가 아니라는 것을 이해합니다.

그래서 하나의 비밀 키가 있고 비밀 키로 각 ​​파일에 대해 별도의 키를 계산하는 자체 알고리즘을 사용하고 싶습니다. 좋은 생각이야?

일반적으로 자신의 알고리즘이나 체계를 개발하는 것은 좋지 않습니다. 알고리즘이나 구현에서 눈에 보이지 않는 실수를 쉽게 만들 수 있으며 데이터가 취약해질 수 있습니다. 많은 사람들이 피어 리뷰 (peer-review) 한 잘 알려진 알고리즘과 구현을 사용하는 것이 안전하고 안전하다는 것이 입증되었습니다.