2014-03-26 33 views
1

在我的應用程序,客戶端同意合同。電子簽名與PHP

我需要一些方法來確保即使有權訪問mysql數據庫,他們的合同批准也不會受到干擾。

換句話說,他們的批准可以與他們已批准的條款相關聯。

它必須具有法律約束力,所以如果數據庫中的數據被篡改,簽名將不再有效。

有沒有人完成過這個?

+0

「如果數據庫中的數據被篡改,則簽名將不再有效。」這使你的解決方案無用,正確嗎? –

+0

好吧,不,我沒有解決方案。我問是否有人有解決這個問題的辦法。 – user2887408

+0

做一個簡單的方法是數據庫中的數據的MD5(或其他散列)。這會告訴你數據是否已經改變。我不知道法院會怎麼做(最終是什麼決定它是否「具有法律約束力」)。 – Kryten

回答

0

如果您在Stack Overflow上提出有關加密問題的問題,那麼您就會頭痛一陣,毫無疑問會造成輕微但重要的錯誤,導致您的工作完全失效。密碼很難完全正確,即使這樣你也不得不隨時更新你的應用程序,因爲各種各樣的新技術可以避免被發現。

使用現成的解決方案驗證GnuPG一樣工作來處理您的簽名。即使那樣你也需要確保它的安裝正確,你正在處理數據並調用正確的函數來驗證簽名。

長話短說:尋找合格和/或認證的人來做到這一點,並按照他們的建議致信。讓他們的解決方案由可信任的第三方審覈。

你想在這裏做的一般條款是讓雙方密碼簽署原始郵件的內容。這樣一來,爲了改變內容,雙方必須「串通」,如果一方試圖破壞另一方則不太可能。

這要求雙方都有一個安全的,未知的私鑰用於這些操作。除非你有一種安裝客戶端軟件的方法,否則管理這些應用程序的開銷是相當大的。即使這樣,生成和保護密鑰也是非常有趣的。

如果您想了解更多關於加密術的細微差別,您需要閱讀The Book