2011-07-17 3 views
0

텍스트 파일의 폴더를 읽고 사용자에게 그 내용을 보여주는 응용 프로그램을 디자인하고 싶습니다. 세 가지 문제가 발생합니다 : 어떻게 해야할지 모르겠다는 암호화 된 텍스트 파일을 포함하는 폴더가 필요합니다. 둘, 파이썬 코드에서 키를 공개하지 않고 암호화 된 파일을 읽는 방법이 필요합니다. 그 방법을 좋아하지 않는다하더라도 (가능한 한 파이썬을 사용하는 것을 환영합니다.), 3 가지 방법으로 폴더에 파일을 추가 한 다음 암호화 된 폴더를 함께 보내야합니다. 프로그램. 키를 공개하거나 프로그램을 사용하지 않고 폴더를 읽을 수있는 가능성을 부여하지 않고 이러한 작업을 수행 할 수있는 방법이 있습니까?파이썬을 사용하여 암호화 된 폴더를 읽는 방법

미리 도움을 청하십시오!

EDIT : 또한 C를 사용하여 파일을 암호화하고 암호를 해독하여 키를 컴파일 된 파일에 넣고이를 프로그램과 함께 배포 할 수 있습니까?

+0

사용자가 제공하려는 파일을 읽지 못하게하려는 경우 지금 포기하십시오. 프로그램을 쓸 가치가 있다면, 누군가 * 당신이 추가하려고하는 모호한 부분을 깨뜨릴 것입니다. (그렇지 않다면 미니 런트에 대해 유감스럽게 생각하며, @ schmatz의 대답의 첫 번째 및/또는 마지막 세 번째가 아마도 가장 좋은 해결책 일 것입니다.) –

답변

1

내가 할 수있는 가장 좋은 방법은 사용 가능한 가장 강력한 암호화 시스템 중 하나 인 GPG를 사용하여 개별 텍스트 파일을 암호화하는 것이라고 생각합니다.이 작업을 수행 할 여러 파이썬 라이브러리를 얻을 수 있으며, gnupg. 또한 키가있는 파일을 참조하여 응용 프로그램과 함께 배포 할 수 있습니다. 미리 설정된 키를 포함하고 사용자가 해당 키의 위치를 ​​볼 수 없도록하려면 매우 힘든 시간을 보내야합니다. 어쨌든 응용 프로그램의 복사본에서 키에 대한 요청 만 수락하는 제어하는 ​​서버에서 키를 사용하는 것이 어떻습니까? 파이썬을 통해 어떻게 이것을 안전하게 만들 수 있을지 모르겠습니다.

폴더에 파일을 추가하고 프로그램과 함께 보내는 것에 대해 가장 적합한 솔루션을 생각하지 않으셨습니까? 직렬화가 가능하고 게시물에서 이야기하고있는 대부분의 작업을 수행 할 수있는 많은 파이썬 데이터 구조가 있습니다.

+0

당신이 이야기하고있는 파이썬 데이터 구조의 예를 들어 줄 수 있습니까? 너의 답? – CupOfTea

+1

@nicotranquil, [pickle] (http://docs.python.org/library/pickle.html)은 대부분의 객체에서 작동해야하며 기본 직렬화가 작동하지 않는 객체에 대해서는 사용자 정의 처리를 추가 할 수 있다고 생각합니다. –