2009-11-30 5 views
2

업데이트 :이 질문은 서버에서 전송하기 전에 콘텐츠 클라이언트 측을 보호 (암호화/난독 화)하는 것에 관한 것입니다. itune의 것과 같은 접근 방식에서 장단점은 무엇입니까? 전송 전에 파일이 암호화되거나 난독 화되지 않습니다.drm'd 콘텐츠를 보호하는 것이 합리적입니까? 클라이언트 측

원본 질문에 내 메모를 추가 했으므로 준수해야하는 계약이 있습니다 (drm을 구현하는 대부분의 서비스의 경우). 우리는 DRM을 무료로 제공하고 있으며 대부분의 콘텐츠 제공 업체 거래가 이미 이루어지고 있지만 아직 그 의무가 면제되지는 않습니다.


는 최근 아이튠즈/페어 플레이 DRM이 접근 방법에 대한 some information을 읽고, 서버가 실제로 보호하지 않고 파일의 역할을 볼 기대하지 않았다.

answer의 견적은 문제의 정신을 포착하는 것으로 보입니다.

목표는 단순히 " 정직한 사람들을 정직하게 유지하는 것"입니다. 우리는 이보다 더 갈 경우, 두 가지 일이 :

  1. 우리는 우리가 이길 수없는 싸움을. 속임수를 쓰고 자하는 사람들은 성공할 것입니다.
  2. Google 제품의 정직한 사용자는 사용하기가 더 어려워서 다쳤습니다.

여기에서 정직 사용자에 미치는 영향이 표시되지 않는이 파일은 사용자에 묶여 될 것이다 -이 클라이언트 나 서버 측 발생에 관계없이합니다. 이것은 1의 사람들에게 또 하나의 기회를 제공합니다.

클라이언트 환경은 어도비 에어, 여러 콘텐츠 유형 (음악, 비디오, 플래시 앱, 이미지)이 포함됩니다.

itune의 페어 플레이와 미디어 클라이언트 측면을 보호하는 것이 합리적입니까?

참고 : 이미 콘텐츠 제공 업체와의 계약에있는에 ... 합리적인 최선의 노력의 좋아하는에 내가 깨지지 않는 DRM이 unsolvable problem 생각하고 대부분으로 이에 대한 해답을 찾고, 그것의 필요성과 관련 .

+0

여기에 무슨 말씀이 드는지 잘 모르겠습니다. 클라이언트는 복사하기 어려운 형식을 읽고 파일을 표시해야하기 때문에 모든 DRM에 관여해야합니다. 전송하기 전이나 나중에 암호화하거나 난독 화해야하는지 묻는 중입니까? –

+0

@David 네, 질문입니다. 적어도 리소스 사용 및 다운로드 재개 로직에 영향을 미칩니다. – eglasius

+3

클라이언트에서 수행하는 작업은 사용자 CPU 사이클이 아닌 내 CPU 사이클 비용이 듭니다. – peterchen

답변

3

질문에 대답하려면, 당신은 당신이 "보호"라는 단어를 사용할 때 명확하게해야한다 "는 합리적이다"당신이

예를 들어

, 당신이하려고하는 ...으로부터 보호하기 위해 노력하고 무엇을 : 를 통해 자신의 다운로드 콘텐츠를 사용에서

  1. 권한이있는 사용자 앱이 특정 상황 (등 다른 컴퓨터로 복사 예를 들어, 임대 기간 만료,)에서?
  2. 승인 된 사용자가 모든 앱을 통해 다운로드 한 콘텐츠를 사용하지 못하도록합니다 (예 : 대여 기간 만료, 다른 컴퓨터로 복사 등).
  3. 허가받지 않은 사용자가 앱을 통해 수신 한 콘텐츠를 사용하지 못하도록?
  4. 승인되지 않은 사용자는 모든 앱을 통해 승인 된 사용자로부터받은 콘텐츠를 사용하지 않습니까?
  5. 알려진 사용자가 서버의 미디어 라이브러리에있는 구매하지 않은 콘텐츠에 액세스하는 데 ?
  6. 모든 앱을 통해 알려진 사용자가 서버의 미디어 라이브러리에서 구매하지 않은 콘텐츠/무단 콘텐츠에 액세스하지 못하도록 하시겠습니까?
  7. 알 수없는 사용자가 번 앱을 통해 미디어 라이브러리에 액세스하지 못했습니다.?
  8. 사용자가 서버의 미디어 라이브러리에 액세스하지 못했습니다. 모든 앱? 등

... 같은 이상 포함 할 수있는 일에

"모든 응용 프로그램"

: 귀하의 사이트와 협력/상호 운용하도록 설계

  • 다른 플레이어 프로그램 (예를 들어,for flickr)
  • 프로그램은, 아마도 비 DRM 형식을 다른 형식으로는 링크 된 기사에서

에 설계

  • 적대적 프로그램 내용을 변환하도록 설계, 당신은 수의 일부를 볼 시작할 수 있습니다 상기 DRM 클라이언트 측을인가 제한 ...

    • 번째 원래 PyMu에 사용 sique, iTunes Store 용 Linux 클라이언트 은 iTunes 인 것처럼 가장합니다.. 애플 서버의 노래를 요청한 후 은 구입 한 노래를 iTunes와 마찬가지로을 잠그지 않고 다운로드했다.

    • 네 번째는 FairKeys에서 사용되며 은 iTunes 인 것처럼 가장합니다.; 애플의 서버에서 사용자의 키를 요청한 다음이 키를 사용하여 기존 구입 한 노래를 잠금 해제. 어느 이러한 방식의

    적용, 또는 관련 제품을 해킹되는 DRM을 깨는 필요합니다; 관련된 프로토콜을 수동적으로 관찰하고 모방하는 것만으로 간단하게 수행 할 수 있습니다.

    그럼 질문이 생깁니다. 이러한 종류의 공격으로부터 보호하려고합니까?

    • 그렇다면 클라이언트 적용 DRM은 이 적당하지 않습니다.입니다.
    • 아니요 (예 : Apple/iTunes와 같이 사용자가 내 앱을 사용하는 사람들에게만 관심이있는 경우) 그렇다고 할 수 있습니다.

    은 (당신이 생각할 수있는 모든 상황에 대해이 과정을 반복합니다. ADIG의 nswer 중 하나 또는 "나는이 상황을 방지하기 위해 노력하고 있지 않다", "클라이언트 적용 DRM이 나를 보호 할 것"항상 경우, 다음 클라이언트에 적용 DRM을 사용하여 resonable입니다.)


    참고 DRM이 부작용으로 이러한 상황을 방지 할 동안 내 사례의 마지막 네를 위해, 그것은 시행 할 수있는 최적의 장소 아니에요 그 제한. 이러한 종류의 제한은 로그인/권한 부여 프로세스에서 서버에 가장 잘 적용됩니다.

  • 9

    여기에 뭔가 빠졌을 수도 있습니다. 사용자가 증오, 증오, 증오, 증오 DRM. 그렇기 때문에 언론사가 사용하려고 시도 할 때 어떤 견인력도 얻지 못합니다.

    +1

    내 업데이트를 확인하십시오. – eglasius

    +2

    사용자는주의를 끌면 DRM을 싫어합니다. – hova

    +0

    일부 사용자는이 사실을 알아 채는 것이 거의 불가피한 일이지만 프로젝트별로 수행해야하는 절충안도 있습니다. –

    1

    서버가 보호 기능없이 콘텐츠를 제공하는 경우 암호화는 클라이언트별로 이루어지기 때문입니다.

    위어 마크 (wireshark)는 최고의 계획을 세울 것이라고 말했습니다.

    +0

    대답의 첫 부분에 어떤 의미가 있었는지 확실하지 않은 경우 모든 클라이언트에 대해 암호화를 한 번 사용하면 클라이언트가 모든 값을 가질 수 있도록 암호화해야합니다. 그러면 공격자는 콘텐츠가 암호화되지 않은 경우와 마찬가지로 동일한 키와 그 이후의 키. 해당 클라이언트에 서비스를 제공 할 때 서버 측에서 암호화 할 수 있지만 이는 리소스 집약적입니다. 내가 언급 한 견적과 마찬가지로, 각 경우에 속임수를 쓰려는 사람들은 성공할 것이지만, 나는 그걸 사용하고 아무 것도 할 수 없다. 나는 그것에 대해 몇 가지 주장을 제기하려고 노력 중이다. – eglasius

    +0

    +1에 대한 wireshark 비트. https는 무엇입니까? 또한 누군가가 인증 정보를 사용하여 다운로드 요청을 재생하지 못하게합니다. 어도비 에어를 사용하고 있으며, https로 피들러를 사용하려고 시도한 마지막 순간에 어도비 에어는 맞춤식 로컬 인증 기관인 피들러 작성시 지속적으로 실패 할 것입니다. 일관성이 있다면 좋을 것입니다. 평범한 사람이 파일의 비보호 버전을 잡는 것이 너무 쉬울 것이라고 말하십니까? 합리적인 최선의 노력/트레이드 오프를 고려하지 않고 깨지기 쉽도록 만들 수는 없습니다. – eglasius

    +0

    물론 https를 사용할 수 있습니다. 문제를 해결할 수는 없지만 가장 약한 부분을 체인의 다른 곳으로 옮기십시오. – Broam

    5

    여기 정직한 사용자에게 영향을주지는 않지만 파일이 사용자 또는 서버 측에 관계없이 사용자와 연결됩니다. 이것은 1의 사람들에게 또 다른 기회를 제공합니다.

    사용자가 연결되어있는 파일에는 사용자가 있는지 확인하는 몇 가지 방법이 필요합니다. 검증 서버가 다운되면 (또는 월마트처럼 중단됩니다) 어떻게됩니까?

    "정직한 사용자"에게 영향을주지 않는 DRM 수준은 없습니다.

    +0

    은 콘텐츠를 열 때마다 확인하는 것을 의미하지 않습니다. itunes가 어떻게 작동하는지에 대한 정보의 질문 링크를 참조하십시오. 음악을 iPod에 가져 와서 연결없이 사용할 수도 있습니다. – eglasius

    +0

    아이튠즈는 아이팟에 넣기 전에 여전히 아이튠즈를 확인해야했다. – ceejayoz

    +0

    슬픈 일은 당신이 당신의 아이팟에 그 음악을 넣으면, 당신 comptuer가 죽는다는 생각이다 "오, 내가 내 아이팟에 백업을 가지고." 음, 아이팟에서 음악을 들으러 갈 때 DRM을 통해 음악 라이브러리 전체를 잃어버린 것에 대해 감사하게 될 것입니다. – Earlz

    4

    데이터 만큼 "좋은"과 "나쁜"복사 구별 할 수있는 클라이언트 하드웨어, 단독으로, 모든 일반 사본을 제한 끝날 복사 및 메커니즘을 복사 할 수 있습니다. 대부분의 DRM 회사는이 기술이 나를 얼마나 자유롭게 해 주는지 말해줌으로써이 사실을 처리합니다. 마치 사람들이 똑같은 것을 종종들을 때 사람들이 믿기 시작하는 것처럼 거의 ...

    코드는 클라이언트에서 보호 될 수 없습니다. 서버에서 코드를 보호하는 것은 크게 해결 된 문제입니다. 클라이언트에서 코드를 보호하는 것은 아닙니다. 현재의 모든 접근법에는 인색 한 제한이 있습니다.

    영향은 미묘하게 작용합니다. 최소한 클라이언트 측 DRM을 구현하는 데 드는 추가 비용이 있습니다 (그리고 "DMCA"의 유령 - 변호사 고릴라 포함).이 비용을 증가 된 수익.


    그것은 단지 코드와 암호에 관한 것이 아닙니다. 일단 클라이언트 측 DRM을 구현하면 마케팅, 홍보 및 법률에서 일련의 이벤트를 실행할 수 있습니다. 그들이 사용자를 멀게하기 위해 멈추지 않는 한 당신은 귀찮을 필요가 없습니다.

    6

    여기 키커는 계약서에 "합리적인 최선의 노력"이라고 말하면서 법정에서 이것이 의미하는 바가 무엇인지에 대한 희미한 생각이 없습니다.

    당신이하고 싶은 것은 당신이 입는 DRM에 만족하는 것입니다. 귀하의 고객이 DRM이 무엇이고, 무엇을 할 수 있다고 생각하는지, 리소스 비용, 또는 귀하의 고객이 실제로 DRM이 실제로 성가시다는 것을 알고 있다면 어떻게되는지 모르겠습니다. 당신은 그 대답을해야 할 것입니다. 당신은 클라이언트를 교육 시키려고 할 수 있습니다, 그러나 그것은 불량품 작업을 설명하려고 시도하는 것으로 보일 수 있습니다.

    고객이 만족스럽지 않으면 다음 대체 위치는 소송없이 비용을 지불하는 것입니다. 계약이 성립되기 위해서는 계약이 명확해야합니다. 불행히도, "합리적인 최선의 노력"은 명확하지 않으므로 법정에서 소송을 제기 할 수 있습니다. 고객의 요청에 따라 계약의 일부를 재협상 할 수도 있고 그렇지 않을 수도 있습니다.

    다른 모든 방법이 실패 할 경우 법원에 이길 수 있습니다.

    저는 변호사가 아니며, 법적 조언이 아닙니다. 나는 이것을 기술적 인 질문보다 기대와 가능한 법적 해석의 문제로 더 많이 본다. 우리가 여기서 너를 도울 수있을 것 같지 않아. 이런 종류의 일을 전문으로하는 변호사와상의해야하며 추천해야 할 전문 분야조차 모르겠습니다. 미국에 있다면 지역 변호사 협회에 전화하여 추천을 요청하십시오. 혼자

    +0

    응답에 +1을 쓰십시오. 직접 고객 =이 회사와 거래하는 회사는 분명합니다. (최소한 지금 어디서 거래했는지는 확실하지 않지만) 거래 상대방은 다른 콘텐츠 제공 업체입니다. 나는 당신이 맞다고 생각합니다. 그것은 기대의 문제입니다. 그렇다고해서 관련된 절충안을 결정하기가 어렵습니다. – eglasius

    0

    암호화 ... 일반적으로는 콘텐츠를 사용하도록 허용하는 경우 바이 패스는 일반적으로 하나의 암호화 API 호출에 대한 입력/출력을 변경하기 때문에, 당신을 말하는 부울을 보내는만큼 좋은

    보호 기능을 문자 그대로 5 분 이상 유지하려는 경우 클라이언트 측에서 무거운 바이너리 난독 화를 사용하려고합니다.클라이언트 측에서 암호 해독을 사용하여 데이터를 재생할 수 없으며 시스템을 우회하는 유일한 방법은 전체 바이너리 보호 체계를 리버스 엔지니어링하는 것입니다. 올바르게 끝내면 모든 아이들이 멈출 것입니다.

    운영 체제에서 실행될 제품 인 경우 Windows PEB/TEB/syscalls 및 프로세서 버그와 같은 프로세서 특정 또는 운영 체제 고유의 예외를 사용하지 마십시오. 프로그램은 이미 DRM보다 덜 휴대 가능합니다.

    아, 질문 제목에 답하십시오 : 시간과 돈을 낭비하고, 제품이 제 강화 된 Linux 시스템에서 작동하지 않게 할 것입니다.

    관련 문제