= Title = ____ _ _ _ _ | _ \ (_) __ _ (_)| |_ __ _ | | | | | || | / _` || || __|/ _` || | | |_| || || (_| || || |_| (_| || | |____/ |_| \__, ||_| \__|\__,_||_| |___/ ____ _ / ___|| | __ _ ___ ___ ___ ___ | | _ | | / _` |/ __|/ __| / _ \/ __| | |_| || || (_| |\__ \\__ \| __/\__ \ \____||_| \__,_||___/|___/ \___||___/ = Page = http://www.guckes.net/talks/glass.txt http://www.guckes.net/talks/glass.txt.html (in colour) Latest change: Thu Jan 07 14:30:00 CET 2016 = Event = Chemnitzer Linux-Tage Motto: "Es ist Dein Projekt" 2016-01-08 cfp deadline http://chemnitzer.linux-tage.de/2016/ 2016-03-18/19 event :) Sa 8:30-18h, So 9-18h | Anfahrt: Sa+So 19.+20. März 2016 www.freedom-tours.de www.linuxbus.de = Digital Glass = == "software as a looking glass" == when we look at data (emails, webpages, DOCs and PDFs) then we use tools to present them like "digital glasses". these tools can give us a specific part in greater detail or let us zoom out to get an quick overview. let's take a closer look at what is usually hidden from the view, and what we must install+configure to see data "through the looking glass.." keywords: containers, file formats, polyglot, steganography, watermarks. = Digitale Brillen = Wenn wir Daten anschauen, seien es Webseiten oder Dokumente, dann verwenden wir dafür spezielle "Digitalen Brillen". Sie präsentieren uns die Daten in Details oder lassen uns für einen Überblick herauszoomen. Schauen wir uns mal einige dieser Brillen an. Was sehen wir? Und wie sehen wir damit? Wir können wahrscheinlich nicht allen Aspekten der Daten trauen. Wir können nur sehen, was diese Brillen uns sichtbar machen. Am Ende steht, wie immer, die Frage: Können wir diesen Brillen vertrauen? = Intro = ____ _ _ ____ ____ / ___|| | / \ / ___|/ ___| | | _ | | / _ \ \___ \\___ \ | |_| || |___ / ___ \ ___) |___) | \____||_____|/_/ \_\|____/|____/ all those many zeros and ones - gathered in files, and categorized as multimedia data: text, pics, audio, and video (as audio+pics). how do we deal with them? well - "digital glasses"! = Feedback = please send email to clt2016@guckes.net or add your comments here: https://events.titanpad.com/2016-04-29-30 = Structure = 10101010 -> eight bits = one byte units: bytes -> kilobyte -> megabyte -> gigabyte -> terabyte -> petabyte -> BIG DATA! :-O 2015-12-12: prices for storage have fallen considerably. eg for usb sticks : 64GB for 23€-30€, external hard disks: 1TB for 60€, 2TB for 80€, 4TB for 140-200€. but - how to look at data? with programs/software! = Digital Glass = how to look at *any* kind of files? binary -> hexeditor. show: xxd. $ xxd mutt.png | head 00000000: 8950 4e47 0d0a 1a0a 0000 000d 4948 4452 .PNG........IHDR 00000010: 0000 0080 0000 0080 0806 0000 00c3 3e61 ..............>a 00000020: cb00 0000 0473 4249 5408 0808 087c 0864 .....sBIT....|.d 00000030: 8800 0000 0970 4859 7300 000d d700 000d .....pHYs....... 00000040: d701 4228 9b78 0000 0019 7445 5874 536f ..B(.x....tEXtSo 00000050: 6674 7761 7265 0077 7777 2e69 6e6b 7363 ftware.www.inksc 00000060: 6170 652e 6f72 679b ee3c 1a00 0020 0049 ape.org..<... .I 00000070: 4441 5478 9ced 9d79 7c14 55da efbf 4f67 DATx...y|.U...Og 00000080: 252b 0992 b084 4df6 5d36 0920 d7c8 2ea3 %+....M.]6. .... 00000090: b833 2a8c 8ae0 8273 d551 5f77 5fdc e6a3 .3*....s.Q_w_... looking at data with *text*: text -> text editor. (eg vim) ASCII: number <-> character/glyph some have no pixels. hmm. [basis for TeX and LaTeX - typesetting language.] inner structure of data: data *formats*. https://de.wikipedia.org/wiki/Dateiformat https://de.wikipedia.org/wiki/Liste_von_Dateinamenserweiterungen https://de.wikipedia.org/wiki/Multipurpose_Internet_Mail_Extensions how many? thousands! = File Type = tool to determine the type of files: "file" :-) $ file /bin/zsh /bin/zsh: symbolic link to `/etc/alternatives/zsh' $ file /etc/alternatives/zsh /etc/alternatives/zsh: symbolic link to `/bin/zsh4' $ file /bin/zsh4 /bin/zsh4: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.26, BuildID[sha1]=0x039d0f53a672b7cc8009b7e46460dd4c90d79bfc, stripped -rw-r--r-- 1 root root 2279632 Mär 18 2015 /usr/share/misc/magic.mgc -> man 5 magic = HTML = text/html the "web glasses": the "web browser". inner structure: HTML. semantic structure. not* a programming language! mind you: web browsers are not head-on displays. however, they can be considered "glasses" as they are giving you a "view" of the data. examples: chrome, safari, IE, Firefox.. elinks, lynx, w3m. and many more: https://en.wikipedia.org/wiki/List_of_web_browsers show: http://tinyurl.com/2015-12-10-glas = DOCs = its files contain "invisible data" which direct the formatting and layout, incl font size and footnotes. the goal is "what you see is what you get" ("WYSIWYG"). the Graphical User Interface (GUI) usually includes menus, dialogs, and scroll bars. examples for "glasses": AbiWord, TextMaker, Word, WordPerfect; Office, StarOffice, OpenOffice. lots more: https://en.wikipedia.org/wiki/List_of_word_processors -> XML * antiword = Email = everyone has an email address and reads emails, right? there are many different glasses.. (mine is "mutt".) colorization! \o/ colour for folder index: mails sent by myself, known addresses/people, replies to sent mails, special subjects, messages sent to/via addresses (eg lists), sent with certain mailers, and possible spam. show: mailbox folder index. colour for message body: abbreviations, boroughs and cities, nouns, dashed words, month names and week days, dates and times (and ranges), numbers with units, text in brackets, quotes, emphasis - email and web addresses, phone numbers, list bullets, smilies, and more. show: an encrypted and a signed email. (who here has seen them before in "raw"?) header: display of header usually restricted to Date, From, Subject, To+Cc, Reply-To. wont see: Received, Return-Path, Content-Type etc. display_filter: makes changes and deletions before showing, eg hiding signatures and list footers, as well as attachments like pictures. also hides cited text by request. newsletter: Content-Type: text/plain; charset = "iso-8859-1" text/plain -> text/html -> rendering now done by text browser. vim: syntax ON! = PDF = "choose the right tool for the job!" consider this PDF: https://www.alchemistowl.org/pocorgtfo/pocorgtfo09.pdf so display it with a PDF viewer! on page #60 it contains the adapted lyrics to "Diamonds are a Girl's Best Friend" as "Root Rights are a Grrl's Best Friend". now, if it contained the *score* - would we be able to hear it, too? let's *see*... -> https://en.wikipedia.org/wiki/Polyglot_(computing) idea: $ prog1 file > output1 $ prog2 file > output2 $ diff output1 output2 more on PDFs: Kurt Pfeifle "PDF KungFoo" e-book: https://leanpub.com/pdfkungfoo-ws1-deu/ = Metadata = * exiftool + jhead * pdfinfo + qpdf = Problems = objects (apps, programs, software - hardware, computers, tools) are mostly NOT created by ourselves, but by others. can we TRUST them? we trust industrial norms. "it'll be alright." however, norms are mostly *suggestions* which are adopted and followed. but not always the law. when you have some knowledge and some tools then you can test things yourself. but even when you "own" an object (computer, game console, router, smartphone, tv) then checking it may not always be allowed. other examples: you must not look inside the motor of your car. you cannot check the clerks working at your bank. some data have undisclosed structures: proprietary formats. ("ein preisgeben der geheimnisse der gilde ist verboten") even creating programs which can read a proprietary format is verboten! :-( can we TRUST software we are not allowed to look at? (rememeber: some operating systems are a "business secret".) can we really afford to rely on companies and governments to trust on their black boxes? and even when it is allowed to look at data, eg with an anti-virus program: will it know about all those data formats so it can find viruses *inside* of it? (would you buy a computer with an extra CPU core just for running that ant-virus program? do the creators of anti-virus programs write new viruses themselves? and what about viruses in anti-virus programs?) do you trust the programs in the microprocessors in your car? do you trust the operating system of your computer? do you trust the apps on your smartphone? more abstractly: do you trust the digital glasses you were given? can you see with them clearly? can you see with them truly? how will we catch all those problems when we deny each other an open look? = Summary = open up the data/programs! create more glasses! and use (more) Free Software + Free Hardware! :-) whenever you use a computer - most programs act like glasses: you may only see a part of the contained data - in one way. more digital glasses, however, can be quite enlightening. therefore: try some other glasses, too! also talk to other people: "how do *you* see this? which (digital) *glass* do you use?" ("wie sehen sie das?", "welche (digitale) brille verwenden sie?") so: change your perspective now and then! 8-) and remember to ":smile" = this is the end = ★"The Doors" ... thank you for listening. ... any questions? = Author = Sven Guckes @guckes twitter clt2016@guckes.net email 8000R/0185391B 1024R/57F77F09 www.guckes.net homepage 52.52, 13.37 approx geolocation "we need transparent governments.. not transparent citizens." "a government which has nothing to hide need not be afraid of Wikileaks." ------------------------------------------------------------- = More = == Imagination == (digression) Imagination: the purest of all glasses? die erkennung von ideen durch die brille "mathematik". "die reinste form aller brillen"? some enlightenment.. through numbers: even numbers.. infitinitely many. odd numbers.. infitinitely many. 1:1 relation: an odd number 'o' paired with an even number - 'o+1'. the same amount of objects -> they are of the same size. so.. how big are these two sets *together*? how much do you have when take an infinity from an infinity? "infinity" is not an ordinal number. how much more is the size of the rational numbers - or the irrational numbers? == Intelligent Glass == ICE: die glastuer zum triebzeugführer. glas -> milchglaseffekt. https://de.wikipedia.org/wiki/Intelligentes_Glas -> linked film maybe: https://de.wikipedia.org/wiki/Einwegspiegel == Transparency for the Win == transparent solar cells: turn a building into a battery. https://www.youtube.com/watch?v=IZ__PjmC6Fg Invisible Solar Cells That Could Power Skyscrapers == The Glass Cloud == put data into some glass with laser technology: https://www.youtube.com/watch?v=GzaI3Md8Liw laser photo engraving, China laser engraving machine how much data goes into one glass block? does all your data fit in there maybe? how about a backup in a glass block? == Copy Machines == copying - through a glass. here the machines looks through a glass to scan the data on the medium paper. illumination and transparency is necessary. function: they are taking a look - do rastering with pixels. and produce a copy.. whatever it is. NOT! because not everything shall be copied. refuses to produces copies of notes and passports: https://de.wikipedia.org/wiki/EURion-Konstellation and printers leave traces: https://w2.eff.org/Privacy/printers/index.php https://w2.eff.org/Privacy/printers/docucolor/ so it is a mechanized eye - but with a filter! resulting copy includes little changes to indicate the machine as a watermark. "but nobody told us! this is unfair!" whatever is technologically possible *will* be done. legal or not. :-/ == transparent software == Open Source Free Software Free software is a matter of the users' freedom to run, copy, distribute, study, change and improve the software. CIDERS = "copy+change, improve, distribute, enhance, run, study." Open Access Open Data == from 2D to 3D == films are two-dimentional objects "on glass" of three-dimentional objects. how would this look like when you turn this around? -> https://www.youtube.com/watch?v=XqbGgeK5628 the shapeshifting display - from 2D to 3D. the picture we see is a 3D sculpture created in real time from your 2D picture. == Data Colouring == colouring of text, eg "ACGT" sequences. -> GATTACA http://www.imdb.com/title/tt0119177/ "A genetically inferior man assumes the identity of a superior one in order to pursue his lifelong dream of space travel." -> https://en.wikipedia.org/wiki/Human_Genome_Project == Farben == how many colours can we really perceive? on screen: EGA, VGA, .. 4, 8, 16, ..256. pantone system: 1755 colours https://de.wikipedia.org/wiki/Pantone_Matching_System https://de.wikipedia.org/wiki/Magenta_%28Farbe%29 Telekom (seit 1995): Farb-Marke "magenta" CMYK: 6 100 0 0 hex: #e20074 sRGB: 226-0-116 Pantone: Process Magenta. rainbow. -> nyancat which and how many colours can we possibly perceive? men vs women: perception of colours https://streisel.files.wordpress.com/2013/08/how-men-and-women-view-color.jpg http://www.geekinheels.com/wp-content/uploads/2011/04/how_men_and_women_see_colors.jpg = Film as Text = mplayer: MPEG -> ASCII please dont let me be misunderstood Aretha Franklin - photos Aint no Sunshine Sultans of Swing - bunt, aber nicht der kicker HAIR .. Mungo Jerry "in the summertime"? I GOT THE POWER! Born to be Wild Bad to the Bone House of the Rising Sun Fade to Grey? What a Wonderful World braucht eine groessere aufloesung als 46x128 = Random Art = show the server's public key: $ /etc/ssh/ssh_host_rsa_key.pub show its fingerprint ("-l"): $ ssh-keygen -l -f /etc/ssh/ssh_host_rsa_key.pub show its fingerprint with random art (add "-v"): $ ssh-keygen -l v -f /etc/ssh/ssh_host_rsa_key.pub 2048 4f:1b:89:4b:18:1e:c3:a9:05:5d:c3:84:cc:2e:5c:be root@impala (RSA) +--[ RSA 2048]----+ | .+ =+ | | o*... | | . +B | | o+o= . . | | ..o.S + | | E. + o | | . o | | | | | +-----------------+ show "random art" animation to a given string: $ cd stitchcode; sleep 3; sh randomart_anim.sh = Email Attachments = emails can be multi-part, including files as "attachments". but did you know that gpg keys can also contain photos? - container formats! PDF MPEG etc = Viewers = $ command1 | command2 how to "see" the data flow? pv - to show data throughput $ less =pv $ strings =pv $ cd ~/.P/clt/data $ ogginfo *ogg view on file system: mc (midnight commander) photo in terminal: cacaview (caca-utils) cacaclock -> show current time cacademo -> show some rendering = Hiding = adding my public key as a comment to my picture: format: $ convert -comment @commentfile picture picture.new example: $ convert -comment @0185391B.2015-12-19.minimal.asc sil200.jpg sil200.0185391B.jpg = ZIP = adding my key as a comment to a ZIP archive: $ zip -z null.zip < 0185391B.2016-01-01.minimal.asc = Watermarks = more! = Mailers = "intentional hiding" hiding previous emails.. even if there are no references. o_O = NOT! = what this isnt: a look at the processes on the computer. vim: set et ft=sven tw=999 nowrap: THPXRF EOF