500GB 하드 드라이브를 친구와 공유하고 싶지만 모든 데이터를 정상적으로 읽을 수는 있지만 어떤 방식 으로든 복사 또는 편집 할 수 없도록 암호화하고 싶습니다.
가능합니까?
500GB 하드 드라이브를 친구와 공유하고 싶지만 모든 데이터를 정상적으로 읽을 수는 있지만 어떤 방식 으로든 복사 또는 편집 할 수 없도록 암호화하고 싶습니다.
가능합니까?
답변:
읽을 수 있으면 복사 할 수 있습니다. RIAA 또는 MPAA가 아직 이해하지 못한 개념.
참고 : 이 답변은 Stack Exchange 지침 에 따라 좋은 답변으로 간주되지 않습니다 . 그러나 질문의 맥락에서 인기와 효과로 인해 유지됩니다.
/dev/zero
(정상적인 방법은 = 정상적인 방법으로 dd
, cat
또는 공상을 간지러워 무엇이든). 에서 복사 할 수도 /dev/null
있지만 단순히 비어 있기 때문에 0 바이트를 복사합니다. 복사 할 것이 없습니다. 장치 를 파일로 복사하려고 시도하고 실패했습니다 . 이 때문에 물론 그 실패 하지 파일. 다른 장치를 복사하여 파일로 처리하려고 시도한 경우에도 마찬가지입니다.
"복사"는 데이터를 읽은 다음 다른 위치에 동일한 데이터를 쓰는 것으로 정의됩니다. 그가 당신의 데이터를 자신의 컴퓨터로 읽었으므로, 그 데이터는 당시 그의 통제하에있을 것입니다. 그런 다음 자신이 좋아하는 모든 것을 할 수 있습니다.
간신히 가능할 수있는 한 가지는 무단 수정으로부터 데이터를 보호하는 것입니다. NTFS 또는 유사한 파일 시스템이 필요합니다. 그러나이 경우에도 모든 데이터를 읽고, 디스크를 포맷하고, 사용 권한을 지우고, 모든 파일을 다시 쓸 수 있습니다.
[편집] 500GB는 수십억의 숫자입니다. 간단한 예를 보자 5
. 하나의 숫자입니다. 당신은 그것을 읽을 수 있으며, 내가 할 수있는 일은 당신이 그 번호를 기록하지 못하게합니다. 숫자를 쓰지 못하게 막을 수도 없습니다 6
.
아니, 확실히 불가능합니다.
조금만 물어 보도록하겠습니다. 예고없이 파일을 수정하지 않겠습니까? 그렇다면 모든 파일을 체크섬하고 다시 확인할 수 있습니다.
또 다른 방법은 하드웨어 쓰기 차단기입니다. http://www.forensicswiki.org/wiki/Write_Blockers
암호화 는 수학 입니다. 이것에 대해 조금 생각하면 그 기능과 한계를 더 잘 이해할 것입니다.
그러나 수학을 사용하여 사람들이 메시지를 복사하지 못하게 할 수는 없습니다. 그것은 수학이 할 수있는 일이 아닙니다 . (데이터 복사는 더 적은 '수학'과 더 많은 '물리'입니다. :)
가장 가까운 것은 math를 사용하여 일부 데이터를 암호화하고 math를 사용하여 컴퓨터에서 실행하려는 소프트웨어 만 실행 중인지 확인한 다음 컴퓨터에 데이터를 해독 할 수있는 마법 번호를 지정하는 것입니다. 소프트웨어가 마법의 숫자를 알려주거나 다른 사람이 데이터를 복사하지 못하게하는 것을 추가로 보장합니다. 이것은 신뢰할 수있는 컴퓨팅 이며 DVD 플레이어 및 비디오 게임 콘솔과 같은 일을 시도합니다. 대부분의 설정에서 실용적이지 못하며 결국 어떤 식 으로든 깨지는 경향이 있습니다 (예 : 09 f9 ).
내가 아는 한 소프트웨어와 하드웨어를 통해 하드 디스크의 데이터가 변경 될 위험을 줄일 수있는 방법이 있습니다. 그러나 친구에게 하드 디스크가 있으면 충분한 노력을 기울이면 쓰기 방지 방법을 우회하거나 무시할 수 있습니다. 예를 들면 다음과 같습니다.
다른 사람들이 말했듯이, 읽을 수 있으면 복사 할 수 있기 때문에 복사를 방지하는 것은 불가능합니다.
친구에게 아무 것도 복사하거나 변경하지 말라고 요청할 수 있습니다. 아마 그들이 당신의 친구라면, 그들은 기꺼이 준수 할 것입니다 ...
당신이 비록 수 있도록 누군가가 당신이하는 아주 간단한 방법이있다, 복사 동시에 방지하여 데이터를 읽고 있습니다 쉽게 편집하는 것을 방지이 : 그들에게 원본을 제공하지 않습니다 .
데이터를 별도의 하드 드라이브에 복사하고 원본을 보관하는 경우 사본을받는 사람이 원본을 수정할 수 없습니다.
이렇게하면 "복사 할 수 없음"요청이 즉시 취소되지만 어쨌든 만족할 수는 없습니다.
정리 아니오 - 복제 당신이 양자 컴퓨터가 있다면, 당신이 도움이 될 수 있습니다. 그러나 불완전한 복제 는 여전히 가능합니다.
무 복제 정리는 양자 역학의 결과로, 임의의 알려지지 않은 양자 상태의 동일한 사본을 생성하는 것을 금지합니다. [...] 복제는 최종 결과가 동일한 요인으로 분리 가능한 상태 인 프로세스입니다.
다른 많은 사람들이 지적했듯이, 정상적인 상황에서 "정상적으로 공유 및 읽기"는 "복사 가능"을 의미하며 귀하의 질문에 대한 대답은 "아니오"입니다.
"예"로가는 유일한 방법은 상황을 변경하여 "정상적으로 읽기"를 재정의하는 것입니다.
친구를 방에 잠그고, 키를 입력 한 장치를 넘기고, 복사 할 수있는 I / O 또는 네트워크가 없는지 확인하고, 친구에게 카메라 나 사진 메모리가 없는지 확인합니다 ( 디스플레이를 복사하려면) 장치를 검색하여 읽을 수없는 상태로 되돌리고 장치를 제거한 다음 친구를 방에서 자유롭게하십시오. (장치를 심도있게 검사 할 수있는 경우 여전히 개인 키나 임시 키를 찾을 수 있으므로 "I / O 없음"은 내부에 물리적으로 액세스 할 수 없음을 의미합니다.
그 소리가 "정상적으로 읽는 것"처럼 들립니까? 그렇다면 모든 준비가 된 것입니다. 그러나 그것을 습관화하거나 프로세스를 중심으로 사업 계획을 세우는 것은 중요하지 않습니다.
독서는 IS 복사.
컴퓨터에서 액세스하는 모든 데이터는 하드 드라이브의 실제 데이터가 아니라 컴퓨터의 RAM (메모리)에 복사 된 하드 드라이브의 데이터 사본입니다. 정말로 깊이 들어가고 싶다면 하드 드라이브 컨트롤러와 컴퓨터 메모리의 다양한 하위 집합에 더 많은 중간 사본이 있지만 기술 전문가에게는 흥미 롭습니다. 웹 사이트를 방문하면 해당 웹 사이트의 서버 하드 드라이브 정보가 컴퓨터의 하드 드라이브에 복사 된 다음 메모리에 복사되므로 다시 한 번 더 깊이 들어가게됩니다. 그리고 다른 많은 복사 단계 중에서 서버의 메모리 또는 인터넷을 통해 전송되는 데이터 패킷도 포함하지 않았습니다.
어떤 일이 일어나도록 허용 한 다음 허용하지 않도록 요청하고 있습니다. 아마도 모든 사람들이 "복사"에 대한 판결을 내리는 드라코 니아 사회의 극단적 인 경우에 가능하다. 이 작업을 수행하려는 소니의 시도와 그 결과가 얼마나 추한지 읽어보십시오. http://en.wikipedia.org/wiki/Sony_BMG_copy_protection_rootkit_scandal
할 수있는 일 :
할 수없는 것 :
하지 말아야 할 것 :
위의 다른 사람들과 마찬가지로 아니요라고 말하지만 어떻게 할 수 있는지에 대한 간단한 아이디어를 줄 수 있습니다.
하드 드라이브의 모든 파일이 키로 암호화 된 경우 암호화되지 않은 데이터가 포함되어 있지 않으므로 데이터를 복사 할 수 없었습니다. 그러나 컴퓨터에서 읽기 기능을 호출 할 때마다 컴퓨터가 데이터를 해독하고 컴퓨터에서 쓰기 기능을 호출 할 때마다 데이터를 암호화하면 작동한다고 생각합니다.
나는 또한 하드 드라이브가 이런 식으로 작동한다면 속도가 매우 큰 문제가 될 것이라고 확신하지만, 누가 알더라도 미래에 볼 수있을 것입니다. 또한 이것에 관한 문제는 쓰기 기능이 호출 될 때마다 암호화 호출을 제거 하여이 하드 드라이브의 데이터를 실제로 얻고 싶었던 사람이 수행중인 작업을 알면 암호화되지 않은 하드 드라이브로 이어질 수 있다는 것입니다.
어쨌든, 그것은 단지 아이디어 일 뿐이며, 가까운 시일 내에 아주 좋은 해결책이 될 수는 없습니다.
파일을 읽을 수 있으면 복사 할 수 있습니다. 결국, 복사는 컴퓨터에게 파일을 읽고 보이는 내용을 복사하도록 지시하는 것과 같습니다. 파일을 읽으면 해당 내용이 RAM에로드됩니다. 파일을 복사하면 내용이 RAM에로드되고 RAM에서 HDD로 기록됩니다. RAM을 제어 할 수 없으므로 두 번째 단계를 중지 할 수 없습니다.
공유하려는 파일 형식이 하나 (또는 텍스트, 비디오, ppt 등) 만있는 경우 다음 단계를 수행하십시오 (프로그래밍 기능 필요).
파일 뷰어를 외장 하드 드라이브에서만 작동하도록 프로그래밍하십시오. HDD에 시스템 파일을 산재하여 (Windows 명령 행에서 attrib + s + h 사용)이를 수행 할 수 있으며 프로그램 시작시이를 필요로합니다. C : 드라이브에있는 경우 작동하지 않을 수도 있습니다 (File.getCanonicalNamespace를 사용하여 현재 드라이브 경로 확인).
5. 당신은 간다! 친구는 뷰어를 사용하여 모든 파일을 볼 수 있지만 파일 자체는 쓸모가 없습니다.
이 방법은 텍스트 문서에서는 작동하지 않지만 가비지 생성 알고리즘을 더 정교하게 만들어 전체 파일을 뒤집을 수있는 방식으로 가릴 수 있습니다 (rot13은 간단한 예).
자료의 사본이 하나만 있으면이 방법을 권장하지 않습니다. 도둑질 은 가역적 이어야 하지만 문제가 발생할 수 있습니다.
이 모든 일을 조금 귀찮게하지만 내가 생각할 수있는 유일한 방법입니다. Netflix와 온라인 영화를 도둑질 할 수없는 방법입니다. 그들은 그들 자신의 형식 (아마도 이것보다 훨씬 더 정교하다)을 사용하고 그들 자신의 뷰어를 가지고있다.
쓰기 방지는 가능하지만 쉽게 깨질 수 있습니다 (물리적 장치를 가진 사람은 누구나).
이러한 파일의 복사본이 별도로 있으면 위의 복사 방지 방법을 사용하면 사용자가 파일을 미묘하게 편집 할 수 없으므로 파일을 자동으로 쓰기 방지합니다. 그는 그들을 삭제할 수 있습니다.
별도의 사본이없는 경우 NTFS 파일 시스템에는 읽기 전용 옵션이 있습니다. 그러나 이것은 쉽게 우회됩니다.
여러분 .. 참아주세요 . 순진한 운동입니다.
OP가 단순한 것을 요구하고 있다고 생각합니다 . 또한 많은 사람들에게 그러한 심오한 질문을 제안하면 많은 사람들이 그것을 과도하게 생각할 것입니다.
여기서 목표는 그들이 무엇을하는지 막거나 보장하는 것이 아닙니다. 실제로 그들이하고 싶은 일을 해결하기 위해 많은 노력을 기울여야한다. 오히려 "더 쉬운 방법"구매 나 그 밖의 것을 포기하거나 얻는 것이다.
그래서 진짜 질문은 " 친구들이이 파일들을 복사하려고하면 어떻게 어려운가 ?"입니다.
우리는 당신의 친구가 보통 사람 이고 메모리를 읽을 수 없다고 가정하고 그들이이 게시물을 읽지 않을 것이라고 가정한다면 ... :-)
위에서 제안한 것처럼 API가 작동 할 수 있습니다.
메모리로 읽은 것은 "얻을 수있는"것임을 기억하십시오.
파일 시스템에 대해서도 마찬가지입니다.
내 머리 꼭대기에서 통역자를 만들 수 있습니다.
느슨한 개념이지만 잘 작동한다고 생각합니다.
직접 물건을 쓰지 않으려면 더 이상 진행하지 마십시오.
하드 드라이브를 암호화하십시오.
이를 수행하는 방법에 대한 다른 스레드가 많이 있으므로 여기서 다루지 않습니다.
암호화 할 때는 해독 할 수있는 것이 좋습니다.
여기서 키를 사용할 수 있습니다. 개인 키 + 공유 하드웨어에 고유 한 솔트 키 (장치의 일련 번호와 같은)가 포함 된 이진 파일을 작성한 경우. 이진 파일은 파일을 해독하여 래퍼에서 읽습니다.
따라서 파일과 바이너리가 다른 장치로 이동하면 실패합니다. 키가 예상대로 일치하지 않기 때문입니다.
이제는 진정으로 숙련 된 사람이 여러 가지 방법 으로이 문제를 해결할 수 있다고 생각했습니다.
그러나 평범한 사람은 아마도 시간 / 노력 / 돈을 투자하고 싶지 않을 것입니다.
약간의 독서 :
http://en.wikipedia.org/wiki/Disk_encryption
일부 소프트웨어 (암호화로 재생할 수 있음) :
http://www.truecrypt.org/
"래퍼"의 가장 쉬운 종류는 Adobe Air 앱입니다.
http://www.adobe.com/products/air.html
이것은 이론적으로 플랫폼 전반에 걸쳐 작동합니다.
이런 종류의 프로그래밍에 대한 진입 장벽은 상대적으로 낮습니다.
http://www.liquidsilver.org/2010/02/write-your-own-adobe-air-application/
나는 이것이 작은 도움이되기를 바랍니다.
쓰기 방지 매체를 사용하여 편집을 방지 할 수 있지만 데이터를 읽을 수있는 경우 항상 읽기 스트림을 다른 곳에 저장하여 재생할 수 있습니다.
물론 암호 해독 루틴을 적용하는 온라인 연결을 요구하여 약간의 여유를 가질 수 있지만 사용자는 단순히 서버 응답을 기록하고 인터넷을 가짜로 만들 수 있습니다.
퀀텀으로 가서 비 복제 정리 를 적용하려고 할 수 있지만, 읽기 데이터는 여전히 고전적인 방식으로 액세스되므로 출력을 다시 한 번 복사 할 수 있습니다.
간단히 말해서 : 읽을 수있는 데이터가 복사되는 것을 방지하고 대신 유용한 정보에 투자하는 데 시간을 낭비하지 마십시오. 예를 들어 영화관에 간다.
LAN을 통해 하드 드라이브를 공유 할 수 있습니다 . 그렇게하면 하드 드라이브에 물리적으로 액세스 할 수 없게됩니다. 이를 위해 암호화하지 않아도됩니다. 권한을 올바르게 설정하면 나아갈 수 있습니다.
SSH를 설정할 수 있습니다. 플랫폼에서 SSH를 설정하는 방법에 대한 Google. 컴퓨터간에 데이터를 공유 할 수있는 많은 소프트웨어 패키지가 있습니다.