Onay kutularından birinin tıklandığına dair yasal kanıt için Form ekran görüntüsü?


45

Müşterilerimizden birinden talep aldık ve daha önce böyle bir istekle karşılaşmadığım için nereden bakacağımı bile bilmiyorum.

Müşterimiz bir kolej ağıdır ve biz onları bir site inşa ediyoruz. Bu sitede, diğer şeylerin yanı sıra, kolejlerden birindeki çalışmalar hakkında daha fazla bilgi almak için potansiyel başvuru sahiplerinin doldurabilecekleri bir form olacaktır. Bir kullanıcı bu formu doldurduktan sonra - e-postalarını ve / veya telefon numaralarını vermek de dahil olmak üzere - ilgili üniversite ilgili bilgilerle iletişim kurar.

Şimdi, yasal nedenlerden dolayı, müşteri bu formun ayrıca potansiyel başvuru sahibinin bu kolejlerden promosyon materyali almayı kabul ettiklerini belirtmek için kontrol ettiğini onaylayan bir onay kutusu olmasını istiyor. Tabii ki sorun değil. Ancak burada isteğin garip kısmı geliyor:

Doldurulan her formun detayları güvenilir bir yöntemle kaydedilmelidir. Görünüşe göre, form değerlerinin bir veritabanına kaydedilmesi - kullanıcının kabul ettiğini veya kabul etmediğini belirten bir sütun - yeterli değil, çünkü kullanıcılar formu gönderdikten sonra bir DB değiştirilebilir. Müşterimiz, diğer üniversite portallarının doldurulmuş formun bir ekran görüntüsünü oluşturduğunu ve dosyaya, kullanıcının adını ve tarihini içeren bir ad vermek gibi kolayca bulunabilecek şekilde ayrılmış bir klasörde sakladığını iddia ediyor. ve zaman.

Sorum şu: Bir kullanıcının aslında bir formu doldurduğunu kanıtlamanın bir yöntemi olarak ekran görüntüsü kullandınız mı? Güvenilir sayılan başka yöntemler var mı?


96
Ekran görüntüleri de değiştirilebilir - özellikle de yalnızca bir yerde diskte saklanıyorsa.
ChrisF

41
Dur tahmin edeyim: bu fikri ortaya çıkaran bir bilgisayar bilimi profesörü. Bu insanların bazıları muhteşem. Nasıl yaptıklarını bilmiyorum, ancak ortaya çıktıkları fikirler genellikle asitmiş gibi gerçeküstü.
Mike Nakis

32
Bekle - e-posta adresini ve diğer kişisel bilgileri veritabanına kaydediyorlar, ancak endişelendikleri "güvenlik sorunu", kullanıcının yanlışlıkla tanıtım amaçlı e-posta alıp alamayacağı?
Wonko Sane

11
"Kolayca bulunamayan bir klasörde" - aah, gizlilik yoluyla güvenlik! Bu, güvenli bir sunucuda tutulan bir veritabanından çok daha güvenlidir, giriş kimlik bilgilerini vb. Almayı gerektirir ...
Dave

19
Bir ekran görüntüsünden daha iyi olsa bile, kullanıcının web kamerasından başını sallayan ve büyük bir 'başparmak yukarıya' işareti veren bir video klibi yakalayabilmeniz daha iyi olurdu. Şimdi BU kanıtı olurdu!
GrandmasterB

Yanıtlar:


74

Böyle bir şeyi hiç duymadım ve saçma olurdu, çünkü sahte bir ekran görüntüsü bir veritabanındaki sahte değer kadar kolay bir şekilde üretilebilir.

EDIT Ayrıca, yani WTF? web üzerinden bir kişinin ekranının ekran görüntüsünü alamadığınız için, açıkça sayfayı sunucuda yeniden yapılandırmanız ve bunun ekran görüntüsünü almanız gerekir, o zaman kim doktora yapmadığınızı söyleyecektir?


1
+1 İyi nokta, HTML olarak iş yapmak için teknik olarak programatik bir tarayıcı çalıştırabileceğimi ve muhtemelen sayfayı yazıcı sürücüsü oluşturan bir PDF belgesine gönderebileceğini düşünmemiştim.
maple_shaft

Gerçekten düzenli olarak yapılır. Bunu yapmak oldukça kolaydı, ilke olarak aynı verileri 2 xsl: fo şablonlarına, biri html ve diğeri pdf dosyalarına gönderebiliyordunuz (bunu daha önce de yaptım).
Aralık'ta

1
@jwenting Ne olursa olsun, MikeNakis'in de belirttiği gibi, bu yine de tahrif edilebilir. Elektronik imzalı PDF'leri kullanmanız veya ekran görüntüsünün değiştirilmemiş olduğunu doğrulamak için kullanmanız için görüntünün karmaşasını yaratmanız gerekir.
maple_shaft

24
"sadece bu kadar kolay"? Sahte ekran görüntüleri bir veritabanını kırmaktan daha kolaydır!
Jesvin Jose

4
Yaptığım bazı uygulamalarda bunu yapıyoruz. Teknik olarak "ekran görüntüsü" değil, denetim amacıyla oturumu o zaman olduğu gibi "yeniden" yapmamız gerekiyor. Bunu, gönderilen formdan veriyi kaydederek ve daha sonra yeniden inşa ederek başarırız. Ancak bunu söyledikten sonra, bu sadece bir veritabanına kaydedilmiştir ve "ekran görüntüsü" kaydettiğimiz verilerin yeniden yapılandırılmasıdır. Sadece isteyenlere hoş görünüyor.
Deco

35

Bu cevaba bir soru ile başladığımı biliyorum ama bir noktam var:

Talebin sözde saçmalığını sorgulamak için arama yapmadan, bu tipik bir HTTP tarayıcı tabanlı web uygulamasıysa, nasıl bir ekran görüntüsü alır ve sunucuya gönderilir?

Ciddi bir tarayıcı güvenliği ve gizlilik endişesini temsil ettiği için bunun imkansız olmasını umuyorum.

Şimdi, birinin kredi kartı numarasının ekran görüntüsü yakalama anında ekranda olup olmadığını düşünün. Artık istemeden kredi kartı bilgilerinizi alıyorsunuz ve sisteminiz şimdi PCI uyumlu olmalıdır. Bu tamamen bir başka endişe caddesidir.

Bunu yapmanın tek yolu, muhtemelen Flash, Silverlight, Java Applets veya yükseltilmiş sistem ayrıcalıklarına sahip bir ActiveX kontrolü gibi bir üçüncü taraf tarayıcı eklentisi kullanmak olacaktır. Bileşenin imzalanması ve kullanıcının makinede kod çalıştırma erişimi olan bileşenin üzerinde anlaşması gerekir.

Bu planla ilgili çok fazla delik var ve diğer üniversitelerin benzer bir şey uygulamasından şüpheliyim. Bunu kesinlikle mesleki kariyerimde hiç duymamıştım, en azından bir web uygulaması ile.

DÜZENLE:

Müvekkilinizin gerçekten ne istediğini düşündüğümü muhtemelen daha fazla yansıtacak başka bir seçenek düşündüm.

Müvekkilimin uygulamaya erişmek için bir NDA belgesini kabul etmesi ve imzalaması gerektiği bir müşteri için yaptığım bir başvurum vardı. Bunu, imzalanabilir bir PDF belgesiyle başardım. Bir PDF belgesinde, bir kalem + ped USB bileşeni kullanarak veya onaylamak için tıklatarak yasal amaçlarla, belgeyi el ile fiziksel olarak imzalamış olmanız kadar iyi olacağını onaylayan bir imza alanına sahip olabilirsiniz.

Buna elektronik imza denir ve mahkemede tutulur.

İmzalandıktan sonra PDF belgesi şifrelenir ve belgenin imzalandıktan sonra tahrif edilmediğini doğrulayan bir etiket saklanır. Adobe gibi modern PDF okuyucuları imzalı bir belgeyi güvenli tutmak için belgeyi belge yönetim sisteminde veya veritabanında saklayabileceğiniz bir sunucuya iletebilir.

Yönetici kullanıcılar istedikleri zaman bu belgelerden birini geri çağırabilir ve yazdırabilir.

Bu, müşterinizin gerçekte neye ihtiyacı olduğu konusunda daha fazla olabilir, ancak doğru bir şekilde açıklamada yetersiz zaman harcadı.


1
Bu teknik olarak mümkündür, ancak bir fiş gerektireceğini de söz için 1
bunglestink

10
Peki PDF'yi kendiniz imzaladığınızla değiştirmekten ne alıkoyuyor ? Bildiğim kadarıyla, bireylerin kimlikleri ile başa çıkmak için sağlam bir ortak anahtar altyapısı yok.
Random832

1
@ Random832 Checkmate arkadaşım beni aldın! Sanırım% 100 güvenli bir cevap yok. Herhangi bir sistem tehlikeye girebilir.
maple_shaft

3
Bu kesinlikle bir fiş gerektirmez; Google’ın en son geri bildirim araçlarının (Google Plus ve Youtube’da) aslında bu "ekran görüntüsü" olduğunu unutmayın. Geçerli bir sayfaya tüm HTML’yi JAvascript ile kolayca gönderebilir ve görüntünün nasıl görüneceğini yeniden oluşturmak için uygun stil sayfasını kullanabilirsiniz. Tabii ki bu ^% 'dir ve * saçmadır çünkü onay kutusunun değerini gönderebilirsiniz.
Ben Brocka

Bir CANVAS öğesinde fare hareketlerini yakalayan ve yakalanan zamanı seri hale getiren bir widget yazdım, X, Y sunucuya geri koordine ediyor. Böyle bir "imzanın" yasal statüsünün ne olduğundan emin değilim (değiştirilmiş ve kopyalanması oldukça kolaydır) ancak sistemde "imzaladıkları tek şey bu ise, bunu nasıl zorlaştıracağım" Eğer izin vermediyse bu bilgiyi aldın. (Çocuklarının erkek kardeşleri "pizza" imzalıysa ne olur bilemiyorum, ancak PDF de aynı sorunu yaşıyor).
psr

27

Asıl sorunun, formda görünen kişinin gerçekten formu doldurduğunu mu yapacağını düşünüyorum?

Başka bir deyişle, birisi web sitesine girip "Bill Gates" adını girip "bana e-posta gönder" Tamam "kutusunu tıklarsa, ekran görüntüsü gerçek Bill Gates olduğunu nasıl ispatlar?

Çok sayıda sitenin ne yaptığını ve bunun da onaylamak için birisinin tıklaması gereken benzersiz bir bağlantı içeren bir doğrulama e-postası gönderdiğini düşünüyorlar mı? Bu şekilde, en azından o e-posta hesabına erişimi olan birinden onay aldığına dair bir kaydın var.


4
Kesinlikle. Doğrulama e-postasını isteyen kişinin söz konusu e-posta adresini kontrol etmesini sağlamak için e-posta gönderin. Ayrıca, tanıtım materyalleri talep eden kişilerin yasal kayıtlarına sahip olmak yerine, sadece CAN SPAM Yasası ile uyumlu olduğunuzu ve tanıtım materyalinizin aboneliğini iptal etmenizi çok kolaylaştırdığınızı da eklerim . (Tanıtım malzemelerini üçüncü bir tarafça bile olsa, koyduğunuz tüm listelerin aboneliğinden çıkmak için bir bağlantı olsa bile, her e-posta gönderir.)
dr jimbob

20

Öyle bir şey yok

Bu tartışma , kişinin kabul ettiğini kesinlikle kanıtlamanın bir yolu olmadığı anlayışı ile başlamalıdır . Bu fiziksel dünyada bile geçerlidir. Bir kişiyi fiziksel olarak bir form imzalayıp kan formunu bir forma koymuş olsanız bile videonun sahte olduğunu, kan onlardan haberi olmadan onlardan alındığını ve imzanın sahte olduğunu söyleyebilirler. Ancak mutlak kanıt gerekli değildir; Sadece makul miktarda kanıt.

Dijital dünyada, herhangi bir veri - metin, resim, veri tabanındaki veri veya e-posta - sahte olabilir. Sahip olabileceğimiz en yakın şey, kullanıcının özel bir anahtar kullanarak bir şeyi şifrelemesi ve genel anahtarının şifresini çözeceğini göstermesidir. Ancak, bu şu anda çoğu kullanıcının yeteneğinin ötesinde ve yine de özel anahtarlarının çalındığını söyleyebilirler.

Yapabileceğimizin en iyisi:

  • Sahte olmak zor (imkansız olmasa da) bir şey al
  • Yasal olarak, bu kanıtın yeterli olduğuna katılıyorum
  • Kullanıcının aboneliğinden çıkmasını kolaylaştırın

Metin yerine bir resmi kaydetmek ispat anlamında hiçbir şey eklemez; tek yaptığı işlemi yavaşlatmak ve daha pahalı hale getirmek.

Elektronik İmzalar

İşimde, kullanıcıların bir ifade imzaladığı bir uygulamamız var. Yasal olarak, faaliyette bulunduğumuz yetki alanları , e-posta adreslerini bir forma yazan bir kullanıcının elektronik imza olarak sayılabileceğini söyleyen yasaları kabul etti . Zaten tıklamaları gereken bir bağlantı göndererek adrese erişimlerinin olduğunu doğruladık. Bu kesin bir kanıt değil, ancak amaçlarımız için yeterince iyi kabul edildi.

Ne tür bir bilgi edinirseniz edin, ben de bir zaman damgası yakalamanızı öneririm , böylece “tam olarak bu tarih ve saatte karar verdiniz” diyebilirsiniz. Bunun yasal bir alakası olup olmadığından emin değilim, ama bana daha ikna edici görünüyor, çünkü kullanıcının başka türlü ispatlaması için daha fazla fırsat veriyor ("o zaman bilgisayar başında olmadığımı ispat ettim", örneğin. ).

Onunla delirmek

Eğer bazı şeyler olabilir yapmak olabilir delil olarak kabul edilebilir:

  • Zaman damgası, IP, tarayıcı, vb. Yakalayın, böylece imzanın koşullarını belirtebilirsiniz.
  • E-posta adresi doğrulaması gerektir
  • Kullanıcının imza anında şifresini girmesini isteyin
  • Kullanıcının imzaladığı anda, uygulamanızdan imza bilgisine sahip bir HTTPS POST alacak olan salt okunur bir üçüncü taraf web hizmeti olmasını sağlayın. Üçüncü taraf, hizmetlerinin yalnızca yazma olduğunu, o andaki rekoru aldıklarını ve kopyanızın özdeş olduğunu kanıtlayabilirse, o zamandan beri verileri değiştiremediğinizi iddia edebilirsiniz.
  • Kullanıcıya şu anda "Kayıt olduğunuz için teşekkür ederiz, aboneliğinizi iptal etmenizi sağlayın" diyen bir e-posta gönderin. E-posta sağlayıcısı veya sizin e-postanın, kullanıcının imzalanmasından hemen sonra gönderildiğini gösterebilir.

IANAL

Lütfen bunların hiçbirini yasal tavsiye olarak kabul etmeyin.


Harika cevap ... ama elektronik imza olarak hala e-posta adresleri yasal olarak da tartışmalı. Yine de haklısın, kesin olarak kanıtlanmış bir yol yok. Sadece daha farklı tonları zor. Hukuk sistemi makul şüphe üzerine çalışır. Çoğu insan bir video sahneleme, kan çalma ve imza oluşturma işinin makul bir olasılık olmadığı konusunda hemfikirdir. Olabilir mi? Evet, elbette, ancak kesinlikle birisinin bu sıkıntıya girmesi pek olası değildir.
maple_shaft

1
“... ve hala açık anahtarlarının çalındığını söyleyebilirler.” "... ve yine de özel anahtarlarının çalındığını söyleyebilirler ." Çalınan ortak anahtar, iyi tasarlanmış bir PKI'da herhangi bir güvenlik sorunu oluşturmaz.
Yalan Ryan

capturing a timestampsadece işe yaramaz. Günümüzde, düzenli bir kullanıcının form doldurmayı gelecek bir zamanda planlamak için bir tarayıcı veya masaüstü otomasyonu oluşturması oldukça kolaydır.
Yalan Ryan

10

Diğer bir seçenek ise ham HTTP Postasını istemciden kaydetmektir. Bunun bir IP'si var, nereden geldiklerini, hangi tarayıcıyı vb. Daha sonra bunu ham formdaki yalnızca bir tabloya veya basit bir düz günlük dosyasına kaydedebilirsiniz ...

Diğer seçenekleri de düşünmeye çalışıyorum çünkü saçma isteklere istediğimden çok daha sık rastlanma eğilimindeyim ...


Hmm evet ama o kütük aynı veritabanında, tahrif edilmekten korktukları için aynı. Cevabımdaki düzenlemeye bakın, elektronik olarak imzalanmış PDF belgeleri, belgenin tahrif edilmediğinden emin olmanın tek yoludur.
maple_shaft

1
@maple_shaft: Ekstra veritabanı güvenliği eklemek için temel fikir, bir yönetici dışındaki tüm kullanıcılar için "yalnızca ekle" izinleri olacaktır. Bu günlük, düzenli veritabanı faaliyetlerine ek olarak olacaktır ve yalnızca gerektiğinde doğrulama için kullanılacaktır.
bunglestink,

1
@JonnyBoats: HTTPS konusunda teknik olarak haklısınız, ancak başvuru düzeyinde bir kez alınsa da, aynı ham metin kaydedilmiş olacak.
Aralık'ta

1
"elektronik olarak imzalanmış PDF belgeleri" veya elektronik olarak imzalanan herhangi bir şey ", belgenin tahrif edilmediğinden emin olmanın tek yoludur", imzalayacakları anahtarı olan kişiler dışında.
Random832

1
@ Random832: Belge için özel anahtar kullanıcı tarafından sağlanıyorsa yapılabilir, IMO tanıtım malzemelerini almak üzere anlaşmayı belirten bir onay kutusu için aşırı yüklenir.
Yalan Ryan

8

Bir ekran görüntüsü kolayca imal edilir, bu yüzden eğimli olmalısınız. Her türlü karmaşa, zaman damgası vb. Gibi kriptografik bir temeli yoktur. Birincisi, üniversitenin insanlara pazarlama materyali göndermeden veya bilgilerini üçüncü şahıslara takas etmeden önce olumlu rıza aldıklarını ispatlayabilmeleri için katı bir yasal zorunluluk olduğunu varsayar.

Bunu yapmanın tek güvenilir yolu, kullanıcıdan bir şifreleme imzası talep etmektir. Örneğin, http://launchpad.net web sitesinin sizden Ubuntu Davranış Kurallarını kriptografik olarak imzalamanızı istemesini görün.

Bu yalnızca yasal bir belgede kriptografik bir imzanın kullanılabileceği yargı bölgelerinde yasa gücüne sahiptir, ancak belirli bir metin parçasını imzalayarak, kullanıcı daha sonra doğrulanabileceğini onaylamış olabilir. Üniversitenin aynı ortak anahtardan doğru bir imza atması neredeyse imkansız olurdu.

Kolejin veritabanlarını güncellemesinin ve böylece rıza alanını çevirmesinin ve ayrıca genel anahtarı özel anahtarını bildiği bir başkasıyla değiştirmesinin ve o anahtar için geçerli bir imza oluşturmasının önemsiz olduğunu unutmayın .

Bu nedenle, belirli bir kişiye ait olduğunu kanıtlayan bir üçüncü taraf imzalama anahtarları olmadan, tüm bu başarılar kullanıcının kolejin gizlilik ayarlarını yapıp yapmadığını doğrulayabilmesidir - üçüncü taraf imzası olmadan, koleje karşı sözleridir.

Ayrıca, tüm anahtar mülkiyetlerin doğrulanmasını ve bir ya da daha fazla güvenilir üçüncü tarafça imzalanan anahtarın daha fazla talep edilmesini talep ederseniz, kolej çok fazla pozlama olmadan görünüşte geçerli imzalar alamaz. sahte anahtarlarını imzalatmak için üçüncü taraflara güvendi). Bu saldırının zorluğu, gerekli üçüncü taraf imzalarının sayısı ile artacaktır, ancak başka bir afişin yazdığı gibi, imkansız değildir.

Özetlemek gerekirse:

  • Kullanıcı bir özel / ortak anahtar çiftine sahip olmalı veya üretmelidir
  • Kullanıcı daha sonra bir veya daha fazla güvenilen üçüncü tarafın ortak anahtarı için bir imza almalıdır.
  • Kullanıcı açık anahtarını, en azından üniversiteye ve tercihen bir üçüncü taraf anahtar havuzuna yüklemelidir.
  • Kullanıcı bilinen bir plaintext imzalamalı ve imzasını özel verilerini paylaşmaya razı olduklarının kanıtı olarak sunmalıdır.

Pratik problemler:

  • Çok az insan kriptografik imzaları anlıyor
  • Üçüncü taraf sertifikasyon maliyeti pahalı olabilir
  • Bu bir üniversite broşürü sayfasında bir junkmail onay kutusunu korumak için çok fazla çalışma gibi görünüyor

8

Hangi yöntemlerin ve gerekliliklerin yasal olarak bağlayıcı olduğunu bulmaya odaklanarak, müşterinin ülkesi / eyaleti için Elektronik İmzalar'ı okuyarak başlarım . Aklı başında hiçbir ülke veya devletin, bağlayıcı bir elektronik imza için tek kanıt yöntemi olarak bir ekran görüntüsü gerektirmeyeceğinden eminim.

Örneğin, ABD'de 47 eyalette, “devlet meseleleri” için geçerli olan ve dolayısıyla üniversite gereklilikleri için geçerli olacak olan Tekdüzen Elektronik İşlemler Yasası kabul edildi . Yardımcı olabilecek aşağıdaki parçalara sahiptir:

..

  • Elektronik imza - bir sicile iliştirilmiş veya mantıksal olarak ilişkilendirilmiş ve sicili imzalamak isteyen bir kişi tarafından yürütülen veya yürütülen bir elektronik ses, sembol veya işlem anlamına gelir.

..

  • Bölüm 7, elektronik imzalara, kayıtlara ve sözleşmelere yasal tanıma verir
    • (a) Bir sicil veya imzanın, yalnızca elektronik ortamda olması nedeniyle yasal etkisi veya uygulanabilirliği reddedilemez.
    • (b) Bir sözleşmenin yasal bir etkisi veya uygulanabilirliği reddedilemez, çünkü yalnızca elektronik bir kayıt oluşturulmasında kullanılır.
    • (c) Bir kanunun yazılı olarak kaydedilmesi gerekiyorsa, elektronik bir kayıt kanunu yerine getirir.
    • (d) Bir yasa imza gerektiriyorsa, elektronik imza yasaları yerine getirir.

..

Bir kez yasaları bildiğimde, ekran görüntüsü yönteminin maliyeti ile en iyi elektronik imza yönteminin maliyetini tahmin ederdim.

Son olarak, onlarla bulgularımı tartışırım. İlk önce, önerilen seçeneğe kıyasla en iyi seçeneği onlara açıklayacağım. Sonra, onlara projeye katacağı süreyi açıklarım. Son olarak, eğer yapacak bir yerdeysem, onlara bu "özelliğin" nihai faturaya x dolar ekleyeceğini söylerdim. Bana ek maliyeti, onlara ek maliyetin gerekçesi olarak kullanacağımdan çok emin olacağım.

Eğer hala ödünç almazlarsa, aynı toplantıyı yapabileceğim bir akıl sağlığına sahip bir süpervizör olup olmadıklarını göreceğim.

* Ben bir avukat değilim, bu yüzden herhangi bir konuda emin değilseniz lütfen yasal tavsiye alın.


6

Bu yasal bir soru olarak, gerçek bir cevap elbette ulusal ve muhtemelen yerel yasalara ve kesin koşullara bağlı olacaktır. Bu yüzden açıkça gerçek bir cevap sadece bir avukattan gelebilir.

Ancak, (sınırlı) yasal bilgilerime göre, bir ekran görüntüsünün hiçbir şey için delil olarak kabul edileceğini varsaymak için hiçbir neden görmüyorum, çünkü açıkça sahte olması çok kolay.

Muhtemelen en iyi eylem yolunuz, müşterinize bunun esasen yasal bir sorun olduğunu ve bir avukatın yardımının gerekli olduğunu açıklamaktır. O zaman onlarla bir avukatla görüşmek isteyip istemediğinizi veya kendileri yapmak isteyip istemediklerini tartışın.

Uygun bir çözüm bulmak için, tartışmayı kendiniz yapmak isteyebilirsiniz (müşteri kabul ederse). Eğer bu zorluğu istemiyorsanız (ya da bunun için size para ödemeye razı olmayabilir), bırakmalarına izin verin.


6
OP bu rotaya giderse, orta temelli bir yaklaşım öneririm, müşteriye bir avukatla görüşmeleri gerektiğini açıklayın, ancak OP'nin mümkünse bu tartışmalara katılmak istediğini açıklayın. Bu şekilde masraf doğrudan müşteriye aittir ve müşterinin bu bilgiyi OP'ye iletirken söylediği bir şeyi yanlış anlama riski daha düşüktür.
Kevin D

5

Bir belgenin değişmeden kaldığını doğrulamak istiyorsanız (veritabanı kaydı, ne olursa olsun), "en iyi uygulama" şu şekilde gider:

  • Verileri, tartışmalı olabilecek alanlar da dahil olmak üzere, tekrarlanabilir bir şekilde seri hale getirin (örneğin, bir kutunun işaretlenip işaretlenmediği e-posta adresi).
  • Bu kaydın karma değerini alın (örn. Sha1)
  • Bu hash'ı şifrelemek için güvenilir bir üçüncü taraf (yani ilgisiz bir üçüncü taraf) için genel anahtarı kullanın
  • Verileri, bulundukları tarihi, örneğin bir haber grubunu belirlemek için herkese açık bir şekilde yayınlayın.
  • Doğrulamak için, üçüncü taraf karma değerinin şifresini çözebilir ve şimdiki karma değer ile karşılaştırabilir.

Bu, sigorta kayıtlarının tahrif edilmediğini garantilemek için kullanılmıştır; bununla birlikte, “güvenilir üçüncü tarafa” belirli bir miktar para ödedik, kendimize ve diğer bazı müşterilere geri imzalandıklarında hash'leri ilan ettik, bu nedenle potansiyel olarak mahkeme celbi olabilecek bazı kanıtlar vardı: kanıt elde etmek için.

Bu açıkça bir boolean alanını doğrulama gibi bir şey için saçma bir yüktür. Ancak, müşteriye ilgili masrafı gösterirseniz, muhtemelen aptallıktan vazgeçerler.


4

İsteğin kendisi saçma olsa da, bir kişinin A formu doldururken onay kutusunu işaretlemesine ilişkin makul bir yasal kanıt bulunamazken, sorunuzun içinde gerçekten yanıtlanabilecek bir soru var:

[Verilerin daha sonra değiştirilmediğinden nasıl emin olunur?], Kullanıcılar formu gönderdikten sonra bir DB değiştirilebilir mi?

Bu aslında teknik olarak daha kolay olabilir.

1. Verilerin değişmediğinin bir kanıtını saklayın

Kullanıcı tarafından gönderilen değerlerle kendinize (özel bir posta kutusuna) e-posta göndermek kolaydır (sunucunuzun yapılandırmasına bağlı olarak eşiğin, spam olarak filtrelenme şansı, Saniyede gönderilen e-posta sayısı, vb.) ve verinin gönderildikten sonra değiştirilmediğini göstermek için yeterlidir . Örneğin, Google sunucularına sınırsız bir erişimim olmadığı sürece , her birinin kendi GMail adresime gönderdiğim e-postaların içeriğini değiştiremediğim için ikna olacağından eminim.

2. Verilerin doğru olduğuna dair bir kanıt tutun

Muhtemelen, müşteri memnun olmayacaktır, çünkü verilerin daha sonra değiştirilmediğine dair bir kanıtınız olsa bile , formun sunulması ile e-posta ile bilgi gönderilmesi arasında verilerin değiştirilmediğinden nasıl emin olabiliriz? (ve veritabanına taahhüt)? Bu durumda, bir sonraki adım:

  1. Onay kutusunu kaldırın,
  2. Formu doldurmuş olanları , müşterilerinizden spam tanıtım materyali almaya istekli olarak işaretlemek ,
  3. Ziyaretçilere, spam reklam tekliflerini almak için özel posta kutusuna bir e-posta (önceden tanımlanmış bir başlığı ve boş bir gövdesiyle) göndermek zorunda olduklarını belirtin .

E-postaları daha sonra otomatik olarak işlenebilir ve bir kanıt olarak saklanabilir.

3. Verilerin orijinal olduğuna dair bir kanıt tutun

Artık, verilen e-posta adresini kullanan kişinin aslında spam almak istediğine dair bir kanıtınız olduğuna göre, müşteri hala tatminsiz olabilir (bu, genellikle çılgınca istekleri olan müşterilerin başına gelir). Ya birisi hackee’yi spam’i almak üzere kaydetmek için bir başkasının posta kutusundan hakediyorsa?

Bu çılgınlık düzeyinde, teknik olarak gereksinimlere hala cevap verebilirsiniz. Şimdi bir kaydolma e-postası göndermek yerine, web sitesinin kullanıcısı şunları yapmak zorundadır:

  1. Bu kişinin gerçekten spam almak istediğini söyleyen bir kimlik / pasaport fotokopisi ve imzalı bir mektup gönderin.

  2. E-posta adresini, geri gönderilecek gizli bir kodla doğrulayın.

Ancak bunu yapmadan önce, müşteriyi 2. bölümde anlattıklarımı uygulamaya ve test etmeye ikna edin. Müşteri, bir veya iki ay sonra, hiç kimsenin herhangi bir kayıt e-postası göndermeyeceğini ve veritabanındaki yasal delilleri ve değiştirilen verileri mutlu bir şekilde unutacağını görecektir.


2. adımınız hiçbir şey kanıtlamaz. Spam almak istemeyen kişileri işaretlemek için, müşterinin tahrif edilmekten endişe ettiği veritabanındaki "işaretlemeyi" saklıyorsunuz. Bununla birlikte, bir veri kümesinin bir hastasının tutulması, eğer herhangi biri, verileri ya da hash'ı kendisiyle tahrif ederse, hash ile karşılaştırmak için verinin hash ile sonuçlanmamasına ve verilerin bozulduğunu ya da tahrif edildiğinin ispatı ile sonuçlanmasını sağlar.
maple_shaft

@maple_shaft, 2. bölümde genel olarak gerekli olan şey, veritabanında depolananlar değil, sadece katılımcının e-postasının web sitesinden alınmasıdır. Veritabanındaki veriler önemli değil.
Arseni Mourzenko,

2
1. adım iyi. Kolay, basit, etkili.
Offirmo

@MainMa: Sizce e-postalar sahte olamaz ya da sahte olamaz?
Ben Voigt

3

Yaptıklarınızın yasal statüsü, çözümün teknik değerinden bağımsızdır.

Örneğin :

İngiliz parlamento üyeleri yıllarca e-dilekçeleri görmezden gelecektir çünkü yasalar dilekçelerin her birine imza atmasını talep ediyordu. O zaman birileri bir e-posta adresinin, tarihinin, saatinin ve yorumunun bir karma anahtarının bulunmamasına rağmen - İngiltere yasalarının gözünde "dijital imza" oluşturduğunu fark etti.

Bu nedenle, size ne yapmanız gerektiğini söylemesi için bir avukat bulun ve yapın. Endişelenme, ses olup olmadığı.

Veya, müşterinizin ne istediğini bir avukatla kontrol ettiklerini söyleyerek yapın. Tartışmaların bir kaydı olduğundan emin olun.


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.bu sadece müşteriye karşı yasal ve politik yükümlülüğünüzü yerine getirir; OP'nin (haklı olarak) müşterinin yasal gerekliliklerini yerine getirmesine yardımcı olmakla daha fazla ilgilendiğini düşünüyorum (müşteri şu anda kendi yasal gerekliliklerini yanlış anlıyor gibi gözüküyor, bu nedenle yanlış çözümü öneriyor).
Yalan Ryan

3

Ekran görüntüsünü nasıl almanız gerekiyor? Elinizde olan şey HTML ve müşteriye ne gönderiyorsanız ve müşteriden gelen elektronik yanıt. İkisi de ekran görüntüsü içermiyor.

Ekran görüntüsü tarayıcının işleyiş biçimindedir ve kullanılan tarayıcıya ve diğer uçtaki ayarlara ve donanıma bağlı olarak biraz farklılık gösterir. Şahsen, Firefox, Chrome, Opera, Mobil Safari, bazen Lynx ve hatta bazen küçük bir IE kullanarak göz atıyorum.

Sayfayı ucunuzdaki standart bir tarayıcıda ve ekran görüntüsünü oluşturabilirsiniz, ancak kendi belgenizi oluşturun ve kaydedin, bir hakimi etkilemez. Kullanıcıdan bir ekran görüntüsü göndermesini isteyebilirsiniz, ancak bunu uygulamada iyi şanslar. Tüm tarama cihazlarının ekran görüntüsü alma ve gönderme konusunda bariz bir yolu yoktur (bir iPhone'da nasıl yaparsınız). Ekran okuyucu kullanarak görme engelli bir müşteriyle ilgileniyorsanız, müşterinin sonunda görsel bir temsil olmayabilir. (Birkaç kör arkadaşımın, hiçbir ekranı olmayan taşınabilir bir bilgisayar kullandıklarını gördüm.)

Bu yüzden müşteriye, ekran görüntüsü almanın bir yolu olmadığını ve fotoğrafını çekecek bir ekran bile bulunmayabileceğini açıklayın.


1
iPhone: LOCK düğmesini birkaç saniye basılı tutun. Android: Telefona kök sal ve dua et. (Yaptığınız noktayı anlıyorum, sadece……)
BRPocock

3

Sütunun değerinin güvenilir olmasını sağlamak için Veri Tabanı için bir Trusted Timestamp Plus ve Dijital İmza ile birlikte bir Zorunlu Erişim Kontrolü oluşturmak gerçekten mümkündür. Ekran görüntüleri doğru cevap değil, ancak elde etmek istediklerinize ulaşan Trusted Computing çözümleri var. Daha fazla ayrıntı istiyorsanız, benimle bir sohbet başlatabilirsiniz.


2

Daha önce de belirtildiği gibi, kişinin hemfikir olduğunu ya da kesinlikle kabul etmediğini ispatlayamazsınız, en iyi çözüm şudur:

a) Kişinin e-posta adresine gönderilen bir bağlantıyla anlaşmasını onaylamasını sağlayın (bu, henüz yeni billgates@microsoft.com adresine girmemiş olmalarını sağlar)

b) Onlara pazarlama / tanıtımdan abone olma seçeneğini verin


2

Kurcalamaya karşı en dayanıklı olan şema, kullanıcı (istemci tarafı) Javascript'i kullanarak formu doldurduktan sonra bir genel / özel anahtar çifti oluşturmak, ardından form içeriğini, genel anahtarı ve imzayı sunucuya ve özel anahtarı kullanıcıya sunun ve not almalarını ve güvenli bir yerde saklamalarını isteyin.

Bu şema ile, imza oluşturmak için kullanılan özel anahtarı bilmediğiniz için form verilerini değiştirmenin mümkün olmadığını kanıtlayabilirsiniz. Bu şemanın zayıflığı, hiçbir zaman özel anahtara dokunmadığınızı kanıtlamak zorunda olmanız ve kullanıcının özel anahtarını kaybetmemesi gerektiğidir.

Özel anahtara asla erişemediğinizi kanıtlayabilmeniz gerektiğinden, form imzasını oluştururken HTML'yi ve tüm Javascript'i içermesi gerekebilir; bu, kullanıcının verileri göndermek için kullandığı tam formu ispatlar (bu nedenle formu / javascript'i gönderildiğinden bu yana değiştirmediniz, bu nedenle özel anahtarını çalmak için javascript kullanmadığınızı kanıtlar).

Bu şema karmaşıktır ve herhangi bir karmaşık sistemde olduğu gibi, bir delik bulunmadığını garanti edemem (aslında, olduğundan kesinlikle eminim ve birileri bunu açıkça gösterebilir).


2

Bir ekran görüntüsünün gerçek olduğunu doğrulamanın bir yolu olmadığından ekran görüntüsü pek kanıt olmaz. Bu kolayca sahte olabilirdi. Daha fazla teknik çözüm geldiğinde, arşiv depolama motoru var.sadece ekleme ve seçme desteği olan MySQL için. Masadan hiç silemezsiniz. Dikkat edin, farklı bir depolama motoruna ALABLE TABLE, kayıt silmek ve daha sonra hiç fark etmeden motoru değiştirmek için ALTER TABLE kullanmak mümkün olabilir, ancak umarım bunu root olarak sınırlandırabilir ve sadece rootun yerel olarak oturum açmasına izin verebilirsiniz. . O zaman kimin değişebileceğini bulmak için gerçek yerel veritabanı makinesine girişleri takip edebilirsiniz. İkili günlükleri de analiz edebilir veya bu tür bir etkinlikle sonuçlanan sorguları kimin verdiğini görmek için ham sorgu günlüğünü etkinleştirebilirsiniz. Hangi veritabanı teknolojisini kullandığınızdan emin değilim, ancak büyük olasılıkla verilerin kolayca değiştirilmesini önleyen bir çözüm bulmanız gerekir.


2

Oturup ESIGN Yasasını okumanızı tavsiye edeceğim . Bu tüzük yasal olarak bağlayıcı olması için elektronik imza kaydettirmek için neyin gerekli olup olmadığını kapsar. Daha önceki bir işveren olarak, en zor yasal engelin imzaları ve belgeleri geleceğe 10-15 yıl boyunca okunabilir hale getirmek olduğunu gördük.

Doldurulan her formun detayları güvenilir bir yöntemle kaydedilmelidir. Görünüşe göre, form değerlerinin bir veritabanına kaydedilmesi - kullanıcının kabul ettiğini veya kabul etmediğini belirten bir sütun - yeterli değil, çünkü kullanıcılar formu gönderdikten sonra bir DB değiştirilebilir. Müşterimiz, diğer üniversite portallarının doldurulmuş formun bir ekran görüntüsünü oluşturduğunu ve dosyaya, kullanıcının adını ve tarihini içeren bir ad vermek gibi kolayca bulunabilecek şekilde ayrılmış bir klasörde sakladığını iddia ediyor. ve zaman.

Diğerlerinin de belirttiği gibi, ekran görüntüsü yapılamayan bir şey. Tüm "sihir" şovları saf bir sahtekarlık olduğu için taklit edilebilir: birisinin yarı yarıya kesildiğini görürsünüz , ancak yarı yarıya kesilmiyorlar .


1

Daha önce çılgın payımla uğraştım. Bazı teknik çözümler düşünebilirim ama neden müşteriye geri dönmüyorsun ve 'Pazarlama e-postaları almak istemiyor musun?' (veya benzeri kelimeler) ve kimseyi seçmeme izin verilsin mi? O zaman bir ekran görüntüsü gerekmez.


1

Herkesin belirttiği gibi, özellik isteğinin teknik ve yasal değeri yoktur. Bununla birlikte, bir kullanıcının bir ekran görüntüsünü bir form eki olarak el ile alıp yüklemesine izin veriliyorsa bir seçenek vardır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.