불법 복제로부터 소프트웨어를 어떻게 보호 할 수 있습니까?


76

왜 오늘날 해적이 그렇게 쉬운 것처럼 보입니까?

우리의 모든 기술 발전과 수십억 달러가 가장 믿을 수없고 마음을 끄는 소프트웨어를 엔지니어링하는 데 사용되면서 "일련 번호 / 활성화 키보다 불법 복제를 방지 할 수있는 다른 수단이 여전히 없다고 믿기 힘들 것 같습니다. ". 나는 아마도 엄청난 돈, 아마도 수십억 달러가 Windows 7 또는 Office 및 심지어 Snow Leopard를 만드는 데 들어 갔지만 20 분 안에 무료로 얻을 수 있다고 확신합니다. 아마도 가장 쉬운 모든 Adobe 제품에 대해 동일합니다.

불법 복제로부터 소프트웨어를 보호하는 어리 석음과 해킹 방지 방법이 있습니까? 현실적이지 않다면 이론적으로는 어떻습니까? 또는 이러한 회사가 어떤 메커니즘을 배포하든 해커는 항상 그 주위에 방법을 찾을 수 있습니까?


5
실제로 일부 회사는 훨씬 더 정교한 불법 복제 방지 방법을 시도합니다 (예 : 인터넷 연결, 하나의 복사본이 하나의 하드웨어에서만 실행되는지 확인, DNA 잠금 등). 그러나 그들은 여전히 ​​금이 간다.

76
쉬운 솔루션이 있습니다 : 합법적 인 사용자를 위해 뛰어난 품질의 지원을 제공합니다. 더욱이, 지불하지 않는 사용자를 범죄자로 취급하지 말고 잠재적 인 시장으로 취급하십시오. 물론 이것은 비용이 들지만, 보호용 kludge 공장을 복사하기 위해 지불 한 법적 비용과 수수료의 절감은 타격을 완화시킬 것입니다.
biziclop

26
행동 문제에 대한 좋은 기술적 해결책은 없습니다.
직업

16
끈기-남자에게 물고기를 주면 물고기를 먹을 것입니다. 그가 물고기를 가질 수 없다고 말하고 싸움을 기대하십시오.
Orbling

7
@Job : ... 아니요. "해적 행위"(침해에 대한 매우 나쁜 용어)가 콘텐츠 제작자 에게 큰 경제적 이익 가져다 준다는 증거가 늘어나고 있습니다. DRM의 "이점"을 논의 할 때 비교가 훨씬 정확합니다.
greyfade

답변:


76

코드는 데이터입니다. 코드를 실행할 수있는 경우 해당 데이터의 복사본은 보호되지 않은 코드입니다. 보호되지 않은 코드를 복사 할 수 있습니다.

불법 복제 방지 검사를 통해 코드를 추가하면 약간 어려워 지지만 해커는 디버거를 사용하여 제거합니다. "check_license"에 대한 호출 대신 no-ops를 삽입하는 것은 매우 쉽습니다.

  • 해킹하기 어려운 프로그램은 점점 더 성가신 일을합니다.
  • 그러나 공급 업체는 고객에게 사용 준비가 된 소프트웨어를 판매해야합니다.
  • 모든 사람이 컴퓨터로 전화를 걸 수있는 것은 아닙니다.
  • 민감한 물건을 다루는 일부 사람들은 기계를 인터넷에 연결하는 것을 거부합니다.

내 현재의 고용주 (항공 우주 도구)에 판매 프로그램은 집에 전화하지 않는 이제까지 . 고객은 프로그램이 시작될 때마다 "활성화"를 위해 전화를 거는 것을 용납하지 않을 것입니다.

최악의 경우, 프로그램은 네트워킹이없는 VM에서 실행되며 항상 고정 된 날짜입니다.

따라서 합법적으로 한 번 설치되었을 수도 있지만 개발자 측에서는 아무런 노력도하지 않았 음을 알 수 없습니다.

  • 범용 컴퓨터에 하드웨어 "복사 방지"를 추가하려고하면 실패 할 수 있습니다.
  • 복사 방지없이 하드웨어를 판매하는 회사가 무엇이든 모든 하드웨어를 판매하게됩니다.
  • Dell 및 Intel과 같은 공급 업체는 팔라듐과 같은 스파이 하드웨어를 점진적으로 도입하려고 시도하지만 강력하게 저항합니다.
  • 컴퓨터가 과학적으로 실시간으로 무언가를 할 때, "해적판 된 콘텐츠 확인"중단은 실패를 일으킬 것입니다. 모든 컴퓨터에 하드웨어 DRM이있는 경우 특수 과학 / 실시간 컴퓨터에는 하드웨어 DRM이 없어야합니다. 우연히 모든 사람이 특별한 과학적 / 실시간을 구매할 것입니다.
  • 하드웨어 DRM 검사는 일부 종류의 콘텐츠에 대해 오 탐지를 갖습니다.

    • 가장 간단한 경우 : 해상도. 카메라 어레이에서 Quad HD 비디오를 녹화합니다 (지금 책상에 앉아 있음). Windows DRM은 QuadHD이기 때문에 나와 데이터 사이에 있습니다.

    • 서명 분석 : 하드웨어 DRM은 작고 상대적으로 고정 된 데이터 세트를 가지고 있습니다. 또한 CPU와 동일한 데이터 버스를 사용해야하므로 간헐적으로 속도가 느려집니다. 이것은 무엇이든 실시간으로 망칩니다.

    • 따라서 오탐 (false positive) 동안 하드웨어 DRM을보다 스마트하게 만들기 위해 컴퓨터가 중단되어 웹 서비스를 사용하여 확인하게됩니다. 이제 과학 데이터 프로세서가 네트워크에 연결되지 않아 실패하거나 데이터 스트리밍을 중지합니다.


3
첫 번째 글 머리 기호와 관련하여 컴퓨터가 코드를 실행하는 것이 아니라면 어떻게됩니까? 어딘가에 호스트 컴퓨터일까요? 지금은 불가능 해 보이지만 이론적으로 해결책이 될까요? (이것이 클라우드 컴퓨팅입니까?)
Snowman

@ mohabitar : 그것은 사람들의 문제입니다. 불법 복제는 신뢰에 관한 것입니다. 컴퓨터는 사람을 신뢰할 수 없습니다. 사람들 만이 사람들을 믿을 수 있습니다.
S.Lott

2
@mohabitar : 복사에 사용할 수있는 소스 코드가 없기 때문에 클라우드 컴퓨팅은 불법 복제를 확실히 제한합니다 (네트워크 보안 위반이있는 경우 제외). 그러나 (a) 많은 작업이 클라우드에 완전히 부적합하고 (b) 더 많은 작업이 데스크탑에서 더 잘 수행됩니다 (따라서 데스크톱 앱이 클라우드에 비해 우선합니다).
dbkk

@ nohabitar : 내가 여기 제안한 것처럼 말입니까 ?
Ben Voigt

1
@ Ben Voight 나는 이것이 소개하는 실패 모드에 대한 설명을 확장하려고 노력했다. 예 : 과학 기기에서 하드 드라이브로 데이터를 스트리밍한다고 가정하겠습니다. 하드 드라이브 컨트롤러에 하드웨어 DRM이 있습니다. 최대 쓰기 속도로 데이터를 스트리밍하고 있으며 DRM 회로는 과학 데이터 스트림에서 DRM 서명이라고 생각하는 것을 감지합니다. 이제는 나를 멈춘다. 온라인으로 인증을 받거나 나를 막을 수 있습니다. 아야 아야 아야. 또는 5 달러의 불법 복제 방지 칩에 대한 인식에서 영화처럼 보이는 것을 스트리밍하여 MPAA에게 전화를 걸었습니다.
Tim Williscroft

62

궁극적으로 가장 큰 문제는 대부분의 소프트웨어가 잠재적 인 공격자에게 자물쇠와 열쇠를 모두주고 그것들을 어떻게 조합 할 것인지 파악하지 않기를 원한다는 것입니다.

소프트웨어를 안전하게 보호 하는 유일한 방법은 소프트웨어 를 사용자에게 제공하지 않는 것입니다 (예 : SaaS). 예를 들어 Google 문서 도구를 '해적'할 수 없다는 것을 알 수 있습니다. 궁극적으로, 당신이 무언가를 확보하려고한다면, 당신이 그들에게주는 모든 것에 대한 지식이 있다고 가정해야합니다. 당신은 클라이언트를 신뢰할 수 없습니다. 이는 시스템이 손상되지 않도록 보호하는 것과 마찬가지로 불법 복제를 방지하는 데 적용됩니다.

기존 소프트웨어 배포 모델은 클라이언트에게 전체 패키지를 제공하고 잠재적 인 공격자가 제어하는 ​​하드웨어에서 패키지를 보호하려고 시도하기 때문에 배포 모델은 어떤 "해적도없는"소프트웨어 개념과도 호환되지 않습니다.


모두이 질문에 대한 몇 가지 좋은 답변이 있다고 생각했으며, 모든 답변을 읽으면 여기에 상당히 표현됩니다. 제 생각 에이 답변과 SaaS를 언급하는 다른 답변에는 실용적인 솔루션이 포함되어 있습니다. 시도하는 것이 잘못 될 수 있습니다 (OSS 답변). 이론적으로 사용자를 설득하는 것이 더 나을 수 있지만 이것이 업계에서 현재 사용하는 것입니다.
Encaitar

28

IMHO의 근본적인 문제는 불법 복제로부터 소프트웨어를 보호하는 "완전 및 해킹 방지"방법 * 대부분이 무고하고 합법적 인 사용자를 괴롭 히거나 몰아내는 것입니다.

예를 들어 앱이 단일 컴퓨터에만 설치되어 있는지 확인하면 사용자가 컴퓨터에서 하드웨어를 변경하기가 어려울 수 있습니다. 하드웨어 동글은 직장 및 가정용 컴퓨터에서 동일한 앱을 사용할 수 없음을 의미 할 수 있습니다. DVD 영역 코드, CSS, 소니 루트킷 등은 말할 것도없이 소프트웨어 보호를위한 것이 아니라 밀접하게 관련되어 있습니다.

@FrustratedWithFormsDesigner가 지적했듯이 * 실제로는 완벽하지 않습니다. 100 % 안전성은 없습니다. 침입자가 방어 수단을“너무 많이”사용하지 못하도록 방어를 깨뜨리기에 충분한 비용을 지불해야합니다. 또한 소프트웨어와 디지털 정보의 기본 특성으로 인해 누군가 특정 방어를 중단 한 후에는 거의 항상 수백만 명이이 복제를 간단하게 복제 할 수 있다고 생각합니다.


2
그리고 심지어는 해킹 될 수도 있습니다.
FrustratedWithFormsDesigner

2
아멘 @ 좌절. 우주의 기본 법칙은 "인생과 장애물-> 장애물은 결국 극복"또는 생명의 끝입니다.

2
그들은 할 수 있습니다 (동글) : Cubase는 하나를 사용합니다. 해킹은 소프트웨어에 듣고 싶은 것을 알려주는 가상 USB 장치를로드하는 장치 드라이버입니다.
James Love

1
@FrustratedWithFormsDesigner, 좋은 지적, 언급 해 주셔서 감사합니다. 나는 이것을 조금 더 자세히 설명하기 위해 대답을 확장했다.
Péter Török

더욱 강력하게, 모든 불법 복제 방지 조치는 일부 사용자에게 부정적인 영향을 미칩니다. 따라서 질문은 아직 지불하지 않은 고객을 해치기 위해 지불하는 고객에게 얼마나 많은 돈을 벌고 싶은가입니다. 당신의 완성이 "별로 없다"라고 말할 때 당신은 많은 선택을 할 수 없습니다. 그리고 그것이 작동하면 종종 일부 사용자에게 짜증이납니다. Steam을 이용하십시오-많은 사람들과 마찬가지로 저는 정확히 하나의 Steam 게임을 소유하고 있으며 다른 게임을 구매하지 않을 것입니다. 대신 Steam 환경이 완전히 끔찍하기 때문에 금이 간 스팀 제거 버전이 출시 될 때까지 기다립니다.

28

오늘날 소프트웨어가 여전히 쉽게 불법 복제되는 이유는 무엇입니까?

불법 복제가 쉬운 소프트웨어를 판매하는 것이 더 유리합니다.

불법 복제 방지 조치를 결정할 때 회사는 비용-편익 분석을 수행합니다. 주어진 일련의 조치에 대해 혜택이 비용을 능가하지 않으면 회사는 그렇게하지 않습니다.

비용에는 측정을 구현, 문서화, 지원 및 유지하기위한 시간과 노력, 그리고 실제로 성가신 판매 손실이 포함됩니다. 일반적으로 말하면 두 가지 종류의 이점이 있습니다.

  • 프로그램을 불법 복제 한 사람들이 대신 구매했기 때문에 더 큰 이익 ..
  • 결정을 내리는 사람들은 프로그램이 해적판되지 않기 때문에 기뻐합니다.

간단한 예를 들면 다음과 같습니다. Microsoft Office.

지금, MS는 돈에 관한 것이지, execs를 해적판에 대해 행복하게 만드는 것에 대해서는 그다지 중요하지 않습니다. 한동안 MS는 비즈니스 용 "정상"버전보다 저렴한 방법으로 "홈 및 학생"버전의 Office를 판매했습니다. 나는 몇 년 전에 이것을 샀고, 복사 방지는 전혀 없었습니다! "복제 방지"기술은 제품 키를 입력 한 다음 응용 프로그램 폴더에 저장되었습니다. 그러나 동시에 원하는 수의 컴퓨터에서 실행할 수 있으며 모두 정상적으로 작동합니다! 실제로 Mac에서는 네트워크를 통해 응용 프로그램 폴더를 설치하지 않은 다른 컴퓨터로 끌어다 놓을 수 있으며 제품 키가 응용 프로그램과 함께 저장되어 있기 때문에 제대로 실행되었습니다.

왜 그런 한심한 불법 복제 방지 기술입니까? 두 가지 이유가 있습니다.

첫 번째는 설치를 망치는 가정용 사용자를위한 추가 기술 지원 비용이 그만한 가치가 없기 때문입니다.

두 번째는 비 기술적 인 불법 복제 방지 조치 입니다. MS는 기업이 MS 소프트웨어를 해적판했다는 것을 알고있는 내부 고발자 프로그램 (예 : 동일한 "가정 및 학생"사무실의 200 개 사본 설치)을 가지고 있습니다. 그리고 MS는에 와서 회사를 감사하고, 불법 복제 소프트웨어를 발견하면, 그 밖으로 쓰레기를 고소한다 - 그리고 당신은 상금의 큰 상처를 얻을.

따라서 MS는 불법 복제를 방지하기 위해 기술을 사용할 필요가 없습니다. 그들은 차갑고 단단한 현금을 사용하는 것이 더 수익성이 높다는 것을 알게됩니다.


25

으로 브루스 슈나이어는 말했다 , 디지털 파일 uncopyable 만들려고 노력하는 것은 물에 젖은 만들려고 노력하는 것과 같다. 그는 주로 코드보다 컨텐츠 (예 : 영화)에 더 많이 적용되는 "DRM"에 대해 이야기하지만 파일에있는 내용을 복사하는 것을 막는 관점에서는 별 차이가 없습니다. 파일을 복사하는 것은 파일을 복사하는 것입니다 .


17

"해적 행위로부터 소프트웨어를 보호하는 바보 및 해킹 방지 방법" 은 하나뿐입니다 .

자유 소프트웨어 (당신이 원하는 것을 할 수있는 것처럼, 심지어 팔아도됩니다.)

당신은 자유롭게 주어진 것을 훔칠 수 없습니다. 물론, 그것은 일부 공룡 회사 소프트웨어 모델을 망칠 것이지만 불법 복제는 아무데도 진행되지 않습니다. 복사 할 수없는 물건을 판매하십시오. 예를 들어 당신의 도움.


나는이 답변을 더 짧게 할 것이다 : "오픈 소스".
Alexey

4
Riiiight ... "공룡 회사". 그런 다음 팽창 된 "서비스 계약"으로 가치를 추가하는 척합니까? 감사합니다. 보풀 서비스 계약보다는 품질 엔지니어링 비용을 지불하는 것을 선호합니다. 나는 무료 소프트웨어를 좋아하고 후원하지만 "공룡"의견을 통해 귀하의 답변은 신뢰성을 잃었습니다.
DeepSpace101

1
이것이 유일한 방법은 무엇입니까? 소유자 서버에서 실행되는 소프트웨어는 어떻습니까? 또한 우리가 자유 소프트웨어가 불법 복제에 대한 해답임을 인정하면 자유 소프트웨어를 사용하는 사람들이 소프트웨어를 수정 한 다음 다른 사람이 변경 사항을 사용할 수 없도록하여 계약을 위반하는 것입니다. 이것이 자유 소프트웨어의 불법 복제가 아닙니까?
Stilgar

5
이것은 올바르지 않습니다. 대부분의 무료 소프트웨어를 해킹하는 것은 매우 쉽습니다. 라이센스와 호환되지 않는 방식으로 사용하십시오. 예를 들어 Matthew Garrett은 회사가 busybox에 대한 GPL 의무를 준수하도록 돕는 길고 멋진 역사를 가지고 있습니다.
RAOF

1
@Orbling 거의 무엇이든 해적 할 수 있습니다 . 사실상 모든 라이센스에는 일종의 요구 사항이 있습니다. BSD 라이센스 저작물에서 저작권 헤더를 삭제할 수 없습니다. Apache 라이센스는 상당한 제한을 추가합니다. WTFPL조차도 이름을 변경하지 않고 라이센스를 변경하는 것을 금지합니다! 또한 GPL 소프트웨어를 완벽하게 판매 할 수 있습니다.
RAOF

13

이는 네 가지 주요 요소의 조합으로 인해 발생합니다.

기본적으로 컴퓨터가 데이터를 복사하여 작동하는 많은 작업을 수행합니다. 예를 들어, 프로그램을 실행하려면 컴퓨터가 하드 드라이브에서 메모리로 프로그램을 복사해야합니다. 그러나 일단 무언가가 메모리에 복사되면 메모리에서 다른 위치로 쓸 수 있습니다. "복제 방지"의 기본 전제는 성공적으로 복사 할 수없는 소프트웨어를 만드는 것이므로 문제의 규모를 알 수 있습니다.

둘째,이 어려운 문제에 대한 해결책은 합법적 인 사용자와 소프트웨어를 합법적으로 취득하지 않고 소프트웨어를 사용하고자하는 사람들의 이익에 직접적으로 작용합니다. 이러한 사용자 중 일부는 컴파일 된 코드를 분석하는 데 필요한 기술 지식이 있습니다. 이제 당신은 적대적으로 적대적입니다.

이것은 어려운 문제이고 올바른 소프트웨어를 만드는 것도 본질적으로 어렵 기 때문에 솔루션에 적어도 하나 이상의 악용 가능한 버그가 포함되어있을 가능성이 큽니다. 대부분의 소프트웨어는 중요하지 않지만 대부분의 소프트웨어는 결정된 적의 공격을받지 않습니다. 소프트웨어의 본질은 악용 가능한 버그가 발견되면 전체 시스템을 제어하고 비활성화하는 데 사용될 수 있습니다. 따라서 안정적인 보호를 위해서는 매우 어려운 문제에 대한 솔루션이 완벽 해야합니다 .

네 번째 요소는 전세계 인터넷입니다. 그것은 사소한 관심을 가진 사람에게 정보를 전송하는 문제를 만듭니다. 즉, 불완전한 시스템이 한 번 균열되면 모든 곳에서 균열이 발생합니다.

이 네 가지 요소의 조합은 완벽한 복제 방지 시스템이 안전하지 않을 수 있음을 의미합니다. (그리고 마지막으로 언제 완벽한 소프트웨어를 보았습니까?) 이것에 비추어 볼 때, "소프트웨어는 왜 여전히 쉽게 해적판입니까?"가 아니라 "사람들이 여전히 그것을 방지하려고하는 이유는 무엇입니까?"


소프트웨어를 보호하기 위해 ~ 시도하는 데 시간과 돈이 낭비된다고 생각하십니까?
눈사람

4
@ mohabitar : 예, 그것은 내가 생각하는 것입니다. 왜냐하면 그것은 작동하지 않으며 결코 작동 할 수 없기 때문입니다. 내가 알고있는 DRM 시스템은 인터넷에 노출 된 후 1 개월 이상 지속 된 적이 없었습니다. Microsoft는 일상 생활에서 볼 수있는 것보다 매일 R & D에 더 많은 돈을 쓰고 있으며 제대로 수 없습니다. 도대체 Windows 7이 출시되기 전에 깨졌습니다! 그렇다면 소규모 개발자가 성공 가능성이 있다고 생각하는 이유는 무엇입니까?
메이슨 휠러

2
소규모 개발자가 "자신의 편에"가지고있는 한 가지는 더 적은 해적이 관심을 가질 가능성이 있다는 것입니다. 아무도 당신의 소프트웨어를 원하지 않는다면, 아무도 그것을 해적판하거나 다른 사람들을위한 크랙을 개발하지 않을 것입니다. 좋은 생각은 아니지만 틈새 시장을 목표로 삼고 있다면 실질적인 측면이 있습니다.
Steve314

3
@ Steve314 : 어쩌면, 어쨌든 해적이 없다면, 그것은 더 많은 낭비입니다. 존재하지만 해결할 수없는 문제를 해결하는 대신 존재하지 않는 문제를 해결하는 데 자원을 기울이고 있습니다.
메이슨 휠러

1
@ Steve314 : 당신이 그것에 대해 충분히 냉소적이라면 ,이 특별한 상황에서, 복사 방지에 넣지 않기 위해 최선의 이익에 적극적으로 임할 수 있습니다 . 그들이 해적 행위를하고 당신이 그것을 법정으로 가져 가면, 당신은 판매보다 더 많은 손해를 입힐 수 있습니다. 그렇다면 가능한 한 쉽게 만들 수없는 이유는 무엇입니까? ;)
Mason Wheeler

9

클라우드 기반 SaaS 솔루션의 주요 동기 중 하나는 매출원 확보입니다.

IP 수익 창출 및 보호의 미래가 실제로 여기에 있다고 생각합니다.

공급 업체가 통제 할 수없는 환경에서 실행되는 온 프레미스 솔루션 판매에서 초점을 이동함으로써 결국 소프트웨어 불법 복제에 대한 모든 전략이 실패하게됩니다. 자산을 다른 사람에게 줄 때 자산을 보호 할 수있는 방법은 없습니다. 기계에 보호를 적용해야하기 때문입니다.

클라우드에서 소프트웨어를 호스팅하고 서비스로 제공함으로써 불법 복제의 기준을 효과적으로 원숭이 비즈니스 수준으로 높이고 있습니다.


1
아니요, 작동하지 않습니다. 스파이가 시작된 이후로 존재하는 스파이 활동이 있습니다. 또한 전직 직원 또는 행복하지 않은 사람이 유출 될 수 있습니다. 또는 실수로 누출 될 수 있습니다. 작동하지 않는 수백만 개의 시나리오가 있으며 많은 시나리오가 있습니다.
Ismael Luceno

8

나는 당신이 찾고있는 대답은 많은 회사들이 더 이상 불법 복제에 관심이 없다는 것입니다. 아무도 무료로 물건을 꺼내기를 원하지 않지만, 고급 복사 방지 기능이 컴퓨터를 손상 시키거나 깨뜨린 모든 사람들을 성가 시게하고 지원해야한다고 생각할 때. 몇몇 회사는 보살핌을받지 못했지만 하루가 지나도 여전히 금이 가며 사용자는 입안에서 나쁜 맛을내는 경향이 있습니다.

어쨌든 해킹을 막을 소수의 사람들을 위해 그것을 시도하고 구현하는 것은 고통 (또는 고객의 잠재적 손실) 가치가 없습니다.

일부 회사는 해적 사용자를 리소스로 간주하기도했습니다. Valve는 그와 같은 코멘트로 뉴스에 스플래쉬를 일으켰으며, Microsoft가 수년 동안 아시아에서 해적판 된 Windows 설치의 모든면에서 승리하지 못했다고 말할 수 없습니다.

거기에있는 마이크로 소프트는 매 판매가 필요하지만 고객을 잃을 수 없거나 어떤 경우에는 사람들이 그런 종류의 잠금 장치를 구축하기 위해 사용하는 루트킷과 다른 악의적 인 쓰레기를 감당할 수없는 작은 사람들을 위해 큰 라이센스 블록을 판매하려고합니다. -에서.

완벽한 불법 복제 방지를 할 수는 없지만 더 이상 시도 할 동기가없는 사람은 많지 않습니다.


7

소프트웨어에 구축 한 것이 무엇이든, 소프트웨어를 실행할 시스템에서 이해할 수 있어야합니다. 소프트웨어가 더욱 정교 해짐에 따라 다른 소프트웨어를 이해하는 소프트웨어도 더욱 정교 해졌습니다. 따라서 해당 소프트웨어가 시스템에서 이해할 수 있으면 해적이 이해할 수 있고 수정할 수 있습니다.

예를 들어 원칙적으로 실행 파일에 강력한 암호화를 구축하여 대부분의 소프트웨어를 읽을 수 없도록 할 수 있습니다. 문제는 최종 사용자 컴퓨터가 해적보다 더 이상 해당 코드를 읽을 수 없다는 것입니다. 이를 해결하려면 소프트웨어에 암호 해독 알고리즘과 키가 모두 포함되어 있어야합니다.

최고의 디스어셈블러 인 IIRC는 암호화 된 코드에 대해 경고하고 암호화 뒤에 숨어있는 것을 캡처하고 분석하는 데 도움을 줄 수 있습니다. 디스어셈블러 작성자가 악의적 인 것처럼 보이는 경우 암호화 된 코드로 숨겨지는 바이러스 및 기타 맬웨어를 조사하기 위해 보안 개발자가 매일 필요하다고 생각하십시오.

아마도 두 가지 해결책이있을 것입니다. 하나는 자체 사용자를 잠그는 폐쇄 형 플랫폼입니다. Playstation 3에서 알 수 있듯이 반드시 그런 것은 아닙니다. 어쨌든 마음에 들지 않는 많은 비악 한 사용자가 있습니다.

다른 하나는 소프트웨어가 사용자가 제어하는 ​​서버에서 실행하는 것입니다.


5

불법 복제 방지는 논리적 모순입니다.

합법적 인 사용자는 공급 업체에서 신뢰합니다.

"자동화 된"불법 복제 방지는 신뢰 관계를 자동화하려고합니다.

어떻게 작동합니까? 어떻게 할 수 있는 기술적 수단 적 "신뢰"사람에 와서?

신뢰는 본질적으로 인간 관계입니다. 신뢰할만한 것처럼 보이지만 그렇지 않은 사람들은 기술 메커니즘을 항상 파괴 할 수 있습니다.

그 문제에 대해 사람들은 항상 자신의 신뢰를 잘못합니다.


1
단계 : 1. Skynet 발명 2. 불법 복제 방지 구현 3. 이익
nevercode

5

내가 생각하는 이유 중 하나는 괜찮은 보안을 작성하는 방법을 알고있는 사람들이 아마도 해커 일 것입니다.

또한 해적 행위로부터 자신을 보호하는 것은 실제로 매우 어렵습니다. 컴퓨터는이 보호 기능 자체를 실행해야하므로 특정 시점 (메모리 / 실행 / 네트워크 트래픽 / ...)에서 가로 챌 수 있습니다. 여기서 난독 화가 발생하여 무슨 일이 일어나고 있는지 이해할 수 없게됩니다.

나는 일련 번호와 활성화 키의 힘이 적어도 누가 해적을 볼 수 있는지, 그리고 추적하거나 차단하려고 시도한다는 사실에 있다고 생각합니다. 이것이 오늘날 많은 서비스가 온라인 서비스 인 이유의 일부라고 생각합니다. (증기, Windows 업데이트 등 ...) 갑자기 깨지기가 훨씬 어려워 지지만 여전히 가능합니다.

성공적인 제품이있는 곳에서는 더 많은 사람들이 제품을 해독하려고 시도하기 때문에 해적질 가능성이 더 큽니다.


3
모호한 보안 은 어떤 식 으로든 불법 복제에 대한 합리적인 해결책 이 아닙니다 .
Johannes Rudolph

1
@Johannes Rudolph : 보안을 방해하지 않습니다. ; p
Steven Jeuris

1
합의하면 해커 아이들 중 몇 명을 놀라게 할 것입니다.
Johannes Rudolph

불완전한 보안 조치는 가치가 없습니다. 소프트웨어를 해독하는 데는 한 사람 만 있으면되고 불법 복제 방지 도구를 잃어 버리게됩니다. 난독 처리는 비용이 들기 때문에 거의 가치가 없습니다.
David Thornley

5

기술적으로 말하면 소프트웨어 불법 복제라는 개념조차 존재하지 않았을 때 대부분의 IT는 여전히 개념적으로 백만년 전에 설계된 소프트웨어 및 하드웨어 환경에서 작동하기 때문에 소프트웨어가 여전히 해적판 될 수 있습니다.

이전 버전과의 호환성을 위해 이러한 기반을 유지 관리해야합니다.

불법 복제 방지를 염두에두고 하드웨어 / 소프트웨어 환경을 처음부터 다시 디자인해야한다면 크게 개선 할 수있었습니다.

직접 참조하십시오 :

  • 모든 구성 요소가 완전히 노출되어 문자 그대로 조작 할 수있는 동일한 개방형 운영 체제

  • 당신이 그것에 던지는 모든 소프트웨어를 취할 동일한 오픈 컴퓨터 아키텍처

  • 소프트웨어 배포 모델은 여전히 ​​사용자에게 전달 된 암호화되지 않은 파일을 기반으로합니다.

인터넷과 보안 수준이 낮고, 취약점이 많으며, 조작에 대한 개방성, 스팸 및 분산 공격에 대해 정확히 동일한 문제가 있습니다. 인터넷을 다시 실행할 수 있다면 두 번째로 훨씬 더 잘할 것입니다. 불행하게도 우리는 호환성을 유지하기 위해 필요한 수많은 응용 프로그램과 서비스를 고수해야합니다.

지금은 불법 복제로부터 소프트웨어를 보호하는 가장 좋은 방법은 하드웨어 수준에서 변경 사항을 도입하는 것 같습니다.

  • 하드웨어를 닫고 블랙 박스로 바꾸십시오. 사용자가 하드웨어 및 소프트웨어를 망칠 수 없도록하십시오. 여기서 접근 방식은 아마도 외부 인터페이스가 완전히 암호화되도록 칩 수준에서 모든 것을 암호화하는 것입니다. 미디어 인터페이스 HDMI를위한 HDCP 암호화가 그 좋은 예입니다. 미디어 스트림은 플레이어 박스를 떠나기 전에 암호화되어 디스플레이 장치 내부에서 해독되므로 차단할 열린 데이터 스트림이 없습니다.

  • 배포 채널을 닫습니다. 인증 된 하드웨어 만 데이터 스트림을 해독 할 수 있도록 모든 외부 미디어 및 온라인 채널을 완전히 암호화하십시오.

둘 다 철수하는 것이 가능하지만 전체 생태계를 감옥으로 만들 것입니다. 무료 하드웨어 / 소프트웨어의 병렬 / 지하 이동은 병렬 에코 시스템을 생성 할 것입니다.


사실은 아닙니다. 그러나 이론적으로는 어떻습니까? 어떤 방법이 있습니까?
눈사람

내 답변 업데이트를 참조하십시오.

2
암호화는 결국 실행되도록 암호화되어야하기 때문에 아무것도 해결하지 못합니다. "블랙 박스"에 잠겨있는 컴퓨터는 범용 컴퓨터가 아닙니다. 게임 콘솔과 iPad가 떠 오릅니다. 다목적 기계에 적용되는 일종의 탈옥의 역사는 꽤 재미 있습니다.
Tim Williscroft

그들은 실제로 그것을 깨뜨릴 수 없게 만들려고 노력하지 않았으며, 당신이 "감옥"이라고 부르는 것은 회사 자체가 후원하고 [비밀로] 지원하는 마케팅 전술입니다.

2
이것이 바로 Microsoft의 책임입니다. 이로 인해 대부분의 합법적 인 사용자가 자유 소프트웨어를 설치하지 못하게됩니다. 그리고 그들이 Microsoft의 물건을 사용하게 만드십시오. (파이어 폭스, 크롬, 아파치, 인터넷 없음)
ctrl-alt-delor

4

노력을 기울이면 거의 완벽한 복사 방지를 달성 할 수 있었지만 비용이 들지 않습니다 . 몇 가지 주목할만한 블로그는 특히 최적의 불법 복제율 이라는 개념을 설명했습니다 .

불법 복제 방지 조치에는 몇 가지 비용이 있습니다. 직접 구현 비용과 간접 비용도 있습니다. 예를 들어, 이러한 조치는 종종 불편을 초래하여 사용자를 멀어지게합니다.

불법 복제에는 비용이 있지만 종종 그리 높지 않습니다. 또한 사용자 기반 확장과 같은 몇 가지 이점이있을 수도 있습니다. 한 논평자가 코딩 공포 게시물에 다음과 같이 글을 남겼습니다.“이제 개발자이고 실제로 소프트웨어를 사용할 돈이 있기 때문에 이미 익숙해 져서 대학 시절에 해적판 프로그램을 구입하는 경향이 있습니다. "

따라서 합법적 인 판매가 너무 심하게 줄어들지 않도록 일부 불법 복제 방지 보호가 중요합니다. 그러나 특정 시점을 넘어서는 불법 복제 방지 조치를 개선 할 경제적 인센티브는 없습니다.


4

모든 대답은 기술적 인 것처럼 보이지만 기술적 인 문제는 아니며 사회적입니다.

소프트웨어는 복사하기 쉽고 쓰기가 어렵습니다. 그것이 복사하기 쉽지 않은 곳에 우리는 귀찮게하지 않을 것입니다. 대부분의 프로그램은 일회성으로 작성하기 만하면되며 소규모 프로그램은 더 큰 프로그램을 사용하여 실행할 수 있습니다. 우리가 또한 프로그램을 복제하기 어렵게 만들면 우리는 경쟁상 불리한 입장에 처하게됩니다. 예. 복사를 분류하여 단기 수익을 극대화 할 수 있습니다. 그러나 결국 복사 비용, 쓰기 비용 및 사용 비용을 최소화 할 수있는 사람에게는 시장 점유율을 잃게됩니다.

자유 소프트웨어는 이러한 비용 중 하나를 복사 비용으로 최소화하고 다른 2 개의 작성 비용 및 사용 비용을 크게 줄입니다.

복사 비용

윈도우 7과 거의 같은 시간과 노력으로 우분투 리눅스를 설치할 수 있습니다. [윈도우 7에서는 라이센스 키를 추가로 좀 더 어렵게 만들어야합니다.]

Windows 7의 가격은 100 파운드이지만 우분투의 경우 다운로드하거나 잡지 상점에서 6 파운드 (무료 잡지가 제공됨), 2 파운드의 우편 주문 또는 친구로부터 CD를 빌릴 수 있습니다.

작성 비용

자유 소프트웨어를 수정할 수 있으므로 비용이 절감됩니다. 처음부터 시작할 필요는 없습니다.

사용 비용

Windows 7에서는 웹 브라우저를 제외하고 응용 프로그램을 얻지 못합니다. Ubuntu를 사용하면 상상할 수있는 모든 응용 프로그램을 얻습니다.

Linux에는 바이러스 스캐너가 필요하지 않습니다.

구형 하드웨어에서 Linux를 실행할 수 있습니다.

Free Software를 사용하면 호환되지 않는 버전의 사무용 도구를 만들어서 누구도 업그레이드하지 않아도됩니다.


3

컴퓨터를 인터넷에서 소프트웨어를 다운로드하고 즉시 실행할 수있을만큼 비슷 세계에서는 식별하기가 매우 어려운 이 컴퓨터에서 실행 확인 여부의 결정을 할 수 있지만 컴퓨터가 없습니다.

그것은 결국 아무도없는 것을 가지고 당신에게 귀결됩니다. 이것은 지불 한 일련 번호, 하드웨어 동글 또는 특정 위치의 물리적 오류가있는 DVD 일 수 있습니다. 그런 다음 소프트웨어는 해당 특정 항목을 찾고없는 경우 실행하지 않습니다. 일련 번호의 경우, 소프트웨어가 모선에 허용되는 일련 번호를 소프트웨어가 확인할 수있는 인터넷상의 위치가 있어야합니다.

불행히도 해커는 외과 적으로 그러한 검사를 제거하는 데 능숙하므로 코드를 복잡하게 만들고 수정하기가 어려워 야하지만 여전히 헌신적으로 사람이 할 수 있습니다.

따라서 대부분의 저렴한 소프트웨어 제품은 인터넷에서 모체를 인증하는 일련 번호와 함께 회사의 현금 소가 따라야하는 라이센스 정책과 함께 일련 번호를 사용합니다. 고가의 제품은 일반적으로 동글 보호를 사용합니다.


그런 다음 누군가가 동글을 해독 (일반적으로 쉽습니다.이 시스템 중 하나를 한 번 감사했습니다) : 에뮬레이션하는 드라이버를 생성합니다.
Ismael Luceno

2

보호 기능이있는 다른 유형의 소프트웨어가 있습니다.

Windows 7의 예를 들어 보면 PC 아키텍처와 PC 프로그래밍이 매우 잘 알려져 있기 때문에 대답이 '아니요'라는 것이 분명합니다.

그러나 PS3, PSP 및 iPhone과 같은 다른 하드웨어를 고려할 때 주로 다릅니다. 주로 제조업체는 더 이상 소프트웨어뿐만 아니라 모든 것을 제어 할 수 있기 때문입니다. 해킹 기술이 뛰어납니다.

당시 마이크로 소프트 롱혼 프로젝트를 살펴보아야한다. 소프트웨어가 진짜인지 아닌지를 확인하기 위해 칩을 구현할 때였 다. 이론적으로는 해킹하기가 매우 어려웠지만 매우 방해가 되었기 때문에 그렇게하지 않았습니다.


3
PS3는 소니가 OtherOS를 제거한 후 몇 달 만에 금이 갔다. 아이폰은 일상적으로 금이 갔다. 해킹 기술의 품질은 실제로 중요하지 않습니다. 한 사람이 무언가를 해독 할 수 있으면 기술이 인터넷 전체에 퍼지기 때문입니다.
David Thornley

Microsoft가 "TreacherousComputing"에 의해 현재 가능한 조치를 구현하지 않는 이유는 그것이 자사의 비즈니스에 해를 끼칠 것이라는 사실을 깨달았 기 때문입니다.
Ismael Luceno
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.