蓄意協議錯誤:蘭利法則
Langley's Law(蘭利法則)是與著名的伯斯塔爾法則(Postel’s Law)相反,伯斯塔爾法則是:
傳送時要保守;接收時要開放自由;
Be conservative in what you send, be liberal in what you accept.
HTML語法就是遵循伯斯塔爾法則,HTML能接受任何文字,哪怕不嚴格遵循HTML語法。在傳送文件的時候,我們會盡量保守一些,儘量採用最佳實踐,儘量確保文件格式良好。但從瀏覽器的角度說,它們必須以開放的姿態去接收任何文件。
伯斯塔爾法則的問題是帶來互用性差,將伯斯塔爾法則反過來就是蘭利法則:
傳送時要偶爾邪惡;接受時要保守。
Be occasionally evil in what you send, and conservative in what you accept.
比如Netflix使用chaos monkey故意搗亂其系統,以獲得系統的健壯性,下面是google推出Roughtime這個NTP授權時間校驗服務的引文:
一個健康的軟體生態系統不會出現透過指定軟體應該如何行為,然後才能設定其軟體實現做正確的事情,相反,我們計劃讓Roughtime伺服器針對一小部分請求返回無效,偽造的答案。這些虛假答案將包含錯誤的時間,而且也將是另一種方式無效,例如,一個簽名可能不正確,或訊息中的標籤可能是錯誤的順序。客戶端實現如果不進行所有必要的檢查,就不會發現他們得到胡說八道的答案,這對於他們變成一個黑帽交談(Blackhat talk)前暴露錯誤BUG已經足夠有效。
傳送時要保守;接收時要開放自由;
Be conservative in what you send, be liberal in what you accept.
HTML語法就是遵循伯斯塔爾法則,HTML能接受任何文字,哪怕不嚴格遵循HTML語法。在傳送文件的時候,我們會盡量保守一些,儘量採用最佳實踐,儘量確保文件格式良好。但從瀏覽器的角度說,它們必須以開放的姿態去接收任何文件。
伯斯塔爾法則的問題是帶來互用性差,將伯斯塔爾法則反過來就是蘭利法則:
傳送時要偶爾邪惡;接受時要保守。
Be occasionally evil in what you send, and conservative in what you accept.
比如Netflix使用chaos monkey故意搗亂其系統,以獲得系統的健壯性,下面是google推出Roughtime這個NTP授權時間校驗服務的引文:
一個健康的軟體生態系統不會出現透過指定軟體應該如何行為,然後才能設定其軟體實現做正確的事情,相反,我們計劃讓Roughtime伺服器針對一小部分請求返回無效,偽造的答案。這些虛假答案將包含錯誤的時間,而且也將是另一種方式無效,例如,一個簽名可能不正確,或訊息中的標籤可能是錯誤的順序。客戶端實現如果不進行所有必要的檢查,就不會發現他們得到胡說八道的答案,這對於他們變成一個黑帽交談(Blackhat talk)前暴露錯誤BUG已經足夠有效。
相關文章
- ORA-12560: TNS: 協議介面卡錯誤解決辦法協議
- ORA-12560:TNS:協議介面卡錯誤協議
- ORA-12560: TNS: 協議介面卡錯誤協議
- Swift---協議和擴充套件、 錯誤處理、泛型Swift協議套件泛型
- ORACLE登入出現“ORA-12560:TNS:協議介面卡錯誤”錯誤修復Oracle協議
- Windows下ORA-12560: TNS: 協議介面卡錯誤Windows協議
- 解決ORA-12560: TNS: 協議介面卡錯誤協議
- 星瑞格與寶蘭德簽訂戰略合作協議協議
- “遊”法可依 | 您的遊戲合作協議能否保證順利收到合作款項?遊戲協議
- mysql innobackupex 的一則錯誤MySql
- ORA-12560: TNS: 協議介面卡錯誤 常見原因協議
- ORA-12560: TNS: 協議介面卡錯誤的問題協議
- dataguard安裝ORA-12560: TNS: 協議介面卡錯誤協議
- 水煮oracle十七——《ORA-12560: TNS: 協議介面卡錯誤Oracle協議
- Free自由協議系統開發(複利模式)協議模式
- 進入rman 時的報錯ORA-12560: TNS: 協議介面卡錯誤協議
- 引入外部資源協議寫法協議
- ORA-12560: TNS: 協議介面卡錯誤的解決方法協議
- ORACLE下使用者無法順利刪除問題處理一則-ORA-00604和ORA-00942錯誤Oracle
- 【網路協議】IP協議、ARP協議、RARP協議協議
- 【譯】 WebSocket 協議第八章——錯誤處理(Error Handling)Web協議Error
- Windows連線RHEL上的Oracle,報錯:ORA-12560: TNS: 協議介面卡錯誤WindowsOracle協議
- ORACLE FOR WINDOWS ORA-12560:TNS:協議介面卡錯誤&ORA-12557:TNS:協議介面卡不可載入OracleWindows協議
- 除錯備忘錄-SWD協議解析除錯協議
- Webkit遠端除錯協議實戰WebKit除錯協議
- ruby2.2安裝錯誤一則
- 關於”kccrsz“錯誤處理一則
- RTSP協議、RTMP協議、HTTP協議的區別協議HTTP
- 【問題處理】使用者無法順利刪除問題處理一則-ORA-00604和ORA-00942錯誤
- 本機sys as SYSDBA 出現 ORA-12560: TNS:協議介面卡錯誤協議
- 誰知道這個錯誤怎麼解決 javax.transaction.xa.XAException: 違反協議JavaException協議
- 亞馬遜aws文件語法錯誤亞馬遜
- 關於錯誤程式碼107(err_ssl_protocol_error)SSL 協議出錯的解決方案ProtocolError協議
- 【網路協議】UDP協議協議UDP
- dns錯誤怎麼辦 dns錯誤的解決辦法DNS
- Gossip協議也叫Epidemic協議(流行病協議)Go協議IDE
- ORA-03137: TTC 協議內部錯誤: [12333] [7] [0] [0] [] [] [] []協議
- ORA-03137: TTC 協議內部錯誤: [12333] [48] [9] [91] [] [] [] []協議