Keamanan Privacy

Membangun Privasi Langsung ke Dalam Kode Perangkat Lunak

Ketika saya berusia 15 tahun, orang tua saya tidak mengizinkan saya menggunakan AOL Instant Messenger. Semua teman saya menggunakannya, jadi saya harus mencari cara untuk mengatasi aturan ini. Saya akan tahu jika saya menginstal perangkat lunak di komputer saya, jadi saya menggunakan versi browser web sebagai gantinya. Cukup cerdas untuk menghapus riwayat internet saya setiap kali, saya pikir obrolan saya adalah rahasia.

Kemudian suatu hari ibu saya mengonfrontasi saya dengan semua waktu yang saya gunakan di Instant Messenger selama seminggu terakhir. Setiap kali saya mengunjungi situs tersebut, ada jejak cookie yang tertinggal. Dimaksudkan untuk membuat pengalaman pengguna saya lebih nyaman, cookie menyimpan informasi login saya untuk kunjungan berulang. Sayangnya, cookie membuat hidup saya kurang nyaman: Ibu saya tahu cara memeriksanya untuk menentukan kapan saya menerima pesan instan ilegal.

Sejak itu, saya sangat tertarik untuk melindungi privasi pengguna. Saya belajar ilmu komputer di perguruan tinggi dan akhirnya mengejar karir di lapangan. Saya menjadi terpesona dengan bahasa pemrograman, bahan konstruksi untuk era informasi. Bahasa membentuk bagaimana pemrogram berpikir tentang perangkat lunak dan bagaimana mereka membangunnya. Dengan membuat tugas tertentu lebih mudah dan tugas lainnya lebih sulit. Misalnya, beberapa bahasa memungkinkan pembuatan prototipe situs web dengan cepat, tetapi tidak menangani lalu lintas dalam jumlah besar dengan baik.

Mengenai minat utama saya, saya menemukan. Bahwa banyak bahasa yang paling umum saat ini mempersulit pemrogram untuk melindungi privasi dan keamanan pengguna. Cukup buruk bahwa keadaan ini berarti pemrogram memiliki banyak peluang untuk membuat kesalahan yang melanggar privasi. Lebih buruk lagi, itu berarti pengguna kami kesulitan memahami apa yang dilakukan program komputer dengan informasi kami. Bahkan saat kami semakin bergantung padanya dalam kehidupan sehari-hari.

Sejarah Ketidakamanan

Sebagai bagian dari generasi pertama yang menginjak usia di internet, saya menikmati manfaat berpartisipasi dalam kehidupan digital. Seperti mengirim pesan instan ke teman-teman saya ketika saya seharusnya mengerjakan pekerjaan rumah. Saya juga tahu ada potensi kebocoran informasi yang tidak diinginkan.

Seorang yang saat itu naksir pernah memberi tahu saya bahwa dia memanfaatkan peluang Facebook yang singkat. Untuk menemukan bahwa saya termasuk di antara lima penguntit teratasnya. Untuk waktu yang singkat, saat pengguna mengetik “. “Ke dalam bilah pencarian, pencarian yang dilengkapi otomatis adalah pengguna yang paling banyak mencari mereka. Saya malu, dan menghindari browsing biasa di Facebook untuk sementara waktu.

Krisis sosial kecil ini adalah hasil dari masalah pemrograman, kombinasi dari kesalahan programmer manusia. Dan kekurangan bahasa dan lingkungan tempat manusia itu bekerja. Dan kami tidak dapat menyalahkan programmernya, karena bahasa yang digunakan Facebook tidak dibuat dengan mempertimbangkan keamanan dan privasi modern. Mereka membutuhkan programmer untuk mengatur semuanya dengan tangan.

Menyebarkan Perlindungan ke Seluruh Program

Saat bahasa lama itu berkembang menjadi lingkungan pemrograman saat ini, keamanan dan privasi tetap sebagai add-on, bukan fungsi otomatis bawaan. Meskipun programmer mencoba untuk menjaga instruksi untuk fungsi yang berbeda tetap terpisah. Kode yang didedikasikan untuk menegakkan privasi dan masalah keamanan bercampur dengan kode lain. Dan menyebar ke seluruh perangkat lunak.

Sifat desentralisasi dari kebocoran informasi inilah yang memungkinkan ibu saya menangkap saya mengirim pesan. Peramban web yang saya gunakan menyimpan bukti obrolan rahasia saya di lebih dari satu tempat. Baik dalam riwayat situs apa yang saya kunjungi dan di jejak cookie yang saya tinggalkan. Membersihkan hanya satu dari mereka membuatku rentan terhadap pengawasan ibuku.

Jika program telah dibangun sedemikian rupa sehingga semua bukti aktivitas saya ditangani bersama-sama. Dapat diketahui bahwa ketika saya menghapus history, saya ingin cookie dihapus juga. Tapi ternyata tidak, tidak dan saya tertangkap.

Membuat Programmer Melakukan Pekerjaannya

Masalahnya menjadi lebih sulit dalam sistem online modern. Pertimbangkan apa yang terjadi jika saya membagikan lokasi saya – katakanlah Disney World – di Facebook dengan teman yang ada di sekitar. Di Facebook, lokasi ini akan ditampilkan di “timeline” saya. Tapi itu juga akan digunakan untuk tujuan lain. Pengunjung halaman Facebook Disney World dapat melihat siapa dari teman mereka yang juga pernah ke taman hiburan. Saya dapat memberi tahu Facebook untuk membatasi siapa yang dapat melihat informasi tentang saya. Sehingga orang yang tidak saya kenal tidak dapat membuka halaman Disney World. Dan melihat “Jean Yang check in 1 jam yang lalu”.

Merupakan tugas programmer untuk menegakkan batasan privasi ini. Karena kode terkait privasi tersebar di semua program yang digunakan Facebook untuk menjalankan sistemnya, pemrogram harus waspada di mana-mana. Untuk memastikan tidak ada yang tahu di mana saya berada kecuali saya menginginkannya. Programmer harus memberi tahu sistem untuk memeriksa pengaturan privasi saya di mana pun ia menggunakan nilai lokasi saya. Secara langsung atau tidak langsung.

Setiap kali programmer menulis instruksi untuk merujuk ke lokasi saya – saat menampilkan profil saya. Halaman Disney World, hasil pertanyaan seperti “teman di Disney World” dan banyak tempat lain.  Dia harus ingat untuk menyertakan instruksi untuk memeriksa privasi saya pengaturan dan bertindak sesuai.

Ini menghasilkan jalinan kode yang menghubungkan aturan dan implementasinya. Mudah bagi pemrogram untuk membuat kesalahan, dan sulit bagi orang lain untuk memeriksa bahwa kode melakukan apa yang seharusnya dilakukan.

Mengalihkan Beban ke Komputer

Cara terbaik untuk menghindari masalah ini adalah dengan mengambil tugas perlindungan privasi dari manusia dan mempercayakannya ke komputer itu sendiri. Kami dapat – dan harus – mengembangkan model pemrograman. Yang memungkinkan kami untuk lebih mudah memasukkan keamanan dan privasi ke dalam perangkat lunak. Penelitian sebelumnya dalam apa yang disebut “aliran informasi berbasis bahasa” melihat bagaimana secara otomatis memeriksa program. Untuk memastikan bahwa program yang ceroboh tidak secara tidak sengaja melanggar privasi atau aturan perlindungan data lainnya.

Bahkan dengan alat yang dapat memeriksa program, bagaimanapun, programmer perlu melakukan tugas berat menulis program yang tidak membocorkan informasi. Ini masih melibatkan penulisan pemeriksaan privasi padat karya dan rawan kesalahan di seluruh program. Pekerjaan saya pada model pemrograman baru yang disebut “pemrograman kebijakan-agnostik” berjalan selangkah lebih jauh. Membuat pemrograman yang ceroboh menjadi tidak mungkin. Dalam sistem ini, programmer melampirkan batasan keamanan dan privasi secara langsung ke setiap nilai data.

Misalnya, mereka dapat memberi label lokasi sebagai informasi yang membutuhkan perlindungan. Program itu sendiri akan memahami bahwa lokasi “Disney World” saya harus ditampilkan hanya kepada teman dekat saya. Mereka dapat melihatnya tidak hanya di halaman saya sendiri, tetapi di halaman Disney World.

Tetapi orang yang tidak saya kenal akan diberi nilai yang kurang spesifik di kedua tempat. Mungkin teman teman saya mungkin melihat “jauh dari rumah”. Dan orang yang benar-benar asing hanya dapat mengetahui bahwa saya berada “di Amerika Serikat”. Melihat halaman saya, mereka tidak akan tahu persis di mana saya berada. Dan jika mereka membuka halaman Disney World, saya juga tidak akan muncul di sana.

Kesimpulan

Dengan jenis struktur ini, manusia tidak perlu lagi menulis kode untuk berulang kali memeriksa informasi mana yang harus dibagikan; sistem komputer menanganinya secara otomatis. Artinya, ada satu hal yang perlu dipikirkan pemrogram. Ini juga membantu pengguna merasa lebih yakin bahwa beberapa elemen dari perangkat lunak yang rumit. Apalagi kesalahan manusia – tidak akan melanggar setelan privasi pribadi mereka.

Dengan program perangkat lunak yang menangani mengemudi, berbelanja, dan bahkan memilih tanggal potensial. Kami memiliki masalah yang jauh lebih besar daripada ibu kami yang melihat cookie internet kami. Jika komputer kita dapat melindungi privasi kita, itu akan menjadi peningkatan besar bagi dunia kita yang berubah dengan cepat.…

Komputer pertama berharga jutaan dolar dan dikunci di dalam ruangan yang dilengkapi sirkuit listrik khusus dan AC. Satu-satunya orang yang dapat menggunakannya telah dilatih untuk menulis program dalam bahasa komputer tertentu. Saat ini, interaksi berbasis gerakan, menggunakan bantalan multisentuh dan layar sentuh. Dan eksplorasi ruang 3D virtual memungkinkan kita berinteraksi dengan perangkat digital. Dengan cara yang sangat mirip dengan cara kita berinteraksi dengan objek fisik.

Dunia baru yang imersif ini tidak hanya terbuka untuk dialami lebih banyak orang; itu juga memungkinkan hampir semua orang untuk melatih kreativitas dan kecenderungan inovatif mereka sendiri. Kemampuan ini tidak lagi bergantung pada ahli matematika atau ahli pengkodean. “A-Frame” dari Mozilla membuat tugas membangun model realitas virtual yang kompleks menjadi jauh lebih mudah bagi pemrogram. Dan perangkat lunak “Kuas Virtual” Google memungkinkan orang untuk membangun dan mengedit dunia 3D tanpa keahlian pemrograman sama sekali.

Penelitian saya sendiri berharap dapat mengembangkan fase berikutnya dari interaksi manusia-komputer. Kami memantau aktivitas otak orang-orang secara real time dan mengenali pemikiran tertentu (tentang “pohon” versus “anjing” atau topping pizza tertentu). Ini akan menjadi satu lagi langkah dalam perkembangan sejarah yang telah membawa teknologi ke massa. Dan akan semakin memperluas penggunaannya di tahun-tahun mendatang.

Mengurangi Keahlian yang Dibutuhkan

Dari komputer awal yang bergantung pada bahasa pemrograman khusus mesin. Peningkatan besar pertama yang memungkinkan lebih banyak orang menggunakan komputer adalah pengembangan bahasa pemrograman Fortran. Ini memperluas jangkauan programmer menjadi ilmuwan. Dan insinyur yang merasa nyaman dengan ekspresi matematika. Ini adalah era kartu berlubang, ketika program ditulis dengan melubangi stok kartu. Dan keluarannya tidak memiliki grafik – hanya karakter keyboard.

Pada akhir 1960-an, pembuat plot mekanis membiarkan pemrogram menggambar gambar sederhana dengan menyuruh komputer menaikkan atau menurunkan pena. Dan memindahkannya ke jarak tertentu secara horizontal atau vertikal di atas selembar kertas. Perintah dan grafiknya sederhana, tetapi bahkan menggambar kurva dasar memerlukan pemahaman trigonometri. Untuk menentukan interval yang sangat kecil dari garis horizontal dan vertikal yang akan terlihat seperti kurva setelah selesai.

Tahun 1980-an memperkenalkan apa yang telah menjadi antarmuka jendela, ikon, dan mouse yang sudah dikenal. Itu memberi para nonprogramer waktu yang jauh lebih mudah untuk membuat gambar – sedemikian rupa sehingga banyak penulis. Dan seniman komik berhenti menggambar dengan tinta dan mulai bekerja dengan tablet komputer. Film animasi menjadi digital, karena programmer mengembangkan alat berpemilik yang canggih untuk digunakan oleh animator.

Alat yang lebih sederhana tersedia secara komersial untuk konsumen. Pada awal 1990-an pustaka OpenGL memungkinkan pemrogram untuk membangun model digital 2D dan 3D. Dan menambahkan warna, pergerakan dan interaksi ke model ini.

Bentuk Baru Tampilan 3D

Dalam beberapa tahun terakhir, tampilan 3D telah menjadi jauh lebih kecil. Dan lebih murah daripada CAVE multi-juta dolar dan sistem imersif serupa di tahun 1990-an. Mereka membutuhkan ruang dengan lebar 30 kaki, panjang 30 kaki. Dan tinggi 20 kaki agar sesuai dengan sistem proyeksi belakang mereka. Sekarang pemegang smartphone dapat memberikan tampilan 3D pribadi dengan harga kurang dari US $100.

Antarmuka pengguna juga menjadi lebih kuat. Bantalan multisentuh dan layar sentuh mengenali gerakan beberapa jari di permukaan, sedangkan perangkat seperti Wii. Dan Kinect mengenali gerakan lengan dan kaki. Sebuah perusahaan bernama Fove telah bekerja untuk mengembangkan headset VR yang akan melacak mata pengguna. Dan yang akan, di antara kemampuan lainnya, memungkinkan orang melakukan kontak mata dengan karakter virtual.

Merencanakan Jangka Panjang

Penelitian saya sendiri membantu mengarahkan kita menuju apa yang disebut “komputasi dengan kecepatan berpikir”. Proyek open-source berbiaya rendah seperti OpenBCI memungkinkan orang menyusun neuroheadset mereka sendiri yang menangkap aktivitas otak secara noninvasif.

Sepuluh hingga 15 tahun dari sekarang, sistem perangkat keras/perangkat lunak. Yang menggunakan neuroheadset semacam itu dapat membantu saya dengan mengenali kata benda yang telah saya pikirkan dalam beberapa menit terakhir. Jika itu memutar ulang topik dari pemikiran saya baru-baru ini. Saya dapat menelusuri kembali langkah-langkah saya dan mengingat pikiran apa yang memicu pikiran terbaru saya.

Dengan lebih banyak kecanggihan, mungkin seorang penulis bisa memakai neuroheadset murah, membayangkan karakter, lingkungan dan interaksi mereka. Komputer dapat menyampaikan draf pertama cerita pendek, baik sebagai file teks. Atau bahkan file video yang menunjukkan adegan dan dialog yang dihasilkan dalam pikiran penulis.

Bekerja Menuju Masa Depan

Begitu pikiran manusia dapat berkomunikasi langsung dengan komputer, dunia baru akan terbuka di hadapan kita. Suatu hari, saya ingin bermain game di dunia virtual yang menggabungkan dinamika sosial seperti di game eksperimental “Prom Week” dan “Façade” dan di game komersial “Blood & Laurels”.

Jenis pengalaman ini tidak akan terbatas pada permainan game. Platform perangkat lunak seperti Versu yang disempurnakan dapat memungkinkan saya untuk menulis jenis game tersebut.  Mengembangkan karakter di lingkungan virtual yang sama yang akan mereka tempati.

Bertahun-tahun yang lalu. Saya membayangkan aplikasi yang dapat dimodifikasi dengan mudah yang memungkinkan saya memiliki tumpukan kertas virtual. Yang melayang di sekitar saya sehingga saya dapat dengan mudah mengambil. Dan menelusuri untuk menemukan referensi yang saya perlukan untuk sebuah proyek. Saya suka itu. Saya juga akan sangat menikmati bermain “Quidditch” dengan orang lain. Sementara kita semua mengalami sensasi terbang melalui monitor yang dipasang di kepala. Dan mengontrol sapu kita dengan memiringkan dan memutar tubuh kita.

Setelah rekaman gerak berbiaya rendah tersedia, saya membayangkan bentuk-bentuk baru penceritaan digital. Bayangkan sekelompok teman memerankan sebuah cerita, lalu mencocokkan tubuh mereka. Dan gerakan mereka yang ditangkap dengan avatar 3D untuk menghidupkan kembali kisah tersebut di dunia sintetis. Mereka dapat menggunakan beberapa kamera virtual untuk “memfilmkan” aksi dari berbagai perspektif, dan kemudian membuat video.

Kreativitas semacam ini dapat menghasilkan proyek yang jauh lebih kompleks, semua disusun dalam benak pembuat konten dan dijadikan pengalaman virtual. Sejarawan amatir tanpa keterampilan pemrograman suatu hari nanti mungkin dapat membangun sistem augmented reality. Di mana mereka dapat menempatkan gambar-gambar pilihan dunia nyata dari foto bersejarah. Atau model digital bangunan yang sudah tidak ada lagi ke pemandangan dunia nyata. Akhirnya mereka dapat menambahkan avatar yang dapat digunakan untuk berkomunikasi dengan pengguna. Seiring kemajuan teknologi dan semakin mudah digunakan, diorama yang dibuat dari karton, tanah liat pemodelan. Dan ranting oleh anak-anak 50 tahun yang lalu suatu hari nanti dapat menjadi ruang virtual seukuran kehidupan yang dapat dieksplorasi.…