哈哈哈哈哈操欧洲电影,久草网在线,亚洲久久熟女熟妇视频,麻豆精品色,久久福利在线视频,日韩中文字幕的,淫乱毛视频一区,亚洲成人一二三,中文人妻日韩精品电影

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

2020年用Java安全編程的五個原則

汽車玩家 ? 來源:開源中國 ? 作者:白開水不加糖 ? 2020-03-05 14:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一位名為Sam Bocetta的作者發(fā)表了一篇文章,針對在2020年使用Java進行編碼時應遵循的五個原則進行了研究。他在文中表示,盡管目前Java的安全性相較于一些舊的語言(特別是C和C ++)而言有所長進,但是使用Java編寫的代碼的漏洞級別還是取決于程序員遵循的最佳實踐。

在當今的開發(fā)環(huán)境中更是如此,各種新的安全性技術、黑客技術以及新穎的存儲和加密形式,意味著許多人都在質(zhì)疑著Java的安全性。Java開發(fā)人員還面臨著包括云遷移的安全性問題在內(nèi)的諸多挑戰(zhàn)。另一方面,新的安全審核技術(如混沌工程)也為開發(fā)人員提供了許多提高代碼安全性的機會。

五個原則的具體內(nèi)容如下:

1. Audit your libraries

首先從基于Java的軟件最明顯的漏洞源開始:外部庫。

使用外部庫本身不是問題。在2020年,大多數(shù)開發(fā)人員的大部分時間確實都花在了與第三方庫的合作上。未來隨著客戶需求的發(fā)展,庫的類型也會也來越多。因此,重要的是在每次添加新的庫的時候,開發(fā)人員都要去仔細檢查其中的已知漏洞,不能掉以輕心。

審計您的庫不僅對安全性有好處。在審核的同時,您可能還會發(fā)現(xiàn)其他對性能產(chǎn)生不利影響的問題。并且,如果您要審核的庫是開源的,則可以借此機會報告錯誤并在整個開源社區(qū)中建立團隊的聲譽。

2. Manage Application Secrets

在管理應用程序的secrets時,Java開發(fā)人員也養(yǎng)成了一些壞習慣?;旧?,社區(qū)可以分為兩個陣營:那些犧牲安全性以便為用戶提供盡可能流暢的軟件體驗的人,以及那些希望用戶花費4個小時為自己的利益輸入憑據(jù)的人。

實際上,2020年的編碼意味著要在安全性和可用性之間取得平衡。對可用性的過多關注通常會導致代碼不安全,對安全性的過多關注則意味著用戶將會花費大部分時間來嘗試規(guī)避你采取的安全措施,且他們最終也會成功找到方法。

而在管理應用程序的secrets時,Java開發(fā)人員可以從了解CMS平臺之間的差異中學到很多東西。因為大多數(shù)的CMS平臺都具有龐大的用戶基礎,這意味著其開發(fā)人員必須仔細考慮如何管理應用程序的secrets,同時還要保持普通用戶的可用性。

3. Use Mature Encryption Libraries

用于加密的庫應該比其他類型的庫進行審計和分析的頻率更高。過去,用于加密的Java庫極難使用,其API對普通開發(fā)人員的幫助不足。這也就導致了許多Java開發(fā)人員開始自己編寫加密庫。

在此過程中,一些人開始錯誤地對自己的加密技術產(chǎn)生濃重的自豪感,并對他人編寫的代碼產(chǎn)生懷疑。而此舉并不可取,畢竟一些開發(fā)人員一生都在致力于制作不可破解的加密庫,他們編寫的加密庫性能勢必要強于大部分人。

用Java進行加密的最好方法則是使用該語言提供的內(nèi)置工具,重新發(fā)明輪子沒有任何意義(也存在重大弊端)。

4. Validate Your Inputs

如上所述,2020年的編程很大一部分是確保您的用戶不會破壞您精心設計的軟件。最簡單的方法之一是花費一些時間來驗證用戶輸入。此舉不僅能使您的應用程序更安全,也會使得它們更易于使用。

5. Don’t Reinvent the Wheel

最后,一種萬能的原則適用于所有語言的所有開發(fā)人員:不要自己制作易于使用的版本。

自己制作庫的問題在于,晦澀的代碼本質(zhì)上并沒有比公開可用的代碼更安全。主要原因是開源庫在被眾人使用的同時,也在被成千上萬人檢查。因此,其中所存在的漏洞也會很快被發(fā)現(xiàn)。

總結(jié)

100%的安全是不可能的。確保Java開發(fā)中的安全性的關鍵是,擁有一個用于檢查安全漏洞并將其關閉的系統(tǒng)。最重要的是,Java開發(fā)人員應該意識到,確保代碼安全是一個過程,而不是一個事件。并且,所有地這些問題都需要通過在程序的整個生命周期中進行仔細的審核來解決。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • JAVA
    +關注

    關注

    20

    文章

    3006

    瀏覽量

    116832
  • API
    API
    +關注

    關注

    2

    文章

    2476

    瀏覽量

    67022
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Java并發(fā)編程的“基石”——多線程概念初識

    。Java 的內(nèi)存可見性機制(如 happens-before 原則)能夠確保在極端并發(fā)下,任何一調(diào)度節(jié)點看到的集群狀態(tài)都是一致且準確的,從根本上杜絕了“腦裂”和資源超賣。 其次是 精妙的多線程協(xié)同
    發(fā)表于 04-16 18:50

    電氣設備維修的幾項原則

    電氣設備維修除了遵守一般的安全規(guī)程外,通常遵循以下幾項核心原則,以確保人員安全、設備可靠性和維修質(zhì)量: 安全第一,斷電驗電原則 維修前必須切
    的頭像 發(fā)表于 04-15 15:38 ?135次閱讀
    電氣設備維修的幾項<b class='flag-5'>原則</b>

    微課-掌握Java并發(fā)編程的“基石”,入門并發(fā)編程

    未來高并發(fā)系統(tǒng)底層邏輯:從入門掌握 Java 并發(fā)編程基石 在人類商業(yè)文明向數(shù)字化全面遷移的宏大進程中,有一條隱秘但鐵一般的經(jīng)濟學法則正在被無限放大:在算力、存儲和網(wǎng)絡帶寬構成的基礎設施之上,系統(tǒng)
    的頭像 發(fā)表于 04-14 14:25 ?92次閱讀

    預期功能安全是什么?(下)

    設計的核心命題。 未來,SOTIF將從“技術挑戰(zhàn)”轉(zhuǎn)變?yōu)椤案偁幈趬尽?。誰能更高效地覆蓋未知場景、更系統(tǒng)地證明安全性,誰就能在自動駕駛規(guī)?;涞氐馁惖郎险紦?jù)先機。 以上為本次技術分享,后續(xù)相關專題文章將持續(xù)更新,歡迎關注交流。
    發(fā)表于 04-10 11:11

    嵌入式系統(tǒng)安全設計原則

    隨著物聯(lián)網(wǎng)、工業(yè)控制和智能設備的普及,嵌入式系統(tǒng)的安全問題越來越突出。一小小的漏洞,就可能導致設備被入侵、數(shù)據(jù)泄露,甚至對人身安全產(chǎn)生威脅。因此,從設計階段開始就考慮安全,是每一
    的頭像 發(fā)表于 01-19 09:06 ?476次閱讀
    嵌入式系統(tǒng)<b class='flag-5'>安全</b>設計<b class='flag-5'>原則</b>

    直供微電網(wǎng)設計中,設備選型的基本原則是什么?

    、運行模式靈活”的特性,需圍繞“安全優(yōu)先、適配場景、經(jīng)濟高效、可靠可控、綠色兼容”大核心導向,建立科學的設備選型原則體系。以下將從大核心原則
    的頭像 發(fā)表于 01-16 10:12 ?416次閱讀
    直供微電網(wǎng)設計中,設備選型的基本<b class='flag-5'>原則</b>是什么?

    汽車網(wǎng)絡安全開發(fā)語言選型指南:C/C++/Rust/Java等主流語言對比+Perforce QAC/Klocwork工具支持

    汽車網(wǎng)絡安全如何選編程語言?C、C++、Rust、Java……誰更適合AUTOSAR、ISO/SAE 21434?一文了解8種主流語言的優(yōu)劣與適用場景,以及Perforce QAC/Klocwork對MISRA、CERT等規(guī)范的
    的頭像 發(fā)表于 12-26 11:13 ?659次閱讀
    汽車網(wǎng)絡<b class='flag-5'>安全</b>開發(fā)語言選型指南:C/C++/Rust/<b class='flag-5'>Java</b>等主流語言對比+Perforce QAC/Klocwork工具支持

    Arm Neoverse CPU上大代碼量Java應用的性能測試

    Java 是互聯(lián)網(wǎng)領域廣泛使用的編程語言。Java 應用的一些特性使其性能表現(xiàn)與提前編譯的原生應用(例如 C 程序)大相徑庭。由于 Java 字節(jié)碼無法直接在 CPU 上執(zhí)行,因此通常
    的頭像 發(fā)表于 11-05 11:25 ?936次閱讀
    Arm Neoverse CPU上大代碼量<b class='flag-5'>Java</b>應用的性能測試

    全新ES8領先一代的數(shù)字架構,實現(xiàn)安全冗余

    工程語言里,冗余是一種與安全和可靠性密切相關的設計哲學。對于一輛豪華車來說,它的目標從來不是「夠用就行」,而是要為一切潛在風險提前留出空間,更高的標準構建安全的底線。 ? 因為車不會永遠行駛在春風和煦的平直公
    的頭像 發(fā)表于 10-12 15:29 ?3057次閱讀

    Java效率提升指南:5Java工具選型建議及Perforce JRebel和XRebel介紹

    企業(yè)級Java環(huán)境越來越復雜,真正的破局點,可能不在“人”,而在于“工具”。5實用建議,幫你理清Java工具的選型思路。
    的頭像 發(fā)表于 09-11 13:59 ?1902次閱讀
    <b class='flag-5'>Java</b>效率提升指南:5<b class='flag-5'>個</b><b class='flag-5'>Java</b>工具選型建議及Perforce JRebel和XRebel介紹

    汽車軟件開發(fā)階段安全的意義與原則

    上海磐時PANSHI“磐時,做汽車企業(yè)的安全智庫”好書分享/《一本書讀懂智能汽車安全》汽車軟件開發(fā)階段安全的意義與原則本文節(jié)選自SASETECH汽車
    的頭像 發(fā)表于 09-05 16:16 ?1116次閱讀
    汽車軟件開發(fā)階段<b class='flag-5'>安全</b>的意義與<b class='flag-5'>原則</b>

    隧道施工安全管理系統(tǒng):構筑隧道施工安全防線隧道大系統(tǒng)

    隧道施工安全管理系統(tǒng)隧道大系統(tǒng)建設隧道人員定位
    的頭像 發(fā)表于 08-12 12:05 ?1010次閱讀
    隧道施工<b class='flag-5'>安全</b>管理系統(tǒng):構筑隧道施工<b class='flag-5'>安全</b>防線隧道<b class='flag-5'>五</b>大系統(tǒng)

    偉邦科技電梯無線方對講系統(tǒng):告別布線困擾,黑科技守護每一趟電梯安全!

    偉邦科技方對講系統(tǒng)將電梯轎廂內(nèi)、電梯機房、電梯轎頂、電梯底坑以及物業(yè)管理中心(或監(jiān)控室)緊密相連,構建實時互聯(lián)的通信網(wǎng)絡。若一旦電梯發(fā)生故障有人被困,被困人員按下轎廂內(nèi)的呼叫按鈕,求救信號便以毫秒級速度傳遞至方設備,最極致
    的頭像 發(fā)表于 08-01 10:29 ?1278次閱讀

    高速PCB布局/布線的原則

    層三、網(wǎng)格中添加過孔避免熱點四、路由高速信號135°走線彎曲、增加瓶頸區(qū)域外的線距離六、增加菊花鏈路(避免長存根)七、差分布線原則八、正和負信號間的緊密延遲偏差
    的頭像 發(fā)表于 05-28 19:34 ?2672次閱讀
    高速PCB布局/布線的<b class='flag-5'>原則</b>

    技術預見者的實踐之路:C-V2X發(fā)展

    梳理中國C-V2X技術發(fā)展歷程,以2019北匯信息首套測試系統(tǒng)為起點,結(jié)合2021對CSAE 53-2020與157-
    的頭像 發(fā)表于 05-27 11:01 ?2032次閱讀
    技術預見者的實踐之路:C-V2X發(fā)展<b class='flag-5'>五</b><b class='flag-5'>年</b>記
    民县| 碌曲县| 商都县| 资溪县| 册亨县| 云安县| 宁乡县| 洛宁县| 平阴县| 遂昌县| 承德市| 裕民县| 布尔津县| 崇礼县| 栾城县| 天柱县| 莱芜市| 达拉特旗| 汽车| 榆林市| 鹿邑县| 航空| 阳西县| 绥滨县| 昌都县| 卢湾区| 志丹县| 怀远县| 昂仁县| 绥滨县| 玉溪市| 海安县| 从江县| 赤城县| 上蔡县| 阿合奇县| 鹰潭市| 绥阳县| 兴安盟| 濮阳县| 定西市|