2010-08-24 84 views
2

我在我的網站中有表格。其中一些形式包括PayPal表單(向PayPal提交信息的表單)。我不希望我的客戶查看源代碼,看看我使用的是哪些字段&各自的值。因此,我希望對它們進行加密,但是能夠將信息安全地提交給PayPal,其中用戶輸入的值爲&我自己的隱藏表單值。PHP&HTML:加密表格

因此,例如,考慮到我的表格的內容之一是:

<input name="note" type="text" id="note" value="<?php echo (isset($_POST['note']) ? $_POST['note'] : ''); ?>" maxlength="255" /> 

當我查看源代碼,我看到這樣的事情:

<input name="note" type="text" id="note" value="This is my first note" maxlength="255" /> 

所以這是很清楚可見我發送的是什麼音符。我不希望任何人看到我發送的內容和地點。因此,如果可能的話,我們可以加密領域&它們的值,使用戶看到喜歡的東西時,他的意見的源代碼如下:

aXKJKJHlnkhGHKJBjKJOIKJKG5dsaGjhvbSDHAHOSDLnNDNOjkjsadndKHKDNSQW 

以上將代表該領域的加密形式。這可能實現而不使用Javascript?我真的想這樣做沒有JavaScript,因爲表單字段值將是動態& JavaScript可能被禁用。

非常感謝。

EDIT1:我只是想補充這說明,指定我將相同的加密過程適用於所有其他形式的&它們可以或不可以給PayPal。因此,保持這一點,這將有助於瞭解一般的加密程序&不只是特定於PayPal。有任何想法嗎?

+1

在其他有PayPal表格的網頁上查看在線...你是否看到任何加密工作? – Fosco 2010-08-24 14:52:43

+0

除非瀏覽器能夠解密它,否則不能加密瀏覽器的內容,因此最終用戶能夠閱讀它,因爲他/她的瀏覽器是需要呈現有效內容的地方。 – Chris 2010-08-26 18:02:33

回答

4

簡短的回答是

爲了讓頁面正確呈現,HTML必須能被瀏覽器讀取。不幸的是,這通常意味着它也必須被人類閱讀(通過查看源代碼或使用DOM檢查器)。

可以防止查看源代碼用填充/精縮JavaScript來構建一個完整的頁面,但是這是可訪問的噩夢,如果你的用戶禁用了JavaScript,那麼就沒有頁面讓他們看到。這不是一個好主意。

查看互聯網上的任何頁面並查看源代碼。您將看到頁面上的所有表單字段和元素(除非它們是由JavaScript創建的,在這種情況下,使用DOM檢查器將允許您看到它們)。

如果您擔心安全問題,那麼服務器端輸入驗證以及HTTP引用者檢查就是您最好的選擇。

+1

你擊中了所有要點來回答他的問題。很好。在堆棧讓我在幾個小時內重新啓動時,爲你+1。 :-) – Chris 2010-08-26 18:01:45

0

用JavaScript加密任何東西是一個壞主意,人們可以關閉它。最好的辦法是從用戶那裏獲取所需的信息,將表單發佈到另一個收集數據的php文件中,添加註釋並將表單提交給paypal本身並附帶額外信息(閱讀this)。

+1

注意:我不會寬恕這一點,請按照其他人的建議正確使用api! – fredley 2010-08-24 14:55:34

+0

感謝您的回覆。有時按照您的建議來做是不可行的。所以我根據這些情況來建立我的問題。那麼現在有什麼想法? – Devner 2010-08-24 23:47:41

1

看起來您正在將瀏覽器發送到PayPal的網站,以便他們可以支付您的費用,爲此,PayPal需要知道您的身份和交易金額。貝寶作爲您可以使用的許多API,例如,如果您可以獲得HTTPS證書,則可以在服務器端執行所有操作。如果沒有,那麼看看他們沒有達成協議,他們會根據唯一的事務ID向服務器詢問事務處理的詳細信息,而不是從瀏覽器獲取所有事務。您可能會對其他API感到高興。

祝你好運!

哦,別忘了,如果有人知道如何給你錢,這完全沒問題!

+0

感謝您的回覆。即使對於不向PayPal發送數據的其他表格,即實際內部的東西,我也需要實際應用相同的原則。因此,如果有一種方法可以解決這個問題,而無需使用PayPal的API,這將有所幫助。任何想法? – Devner 2010-08-24 18:54:01

0

如前所述,您可以在服務器上加密服務器上的數據,這是您的最佳選擇,因爲除PayPal以外,任何人都無法解密。

有一個教程here這似乎很有幫助。正如你已經使用PHP,它應該只是一個複製和粘貼作業。

+0

感謝您的回覆。我的目的是加密所有表單並且不僅與Paypal相關。有任何想法嗎? – Devner 2010-08-24 18:57:13