Tangkapan layar formulir untuk bukti hukum mengklik salah satu kotak centang?

45

Kami mendapat permintaan dari salah satu pelanggan kami, dan karena saya belum pernah menemukan permintaan seperti itu sebelumnya, saya bahkan tidak tahu harus mulai dari mana.

Pelanggan kami adalah jaringan perguruan tinggi, dan kami sedang membangun situs untuk mereka. Di situs itu, antara lain, akan menjadi formulir yang dapat diisi oleh calon pelamar untuk mendapatkan info lebih lanjut tentang studi di salah satu perguruan tinggi. Setelah pengguna mengisi formulir ini - termasuk memberikan email dan / atau nomor telepon mereka - perguruan tinggi yang relevan kemudian menghubungi mereka dengan info yang relevan.

Sekarang, untuk alasan hukum, klien meminta formulir ini juga memiliki kotak centang yang diperiksa calon pemohon untuk menunjukkan bahwa mereka setuju untuk mendapatkan materi promosi dari perguruan tinggi ini. Itu tentu saja tidak masalah. Tapi inilah bagian aneh dari permintaan itu:

Rincian setiap formulir yang telah diisi harus disimpan dalam metode yang andal. Tampaknya, menyimpan nilai formulir dalam database - kolom yang menunjukkan apakah pengguna setuju atau tidak setuju - tidak cukup, karena DB dapat diubah setelah pengguna mengirim formulir. Klien kami mengklaim bahwa portal perguruan tinggi lain membuat tangkapan layar dari formulir yang diisi, dan menyimpannya di suatu tempat dalam folder khusus, dengan cara yang mudah ditemukan, seperti memberi file nama yang menyertakan nama pengguna, dan tanggal dan waktu.

Pertanyaan saya adalah sebagai berikut: pernahkah Anda mendengar tentang menggunakan tangkapan layar sebagai metode pembuktian pengguna yang sebenarnya telah mengisi formulir? Apakah ada metode lain yang dianggap dapat diandalkan?

Lea Cohen
sumber
96
Cuplikan layar dapat dimodifikasi juga - terutama jika hanya disimpan di disk di suatu tempat.
ChrisF
41
Biar saya tebak: itu adalah seorang profesor ilmu komputer yang datang dengan ide ini. Beberapa dari orang-orang ini fantastis. Saya tidak tahu bagaimana mereka melakukannya, tetapi ide-ide yang mereka hasilkan sering kali tidak nyata seolah-olah mereka itu asam.
Mike Nakis
32
Tunggu - mereka menyimpan alamat email dan informasi pribadi lainnya dalam database, tetapi "masalah keamanan" yang mereka khawatirkan adalah apakah pengguna itu secara keliru mendapat email promosi?
Wonko the Sane
11
"dalam folder yang tidak mudah ditemukan" - aah, Keamanan melalui ketidakjelasan! Itu jauh lebih aman daripada database yang disimpan di server yang aman, yang memerlukan kredensial masuk dll untuk ...
Dave
19
Bahkan lebih baik daripada tangkapan layar jika Anda bisa menangkap klip video dari webcam mereka dengan anggukan dan memberikan tanda 'jempol' besar. Sekarang ITULAH akan menjadi bukti!
GrandmasterB

Jawaban:

74

Saya belum pernah mendengar hal seperti itu, dan itu akan menggelikan, karena tangkapan layar palsu dapat dibuat semudah nilai palsu di dalam basis data.

EDIT Selain itu, maksud saya, WTF? karena Anda tidak bisa mendapatkan tangkapan layar layar seseorang melalui web, Anda jelas harus merekonstruksi halaman di server dan mengambil tangkapan layar itu, lalu siapa yang mengatakan Anda tidak memeriksanya?

Mike Nakis
sumber
1
+1 Poin bagus, saya tidak menganggap bahwa secara teknis dapat menjalankan browser terprogram untuk membuat HTML dan kemudian mungkin mengirim halaman ke dokumen PDF yang menciptakan driver cetak.
maple_shaft
seperti memang dilakukan secara teratur. Ini akan sangat mudah dilakukan, pada prinsipnya Anda hanya bisa mengirim data yang sama ke 2 xsl: fo templat, satu membuat html dan pdf lainnya (saya sebenarnya sudah melakukan ini di masa lalu).
jwenting
1
@jwenting Terlepas dari apa yang MikeNakis tunjukkan, ini masih bisa dirusak. Anda harus menggunakan PDF bertanda tangan elektronik atau membuat hash dari gambar sehingga Anda menggunakannya untuk memvalidasi tangkapan layar yang belum dirusak.
maple_shaft
24
"sama mudahnya"? Tangkapan layar palsu jauh lebih mudah daripada meretas basis data!
Jesvin Jose
4
Kami melakukan ini di beberapa aplikasi yang saya buat .. Secara teknis ini bukan "tangkapan layar" tetapi untuk tujuan audit kita harus "merekonstruksi" sesi seperti pada saat itu. Kami mencapainya dengan menyimpan data dari formulir yang dikirimkan dan kemudian merekonstruksinya nanti. Namun setelah mengatakan itu, itu baru saja disimpan dalam database dan "tangkapan layar" hanyalah rekonstruksi data yang telah kami simpan. Itu hanya terlihat cantik untuk orang yang menginginkannya.
Deco
35

Saya tahu bahwa saya memulai jawaban ini dengan sebuah pertanyaan tetapi saya ada benarnya:

Tanpa menelepon untuk mempertanyakan absurditas permintaan, jika ini adalah aplikasi web berbasis browser HTTP khas, bagaimana cara seseorang menangkap tangkapan layar secara sistematis dan mengirimkannya ke server?

Saya berharap ini tidak mungkin karena akan mewakili masalah keamanan browser dan privasi yang serius.

Sekarang bayangkan jika nomor kartu kredit seseorang juga ada di layar pada saat pengambilan tangkapan layar. Sekarang Anda secara tidak sengaja menangkap informasi kartu kredit dan sistem Anda sekarang harus memenuhi PCI. Ini adalah jalan perhatian yang lain sama sekali.

Satu-satunya cara untuk melakukannya mungkin akan menggunakan plugin browser pihak ketiga seperti, Flash, Silverlight, Java Applets, atau kontrol ActiveX dengan hak istimewa sistem yang ditingkatkan. Komponen harus ditandatangani dan pengguna harus menyetujui komponen yang memiliki akses untuk menjalankan kode pada mesin mereka.

Ada terlalu banyak lubang dengan rencana ini dan saya sangat ragu bahwa perguruan tinggi lain menerapkan sesuatu yang serupa. Saya pasti belum pernah mendengar ini dalam karir profesional saya, setidaknya tidak dengan aplikasi web.

SUNTING:

Saya hanya memikirkan opsi lain yang mungkin akan lebih mencerminkan apa yang saya pikir klien Anda benar-benar minta.

Saya punya aplikasi yang saya lakukan untuk klien di mana klien harus setuju dan menandatangani dokumen NDA untuk mendapatkan akses ke aplikasi. Saya mencapainya melalui dokumen PDF yang bisa ditandatangani. Anda dapat memiliki bidang tanda tangan dalam dokumen PDF yang dengan menggunakan komponen pena + pad USB atau hanya dengan mengkliknya untuk mengetahui kehendak untuk tujuan hukum sama baiknya seperti jika Anda harus menandatangani dokumen secara fisik dengan tangan.

Ini disebut tanda tangan elektronik dan mereka bertahan di pengadilan.

Dokumen PDF setelah ditandatangani menjadi dienkripsi dan hash disimpan bersama dengan itu yang memverifikasi dokumen TIDAK dirusak setelah menandatangani. Pembaca PDF modern seperti Adobe sebenarnya dapat mengirimkan dokumen yang ditandatangani ke server tempat Anda dapat menyimpannya dalam sistem manajemen dokumen atau basis data untuk penyimpanan yang aman.

Kapan pun pengguna administrator dapat menarik kembali salah satu dari dokumen ini dan mencetaknya.

Ini mungkin lebih sesuai dengan apa yang sebenarnya dibutuhkan pelanggan Anda, tetapi memiliki waktu yang buruk untuk menjelaskan dengan benar.

maple_shaft
sumber
1
+1 untuk menyebutkan bahwa ini secara teknis memungkinkan, tetapi akan memerlukan plug in
bunglestink
10
Jadi apa yang menghentikan Anda dari mengganti PDF dengan yang Anda tandatangani sendiri? Sejauh yang saya tahu, tidak ada infrastruktur kunci publik yang kuat untuk menangani identitas individu.
Random832
1
@ Random832 Sekakmat teman saya, Anda mengerti! Saya kira tidak ada jawaban aman 100%. Sistem apa pun dapat dikompromikan.
maple_shaft
3
Ini tentu tidak membutuhkan plug in; perhatikan bahwa alat umpan balik terbaru Google (di Google Plus dan Youtube) benar-benar melakukan "tangkapan layar" ini. Anda dapat dengan mudah mengirim semua HTML pada halaman saat ini melalui JAvascript dan menggunakan style sheet yang tepat untuk merekonstruksi seperti apa gambar itu nantinya. Tentu saja ini ^% & tidak masuk akal karena Anda hanya dapat mengirim nilai dari kotak centang.
Ben Brocka
Saya telah menulis widget yang menangkap gerakan mouse dalam elemen KANVAS dan membuat serialisasi waktu yang diambil, X, Y kembali ke server. Saya tidak sepenuhnya yakin apa status hukum dari "tanda tangan" itu (itu bisa diubah dan cukup mudah untuk disalin) tetapi jika ini adalah satu-satunya hal yang mereka "tandatangani" pada sistem, akan sulit untuk menjelaskan bagaimana Anda mendapatkan data itu jika mereka tidak setuju. (Saya tidak tahu apa yang terjadi jika mereka memiliki adik laki-laki mereka menandatangani "pizza", tetapi PDF menderita masalah yang sama).
psr
27

Saya pikir pertanyaan sebenarnya adalah apakah orang yang namanya muncul di formulir benar-benar mengisi formulir?

Dengan kata lain jika seseorang pergi ke situs web dan memasukkan nama "Bill Gates" dan mengklik kotak "tidak apa-apa mengirimi saya email" bagaimana tangkapan layar membuktikan itu adalah Bill Gates yang asli?

Sudahkah mereka mempertimbangkan untuk melakukan apa yang dilakukan oleh banyak situs dan mengirimkan email verifikasi dengan tautan unik yang harus diklik seseorang untuk mengonfirmasi? Dengan begitu setidaknya Anda memiliki catatan bahwa Anda memiliki konfirmasi dari seseorang yang memiliki akses ke akun email itu.

JonnyBoats
sumber
4
Persis. Email verifikasi untuk memastikan bahwa orang yang meminta email memiliki kendali atas alamat email yang dimaksud. Saya juga menambahkan bahwa alih-alih memiliki catatan resmi tentang orang yang meminta materi promosi, bahwa Anda hanya mematuhi Undang - Undang CAN SPAM dan membuatnya sangat mudah untuk berhenti berlangganan materi promosi Anda. (Setiap email yang mengirim materi promosi meskipun oleh pihak ketiga memiliki tautan untuk berhenti berlangganan ke semua daftar yang Anda masukkan.)
dr jimbob
20

Mana ada

Diskusi ini perlu dimulai dengan pemahaman bahwa tidak ada cara untuk benar - benar membuktikan bahwa orang tersebut setuju. Ini benar bahkan di dunia fisik. Bahkan jika Anda merekam orang tersebut secara fisik menandatangani formulir dan meletakkan setetes darah mereka di formulir, mereka dapat mengatakan bahwa video itu palsu, darah diambil dari mereka tanpa sepengetahuan mereka, dan tanda tangannya dipalsukan. Tetapi bukti absolut tidak diperlukan; hanya sejumlah bukti yang masuk akal.

Di dunia digital, semua data - teks, gambar, data dalam database, atau email - dapat dipalsukan. Hal yang paling dekat dengan bukti yang dapat kita miliki adalah bagi pengguna untuk mengenkripsi sesuatu menggunakan kunci pribadi dan menunjukkan bahwa kunci publik mereka akan mendekripsi itu. Namun, ini saat ini di luar kemampuan sebagian besar pengguna, dan mereka masih bisa mengatakan kunci pribadi mereka dicuri.

Yang terbaik yang bisa kita lakukan adalah:

  • Dapatkan sesuatu yang akan sulit (meskipun bukan tidak mungkin) untuk dipalsukan
  • Setuju bahwa, secara hukum, bukti itu sudah cukup
  • Memudahkan pengguna untuk berhenti berlangganan

Menyimpan gambar daripada teks tidak menambahkan apa-apa dalam hal pembuktian; yang dilakukannya hanyalah membuat prosesnya lebih lambat dan lebih mahal.

Tanda Tangan Elektronik

Dalam pekerjaan saya, kami memiliki aplikasi tempat pengguna menandatangani pernyataan. Secara hukum, yurisdiksi tempat kami beroperasi telah mengeluarkan undang-undang yang mengatakan bahwa pengguna mengetik alamat email mereka ke dalam formulir dapat dihitung sebagai tanda tangan elektronik. Kami telah memverifikasi bahwa mereka memiliki akses ke alamat dengan mengirimkan tautan yang harus mereka klik. Itu bukan bukti absolut, tetapi sudah dianggap cukup baik untuk tujuan kita.

Apa pun informasi yang Anda tangkap, saya sarankan juga mengambil cap waktu , sehingga Anda dapat mengatakan "Anda setuju pada tanggal dan waktu yang tepat ini". Saya tidak yakin apakah itu memiliki relevansi hukum, tetapi tampaknya lebih meyakinkan bagi saya, karena memberikan lebih banyak kesempatan bagi pengguna untuk membuktikan sebaliknya ("Saya punya bukti bahwa saya tidak berada di depan komputer pada waktu itu", misalnya ).

Gila dengan itu

Beberapa hal yang bisa Anda lakukan yang mungkin dianggap sebagai bukti:

  • Abadikan cap waktu, IP, browser, dll, sehingga Anda dapat menegaskan keadaan tanda tangan
  • Membutuhkan verifikasi alamat email
  • Mengharuskan pengguna untuk memasukkan kata sandi mereka pada saat tanda tangan
  • Aturlah agar ada layanan web pihak ketiga yang hanya menulis yang akan menerima, pada saat pengguna menandatangani, sebuah HTTPS POST dari aplikasi Anda dengan info tanda tangan. Jika pihak ketiga dapat bersaksi bahwa layanan mereka hanya untuk menulis, bahwa mereka menerima catatan pada saat itu, dan salinan Anda identik, Anda dapat menyatakan bahwa Anda belum mengubah data sejak saat itu.
  • Kirim email kepada pengguna pada saat itu mengatakan "terima kasih telah mendaftar, berikut ini cara berhenti berlangganan." Penyedia email mereka atau Anda mungkin dapat menunjukkan bahwa email itu dikirim tepat setelah pengguna masuk.

IANAL

Tolong jangan mengambil semua ini sebagai nasihat hukum.

Nathan Long
sumber
Jawaban bagus ... tapi alamat surel sebagai tanda tangan elektronik juga masih diperdebatkan secara hukum. Anda benar, tidak ada cara yang terbukti mutlak. Hanya nuansa yang berbeda lebih sulit. Sistem hukum bekerja dengan keraguan yang masuk akal. Kebanyakan orang akan setuju bahwa pekerjaan untuk memalsukan video, mencuri darah dan memalsukan tanda tangan bukanlah kemungkinan yang masuk akal. Mungkinkah itu terjadi? Ya tentu saja tetapi tentu saja sangat tidak mungkin ada orang yang akan menghadapi masalah itu.
maple_shaft
1
"... dan mereka masih bisa mengatakan kunci publik mereka dicuri." seharusnya tidak berbunyi "... dan mereka masih bisa mengatakan kunci pribadi mereka dicuri." Kunci publik yang dicuri tidak menimbulkan masalah keamanan, di PKI yang dirancang dengan baik.
Lie Ryan
capturing a timestamptidak berguna. Saat ini, cukup mudah bagi pengguna biasa untuk membuat browser atau otomatisasi desktop untuk menjadwalkan pengisian formulir di masa mendatang.
Lie Ryan
10

Pilihan lain adalah untuk mencatat Posting HTTP mentah dari klien. Ini akan memiliki IP mereka, dari mana mereka berasal, browser apa, dll., Tanpa memerlukan tangkapan layar. Anda kemudian bisa login ini ke tabel hanya memasukkan dalam bentuk mentah, atau file log datar sederhana ...

Hanya mencoba memikirkan beberapa opsi lain karena saya cenderung mengalami permintaan konyol seperti ini lebih sering daripada yang saya inginkan ...

bunglestink
sumber
Hmm ya tapi log itu di database yang sama bahwa mereka khawatir dirusak. Lihat hasil edit dalam jawaban saya, dokumen PDF bertanda tangan elektronik adalah satu-satunya cara untuk memastikan dokumen tersebut tidak dirusak.
maple_shaft
1
@maple_shaft: Gagasan dasar untuk menambahkan keamanan basis data tambahan adalah izin "sisipkan saja" untuk semua pengguna kecuali satu admin. Log ini akan menjadi tambahan untuk aktivitas basis data reguler, dan hanya akan digunakan untuk verifikasi bila diperlukan.
bunglestink
1
@JonnyBoats: Secara teknis Anda benar tentang HTTPS, meskipun begitu diterima di tingkat aplikasi, Anda akan memiliki teks mentah yang sama yang sedang dicatat.
bunglestink
1
"dokumen PDF yang ditandatangani secara elektronik" atau apa pun yang ditandatangani secara elektronik "adalah satu-satunya cara untuk memastikan dokumen tersebut tidak dirusak" kecuali oleh seseorang yang memiliki kunci untuk ditandatangani.
Random832
1
@ Random832: itu bisa dilakukan jika kunci pribadi untuk dokumen tersebut disediakan oleh pengguna, IMO yang terlalu berlebihan untuk sebuah kotak centang yang menunjukkan perjanjian untuk menerima materi promosi.
Lie Ryan
8

Tangkapan layar mudah dibuat, jika Anda ingin. Seperti halnya hashing, timestamping, dll, tanpa dasar kriptografi. Satu menganggap ada beberapa persyaratan peraturan yang ketat bagi perguruan tinggi untuk dapat membuktikan bahwa mereka memperoleh persetujuan positif sebelum mengirim materi pemasaran kepada orang-orang atau memperdagangkan informasi mereka ke pihak ketiga.

Satu-satunya cara yang dapat diandalkan untuk melakukan ini adalah dengan menuntut tanda tangan kriptografi dari pengguna. Sebagai contoh, lihat cara situs web http://launchpad.net meminta Anda untuk secara kriptografis menandatangani Kode Etik Ubuntu.

Ini hanya memiliki kekuatan hukum dalam yurisdiksi di mana tanda tangan kriptografis dapat digunakan pada dokumen hukum, tetapi dengan menandatangani sepotong teks tertentu, pengguna dapat memberikan bukti persetujuan mereka yang kemudian dapat diverifikasi. Hampir tidak mungkin bagi perguruan tinggi untuk memalsukan tanda tangan yang benar dari kunci publik yang sama.

Perhatikan bahwa masih sepele bagi perguruan tinggi untuk memperbarui database mereka, dan dengan demikian membalik bidang persetujuan, dan juga untuk mengganti kunci publik dengan yang lain yang mereka tahu kunci pribadi, dan menghasilkan tanda tangan valid untuk itu kunci.

Oleh karena itu tanpa kunci penandatangan pihak ketiga untuk membuktikan bahwa mereka milik individu tertentu, semua ini mencapai bahwa pengguna dapat memverifikasi apakah perguruan tinggi memalsukan pengaturan privasi mereka atau tidak - tanpa tanda tangan pihak ketiga, itu adalah kata mereka terhadap perguruan tinggi.

Jika Anda lebih lanjut mengharuskan semua kepemilikan kunci diverifikasi dan kunci ditandatangani oleh satu atau lebih pihak ketiga yang tepercaya, maka perguruan tinggi tersebut tidak akan dapat memalsukan tanda tangan yang tampaknya sah tanpa paparan yang jauh lebih banyak (mereka harus menipu atau mengkooptasi tepercaya pihak ketiga untuk mendapatkan kunci palsu mereka ditandatangani). Kesulitan serangan ini akan meningkat dengan jumlah tanda tangan pihak ketiga yang diperlukan, tetapi sebagai catatan poster lain, bukan tidak mungkin.

Jadi untuk meringkas:

  • Pengguna harus memiliki atau menghasilkan pasangan kunci pribadi / publik
  • Pengguna kemudian harus mendapatkan tanda tangan untuk kunci publik mereka dari satu atau lebih pihak ketiga yang tepercaya
  • Pengguna harus mengunggah kunci publik mereka, setidaknya ke kampus dan lebih disukai ke repositori kunci pihak ketiga
  • Pengguna harus menandatangani plaintext yang dikenal dan memberikan tanda tangan sebagai bukti bahwa mereka setuju untuk membagikan data pribadi mereka

Masalah praktis:

  • Hanya sedikit orang yang mengerti tanda tangan kriptografi
  • Biaya sertifikasi pihak ketiga bisa mahal
  • Ini sepertinya banyak pekerjaan untuk melindungi kotak centang junkmail di halaman pengunduhan prospektus perguruan tinggi
Adrian
sumber
8

Saya akan mulai dengan membaca tentang Tanda Tangan Elektronik untuk negara / negara klien dengan fokus mencari tahu metode dan persyaratan apa yang mengikat secara hukum. Saya yakin bahwa tidak ada negara atau negara bagian di pikiran waras mereka yang memerlukan tangkapan layar sebagai satu-satunya metode pembuktian untuk tanda tangan elektronik yang mengikat.

Misalnya, di AS 47 negara telah menerima Uniform Electronic Transactions Act , yang berlaku untuk "urusan pemerintahan" di antara hal-hal lain dan dengan demikian kemungkinan akan berlaku untuk persyaratan perguruan tinggi. Itu memiliki bagian-bagian berikut yang dapat membantu:

..

  • Tanda tangan elektronik - adalah suara elektronik, simbol, atau proses yang dilampirkan atau dihubungkan secara logis dengan rekaman dan dilaksanakan atau diadopsi oleh seseorang dengan maksud untuk menandatangani rekaman.

..

  • Bagian 7 memberikan pengakuan hukum untuk tanda tangan elektronik, catatan dan kontrak
    • (A) Catatan atau tanda tangan tidak dapat ditolak efek hukum atau keberlakuan semata-mata karena itu dalam bentuk elektronik.
    • (B) Kontrak tidak dapat ditolak efek hukum atau keberlakuan semata-mata karena catatan elektronik digunakan dalam pembentukannya.
    • (c) Jika suatu undang-undang mengharuskan catatan dibuat secara tertulis, catatan elektronik memuaskan hukum tersebut.
    • (D) Jika hukum membutuhkan tanda tangan, tanda tangan elektronik memenuhi hukum.

..

Setelah saya tahu hukumnya, saya akan memperkirakan biaya metode tanda tangan elektronik terbaik vs. biaya metode tangkapan layar.

Terakhir, saya akan membahas dengan mereka temuan saya. Pertama, saya akan menjelaskan kepada mereka opsi terbaik vs opsi yang diusulkan. Selanjutnya, saya akan menjelaskan kepada mereka jumlah waktu ini akan menambah proyek. Terakhir, jika saya berada di tempat untuk melakukannya, saya akan memberi tahu mereka bahwa "fitur" ini akan menambah x dolar ke tagihan akhir. Saya akan sangat yakin untuk menggunakan biaya tambahan untuk saya sebagai pembenaran untuk biaya tambahan kepada mereka.

Jika mereka masih tidak mau mengalah, saya akan melihat apakah mereka memiliki seorang pengawas dengan kewarasan yang sama, saya bisa mengadakan pertemuan yang sama.

* Saya bukan pengacara, jadi silakan mencari nasihat hukum jika Anda tidak yakin tentang apa pun.

Briguy37
sumber
6

Ini menjadi pertanyaan hukum, jawaban nyata tentu saja akan tergantung pada hukum nasional dan bahkan mungkin lokal dan keadaan yang tepat. Jadi jelas jawaban yang sebenarnya hanya bisa datang dari pengacara.

Namun, sejauh pengetahuan hukum saya (terbatas) berjalan, saya tidak melihat alasan untuk menganggap tangkapan layar akan dianggap sebagai bukti untuk apa pun, karena jelas sangat mudah untuk dipalsukan.

Tindakan terbaik Anda mungkin adalah menjelaskan kepada klien Anda bahwa ini pada dasarnya adalah masalah hukum, dan bahwa bantuan pengacara diperlukan. Kemudian diskusikan dengan mereka apakah mereka ingin Anda mendiskusikannya dengan pengacara, atau apakah mereka ingin melakukannya sendiri.

Untuk mendapatkan solusi yang layak, Anda mungkin ingin melakukan diskusi sendiri (jika klien setuju). Jika Anda tidak ingin kerepotan itu (atau takut mereka mungkin tidak bersedia membayar Anda untuk itu), biarkan mereka melakukannya.

sleske
sumber
6
Jika OP mengikuti rute ini, saya akan menyarankan pendekatan jalan tengah, jelaskan kepada klien mereka harus mendiskusikannya dengan seorang pengacara tetapi OP ingin terlibat dalam diskusi tersebut jika memungkinkan. Dengan cara itu biaya langsung pada klien dan ada sedikit risiko bahwa klien salah menafsirkan sesuatu yang dikatakan pengacara ketika menyampaikan informasi itu ke OP.
Kevin D
5

Jika Anda ingin memvalidasi bahwa suatu dokumen tetap tidak berubah (catatan database, apa pun), "praktik terbaik" seperti ini:

  • Serialisasi data dengan cara yang dapat direproduksi, termasuk bidang apa saja yang mungkin kontroversial (mis. Alamat eMail, apakah kotak dicentang.)
  • Ambil hash dari catatan itu (mis. Sha1)
  • Gunakan kunci publik untuk pihak ketiga yang tepercaya (yaitu pihak ketiga yang tidak tertarik) untuk mengenkripsi hash ini
  • Poskan data dengan cara umum untuk menetapkan tanggal keberadaannya, misalnya, newsgroup.
  • Untuk memvalidasi, pihak ketiga dapat mendekripsi hash dan membandingkannya dengan nilai hash sekarang-saat ini.

Ini telah digunakan untuk menjamin bahwa catatan asuransi tidak dirusak-dengan; namun, "pihak ketiga tepercaya" yang kami bayar sejumlah uang untuk, mengumumkan hash ketika mereka ditandatangani kembali untuk diri kita sendiri dan beberapa klien lain, jadi ada beberapa penjaga catatan yang berpotensi dipanggil, untuk mendapatkan bukti.

Ini jelas merupakan beban konyol untuk sesuatu seperti memvalidasi bidang boolean. Tetapi, jika Anda menunjukkan kepada klien biaya yang harus dikeluarkan, mereka mungkin akan berhenti menjadi bodoh.

BRPocock
sumber
4

Meskipun permintaan itu sendiri tidak masuk akal, dan Anda tidak dapat memiliki bukti hukum yang dilakukan secara wajar bahwa seseorang A memeriksa kotak centang ketika mengisi formulir, ada pertanyaan di dalam pertanyaan Anda yang sebenarnya dapat dijawab:

[Bagaimana memastikan bahwa data tidak diubah nanti, sementara] DB bisa diubah setelah pengguna mengirim formulir?

Ini, sebenarnya, mungkin lebih mudah dilakukan secara teknis.

1. Simpan bukti bahwa data tidak diubah

Mengirim e-mail ke diri sendiri (ke kotak surat khusus) dengan nilai yang sebenarnya dikirim oleh pengguna itu mudah (well, mungkin, tergantung pada konfigurasi server Anda, ambangnya, peluang untuk difilter sebagai spam, jumlah email yang dikirim per detik, dll.), dan cukup untuk menunjukkan bahwa data tidak diubah setelah dikirim . Misalnya, kecuali saya memiliki akses tidak terbatas ke server Google , saya cukup yakin setiap orang akan yakin bahwa saya tidak dapat mengubah isi email yang saya kirim ke alamat GMail saya sendiri.

2. Simpan bukti bahwa data itu benar

Kemungkinannya, pelanggan tidak akan puas, karena bahkan jika Anda memiliki bukti bahwa data tidak diubah sesudahnya, bagaimana kami bisa yakin bahwa data tidak diubah antara penyerahan formulir dan pengiriman informasi melalui email (dan komit ke database)? Dalam hal ini, langkah selanjutnya adalah:

  1. Hapus kotak centang,
  2. Tandai siapa saja yang mengisi formulir sebagai tidak mau menerima materi promosi spam dari perusahaan pelanggan Anda,
  3. Tunjukkan kepada pengunjung bahwa mereka harus mengirim e-mail (dengan judul yang telah ditentukan dan badan kosong) ke kotak surat khusus untuk menerima tawaran komersial spam .

Email mereka kemudian dapat diproses secara otomatis, dan disimpan sebagai bukti.

3. Simpan bukti bahwa data tersebut asli

Sekarang setelah Anda memiliki bukti bahwa orang yang menggunakan alamat email yang diberikan benar-benar ingin menerima spam, pelanggan mungkin masih tidak puas (yang biasanya terjadi pada pelanggan yang memiliki permintaan gila seperti itu). Bagaimana jika seseorang meretas kotak surat orang lain hanya untuk mendaftarkan peretas untuk menerima spam Anda?

Pada tingkat kegilaan ini, Anda masih bisa merespons persyaratan secara teknis. Sekarang, alih-alih mengirim email opt-in, pengguna situs web harus:

  1. Kirim email dengan salinan ID / paspor, dan surat, dengan tanda tangan, yang mengatakan bahwa orang ini benar-benar ingin menerima spam.

  2. Validasi alamat email melalui kode rahasia yang akan dikirim kembali.

Tetapi sebelum melakukan ini, yakinkan pelanggan untuk mengimplementasikan apa yang saya jelaskan di bagian 2 dan mengujinya. Pelanggan akan melihat bahwa setelah satu atau dua bulan, tidak ada yang pernah mengirim email opt-in, dan dengan senang hati akan melupakan bukti hukum dan mengubah data dalam database.

Arseni Mourzenko
sumber
Langkah 2 Anda tidak membuktikan apa pun. Untuk menandai orang yang tidak mau menerima spam, Anda menyimpan "tanda" itu di basis data yang sama dengan yang dikhawatirkan oleh pelanggan. Namun, menyimpan hash dari serangkaian data memastikan bahwa jika ada orang yang merusak data atau hash itu sendiri untuk membandingkan data versus hash akan mengakibatkan kegagalan terhadap hash dan bukti bahwa data telah rusak atau dirusak.
maple_shaft
@maple_shaft, apa yang penting pada bagian 2 secara umum bukanlah apa yang disimpan dalam database, tetapi hanya penerimaan dari opt-in e-mail dari pengguna situs web. Data dalam database tidak masalah.
Arseni Mourzenko
2
Langkah 1 bagus. Mudah, sederhana, efektif.
Offirmo
@MainMa: Dan Anda pikir email tidak bisa dipalsukan, atau dipalsukan?
Ben Voigt
3

Status hukum apa pun yang Anda lakukan tidak tergantung pada manfaat teknis dari solusi tersebut.

Sebagai contoh :

Selama bertahun-tahun anggota parlemen Inggris akan mengabaikan petisi elektronik karena undang-undang menuntut petisi membawa tanda tangan untuk setiap orang. Kemudian seseorang melihat bahwa hash alamat email, tanggal, waktu dan komentar - meskipun tidak mengandung kunci rahasia - merupakan "tanda tangan digital" di mata hukum Inggris.

Karena itu, mintalah pengacara untuk memberi tahu Anda apa yang harus dilakukan, dan lakukanlah. Jangan khawatir apakah itu suara.

Atau, lakukan apa yang diminta klien Anda, percaya bahwa mereka telah memeriksa dengan seorang pengacara. Pastikan ada catatan diskusi.

ramping
sumber
Therefore, get a lawyer to tell you what to do, and do it. Don't worry whether it's sound. Or, do what your client asks, trusting that they have checked with a lawyer. Make sure there's a record of the discussion.yang hanya akan memenuhi kewajiban hukum dan politik Anda kepada klien; Saya pikir OP (benar) lebih tertarik untuk membantu klien untuk memenuhi persyaratan hukum mereka (meskipun klien saat ini tampaknya salah memahami persyaratan hukum mereka sendiri, sehingga menyarankan solusi yang salah).
Lie Ryan
3

Bagaimana bleep yang seharusnya Anda dapatkan screenshot? Apa yang Anda dapatkan adalah HTML dan apa pun yang Anda kirim ke klien, serta respons elektronik dari klien. Keduanya tidak melibatkan tangkapan layar.

Tangkapan layar adalah apa yang dirender oleh browser, dan akan sedikit berbeda tergantung pada browser yang digunakan dan pengaturan serta peralatan di ujung lainnya. Secara pribadi, saya menjelajah menggunakan Firefox, Chrome, Opera, Mobile Safari, kadang-kadang Lynx, dan bahkan kadang-kadang sedikit IE.

Anda dapat membuat halaman di browser standar di ujung Anda, dan tangkapan layar itu, tetapi membuat dokumen Anda sendiri dan merekamnya tidak akan mengesankan hakim. Anda bisa meminta pengguna untuk mengirim tangkapan layar, tetapi semoga berhasil menegakkannya. Tidak semua perangkat penjelajahan memiliki cara yang jelas untuk mengambil dan mengirim tangkapan layar (bagaimana Anda melakukannya di iPhone?). Jika Anda berurusan dengan pelanggan tuna netra menggunakan pembaca layar, mungkin tidak ada representasi visual sama sekali di ujung klien. (Saya melihat beberapa teman saya yang buta menggunakan komputer jinjing, yang tidak memiliki layar apa pun.)

Jadi jelaskan kepada pelanggan bahwa tidak ada cara mendapatkan tangkapan layar, dan bahkan mungkin tidak ada layar untuk mengambil gambar.

David Thornley
sumber
1
iPhone: Tahan tombol LOCK selama beberapa detik. Android: Rootkit telepon dan berdoa. (Saya mengerti maksud Anda, katakan saja ...)
BRPocock
3

Sebenarnya dimungkinkan untuk membuat Kontrol Akses Wajib bersama dengan Timestamp Tepercaya Plus Tanda Tangan Digital untuk database untuk memastikan bahwa nilai kolom dapat dipercaya. Tangkapan layar bukan jawaban yang benar, namun ADA solusi Komputasi Tepercaya yang mencapai apa yang ingin Anda capai. Jika Anda ingin detail lebih lanjut, Anda dapat memulai obrolan dengan saya.

Ahmed Masud
sumber
2

Seperti yang telah ditunjukkan sebelumnya, Anda tidak dapat benar-benar membuktikan bahwa orang tersebut setuju atau tidak, jadi solusi terbaiknya adalah:

a) Minta orang tersebut untuk mengonfirmasi perjanjian mereka melalui tautan yang dikirim ke alamat email mereka (ini memastikan mereka belum memasukkan [email protected])

b) Beri mereka opsi untuk berhenti berlangganan dari pemasaran / promosi

Matt Wilko
sumber
2

Skema yang paling dekat dengan tamper-proof adalah menghasilkan pasangan kunci publik / privat ketika pengguna mengisi formulir menggunakan Javascript (sisi klien), lalu mengirim konten formulir, kunci publik, dan tanda tangan ke server, dan berikan kunci pribadi kepada pengguna dan minta mereka untuk mencatat dan menyimpannya di tempat yang aman.

Dengan skema ini, Anda akan dapat membuktikan bahwa tidak mungkin untuk merusak data formulir karena Anda tidak tahu kunci pribadi yang digunakan untuk menghasilkan tanda tangan. Kelemahan skema ini adalah Anda harus dapat membuktikan bahwa Anda tidak pernah menyentuh kunci privat, dan bahwa pengguna tidak boleh kehilangan kunci privat mereka.

Karena Anda harus dapat membuktikan bahwa Anda tidak pernah memiliki akses ke kunci pribadi, mungkin perlu menyertakan HTML dan semua Javascript saat membuat tanda tangan formulir; ini membuktikan bentuk persis yang digunakan pengguna untuk mengirimkan data (karena itu membuktikan bahwa Anda belum mengubah bentuk / javascript sejak pengirimannya, karena itu membuktikan bahwa Anda tidak menggunakan javascript untuk mencuri kunci privat mereka).

Skema ini rumit, dan seperti halnya sistem yang kompleks, saya tidak dapat menjamin bahwa tidak ada lubang (sebenarnya, saya cukup yakin bahwa ada, dan seseorang mungkin dapat menunjukkannya).

Lie Ryan
sumber
2

Tangkapan layar tidak akan banyak bukti, karena tidak ada cara memverifikasi bahwa tangkapan layar itu nyata. Itu bisa dengan mudah dipalsukan. Sejauh solusi teknis lebih lanjut, ada mesin penyimpanan arsipuntuk MySQL yang hanya mendukung insert dan select. Anda tidak dapat menghapus dari tabel sama sekali. Pikiran Anda, dimungkinkan untuk mengubah tabel untuk mesin penyimpanan yang berbeda, menghapus catatan, dan kemudian mengubah tabel untuk mengubah mesin kembali tanpa ada yang memperhatikan, tetapi mudah-mudahan Anda dapat membatasi itu untuk root, dan hanya memungkinkan root untuk login secara lokal . Kemudian Anda bisa melacak login ke mesin database lokal yang sebenarnya untuk mencari tahu siapa yang mungkin mengubahnya. Anda juga bisa menganalisis log biner, atau mengaktifkan log kueri mentah untuk melihat siapa yang bisa mengeluarkan kueri yang menghasilkan aktivitas semacam ini. Saya tidak yakin teknologi basis data mana yang Anda gunakan, tetapi kemungkinan besar Anda harus dapat menemukan solusi yang mencegah data mudah diubah.

Kibbee
sumber
2

Saya akan merekomendasikan Anda duduk dan membaca UU ESIGN . Undang-undang ini mencakup apa yang perlu dan tidak perlu untuk merekam tanda tangan elektronik agar mengikat secara hukum. Di perusahaan sebelumnya, kami menemukan bahwa rintangan wajib yang paling sulit adalah membuat tanda tangan dan dokumen dapat dibaca selama 10-15 tahun ke depan.

Rincian setiap formulir yang telah diisi harus disimpan dalam metode yang andal. Tampaknya, menyimpan nilai formulir dalam database - kolom yang menunjukkan apakah pengguna setuju atau tidak setuju - tidak cukup, karena DB dapat diubah setelah pengguna mengirim formulir. Klien kami mengklaim bahwa portal perguruan tinggi lain membuat tangkapan layar dari formulir yang diisi, dan menyimpannya di suatu tempat dalam folder khusus, dengan cara yang mudah ditemukan, seperti memberi file nama yang menyertakan nama pengguna, dan tanggal dan waktu.

Seperti yang orang lain tunjukkan, tangkapan layar adalah sesuatu yang tidak bisa dilakukan. Itu bisa dipalsukan, karena semua pertunjukan "sihir" adalah pemalsuan murni: Anda melihat seseorang digergaji menjadi dua, tetapi mereka sebenarnya tidak digergaji menjadi dua.

Tangurena
sumber
1

Saya sudah berurusan dengan bagian gila saya sebelumnya. Saya dapat memikirkan beberapa solusi teknis tetapi mengapa tidak kembali ke klien dan menyarankan menulis ulang pertanyaan untuk 'Apakah Anda tidak ingin menerima email pemasaran?' (atau kata-kata serupa) dan memungkinkan orang tersebut untuk memilih keluar? Maka Anda tidak perlu screenshot.

jqa
sumber
1

Seperti yang dicatat oleh semua orang, manfaat teknis dan hukum dari permintaan fitur tidak ada. Yang mengatakan, ada opsi jika memungkinkan pengguna untuk secara manual mengambil dan mengunggah tangkapan layar sebagai lampiran formulir.

Moshe
sumber