Chromium pobiera zamknięty, potencjalnie naruszający prywatność kod

Do niedawna Chromium w Debianie pobierało niewolny, zamknięty, binarny fragment kodu po instalacji. Jest to oczywiście zachowanie sprzeczne z Umową społeczną Debiana. Co więcej charakter modułu i sposób jego działania (Chrome Hotword Shared Module – obsługa mikrofonu, rozpoznawanie mowy) nie wykluczają, że mogło dojść do naruszenia prywatności użytkowników tej dystrybucji, tym bardziej, że jest on pokrewny „podsłuchowi przez Google”, który opisywano na początku roku.

Jeszcze ciekawszy jest fakt, na który zwrócono uwagę, że nawet wyłączenie w opcjach przeglądarki tej funkcjonalności nie zapobiega ładowaniu czy uruchomieniu niewolnego modułu. Pojawiły się też pytania o to, w jaki sposób oprogramowanie wykorzystujące takie metody dystrybucji pojawiło się w Debianie oraz o to, czy Google powinno w ogóle być upstreamem. Pojawiły się też głosy, że zjawisko tego typu pojawia się coraz częściej.

W Debianie problem został poprawiony w najnowszej wersji pakietu.

Sam fakt pobierania binarnego dodatku nie jest ograniczony do Debiania, wywodzi się to z upstreamu Chromium w wersji 43, więc dotyczy wszystkich dystrybucji Linuksa z tą wersją. Zostało to zgłoszone do upstream Google.

Źródła:

  1. http://www.theregister.co.uk/2015/06/17/debian_chromium_hubbub/
  2. https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=786909
  3. https://code.google.com/p/chromium/issues/detail?id=491435

Na kogo głosować czyli Latarnik Wyborczy DIY

W poprzednim wpisie pokazałem, czemu nie należy zbytnio sugerować się wynikami zwracanymi przez Latarnika Wyborczego. Postanowiłem zrobić własną wersję algorytmu, która będzie wolna od opisanych wad. Z różnych względów (zajęcia poza kompem, cisza wyborcza, która jest bez sensu i pewnie nie ma zastosowania, ale dmucham na zimne) zeszło mi więcej czasu z publikacją, niż planowałem, więc wypuszczam as is. Całość zajęła nie 45 minut, tylko bardziej 1,5h (bardziej myślenie, niż klepanie), po poprawkach błędów różnych.

Założenia

  • KISS
  • Brak odpowiedzi na pytanie jest traktowany tak samo jak neutralność w danej kwestii lub nie mam zdania.
  • Wynik jest wartością -100% do 100% (lub, w wersji drugie, bardziej zgodnej z LW 0-100%).
  • Waga pytania nie powoduje drastycznej zmiany wyniku

Rozwiązanie

Stwierdziłem, że tak naprawdę da się to sprowadzić do liczenia korelacji. Czyli nie programowanie, tylko arkusz kalkulacyjny. Zresztą łatwiej debugować błędy. Kwestię prostoty i neutralności łatwo osiągnąć przez przypisanie wartości -1 (nie), 0 (brak zdania), 1 (tak). Zarówno dla odpowiedzi kandydatów, jak i odpowiadających. Ciocia matematyka zapewni, że zwykły iloczyn użytkownika i kandydata da 1 dla zgodności, -1 dla wartości przeciwnych i 0, jeśli którakolwiek ze stron nie ma zdania.

Powstał wiec arkusz z czterema zakładkami

Odpowiedzi kandydatów

Przepisane żywcem z wyników zebranych i publikowanych przez Latarnika Wyborczego (prośba o sprawdzenie, przepisywanie do arkusza to nudna część i łatwo o pomyłkę, więc nie wykluczam błędów, choć starałem się wypełnić rzetelnie). Część stała, nie wymaga żadnej ingerencji.

Odpowiedzi i istotność

To jest część, którą tak naprawdę wypełnia użytkownik odpowiadając na pytania w Latarniku Wyborczym. Brzydka forma, bo nie o UI mi chodziło. Dla każdego pytania podawana jest odpowiedź [-1, 0, 1] oraz istotność (po prostu mnożnik, zakres tak naprawdę dowolny[1], intencją był zakres 0-2, przyjąłem zmianę o 20%, nie musi być równa dla wszystkich pytań). Pola wypełnione na żółto wypełnia użytkownik (w arkuszu wypełnione są przykładowymi, losowymi danymi).

Obliczenia wyników

Tu zaszyty jest algorytm. Prosty, bo po prostu jest to iloczyn uzyskanego wyniku (suma ilorazów wagi, odpowiedzi kandydata i użytkownika) i maksymalnej teoretycznej zgodności[1]. Część stała, nie wymaga ingerencji.

Wynik

Tu jest to, co użytkownik dostaje na koniec. Podaję w dwóch równoważnych wersjach, różnią się tak naprawdę tylko zakresem. Pierwszy to -100% (zdanie przeciwne do kandydata dla każdego pytania) do 100% (wszystkie odpowiedzi jak kandydat), 0% oznacza wynik neutralny. Drugi wariant to po prostu rzutowanie na 0-100%. 50% oznacza brak jakiejkolwiek zbieżności poglądów z kandydatem, 0% – poglądy dokładnie przeciwne, 100% – poglądy zupełnie zgodne. Mniej więcej odpowiednik tego, co jest teraz w Latarniku Wyborczym (dla neutralnej wagi pytań). Część stała, nie wymaga ingerencji.

Sposób użytkowania

Pobrać arkusz ze strony (format ods, działa w darmowym Libre Office), uruchomić. Przejść do arkusza Odpowiedzi i istotność, wypełnić żółte pola. Po wypełnieniu wynik odczytujemy w zakładce Wynik. Oczywiście całość jest open source, czyli każdy może wprowadzić swoje poprawki i modyfikacje. Oraz poszukać błędów, których nie wykluczam.

Uwagi proszę zgłaszać w komentarzach pod wpisem. Spam, także wyborczy AKA agitacja będzie tępiony.

[1] I tu, kończąc wpis, widzę pierwszy błąd mojego rozwiązania. Powinienem jeszcze przemnożyć odpowiedzi kandydatów przez mnożnik podany przez użytkownika, gdy liczę maksymalny wynik dla kandydata. Teraz możliwe jest uzyskanie wyniku ponad 100%, zwł. dla wyższych mnożników. Błąd znany, poprawka trywialna, ale nie chce mi się teraz tego robić, jak będzie zainteresowanie to poprawię.

Diaspora* w użyciu

Patrzyłem na projekt Diaspora* od dłuższego czasu i cały czas uważałem, że nie jest skończony i gotowy. Opis instalacji na Debianie przyprawia lekko o ból głowy, znajomi nie bardzo korzystają… Ale po zniknięciu plum.me (nadal niewyjaśnionym, wygląda jakby wyparowały wszystkie zabawki A. jednocześnie) powstała pustka, więc stwierdziłem, że spróbuję.

Diaspora logo

Źródło: https://en.wikipedia.org/wiki/Diaspora_%28social_network%29

Nie stawiałem swojej instancji Diaspory, tylko skorzystałem z porównywarki podów Diaspory i wybrałem diasp.eu – ma sporo użytkowników, jest SSL, bardzo dobry uptime, stoi w Niemczech. Pierwsze wrażenie: ten klon Facebooka nawet działa! I są jacyś ludzie! Można normalnie korzystać z hashtagów (obserwować je) i po chwili okazało się, że znalazłem polskich znajomych z netu. Całych dwóch, ale zawsze.

Posty zamieszczane na Diasporze formatuje się przy pomocy Markdown – nie jestem fanem, ale jest prosty i można przywyknąć, szczególnie, że jest prosta ściągawka dostępna od ręki. Możliwości bardzo podobne do HTML, tylko bardziej dla ludzi. Załączanie obrazków czy video działa. Są hashtagi.

Są  też – znane z FB – ignorowanie użytkowników, zgłaszanie postów, możliwość ustawienia avatara, wiadomości prywatne i ankiety. Można przypisywać użytkowników do grup oraz tworzyć własne grupy. Można zintegrować Diasporę z Twitterem, Facebookiem, Tumblr czy WordPressem. Nie testowałem, ale zdaje się (opis potwierdza), że chodzi o to, że robimy wpis na Diasporze i mamy możliwość jednoczesnego wysłania go na (wybrane?) serwisy. Jest możliwość eksportu zdjęć i treści.

Wszystko to oczywiście oparte o wolne oprogramowanie, z możliwością postawienia na własnym serwerze, szyfrowane (SSL), odporne na cenzurę wielkich portali i niezależne od nich (nie ma śledzenia, profilowania, reklam). Itd., itp. 😉

Dodatkowo w Diasporze jest funkcja, która może zastąpić bloga (w minimalnym wymiarze). I nie jestem pewien, czy do tego Diaspora* nie nadaje się najlepiej. Mianowicie posty oznaczone jako publiczne dostępne są w formie strony WWW z wygenerowanym kanałem RSS. Czyli tak naprawdę blog, gdzie komentować mogą wyłącznie zalogowani.

Wady Diaspory:

  • Brak API. Nie żartuję, projekt open source, mocno programistyczny i póki co nie ma API. Ewidentny strzał w stopę, bo bez API słabo da się zrobić sensowne klienty (zwł. mobilne).
  • Niezbyt intuicyjny interfejs. Bardzo subiektywne, niby jest ładnie i standardowo, ale jak raz mi mignął link do kanału RSS z publicznymi wpisami, to potem się go naszukałem… Chwilowe i szybko mija.
  • Soft niby działa i jest good enough, ale używając czuć, że nie jest w 100% skończony i doszlifowany. Niekrytyczne.
  • Mała popularność. Trochę samonapędzająca się wada, ale nie mogłem pominąć…
  • Brak edycji wpisu po zamieszczeniu. Oczywiście można usunąć i dodać jeszcze raz, ale trochę overkill, jeśli chodzi tylko o usuwanie literówek.

Wygląda, że Diaspora zastąpi mi plum.me, bo możliwości większe, a nie wszystko nadaje się na bloga/Twittera/FB. Kiedyś przedstawiano – przynajmniej takie miałem wrażenie – Diasporę jako nadchodzącą wielką wolną alternatywę dla FB. IMO nic z tych rzeczy – zwykły serwis i social network, trochę mniej dopracowany, trochę bardziej wolny. Jest łatwa, więc IMO warto spróbować.

UPDATE: Dodany brak edycji w wadach.