how to apply ANTI SCREEN SCRAPE PROTECTION in D3D metro style applications

Answered how to apply ANTI SCREEN SCRAPE PROTECTION in D3D metro style applications

  • martes, 10 de abril de 2012 4:35
     
     

    hi, all:

    as development in windows 7,  we can call win32 api  SetWindowDisplayAffinity(hwndVideo, WDA_MONITOR) to anti capture screen.

    while developping in windows 8  winRT platform,  is there any api to apply anti screen capture to metro style application?

    if there is no such api,  can anybody helps to hint how to get similiar effect, such as configu some parameters to d3d device, etc ?

    thanks in advance.


    ---------------------------------------------- JohnYe from SHANGHAI. email: yechzh@126.com


    • Editado JohnYe martes, 10 de abril de 2012 6:43
    •  

Todas las respuestas

  • miércoles, 11 de abril de 2012 8:27
    Moderador
     
     Respuesta propuesta

    Hello,

    As you said, there is no API to anti screen scrape.

    I try to catch the KeyDown event but failed. This event only response for non-system key. The Prscrn is system key.

    Please check:
    http://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.core.corewindow.keydown.aspx

    http://msdn.microsoft.com/en-us/library/windows/apps/hh452773

    Best regards,
    Jesse


    Jesse Jiang [MSFT]
    MSDN Community Support | Feedback to us

  • miércoles, 11 de abril de 2012 15:41
    Moderador
     
     Respondida

    Jesse is correct, you cannot disable this.  The 'rogue' person could always take a picture of the screen with a digital camera and we cannot prevent that either!

    -Jeff


    Jeff Sanders (MSFT)

  • miércoles, 11 de abril de 2012 22:47
    Moderador
     
     Respondida

    Hello John,

    Preventing "screen scraping" has always been problematic for premimum content providers. "SetWindowDisplayAffinity" is certainly not a perfect solution for the desktop. Our current suggestion is to use HDCP via OPM / PlayReady to impliement the maximum protection the system will allow. At some time we have to display the bits to the screen. At that time the data becomes vonerable.

    I hope this helps,

    James


    Windows Media SDK Technologies - Microsoft Developer Services - http://blogs.msdn.com/mediasdkstuff/

    • Marcado como respuesta JohnYe jueves, 12 de abril de 2012 2:05
    •  
  • jueves, 12 de abril de 2012 6:46
     
     

    thank you, all.

    to prevent from digital camera is out of our scope,  nobody can help on this.

    to enable HDCP for content protection is meet our expectation.


    here is an additional questions that if we're going to apply HDCP/OPM via IMFMediaEngine technology, is it enough to read document from MSDN?  or should we apply security document from microsoft?

    we assume that media source and video decoder meet the requirement of HDCP already,  the only thing left for us to do is to apply HDCP or OPM on D3D device.  ( frame server mode, video render part )…

    can anybody drop some hint here for helps?

    thank you.   


    ---------------------------------------------- JohnYe from SHANGHAI. email: yechzh@126.com

  • jueves, 12 de abril de 2012 21:38
    Moderador
     
     

    John,

    I don't believe that we document how to do this from the MediaEngine in frame server mode. However this is very easy to accomplish by using PlayReady and specifying the digital content protection requirment. You can then simply use the MediaElement and the HDCP / OPM and HW decryption protection will be handeled for you.

    Again, using the MediaEngine in frame server mode with protected content is going to be difficult at best. Do you have a compelling reason why you feel that you need to use the MediaEnging over the MediaElement?

    -James 


    Windows Media SDK Technologies - Microsoft Developer Services - http://blogs.msdn.com/mediasdkstuff/