Od teraz twórcy aplikacji na iOS będą mogli blokować zrzuty ekranu

3

Confide ScreenShield

W 2016 roku opisywaliśmy Confide — komunikator, który przyda się wszystkim fanom teorii spiskowych i inwigilacji. Szyfrowanie wiadomości, automatyczne ich usuwanie, wszystko znajdziecie w Confide. Ale co w przypadku robienia zrzutów ekranu? Na telefonach z Androidem i komputerach to nie problem, łatwo to zablokować. Gorzej z iOS, które stawiało opór. Do dzisiaj. Confide wprowadza rozwiązania skutecznie blokujące robienie zrzutów ekranu.

Confide na iOS działa na podobnych zasadach co wersja na Androida, PC oraz Mac. Wysyłamy sobie wiadomości, które po chwili znikają. Każdy wyraz pojawia się osobno, ukrwyanę są kolejne, a poprzednie kasowane. Połączenie jest szyfrowane, a przesyłane informacje znikąją beż śladu — pod warunkiem, że nie zrobiliśmy wcześniej zrzutu ekranu. A te, przy odrobinie kombinowania, dało się zrobić na urządzeniach z iOS. Skuteczność szyfrowania i “niewykrywalności” przesyłanych wiadomości jest wątpliwa — W zeszłym roku potwierdzono, że z łatwością można przechwycić treści wysyłane za pomocą Confide.

Confide ScreenShield

Skupmy się jednak na robieniu zrzutów ekrenów. Jak zapewne wiecie iOS 11 wprowadził nowe rozwiązania tworzące zrzuty. Sam mechanizm działa podobnie, tak samo wywołanie zrzutu — w zależności od posiadanego modelu urządzenia, może to być przytrzymanie przycisku bocznego z prawej strony oraz przysisku Początek lub przycisku bocznego i tego, odpowiedzialnego za zwiększanie głośności — w przypadku iPhone X. na dole po lewej pojawi się podgląd i zrzut gotowy. Ta kombinacja sprawiała mały problem przy robieniu zrzutów wiadomości w Confide, jednak nie blokowała tego skutecznie. Do czasu. Twórcy wprowadzili właśnie autorskie narzędzia — ScreenShield, które na dobre wyłączyły możliwość tworzenie zrzutów ekranu i  znajdującej się na nim treści.

Confide ScreenShield dostępne dla innych.

ScreenShield to technologia, która ma zostać opatentowana przez twórców aplikacji. Przy próbie zrobienia zrzutu ekranu dostajemy pusty ekran z ramką aplikacji. Mechanizm działa nie tylko przy zwykłych zrzutach. Skutecznie blokuje nagrywanie ekranu i klonowanie go przy pomocy AirPlay. Nie działa także nagrywanie ekranu telefonu z poziomu komputera — przy wykorzystaniu QuickTime. Podobnie przy próbie zrobienia zrzutu na pasku przełączania aplikacji i przy użyciu Xcode. Skuteczność jest 100%, nie dziwi więc fakt, że Confide może na tym sporo zyskać. Ich autorska technologia oraz narzędzią ScreenShieldKit będą udostępniane innym firmom, które chcą wprwadzić blokadę zrzutów ekranów w swoich aplikacjach.

  • MDW

    Jaja sobie robią? Oni zaglądają w ogóle do dokumentacji Apple? :) Jaki sposób na blokowanie screenshotów? Przecież to jest od dawna standardowo dostępne w API iOS. A wraz z wprowadzeniem screen recording w iOS 11 wprowadzono mechanizmy do blokowania go. Dodatkowo gdy odtwarzany jest film zabezpieczony DRM-em to nagrywa się czarny ekran.

    Wystarczy zapisać się na notyfikację UIScreenCapturedDidChange i sprawdzić wartość property UIScreen.isCaptured.

    Tu jest dokumentacja dla iOS11 odnośnie blokowania screenshotów i nagrywania ekranu we własnej aplikacji.
    https://developer.apple.com/library/content/qa/qa1970/_index.html

    • Piotr

      Mógłyś rozwinąć myśl o blokowaniu screenshotów? Nigdzie nie znalazłem informacji, że taka możliwość w iOS istnieje (poza screenami z video z DRM)

      • MDW

        Odrobinę mnie poniosło z tymi screenshotami, bo nie jest to takie oczywiste. Nagrywanie ekranu (a także udostępnianie) wprowadzone w iOS11 można fajnie zablokować. Jednak blokowanie takiego zwykłego robienia screenshotów wymaga pewnej kombinacji. :)

        Zapisujesz się na powiadomienie UIApplicationUserDidTakeScreenshot. Niestety (jak widać po jego nazwie) powiadomienie dostajemy dopiero po tym jak screenshot zostanie zrobiony. Więc dowiadujemy się o tym gdy screenshot jest już zapisany. Widziałem takie rozwiązania, że po takim powiadomieniu aplikacja od razu kasowała ostatnio zrobione zdjęcie. I tu pojawia się problem, bo żeby to skasować to użytkownik musi pozwolić aplikacji na dostęp do zdjęć. No i jeżeli się na to nie zgodzi to zdjęcia się nie skasuje.

        Dziwne, że nie ma powiadomienia po zrobieniu screenshota ale przed zapisaniem go w zdjęciach. Myślę, że wkrótce coś takiego się pojawi i nie trzeba będzie robić takich kombinacji.

Do
góry