Mẫu ảnh chụp màn hình cho bằng chứng pháp lý của việc nhấp vào một trong các hộp kiểm?


45

Chúng tôi đã nhận được yêu cầu từ một trong những khách hàng của mình và vì tôi chưa bao giờ gặp phải yêu cầu như vậy trước đây, tôi thậm chí không biết bắt đầu tìm kiếm ở đâu.

Khách hàng của chúng tôi là một mạng lưới các trường đại học và chúng tôi đang xây dựng cho họ một trang web. Trên trang web đó, trong số những thứ khác, sẽ là một hình thức mà các ứng viên tiềm năng có thể điền vào để có thêm thông tin về các nghiên cứu tại một trong các trường đại học. Sau khi người dùng điền vào biểu mẫu này - bao gồm gửi email và / hoặc số điện thoại của họ - trường đại học có liên quan, sau đó liên hệ với họ với thông tin liên quan.

Bây giờ, vì lý do pháp lý, khách hàng đang yêu cầu biểu mẫu này cũng có một hộp kiểm mà người nộp đơn tiềm năng kiểm tra để cho biết rằng họ đồng ý nhận tài liệu quảng cáo từ các trường đại học này. Tất nhiên đó không phải là vấn đề. Nhưng đây là phần kỳ lạ của yêu cầu:

Các chi tiết của mỗi mẫu điền vào phải được lưu trong một phương pháp đáng tin cậy. Rõ ràng, lưu các giá trị biểu mẫu trong cơ sở dữ liệu - một cột cho biết người dùng đồng ý hay không đồng ý - là không đủ, bởi vì DB có thể được thay đổi sau khi người dùng đã gửi biểu mẫu. Khách hàng của chúng tôi tuyên bố rằng các cổng thông tin đại học khác tạo ra một ảnh chụp màn hình của biểu mẫu điền và lưu nó ở đâu đó trong một thư mục chuyên dụng, theo cách dễ dàng tìm thấy, chẳng hạn như đặt tên tệp bao gồm tên người dùng và ngày và thời gian.

Câu hỏi của tôi là như sau: bạn đã nghe nói về việc sử dụng ảnh chụp màn hình như một phương pháp chứng minh người dùng đã thực sự điền vào một biểu mẫu chưa? Có những phương pháp khác được coi là đáng tin cậy?


96
Ảnh chụp màn hình cũng có thể được sửa đổi - đặc biệt nếu chỉ được lưu trữ trên đĩa ở đâu đó.
ChrisF

41
Hãy để tôi đoán: đó là một giáo sư khoa học máy tính đã đưa ra ý tưởng này. Một số trong những người này là tuyệt vời. Tôi không biết làm thế nào họ làm điều đó, nhưng những ý tưởng họ đưa ra thường siêu thực như thể họ đang sử dụng axit.
Mike Nakis

32
Đợi đã - họ đang lưu địa chỉ e-mail và thông tin cá nhân khác trong cơ sở dữ liệu, nhưng "vấn đề bảo mật" mà họ lo lắng là liệu người dùng đó có nhận được e-mail quảng cáo không?
Wonko the Sane

11
"trong một thư mục không dễ tìm thấy" - aah, Bảo mật thông qua che khuất! Đó là cách an toàn hơn so với cơ sở dữ liệu được lưu trữ trên một máy chủ an toàn, yêu cầu thông tin đăng nhập, v.v. để đến ...
Dave

19
Thậm chí còn tốt hơn một ảnh chụp màn hình nếu bạn có thể quay video clip từ webcam của người dùng đang gật đầu và đưa ra một dấu hiệu 'ngón tay cái lớn'. Bây giờ THAT sẽ là bằng chứng!
GrandmasterB

Câu trả lời:


74

Tôi chưa bao giờ nghe về một cái gì đó như thế, và nó sẽ là vô lý, bởi vì một ảnh chụp màn hình giả có thể được sản xuất dễ dàng như một giá trị giả trong cơ sở dữ liệu.

EDIT Bên cạnh đó, ý tôi là, WTF? vì bạn không thể lấy ảnh chụp màn hình của ai đó trên web, rõ ràng bạn sẽ phải xây dựng lại trang trên máy chủ và chụp ảnh màn hình đó, rồi ai sẽ nói bạn không làm bác sĩ?


1
+1 Điểm hay, tôi không nghĩ rằng về mặt kỹ thuật, người ta có thể chạy trình duyệt lập trình để hiển thị HTML và sau đó có thể gửi trang tới tài liệu PDF tạo trình điều khiển in.
maple_shaft

như thực sự được thực hiện thường xuyên. Điều này khá dễ thực hiện, về nguyên tắc bạn chỉ có thể gửi cùng một dữ liệu tới 2 xsl: fo mẫu, một tạo html và pdf khác (trước đây tôi thực sự đã làm điều này).
jwenting

1
@jwenting Bất kể như MikeNakis đã chỉ ra, điều này vẫn có thể bị can thiệp. Bạn sẽ cần phải sử dụng các tệp PDF được ký điện tử hoặc tạo ra một hình ảnh băm để bạn sử dụng nó để xác thực ảnh chụp màn hình không bị giả mạo.
maple_shaft

24
"Dễ như vậy"? Các ảnh chụp màn hình giả dễ dàng hơn nhiều so với việc hack cơ sở dữ liệu!
Jesvin Jose

4
Chúng tôi thực hiện điều này trong một số ứng dụng tôi xây dựng .. Về mặt kỹ thuật, đây không phải là "ảnh chụp màn hình" nhưng vì mục đích kiểm toán, chúng tôi phải "xây dựng lại" phiên như lúc đó. Chúng tôi đạt được điều này bằng cách lưu dữ liệu từ biểu mẫu đã gửi và sau đó xây dựng lại sau. Nhưng có nói rằng, đó chỉ là lưu trong cơ sở dữ liệu và "ảnh chụp màn hình" chỉ là bản dựng lại dữ liệu chúng tôi đã lưu. Nó chỉ trông đẹp cho những người muốn nó.
Deco

35

Tôi biết rằng tôi đang bắt đầu câu trả lời này bằng một câu hỏi nhưng tôi có một điểm:

Nếu không gọi để đặt câu hỏi về sự vô lý được cho là của yêu cầu, nếu đây là một ứng dụng web dựa trên trình duyệt HTTP điển hình, làm thế nào để lập trình chụp ảnh màn hình và gửi nó đến máy chủ?

Tôi hy vọng điều này là không thể vì nó sẽ đại diện cho một vấn đề bảo mật và quyền riêng tư nghiêm trọng của trình duyệt.

Bây giờ hãy tưởng tượng nếu số thẻ tín dụng của ai đó cũng xuất hiện trên màn hình tại thời điểm chụp ảnh màn hình. Bây giờ bạn đang vô tình nắm bắt thông tin thẻ tín dụng và hệ thống của bạn bây giờ phải tuân thủ PCI. Đây là một con đường quan tâm khác hoàn toàn.

Cách duy nhất để làm điều đó có lẽ là sử dụng plugin trình duyệt của bên thứ ba như Flash, Silverlight, Java Applet hoặc điều khiển ActiveX với các đặc quyền hệ thống nâng cao. Thành phần sẽ cần phải được ký và người dùng sẽ cần phải đồng ý với thành phần có quyền truy cập để chạy mã trên máy của họ.

Có quá nhiều lỗ hổng với kế hoạch này và tôi thực sự nghi ngờ rằng các trường đại học khác thực hiện một cái gì đó tương tự. Tôi chắc chắn chưa bao giờ nghe về điều này trong sự nghiệp chuyên nghiệp của tôi, ít nhất là không phải với một ứng dụng web.

BIÊN TẬP:

Tôi chỉ nghĩ về một lựa chọn khác có thể phản ánh nhiều hơn những gì tôi nghĩ rằng khách hàng của bạn thực sự yêu cầu.

Tôi đã có một ứng dụng tôi đã làm cho một khách hàng nơi khách hàng phải đồng ý và ký một tài liệu NDA để có quyền truy cập vào ứng dụng. Tôi đã đạt được điều này thông qua một tài liệu PDF có thể ký. Bạn có thể có một trường chữ ký trong tài liệu PDF bằng cách sử dụng thành phần USB + bút hoặc chỉ cần nhấp vào nó để xác nhận sẽ cho mục đích pháp lý cũng tốt như thể bạn đã ký bằng tay tài liệu.

Nó được gọi là chữ ký điện tử và họ giữ lên tòa án.

Tài liệu PDF sau khi được ký sẽ được mã hóa và hàm băm được lưu trữ cùng với nó để xác minh tài liệu KHÔNG bị giả mạo sau khi ký. Các trình đọc PDF hiện đại như Adobe thực sự có thể truyền tài liệu đã ký đến máy chủ nơi bạn có thể lưu trữ nó trong hệ thống quản lý tài liệu hoặc cơ sở dữ liệu để giữ an toàn.

Bất cứ lúc nào người dùng quản trị viên có thể nhớ lại một trong những tài liệu này và in chúng.

Điều này có thể phù hợp hơn với những gì khách hàng của bạn thực sự cần, nhưng đã có một thời gian kém để giải thích đúng.


1
+1 để đề cập rằng điều này là có thể về mặt kỹ thuật, nhưng sẽ yêu cầu một trình cắm
bunglestink

10
Vì vậy, điều gì ngăn bạn thay thế PDF bằng một bản mà bạn đã tự ký? Theo tôi biết, không có cơ sở hạ tầng khóa công khai mạnh mẽ để xử lý danh tính của cá nhân.
Random832

1
@ Random832 Checkmate bạn của tôi, bạn đã cho tôi! Tôi đoán không có câu trả lời an toàn 100%. Bất kỳ hệ thống có thể bị xâm phạm.
maple_shaft

3
Điều này chắc chắn sẽ không cần phải cắm vào; lưu ý rằng các công cụ phản hồi mới nhất của Google (trên Google Plus và Youtube) thực sự thực hiện "ảnh chụp màn hình" này. Bạn có thể dễ dàng gửi tất cả HTML trên một trang hiện tại thông qua JAvascript và sử dụng biểu định kiểu thích hợp để xây dựng lại hình ảnh trông như thế nào. Tất nhiên đây là ^% & * ing vô lý vì bạn chỉ có thể gửi giá trị của hộp kiểm.
Ben Brocka

Tôi đã viết một tiện ích ghi lại chuyển động của chuột trong phần tử CANVAS và tuần tự hóa thời gian đã chụp, tọa độ X, Y trở lại máy chủ. Tôi không hoàn toàn chắc chắn trạng thái pháp lý của "chữ ký" đó là gì (nó có thể bị thay đổi và khá dễ sao chép) nhưng nếu đây là điều duy nhất họ "ký" trên hệ thống thì thật khó để giải thích bạn có dữ liệu đó nếu họ không đồng ý. (Tôi không biết điều gì xảy ra nếu họ có em trai của họ ký "pizza", nhưng PDF bị vấn đề tương tự).
psr

27

Tôi có thể nghĩ rằng câu hỏi thực sự sẽ là người có tên xuất hiện trên biểu mẫu có thực sự điền vào mẫu không?

Nói cách khác, nếu ai đó truy cập trang web và nhập tên "Bill Gates" và nhấp vào ô "bạn có thể gửi email cho tôi" thì ảnh chụp màn hình sẽ chứng minh đó là Bill Gates thật như thế nào?

Họ đã xem xét làm những gì nhiều trang web làm và đó là gửi một email xác minh với một liên kết duy nhất mà ai đó phải nhấp vào để xác nhận? Bằng cách đó, ít nhất bạn có một bản ghi rằng bạn có xác nhận từ một người có quyền truy cập vào tài khoản email đó.


4
Chính xác. Email xác minh để đảm bảo rằng người yêu cầu email có quyền kiểm soát địa chỉ email được đề cập. Tôi cũng nói thêm rằng thay vì có hồ sơ pháp lý về những người được yêu cầu tài liệu quảng cáo, rằng bạn chỉ tuân thủ Đạo luật CAN SPAM và làm cho việc hủy đăng ký tài liệu quảng cáo của bạn trở nên rất dễ dàng. (Mỗi email gửi tài liệu quảng cáo ngay cả khi bên thứ ba có liên kết để hủy đăng ký tất cả các danh sách bạn đưa chúng vào.)
dr jimbob

20

Không có điều như vậy

Cuộc thảo luận này cần bắt đầu với sự hiểu biết rằng không có cách nào để chứng minh tuyệt đối rằng người đó đã đồng ý. Điều này đúng ngay cả trong thế giới vật lý. Ngay cả khi bạn quay video người đó ký vào một biểu mẫu và đặt một giọt máu của họ vào biểu mẫu, họ có thể nói rằng video đã bị làm giả, máu được lấy từ họ mà họ không biết và chữ ký đã bị giả mạo. Nhưng bằng chứng tuyệt đối là không cần thiết; chỉ là một lượng bằng chứng hợp lý.

Trong thế giới kỹ thuật số, mọi dữ liệu - văn bản, hình ảnh, dữ liệu trong cơ sở dữ liệu hoặc email - đều có thể bị giả mạo. Điều gần nhất để chứng minh chúng ta có thể có là cho người dùng mã hóa thứ gì đó bằng khóa riêng và cho thấy khóa công khai của họ sẽ giải mã nó. Tuy nhiên, điều này hiện vượt quá khả năng của hầu hết người dùng và họ vẫn có thể nói rằng khóa riêng của họ đã bị đánh cắp.

Điều tốt nhất chúng ta có thể làm là:

  • Nhận một cái gì đó sẽ là khó khăn (mặc dù không phải là không thể) để giả mạo
  • Đồng ý rằng, về mặt pháp lý, bằng chứng đó là đủ
  • Giúp người dùng dễ dàng hủy đăng ký

Lưu một hình ảnh thay vì văn bản không thêm gì về mặt bằng chứng; tất cả những gì nó làm là làm cho quá trình chậm hơn và tốn kém hơn.

Chữ ký điện tử

Trong công việc của tôi, chúng tôi có một ứng dụng nơi người dùng ký một tuyên bố. Về mặt pháp lý, các khu vực pháp lý mà chúng tôi hoạt động đã thông qua luật nói rằng người dùng nhập địa chỉ email của họ vào một biểu mẫu có thể được tính là chữ ký điện tử. Chúng tôi đã xác minh rằng họ có quyền truy cập vào địa chỉ bằng cách gửi một liên kết mà họ phải nhấp. Đó không phải là bằng chứng tuyệt đối, nhưng nó đã được coi là đủ tốt cho mục đích của chúng tôi.

Bất cứ thông tin nào bạn nắm bắt được, tôi cũng khuyên bạn nên chụp dấu thời gian , vì vậy bạn có thể nói "bạn đã đồng ý vào ngày giờ chính xác này". Tôi không chắc điều đó có liên quan đến pháp lý hay không, nhưng nó có vẻ thuyết phục hơn đối với tôi, bởi vì nó mang lại nhiều cơ hội hơn cho người dùng để chứng minh bằng cách khác (ví dụ: "Tôi có bằng chứng rằng tôi không ở máy tính" ).

Phát điên với nó

Một số điều bạn có thể làm có thể được coi là bằng chứng:

  • Chụp dấu thời gian, IP, trình duyệt, v.v. để bạn có thể xác nhận hoàn cảnh của chữ ký
  • Yêu cầu xác minh địa chỉ email
  • Yêu cầu người dùng nhập mật khẩu của họ tại thời điểm chữ ký
  • Sắp xếp để có một dịch vụ web của bên thứ ba chỉ viết sẽ nhận được, tại thời điểm người dùng ký, một POST HTTPS từ ứng dụng của bạn với thông tin chữ ký. Nếu bên thứ ba có thể làm chứng rằng dịch vụ của họ là chỉ ghi, rằng họ đã nhận được hồ sơ tại thời điểm đó và bản sao của bạn giống hệt nhau, bạn có thể lập luận rằng bạn đã không sửa đổi dữ liệu kể từ đó.
  • Gửi cho người dùng một email tại thời điểm đó nói rằng "cảm ơn vì đã đăng ký, đây là cách hủy đăng ký." Nhà cung cấp email của họ hoặc của bạn có thể cho thấy rằng email đã được gửi ngay sau khi người dùng đăng nhập.

IANAL

Xin đừng coi đây là lời khuyên pháp lý.


Câu trả lời tuyệt vời ... nhưng vẫn còn địa chỉ email vì chữ ký điện tử cũng đã bị tranh chấp về mặt pháp lý. Bạn đã đúng mặc dù, không có cách nào được chứng minh tuyệt đối. Chỉ khác sắc thái khó hơn. Hệ thống pháp lý hoạt động trên sự nghi ngờ hợp lý. Hầu hết mọi người sẽ đồng ý rằng công việc giả mạo video, ăn cắp máu và giả mạo chữ ký không phải là một khả năng hợp lý. Nó có thể xảy ra không? Tất nhiên là có nhưng chắc chắn rất khó có ai gặp rắc rối đó.
maple_shaft

1
"... và họ vẫn có thể nói khóa công khai của họ đã bị đánh cắp." không nên đọc "... và họ vẫn có thể nói khóa riêng của họ đã bị đánh cắp." Khóa công khai bị đánh cắp không gây ra bất kỳ vấn đề bảo mật nào, trong PKI được thiết kế tốt.
Lie Ryan

capturing a timestampchỉ là vô dụng. Ngày nay, đủ dễ dàng để người dùng thông thường tạo trình duyệt hoặc tự động hóa máy tính để bàn để lên lịch điền vào biểu mẫu vào một thời điểm nào đó trong tương lai.
Lie Ryan

10

Một tùy chọn khác là đăng nhập HTTP Post thô từ máy khách. Điều này sẽ có IP của họ, họ đến từ đâu, trình duyệt nào, v.v., mà không yêu cầu ảnh chụp màn hình. Sau đó, bạn có thể đăng nhập bảng này vào một bảng chỉ chèn ở dạng thô hoặc tệp nhật ký phẳng đơn giản ...

Chỉ cố gắng nghĩ ra một số lựa chọn khác bởi vì tôi có xu hướng gặp phải những yêu cầu lố bịch như thế này thường xuyên hơn nhiều so với tôi muốn ...


Hmm yeah, nhưng nhật ký đó nằm trong cùng một cơ sở dữ liệu mà họ lo lắng về việc bị giả mạo. Xem chỉnh sửa trong câu trả lời của tôi, tài liệu PDF được ký điện tử là cách duy nhất để đảm bảo tài liệu không bị giả mạo.
maple_shaft

1
@maple_shaft: Ý tưởng cơ bản về việc thêm bảo mật cơ sở dữ liệu sẽ là quyền "chỉ chèn" cho tất cả người dùng ngoại trừ một quản trị viên. Nhật ký này sẽ được thêm vào các hoạt động cơ sở dữ liệu thông thường và sẽ chỉ được sử dụng để xác minh khi cần thiết.
bunglestink

1
@JonnyBoats: Bạn đúng về mặt kỹ thuật về HTTPS, mặc dù một khi nhận được ở cấp ứng dụng, bạn sẽ có cùng một văn bản thô được ghi lại.
bunglestink

1
"Tài liệu PDF được ký điện tử" hoặc ký bất cứ thứ gì được ký điện tử "là cách duy nhất để đảm bảo tài liệu không bị giả mạo" ngoại trừ bởi ai đó sở hữu khóa mà họ sẽ được ký.
Random832

1
@ Random832: không thể thực hiện được nếu khóa riêng cho tài liệu được cung cấp bởi người dùng, IMO đó là quá mức cần thiết cho một hộp kiểm cho biết thỏa thuận nhận tài liệu quảng cáo.
Lie Ryan

8

Một ảnh chụp màn hình là dễ dàng chế tạo, nếu bạn nên nghiêng. Như bất kỳ loại băm, dấu thời gian, vv, mà không có cơ sở mật mã. Một người cho rằng có một số yêu cầu pháp lý nghiêm ngặt để trường đại học có thể chứng minh rằng họ có được sự đồng ý tích cực trước khi gửi tài liệu tiếp thị cho mọi người hoặc giao dịch thông tin của họ cho bên thứ ba.

Cách đáng tin cậy duy nhất để làm điều này là bằng cách yêu cầu chữ ký điện tử từ người dùng. Để biết ví dụ, hãy xem cách trang web http://launchpad.net yêu cầu bạn ký mật mã vào Quy tắc ứng xử của Ubuntu.

Điều này chỉ có hiệu lực pháp luật tại các khu vực tài phán nơi chữ ký điện tử có thể được sử dụng trên một tài liệu pháp lý, nhưng bằng cách ký một đoạn văn bản cụ thể, người dùng có thể cung cấp bằng chứng về sự đồng ý của họ mà sau đó có thể kiểm chứng được. Trường đại học hầu như không thể giả mạo chữ ký chính xác từ cùng một khóa công khai.

Lưu ý rằng việc các trường đại học cập nhật cơ sở dữ liệu của họ là không quan trọng, và do đó lật trường đồng ý và cũng để thay thế khóa công khai bằng khóa khác mà họ biết khóa riêng và tạo chữ ký hợp lệ cho khóa đó .

Do đó, nếu không có bên thứ ba ký khóa để chứng thực rằng họ thuộc về một cá nhân cụ thể, tất cả điều này đạt được là người dùng có thể xác minh liệu trường đại học có giả mạo cài đặt quyền riêng tư của họ hay không - không có chữ ký của bên thứ ba, đó là lời của họ chống lại trường đại học.

Nếu bạn yêu cầu thêm rằng tất cả quyền sở hữu khóa được xác minh và khóa được ký bởi một hoặc nhiều bên thứ ba đáng tin cậy, thì trường đại học sẽ không thể giả mạo chữ ký rõ ràng hợp lệ mà không bị lộ nhiều hơn (họ sẽ phải lừa dối hoặc đồng phạm bên thứ ba đáng tin cậy để có được các khóa giả của họ được ký). Khó khăn của cuộc tấn công này sẽ tăng lên với số lượng chữ ký của bên thứ ba bắt buộc, nhưng như một ghi chú poster khác, không phải là không thể.

Vì vậy, để tóm tắt:

  • Người dùng phải sở hữu hoặc tạo cặp khóa riêng / chung
  • Sau đó, người dùng phải có được chữ ký cho khóa chung của họ từ một hoặc nhiều bên thứ ba đáng tin cậy
  • Người dùng phải tải lên khóa công khai của họ, ít nhất là cho trường đại học và tốt nhất là vào kho lưu trữ khóa của bên thứ ba
  • Người dùng phải ký một bản rõ đã biết và cung cấp chữ ký làm bằng chứng họ đã cam kết chia sẻ dữ liệu riêng tư của họ

Vấn đề thực tế:

  • Rất ít người hiểu chữ ký điện tử
  • Chi phí chứng nhận của bên thứ ba có thể tốn kém
  • Điều này có vẻ như rất nhiều công việc để bảo vệ hộp kiểm của Junkmail trong trang tải xuống bản cáo bạch của trường đại học

8

Tôi sẽ bắt đầu bằng cách đọc Chữ ký điện tử cho quốc gia / tiểu bang của khách hàng với trọng tâm là tìm hiểu các phương pháp và yêu cầu nào ràng buộc về mặt pháp lý. Tôi khẳng định rằng không có quốc gia hay tiểu bang nào trong tâm trí đúng đắn của họ sẽ yêu cầu ảnh chụp màn hình là phương pháp chứng minh duy nhất cho chữ ký điện tử ràng buộc.

Ví dụ, tại Hoa Kỳ, 47 tiểu bang đã chấp nhận Đạo luật Giao dịch Điện tử Thống nhất , áp dụng cho "các vấn đề chính phủ" trong số những điều khác và do đó có thể sẽ áp dụng cho các yêu cầu của trường đại học. Nó có các phần sau đây có thể giúp:

..

  • Chữ ký điện tử - có nghĩa là âm thanh điện tử, ký hiệu hoặc quy trình được đính kèm hoặc liên kết logic với bản ghi và được thực hiện hoặc thông qua bởi một người có ý định ký vào hồ sơ.

..

  • Mục 7 công nhận pháp lý cho chữ ký điện tử, hồ sơ và hợp đồng
    • (a) Một hồ sơ hoặc chữ ký có thể không bị từ chối có hiệu lực pháp lý hoặc khả năng thực thi chỉ vì nó ở dạng điện tử.
    • (b) Hợp đồng có thể không bị từ chối có hiệu lực pháp lý hoặc khả năng thực thi chỉ vì một hồ sơ điện tử đã được sử dụng trong quá trình hình thành.
    • (c) Nếu một luật yêu cầu một hồ sơ bằng văn bản, một hồ sơ điện tử thỏa mãn luật pháp.
    • (d) Nếu luật yêu cầu chữ ký, chữ ký điện tử thỏa mãn luật.

..

Khi tôi biết luật, tôi ước tính chi phí của phương pháp chữ ký điện tử tốt nhất so với chi phí của phương pháp chụp màn hình.

Cuối cùng, tôi sẽ thảo luận với họ những phát hiện của tôi. Đầu tiên, tôi sẽ giải thích cho họ tùy chọn tốt nhất so với tùy chọn được đề xuất. Tiếp theo, tôi sẽ giải thích cho họ lượng thời gian này sẽ thêm vào dự án. Cuối cùng, nếu tôi ở một nơi để làm như vậy, tôi sẽ nói với họ rằng "tính năng" này sẽ thêm x đô la vào hóa đơn cuối cùng. Tôi chắc chắn sẽ sử dụng chi phí bổ sung cho tôi để biện minh cho chi phí bổ sung cho họ.

Nếu họ vẫn không nhúc nhích, tôi sẽ xem họ có người giám sát nào với sự tỉnh táo mà tôi có thể có cùng một cuộc họp không.

* Tôi không phải là luật sư, vì vậy vui lòng tìm kiếm lời khuyên pháp lý nếu bạn không chắc chắn về bất cứ điều gì.


6

Đây là một câu hỏi pháp lý, một câu trả lời thực sự tất nhiên sẽ phụ thuộc vào luật pháp quốc gia và thậm chí có thể là địa phương và hoàn cảnh chính xác. Vì vậy, rõ ràng một câu trả lời thực sự chỉ có thể đến từ một luật sư.

Tuy nhiên, theo như kiến ​​thức pháp lý (có giới hạn) của tôi, tôi thấy không có lý do gì để cho rằng một ảnh chụp màn hình sẽ được coi là bằng chứng cho bất cứ điều gì, vì rõ ràng nó rất dễ giả mạo.

Hành động tốt nhất của bạn có lẽ là để giải thích cho khách hàng của bạn rằng đây thực chất là một vấn đề pháp lý và cần có sự giúp đỡ của luật sư. Sau đó thảo luận với họ xem họ có muốn bạn thảo luận với luật sư hay họ muốn tự làm.

Để có được một giải pháp khả thi, bạn có thể muốn tự mình thảo luận (nếu khách hàng đồng ý). Nếu bạn không muốn rắc rối đó (hoặc sợ rằng họ có thể không sẵn sàng trả tiền cho bạn), hãy để họ làm điều đó.


6
Nếu OP đi theo con đường này, tôi sẽ đề xuất một cách tiếp cận trung gian, giải thích cho khách hàng rằng họ nên thảo luận với luật sư nhưng OP muốn tham gia vào các cuộc thảo luận đó nếu có thể. Bằng cách đó, chi phí trực tiếp cho khách hàng và ít có rủi ro hơn khi khách hàng hiểu sai điều mà luật sư nói khi chuyển thông tin đó lên OP.
Kevin D

5

Nếu bạn muốn xác thực rằng một tài liệu vẫn không bị thay đổi (bản ghi cơ sở dữ liệu, bất cứ điều gì), thì "cách thực hành tốt nhất" sẽ như sau:

  • Tuần tự hóa dữ liệu theo cách có thể lặp lại, bao gồm mọi trường có thể gây tranh cãi (ví dụ: địa chỉ email, cho dù hộp được chọn.)
  • Lấy hàm băm của bản ghi đó (ví dụ: sha1)
  • Sử dụng khóa chung cho bên thứ ba đáng tin cậy (tức là bên thứ ba không quan tâm) để mã hóa hàm băm này
  • Đăng dữ liệu theo cách công khai để thiết lập ngày mà nó tồn tại, ví dụ như một nhóm tin tức.
  • Để xác thực, bên thứ ba có thể giải mã hàm băm và so sánh nó với giá trị băm hiện tại.

Điều này đã được sử dụng để đảm bảo rằng hồ sơ bảo hiểm không bị giả mạo; tuy nhiên, "bên thứ ba đáng tin cậy" chúng tôi đã trả một số tiền nhất định để ban hành các bảng băm khi chúng được ký lại cho chính chúng tôi và một số khách hàng khác, vì vậy có một số người giám sát hồ sơ có khả năng là trát đòi hầu tòa.

Đây rõ ràng là một gánh nặng vô lý cho một cái gì đó như xác nhận một trường boolean. Nhưng, nếu bạn cho khách hàng thấy chi phí liên quan, họ có thể sẽ không bị câm.


4

Mặc dù bản thân yêu cầu là vô lý và bạn không thể có bằng chứng pháp lý được thực hiện hợp lý rằng một người A đã chọn hộp kiểm khi điền vào biểu mẫu, có một câu hỏi trong câu hỏi của bạn có thể được trả lời thực sự:

[Làm thế nào để đảm bảo rằng dữ liệu không bị thay đổi sau đó, trong khi] DB có thể được thay đổi sau khi người dùng đã gửi biểu mẫu?

Điều này, thực sự, có thể dễ dàng hơn để làm kỹ thuật.

1. Giữ một bằng chứng rằng dữ liệu không bị thay đổi

Gửi e-mail cho chính bạn (đến hộp thư chuyên dụng) với các giá trị thực sự được gửi bởi người dùng rất dễ dàng (tốt, có thể, tùy thuộc vào cấu hình máy chủ của bạn, ngưỡng, cơ hội được lọc là thư rác, số lượng e-mail được gửi mỗi giây, v.v.) và đủ để cho thấy rằng dữ liệu không bị thay đổi sau khi được gửi . Ví dụ: trừ khi tôi có quyền truy cập không hạn chế vào các máy chủ của Google , tôi khá chắc chắn rằng mọi người sẽ bị thuyết phục rằng tôi không thể thay đổi nội dung của các email tôi đã gửi đến địa chỉ GMail của riêng tôi.

2. Giữ một bằng chứng rằng dữ liệu là chính xác

Rất có thể, khách hàng sẽ không hài lòng, vì ngay cả khi bạn có bằng chứng chứng minh rằng dữ liệu không bị thay đổi sau đó, làm thế nào chúng ta có thể chắc chắn dữ liệu không bị sửa đổi giữa việc gửi biểu mẫu và gửi thông tin qua e-mail (và cam kết với cơ sở dữ liệu)? Trong trường hợp này, bước tiếp theo là:

  1. Xóa hộp kiểm,
  2. Đánh dấu bất kỳ ai điền vào biểu mẫu là không muốn nhận tài liệu quảng cáo spam từ công ty khách hàng của bạn,
  3. Cho khách truy cập biết rằng họ phải gửi e-mail (với tiêu đề được xác định trước và một nội dung trống) đến hộp thư chuyên dụng để nhận các ưu đãi thương mại spam .

Email của họ sau đó có thể được xử lý tự động và được giữ làm bằng chứng.

3. Giữ một bằng chứng rằng dữ liệu là xác thực

Bây giờ bạn đã có bằng chứng rằng người sử dụng địa chỉ email đã cho thực sự muốn nhận thư rác, khách hàng vẫn có thể không hài lòng (điều này thường xảy ra với những khách hàng có yêu cầu điên rồ như vậy). Điều gì sẽ xảy ra nếu ai đó hack hộp thư của người khác chỉ để đăng ký hackee để nhận thư rác của bạn?

Ở mức độ điên rồ này, bạn vẫn có thể đáp ứng về mặt kỹ thuật với các yêu cầu. Bây giờ, thay vì gửi e-mail chọn tham gia, người dùng của trang web phải:

  1. Gửi thư có bản sao ID / hộ chiếu và thư, có chữ ký, nói rằng người này thực sự muốn nhận thư rác.

  2. Xác thực địa chỉ email thông qua một mã bí mật sẽ được gửi lại.

Nhưng trước khi làm điều này, hãy thuyết phục khách hàng thực hiện những gì tôi mô tả trong phần 2 và kiểm tra nó. Khách hàng sẽ thấy rằng sau một hoặc hai tháng, không ai không bao giờ gửi bất kỳ email chọn tham gia nào và sẽ vui vẻ quên đi bằng chứng pháp lý và dữ liệu đã thay đổi trong cơ sở dữ liệu.


Bước 2 của bạn không chứng minh bất cứ điều gì. Để đánh dấu mọi người là không muốn nhận thư rác, bạn đang lưu trữ "dấu" đó trong cùng một cơ sở dữ liệu mà khách hàng lo lắng về việc bị giả mạo. Tuy nhiên, việc giữ một hàm băm của một tập hợp dữ liệu đảm bảo rằng nếu bất kỳ ai ngăn chặn dữ liệu hoặc chính hàm băm đó để so sánh dữ liệu với hàm băm sẽ dẫn đến thất bại đối với hàm băm và bằng chứng rằng dữ liệu đã bị hỏng hoặc bị giả mạo.
maple_shaft

@maple_shaft, những gì cần thiết trong phần 2 nói chung không phải là những gì được lưu trữ trong cơ sở dữ liệu, mà chỉ là việc nhận email chọn tham gia từ người dùng của trang web. Dữ liệu trong cơ sở dữ liệu không thành vấn đề.
Arseni Mourzenko

2
Bước 1 là tốt. Dễ dàng, đơn giản, hiệu quả.
Offirmo

@MainMa: Và bạn nghĩ rằng e-mail không thể bị làm giả, hoặc giả mạo?
Ben Voigt

3

Tình trạng pháp lý của bất cứ điều gì bạn làm là độc lập với giá trị kỹ thuật của giải pháp.

Ví dụ :

Trong nhiều năm, các thành viên quốc hội Anh sẽ bỏ qua các kiến ​​nghị điện tử vì luật pháp yêu cầu các kiến ​​nghị mang một chữ ký cho mỗi người. Sau đó, một người nào đó nhận thấy rằng một hàm băm của một địa chỉ email, ngày, giờ và bình luận - mặc dù nó không chứa khóa bí mật - cấu thành một "chữ ký số" trong mắt luật pháp Vương quốc Anh.

Do đó, hãy nhờ luật sư cho bạn biết phải làm gì và làm điều đó. Đừng lo lắng liệu nó có âm thanh không.

Hoặc, làm những gì khách hàng của bạn yêu cầu, tin tưởng rằng họ đã kiểm tra với luật sư. Hãy chắc chắn rằng có một bản ghi thảo luận.


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.điều đó sẽ chỉ hoàn thành nghĩa vụ pháp lý và chính trị của bạn đối với khách hàng; Tôi nghĩ rằng OP (đúng) quan tâm nhiều hơn đến việc giúp khách hàng thực hiện các yêu cầu pháp lý của họ (mặc dù khách hàng hiện dường như hiểu sai các yêu cầu pháp lý của chính họ, do đó đề xuất giải pháp sai).
Lie Ryan

3

Làm thế nào các bleep bạn có nghĩa là để có được một ảnh chụp màn hình? Những gì bạn đã có là HTML và bất cứ điều gì bạn gửi cho khách hàng và phản hồi điện tử từ khách hàng. Không liên quan đến một ảnh chụp màn hình.

Ảnh chụp màn hình là những gì trình duyệt hiển thị và sẽ khác nhau một chút tùy thuộc vào trình duyệt sử dụng cũng như cài đặt và thiết bị ở đầu bên kia. Cá nhân, tôi duyệt bằng Firefox, Chrome, Opera, Mobile Safari, thỉnh thoảng Lynx và thậm chí một chút IE.

Bạn có thể kết xuất trang trong một trình duyệt tiêu chuẩn ở cuối và chụp màn hình đó, nhưng tạo tài liệu của riêng bạn và ghi lại nó sẽ không gây ấn tượng với một thẩm phán. Bạn có thể yêu cầu người dùng gửi ảnh chụp màn hình, nhưng chúc may mắn thực thi điều đó. Không phải tất cả các thiết bị duyệt web đều có một cách rõ ràng để chụp và gửi ảnh chụp màn hình (làm thế nào để bạn làm điều đó trên iPhone?). Nếu bạn đang làm việc với một khách hàng bị suy giảm thị lực bằng cách sử dụng trình đọc màn hình, có thể không có đại diện trực quan nào ở cuối máy khách. (Tôi thấy một vài người bạn mù của tôi sử dụng máy tính xách tay, không có màn hình nào.)

Vì vậy, giải thích cho khách hàng rằng không có cách nào để có được một ảnh chụp màn hình, và thậm chí có thể không có một màn hình để chụp ảnh.


1
iPhone: Giữ nút LOCK trong vài giây. Android: Rootkit điện thoại và cầu nguyện. (Tôi nhận được điểm bạn đã làm, chỉ sayin' ...)
BRPocock

3

Thực tế có thể tạo Kiểm soát truy cập bắt buộc kết hợp với Dấu thời gian đáng tin cậy cộng với Chữ ký số cho cơ sở dữ liệu để đảm bảo rằng giá trị của cột có thể tin cậy được. Ảnh chụp màn hình không phải là câu trả lời chính xác, tuy nhiên có các giải pháp Điện toán đáng tin cậy đạt được chính xác những gì bạn muốn đạt được. Nếu bạn muốn biết thêm chi tiết, bạn có thể bắt đầu một cuộc trò chuyện với tôi.


2

Như đã chỉ ra rằng bạn không thể thực sự chứng minh rằng người đó đã đồng ý hay không nên chắc chắn giải pháp tốt nhất là:

a) Yêu cầu người đó xác nhận thỏa thuận của họ thông qua liên kết được gửi đến địa chỉ email của họ (điều này đảm bảo họ chưa nhập billgates@microsoft.com)

b) Cung cấp cho họ tùy chọn hủy đăng ký tiếp thị / quảng cáo


2

Một lược đồ gần nhất để chống giả mạo sẽ tạo ra cặp khóa công khai / riêng khi người dùng điền vào biểu mẫu bằng Javascript (phía máy khách), sau đó gửi nội dung biểu mẫu, khóa chung và chữ ký tới máy chủ và xuất trình khóa riêng cho người dùng và yêu cầu họ ghi chú và lưu trữ ở nơi an toàn.

Với lược đồ này, bạn sẽ có thể chứng minh rằng không thể giả mạo dữ liệu biểu mẫu vì bạn không biết khóa riêng được sử dụng để tạo chữ ký. Điểm yếu của lược đồ này là bạn phải chứng minh được rằng bạn chưa bao giờ chạm vào khóa riêng và người dùng không được mất khóa riêng của họ.

Vì bạn phải có khả năng chứng minh rằng bạn chưa bao giờ có quyền truy cập vào khóa riêng, nên có thể cần bao gồm HTML và tất cả Javascript khi tạo chữ ký biểu mẫu; điều này chứng minh biểu mẫu chính xác mà người dùng sử dụng để gửi dữ liệu (do đó chứng minh rằng bạn đã không sửa đổi biểu mẫu / javascript kể từ khi họ gửi, do đó chứng minh rằng bạn không sử dụng javascript để đánh cắp khóa riêng của họ).

Lược đồ này rất phức tạp và như với bất kỳ hệ thống phức tạp nào, tôi không thể đảm bảo rằng không có lỗ hổng (thực ra, tôi khá tự tin rằng có, và ai đó có thể sẽ chỉ ra nó).


2

Một ảnh chụp màn hình sẽ không có nhiều bằng chứng, vì không có cách nào để xác minh rằng một ảnh chụp màn hình là có thật. Điều đó có thể dễ dàng bị làm giả. Theo như nhiều giải pháp kỹ thuật hơn, có công cụ lưu trữ lưu trữcho MySQL chỉ hỗ trợ chèn và chọn. Bạn không thể xóa khỏi bảng cả. Xin lưu ý bạn, có thể ALTER TABLE cho một công cụ lưu trữ khác, xóa bản ghi và sau đó ALTER TABLE để thay đổi công cụ trở lại mà không ai nhận ra, nhưng hy vọng bạn có thể giới hạn root đó và chỉ cho phép root đăng nhập cục bộ . Sau đó, bạn có thể theo dõi thông tin đăng nhập vào máy cơ sở dữ liệu cục bộ thực tế để tìm ra ai có thể thay đổi nó. Bạn cũng có thể phân tích nhật ký nhị phân hoặc kích hoạt nhật ký truy vấn thô để xem ai có thể đưa ra các truy vấn dẫn đến loại hoạt động này. Tôi không chắc chắn bạn đang sử dụng công nghệ cơ sở dữ liệu nào, nhưng rất có thể bạn sẽ có thể đưa ra giải pháp ngăn chặn dữ liệu dễ dàng bị thay đổi.


2

Tôi sẽ khuyên bạn nên ngồi xuống và đọc Đạo luật ESIGN . Đạo luật này bao gồm những gì cần thiết và không cần thiết để ghi lại chữ ký điện tử để nó có thể ràng buộc về mặt pháp lý. Tại một chủ nhân trước đây, chúng tôi thấy rằng trở ngại khó khăn nhất theo luật định là có thể làm cho chữ ký và tài liệu có thể đọc được trong vòng 10 - 15 năm trong tương lai.

Các chi tiết của mỗi mẫu điền vào phải được lưu trong một phương pháp đáng tin cậy. Rõ ràng, lưu các giá trị biểu mẫu trong cơ sở dữ liệu - một cột cho biết người dùng đồng ý hay không đồng ý - là không đủ, bởi vì DB có thể được thay đổi sau khi người dùng đã gửi biểu mẫu. Khách hàng của chúng tôi tuyên bố rằng các cổng thông tin đại học khác tạo ra một ảnh chụp màn hình của biểu mẫu điền và lưu nó ở đâu đó trong một thư mục chuyên dụng, theo cách dễ dàng tìm thấy, chẳng hạn như đặt tên tệp bao gồm tên người dùng và ngày và thời gian.

Như những người khác đã chỉ ra, ảnh chụp màn hình là thứ không thể thực hiện được. Nó có thể bị làm giả, vì tất cả các chương trình "ma thuật" đều là giả mạo thuần túy: bạn thấy ai đó bị cưa làm đôi, nhưng họ không thực sự bị cưa làm đôi.


1

Tôi đã xử lý chia sẻ điên rồ của tôi trước đây. Tôi có thể nghĩ ra một số giải pháp kỹ thuật nhưng tại sao không quay lại với khách hàng và đề nghị viết lại câu hỏi thành 'Bạn không muốn nhận email tiếp thị?' (hoặc từ ngữ tương tự) và cho phép người đó từ chối? Sau đó, bạn không cần một ảnh chụp màn hình.


1

Như mọi người lưu ý, giá trị kỹ thuật và pháp lý của yêu cầu tính năng là không tồn tại. Điều đó nói rằng, có tùy chọn nếu cho phép người dùng tự chụp và tải lên ảnh chụp màn hình dưới dạng tệp đính kèm.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.